11 bool lgShield_this_zone,
79 void GetIndices(
long& ipHi,
long& ipLo,
const char* chLine,
long& i )
const;
94 long int getLine(
long iElecHi,
long iVibHi,
long iRotHi,
long iElecLo,
long iVibLo,
long iRotLo,
double *relint,
double *absint );
97 realnum H2_CollidRateEvalOne(
long iVibHi,
long iRotHi,
long iVibLo,
long iRotLo,
long ipHi,
long ipLo,
long nColl,
double temp_K );
115 void H2_ReadEnergies(
long int nelec, vector<int>& n, vector<int>& v, vector<int>&J, vector<double>& eWN );
232 void H2_LevelPops(
bool &lgPopsConverged,
double &old_value,
double &new_value );
240 void H2_PunchDo( FILE* io ,
char chJOB[] ,
const char chTime[] ,
long int ipPun );
425 explicit diatomics(
const string& a,
const double& e_star,
const double*
const abund,
double (*fun)(
double) ) ;
multi_arr< double, 2 > H2_rad_rate_in
char chH2ColliderLabels[N_X_COLLIDER][chN_X_COLLIDER]
multi_arr< double, 2 > H2_col_rate_out
multi_arr< realnum, 3 > H2_dissprob
const double ENERGY_H2_STAR
realnum GetXColden(long iVib, long iRot)
double H2_DissocEnergies[N_ELEC]
void SolveExcitedElectronicLevels(void)
void H2_Punch_line_data(FILE *ioPUN, bool lgDoAll)
double Average_collH2_excit
long ip_photo_opac_thresh
vector< double > LTE_cool
void H2_LevelPops(bool &lgPopsConverged, double &old_value, double &new_value)
void H2_ParseSave(Parser &p, ostringstream &chHeader)
multi_arr< double, 2 > pops_per_vib
t_coll_source coll_source[N_X_COLLIDER]
multi_arr< realnum, 2 > H2_coll_dissoc_rate_coef_H2
double Cont_Dissoc_Rate_H2g
void H2_RTMake(linefunc line_one)
valarray< long > ipVib_H2_energy_sort
realnum H2_CollidRateEvalOne(long iVibHi, long iRotHi, long iVibLo, long iRotLo, long ipHi, long ipLo, long nColl, double temp_K)
long OpacityCreate(double *stack)
void H2_CollidRateRead(long int nColl)
vector< CollRateCoeffArray > RateCoefTable
void H2_Prt_column_density(FILE *ioMEAN)
double rate_grain_op_conserve
vector< double > LTE_Temp
multi_arr< realnum, 2 > H2_coll_dissoc_rate_coef
void H2_Read_hminus_distribution(void)
double Average_collH2_dissoc_g
void GetIndices(long &ipHi, long &ipLo, const char *chLine, long &i) const
void H2_X_sink_and_source(void)
double Average_collH2_deexcit
multi_arr< realnum, 3 > CollRateErrFac
multi_arr< realnum, 2 > H2_X_formation
const realnum H2_logte_hminus[nTE_HMINUS]
double Yan_H2_CS(double energy_ryd)
double Solomon_dissoc_rate_g
multi_arr< realnum, 3 > CollRateCoeff
const double *const dense_total
valarray< realnum > H2_X_sink
vector< diss_tran > Diss_Trans
long int iteration_evaluated
multi_arr< double, 3 > Cont_Dissoc_Rate
multi_arr< long int, 3 > ipEnergySort
multi_arr< double, 3 > H2_old_populations
double LTE_Cooling_per_H2()
double GetExcitedElecDensity(void)
bool lgH2_ortho_para_coll_on
double Average_collH2_dissoc_s
void H2_CollidRateEvalAll(void)
multi_arr< realnum, 3 > H2_disske
diss_tran(diss_level a, diss_level b)
vector< double > energies
void H2_RT_tau_reset(void)
multi_arr< realnum, 3 > H2_X_hminus_formation_distribution
double photodissoc_BigH2_H2s
double energy(const genericState &gs)
long int nLevels_per_elec[N_ELEC]
multi_arr< double, 3 > H2_populations_LTE
void Mol_Photo_Diss_Rates(void)
void(* linefunc)(const TransitionProxy &t, bool lgShield_this_zone, realnum pestrk, realnum DopplerWidth)
double Average_collH_deexcit
long int nCall_this_iteration
double H2_InterEnergy(void)
multi_arr< realnum, 2 > H2_X_colden_LTE
double photodissoc_BigH2_H2g
multi_arr< bool, 2 > lgH2_radiative
double MolDissocOpacity(const diss_tran &tran, const double &Mol_Ene)
multi_arr< realnum, 2 > H2_X_Hmin_back
void H2_PrtDepartCoef(void)
double(* photoion_opacity_fun)(double energy)
long ip_photo_opac_offset
multi_arr< realnum, 6 > H2_SaveLine
multi_arr< double, 3 > H2_rad_rate_out
valarray< long > ipElec_H2_energy_sort
void Read_Mol_Diss_cross_sections(void)
multi_arr< realnum, 3 > H2_X_grain_formation_distribution
double rate_grain_J1_to_J0
double GetHeatRate(const diss_tran &tran)
void H2_Calc_Average_Rates(void)
double ortho_para_current
void H2_Solomon_rate(void)
diatomics(const string &a, const double &e_star, const double *const abund, double(*fun)(double))
vector< double > stat_levn
void H2_ReadTransprob(long int nelec, TransitionList &trans)
bool lgH2_grain_deexcitation
multi_arr< double, 2 > H2_X_rate_to_elec_excited
void H2_zero_pops_too_low(void)
multi_arr< double, 2 > H2_X_rate_from_elec_excited
long int getLine(long iElecHi, long iVibHi, long iRotHi, long iElecLo, long iVibLo, long iRotLo, double *relint, double *absint)
void H2_Colden(const char *chLabel)
double Average_collH_excit
void H2_X_coll_rate_evaluate(void)
void H2_PunchLineStuff(FILE *io, realnum xLimit, long index)
void H2_Read_LTE_cooling_per_H2()
double Solomon_dissoc_rate_s
void H2_Level_low_matrix(realnum abundance)
multi_arr< long int, 2 > ipTransitionSort
void H2_PunchDo(FILE *io, char chJOB[], const char chTime[], long int ipPun)
double Cont_Dissoc_Rate_H2s
double Solomon_elec_decay_g
TransitionList::iterator rad_end
void H2_ReadDissocEnergies(void)
valarray< long > nRot_hi[N_ELEC]
double pops_per_elec[N_ELEC]
double Solomon_elec_decay_s
double H2_renorm_chemistry
double Average_collH_dissoc_g
valarray< long > ipRot_H2_energy_sort
valarray< realnum > H2_X_source
long int nzone_nlevel_set
double Average_collH_dissoc_s
void CalcPhotoionizationRate(void)
double interpolate_LTE_Cooling(double Temp)
void set_numLevelsMatrix(long numLevels)
void H2_ReadDissprob(long int nelec)
double MolDissocCrossSection(const diss_tran &tran, const double &Mol_Ene)
double GetDissociationRate(const diss_tran &tran)
multi_arr< realnum, 2 > H2_X_coll_rate
vector< double > xsections
void SolveSomeGroundElectronicLevels(void)
multi_arr< double, 2 > H2_col_rate_in
multi_arr< realnum, 2 > H2_X_colden
multi_arr< int, 2 > H2_ipPhoto
double Cont_Diss_Heat_Rate(void)
multi_arr< bool, 3 > H2_lgOrtho