cloudy trunk
|
#include <h2_priv.h>
Public Member Functions | |
double | Abund () const |
void | GetIndices (long &ipHi, long &ipLo, const char *chLine, long &i) const |
void | CalcPhotoionizationRate (void) |
long | OpacityCreate (double *stack) |
double | GetHeatRate (const diss_tran &tran) |
double | GetDissociationRate (const diss_tran &tran) |
double | MolDissocOpacity (const diss_tran &tran, const double &Mol_Ene) |
double | Cont_Diss_Heat_Rate (void) |
void | Mol_Photo_Diss_Rates (void) |
void | Read_Mol_Diss_cross_sections (void) |
void | SolveExcitedElectronicLevels (void) |
void | SolveSomeGroundElectronicLevels (void) |
double | GetExcitedElecDensity (void) |
realnum | GetXColden (long iVib, long iRot) |
long int | getLine (long iElecHi, long iVibHi, long iRotHi, long iElecLo, long iVibLo, long iRotLo, double *relint, double *absint) |
realnum | H2_CollidRateEvalOne (long iVibHi, long iRotHi, long iVibLo, long iRotLo, long ipHi, long ipLo, long nColl, double temp_K) |
void | H2_Calc_Average_Rates (void) |
void | H2_X_sink_and_source (void) |
void | H2_X_coll_rate_evaluate (void) |
void | H2_Level_low_matrix (realnum abundance) |
void | H2_ReadEnergies () |
void | H2_ReadEnergies (long int nelec, vector< int > &n, vector< int > &v, vector< int > &J, vector< double > &eWN) |
void | H2_ReadDissprob (long int nelec) |
void | H2_CollidRateEvalAll (void) |
void | H2_CollidRateRead (long int nColl) |
void | H2_ReadTransprob (long int nelec, TransitionList &trans) |
void | H2_Read_hminus_distribution (void) |
void | mole_H2_form (void) |
void | mole_H2_LTE (void) |
void | H2_Solomon_rate (void) |
double | gs_rate (void) |
void | H2_zero_pops_too_low (void) |
void | init (void) |
void | H2_ContPoint (void) |
double | H2_DR (void) |
double | H2_Accel (void) |
void | H2_RT_OTS (void) |
double | H2_RadPress (void) |
void | H2_LinesAdd (void) |
void | H2_Reset (void) |
double | H2_InterEnergy (void) |
void | H2_Colden (const char *chLabel) |
void | H2_Cooling (void) |
void | H2_Punch_line_data (FILE *ioPUN, bool lgDoAll) |
void | H2_PunchLineStuff (FILE *io, realnum xLimit, long index) |
void | H2_RT_diffuse (void) |
void | H2_RTMake (void) |
void | H2_RT_tau_inc (void) |
void | H2_Prt_Zone (void) |
void | H2_PrtDepartCoef (void) |
void | H2_LineZero (void) |
void | H2_RT_tau_reset (void) |
void | H2_LevelPops (bool &lgPopsConverged, double &old_value, double &new_value) |
void | H2_PunchDo (FILE *io, char chJOB[], const char chTime[], long int ipPun) |
void | H2_Prt_line_tau (void) |
void | H2_ParseSave (Parser &p, char *chHeader) |
double | H2_itrzn (void) |
void | H2_Prt_column_density (FILE *ioMEAN) |
void | set_numLevelsMatrix (long numLevels) |
void | H2_ReadDissocEnergies (void) |
diatomics (const string &a, const double &e_star, const double *const abund, double(*fun)(double)) |
|
inlineexplicit |
Definition at line 418 of file h2_priv.h.
References abund, Average_A, Average_collH2_deexcit, Average_collH2_dissoc_g, Average_collH2_dissoc_s, Average_collH2_excit, Average_collH_deexcit, Average_collH_dissoc_g, Average_collH_dissoc_s, Average_collH_excit, chH2ColliderLabels, dense_total, ENERGY_H2_STAR, fixit(), H2_to_H_limit, HeatChange, HeatChangeOld, HeatDexc, HeatDexc_deriv, HeatDexc_old, HeatDiss, iteration_evaluated, iterationAsEval, label, levelAsEval, lgColl_deexec_Calc, lgColl_dissoc_coll, lgColl_gbar, lgEnabled, lgEvaluated, lgFirst, lgH2_grain_deexcitation, lgH2_H_coll_07, lgH2_He_ORNL, lgH2_NOISE, lgH2_NOISECOSMIC, lgH2_ORH2_ORNL, lgH2_ortho_para_coll_on, lgH2_PAH2_ORNL, lgLTE, lgREAD_DATA, loop_h2_oscil, N_ELEC, n_elec_states, n_trace_final, n_trace_full, n_trace_iterations, n_trace_matrix, nCall_this_zone, ndimMalloced, nElecLevelOutput, nH2_pops, nH2_zone, nTRACE, nXLevelsMatrix, nzone_eval, nzone_nlevel_set, nzoneAsEval, nzoneEval, ortho_colden, ortho_para_current, ortho_para_old, ortho_para_older, para_colden, path, photo_heat_hard, photo_heat_soft, photodissoc_BigH2_H2g, photodissoc_BigH2_H2s, photoion_opacity_fun, rate_grain_J1_to_J0, rate_grain_op_conserve, renorm_max, renorm_min, shortlabel, Solomon_dissoc_rate_g, Solomon_dissoc_rate_s, spon_diss_tot, states, TeUsedBoltz, TeUsedColl, toupper(), and trans.
|
inline |
Definition at line 68 of file h2_priv.h.
References dense_total.
void diatomics::CalcPhotoionizationRate | ( | void | ) |
Definition at line 375 of file mole_h2_etc.cpp.
References DEBUG_ENTRY, GammaK(), t_phoHeat::HeatHiEnr, t_phoHeat::HeatLowEnr, ionbal, ip_photo_opac_offset, ip_photo_opac_thresh, ipHYDROGEN, iteration, iteration_evaluated, nzone, nzone_eval, photo_heat_hard, photo_heat_soft, photoionize_rate, and rfield.
Referenced by H2_LevelPops().
double diatomics::Cont_Diss_Heat_Rate | ( | void | ) |
Definition at line 223 of file mole_dissociate.cpp.
References DEBUG_ENTRY, Diss_Trans, lgEnabled, Mol_Photo_Diss_Rates(), and mole_global.
double diatomics::GetDissociationRate | ( | const diss_tran & | tran | ) |
Definition at line 211 of file mole_dissociate.cpp.
References DEBUG_ENTRY, diss_tran::initial, ipEnergySort, diss_level::j, diss_level::n, diss_tran::rate_coeff, states, and diss_level::v.
double diatomics::GetExcitedElecDensity | ( | void | ) |
Definition at line 2538 of file mole_h2.cpp.
References n_elec_states, and pops_per_elec.
Referenced by H2_Solomon_rate().
double diatomics::GetHeatRate | ( | const diss_tran & | tran | ) |
Definition at line 244 of file mole_dissociate.cpp.
References DEBUG_ENTRY, EN1RYD, diss_tran::energies, diss_tran::initial, ipEnergySort, ipoint(), diss_level::j, MAX2, MIN2, MolDissocCrossSection(), diss_level::n, rfield, states, and diss_level::v.
void diatomics::GetIndices | ( | long & | ipHi, |
long & | ipLo, | ||
const char * | chLine, | ||
long & | i ) const |
Definition at line 208 of file mole_h2_coll.cpp.
References ASSERT, FFmtRead(), ipEnergySort, Jlowest, nRot_hi, nVib_hi, and swap().
long int diatomics::getLine | ( | long | iElecHi, |
long | iVibHi, | ||
long | iRotHi, | ||
long | iElecLo, | ||
long | iVibLo, | ||
long | iRotLo, | ||
double * | relint, | ||
double * | absint ) |
Definition at line 1931 of file mole_h2_io.cpp.
References ASSERT, DEBUG_ENTRY, H2_lgOrtho, H2_SaveLine, ipEnergySort, lgH2_radiative, LineSave, LineSv, radius, and states.
realnum diatomics::GetXColden | ( | long | iVib, |
long | iRot ) |
Definition at line 2359 of file mole_h2.cpp.
References DEBUG_ENTRY, H2_X_colden, ioQQQ, nRot_hi, and nVib_hi.
Referenced by cdH2_colden().
double diatomics::gs_rate | ( | void | ) |
gs_rate evaluate rate between ground and star states
Definition at line 111 of file mole_h2_etc.cpp.
References EmissionProxy::Aul(), DEBUG_ENTRY, H2_den_g, H2_dissprob, H2_rad_rate_out, ipEnergySort, ipTransitionSort, Jlowest, lgH2_radiative, MAX2, n_elec_states, nEner_H2_ground, nRot_hi, nVib_hi, EmissionProxy::Pdest(), EmissionProxy::Pelec_esc(), EmissionProxy::Pesc(), SDIV(), states, and trans.
Referenced by H2_LevelPops().
double diatomics::H2_Accel | ( | void | ) |
radiative acceleration due to H2 called in rt_line_driving
Definition at line 297 of file mole_h2.cpp.
References ASSERT, DEBUG_ENTRY, lgEnabled, rad_end, and trans.
void diatomics::H2_Calc_Average_Rates | ( | void | ) |
Definition at line 2453 of file mole_h2.cpp.
References Average_A, Average_collH2_deexcit, Average_collH2_excit, Average_collH_deexcit, Average_collH_excit, CollRateCoeff, ENERGY_H2_STAR, H2_Boltzmann, H2_lgOrtho, H2_stat, hmi, ipEnergySort, ipTransitionSort, lgH2_radiative, SDIV(), states, and trans.
Referenced by H2_LevelPops().
void diatomics::H2_Colden | ( | const char * | chLabel | ) |
H2_Colden maintain H2 column densities within X
*chLabel |
Definition at line 2378 of file mole_h2.cpp.
References cdEXIT, DEBUG_ENTRY, dense_total, EXIT_FAILURE, H2_populations_LTE, H2_X_colden, H2_X_colden_LTE, ioQQQ, lgEnabled, radius, and states.
void diatomics::H2_CollidRateEvalAll | ( | void | ) |
H2_CollidRateEvalAll - set H2 collision rates
Definition at line 17 of file mole_h2_coll.cpp.
References ASSERT, CollRateCoeff, DEBUG_ENTRY, fixit(), H2_coll_dissoc_rate_coef, H2_coll_dissoc_rate_coef_H2, H2_CollidRateEvalOne(), H2_DissocEnergies, ioQQQ, ipRot_H2_energy_sort, ipVib_H2_energy_sort, label, lgColl_dissoc_coll, n_trace_full, N_X_COLLIDER, nLevels_per_elec, nTRACE, phycon, sexp(), and states.
Referenced by H2_LevelPops().
realnum diatomics::H2_CollidRateEvalOne | ( | long | iVibHi, |
long | iRotHi, | ||
long | iVibLo, | ||
long | iRotLo, | ||
long | ipHi, | ||
long | ipLo, | ||
long | nColl, | ||
double | temp_K ) |
Definition at line 102 of file mole_h2_coll.cpp.
References CollRateErrFac, DEBUG_ENTRY, GbarRateCoeff(), H2_lgOrtho, InterpCollRate(), lgColl_deexec_Calc, lgColl_gbar, lgH2_NOISE, lgH2_ortho_para_coll_on, RateCoefTable, and states.
Referenced by H2_CollidRateEvalAll().
void diatomics::H2_CollidRateRead | ( | long int | nColl | ) |
read collision rates
nColl |
Definition at line 166 of file mole_h2_coll.cpp.
References cdEXIT, coll_source, DEBUG_ENTRY, EXIT_FAILURE, FILENAME_PATH_LENGTH_2, input, INPUT_LINE_LENGTH, ioQQQ, nLevels_per_elec, open_data(), path, RateCoefTable, read_whole_line(), and ReadCollisionRateTable().
Referenced by init().
void diatomics::H2_ContPoint | ( | void | ) |
set the ipCont struc element for the H2 molecule, called by ContCreatePointers
Definition at line 279 of file mole_h2.cpp.
References ASSERT, DEBUG_ENTRY, ipFineCont(), ipLineEnergy(), label, lgEnabled, rad_end, and trans.
void diatomics::H2_Cooling | ( | void | ) |
H2_cooling evaluate cooling and heating due to H2 molecule
Definition at line 2188 of file mole_h2.cpp.
References ASSERT, collider_density, CollRateCoeff, conv, DEBUG_ENTRY, EN1EV, ERG1CM, fnzone, H2_Boltzmann, H2_disske, H2_dissprob, H2_renorm_chemistry, H2_stat, HeatDexc, HeatDexc_deriv, HeatDiss, ioQQQ, ipRot_H2_energy_sort, ipVib_H2_energy_sort, lgEnabled, n_trace_full, N_X_COLLIDER, nCall_this_iteration, nLevels_per_elec, nTRACE, phycon, POW2, PRT_POPS, SDIV(), states, and thermal.
Referenced by H2_LevelPops().
double diatomics::H2_DR | ( | void | ) |
H2_DR choose next zone thickness based on H2 big molecule
Definition at line 2423 of file mole_h2.cpp.
References BIGFLOAT.
double diatomics::H2_InterEnergy | ( | void | ) |
internal energy of H2 called in PresTotCurrent
double diatomics::H2_itrzn | ( | void | ) |
H2_itrzn - average number of H2 pop evaluations per zone
Definition at line 266 of file mole_h2.cpp.
void diatomics::H2_Level_low_matrix | ( | realnum | abundance | ) |
Definition at line 474 of file mole_h2.cpp.
References ASSERT, atom_levelN(), AulDest, AulEscp, AulPump, cdEXIT, col_str, CollRate_levn, ConvFail(), create, DEBUG_ENTRY, dense_total, depart, destroy, excit, EXIT_FAILURE, H2_Boltzmann, H2_lgOrtho, H2_stat, H2_X_coll_rate, H2_X_rate_from_elec_excited, H2_X_rate_to_elec_excited, H2_X_sink, H2_X_source, ioQQQ, ipRot_H2_energy_sort, ipTransitionSort, ipVib_H2_energy_sort, iteration, iterationAsEval, levelAsEval, lgFirst, lgH2_radiative, MALLOC, n_trace_full, n_trace_matrix, ndimMalloced, nLevels_per_elec, nTRACE, nXLevelsMatrix, nzone, nzoneAsEval, pops, rate_grain_J1_to_J0, rate_grain_op_conserve, SDIV(), stat_levn, states, and trans.
Referenced by H2_LevelPops().
void diatomics::H2_LevelPops | ( | bool & | lgPopsConverged, |
double & | old_value, | ||
double & | new_value ) |
do level populations for H2, called by iso_solve
Definition at line 909 of file mole_h2.cpp.
References ASSERT, Average_collH2_dissoc_g, Average_collH2_dissoc_s, Average_collH_dissoc_g, Average_collH_dissoc_s, average_energy_g, average_energy_s, CalcPhotoionizationRate(), conv, DEBUG_ENTRY, dense, dense_total, ENERGY_H2_STAR, EVRYD, fixit(), fnzone, fp_equal(), fp_equal_tol(), FRAC, frac_matrix, gs_rate(), H2_Boltzmann, H2_Calc_Average_Rates(), H2_coll_dissoc_rate_coef, H2_coll_dissoc_rate_coef_H2, H2_CollidRateEvalAll(), H2_Cooling(), H2_den_g, H2_den_s, H2_DISS_ALLISON_DALGARNO, H2_DissocEnergies, H2_Level_low_matrix(), H2_lgOrtho, H2_old_populations, H2_populations_LTE, H2_rad_rate_in, H2_rad_rate_out, H2_renorm_chemistry, H2_Solomon_rate(), H2_stat, H2_to_H_limit, H2_X_coll_rate_evaluate(), H2_X_rate_from_elec_excited, H2_X_rate_to_elec_excited, H2_X_sink_and_source(), H2_zero_pops_too_low(), HeatChange, HeatChangeOld, HeatDexc, HeatDexc_old, hmi, ioQQQ, ipElec_H2_energy_sort, ipEnergySort, ipoint(), ipRot_H2_energy_sort, ipVib_H2_energy_sort, label, lgAbort, lgEnabled, lgEvaluated, lgLTE, LIM_H2_POP_LOOP, loop_h2_oscil, MAX2, mole, mole_H2_form(), mole_H2_LTE(), mole_update_species_cache(), N_ELEC, n_trace_final, n_trace_full, n_trace_iterations, nCall_this_iteration, nCall_this_zone, nH2_pops, nH2_zone, nLevels_per_elec, nTRACE, nXLevelsMatrix, nzone, nzone_nlevel_set, nzoneEval, ortho_density, ortho_density_f, ortho_para_current, ortho_para_old, ortho_para_older, para_density, para_density_f, photodissoc_BigH2_H2g, photodissoc_BigH2_H2s, phycon, pops_per_elec, pops_per_vib, PRT_POPS, rad_end, rel_pop_LTE_g, rel_pop_LTE_s, rfield, SAHA, SDIV(), sexp(), SMALLFLOAT, Solomon_dissoc_rate_g, Solomon_dissoc_rate_s, SolveExcitedElectronicLevels(), SolveSomeGroundElectronicLevels(), sp, states, TeUsedColl, thermal, TorF(), TotalInsanity(), trace, and trans.
void diatomics::H2_LinesAdd | ( | void | ) |
add in explicit lines from the large H2 molecule, called by lines_molecules
Definition at line 49 of file mole_h2_io.cpp.
References DEBUG_ENTRY, H2_SaveLine, ipEnergySort, ipTransitionSort, label, lgEnabled, lindst(), LineSave, nElecLevelOutput, PutLine(), rad_end, radius, and trans.
void diatomics::H2_LineZero | ( | void | ) |
initialize optical depths in H2, called from RT_tau_init
Definition at line 442 of file mole_h2.cpp.
References DEBUG_ENTRY, lgEnabled, rad_end, and trans.
void diatomics::H2_ParseSave | ( | Parser & | p, |
char * | chHeader ) |
H2_ParseSave parse the save h2 command
Definition at line 111 of file mole_h2_io.cpp.
References cdEXIT, chH2ColliderLabels, chN_X_COLLIDER, DEBUG_ENTRY, EXIT_FAILURE, Parser::getNumberDefault(), Parser::getNumberDefaultNegImplLog(), ioQQQ, N_X_COLLIDER, nElecLevelOutput, Parser::nMatch(), save, and thresh_punline_h2.
void diatomics::H2_Prt_column_density | ( | FILE * | ioMEAN | ) |
H2_Prt_column_density print H2 info into zone results, called from prtzone for each printed zone
*ioMEAN | this is stream used for io, is stdout when called by final, is save unit when save output generated |
Definition at line 395 of file mole_h2_io.cpp.
References DEBUG_ENTRY, H2_X_colden, lgEnabled, nCall_this_zone, ortho_colden, para_colden, and SDIV().
void diatomics::H2_Prt_line_tau | ( | void | ) |
print line optical depths, called from premet in response to print line optical depths command
Definition at line 1187 of file mole_h2_io.cpp.
References DEBUG_ENTRY, lgEnabled, prme(), and trans.
void diatomics::H2_Prt_Zone | ( | void | ) |
H2_Prt_Zone print H2 info into zone results, called from prtzone for each printed zone
Definition at line 333 of file mole_h2_io.cpp.
References DEBUG_ENTRY, dense_total, ioQQQ, ipEnergySort, label, lgEnabled, nCall_this_zone, ortho_density, para_density, pops_per_vib, PrintEfmt, SDIV(), and states.
void diatomics::H2_PrtDepartCoef | ( | void | ) |
Definition at line 362 of file mole_h2_io.cpp.
References DEBUG_ENTRY, depart, ioQQQ, ipEnergySort, Jlowest, label, lgEnabled, n_elec_states, nCall_this_zone, nRot_hi, and nVib_hi.
void diatomics::H2_Punch_line_data | ( | FILE * | ioPUN, |
bool | lgDoAll ) |
save H2 line data
ioPUN | io unit for save |
lgDoAll | save all levels if true, only subset if false |
Definition at line 1125 of file mole_h2_io.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, lgEnabled, Save1LineData(), and trans.
void diatomics::H2_PunchDo | ( | FILE * | io, |
char | chJOB[], | ||
const char | chTime[], | ||
long int | ipPun ) |
save some properties of the large H2 molecule
io | |
chJOB[] | |
chTime[] | |
ipPun |
Definition at line 1224 of file mole_h2_io.cpp.
References ASSERT, EmissionProxy::Aul(), average_energy_g, average_energy_s, chMolBranch(), colden, CollRateCoeff, DEBUG_ENTRY, dense, dense_total, findspecieslocal(), g, gv, H2_col_rate_in, H2_col_rate_out, H2_den_g, H2_den_s, H2_lgOrtho, H2_old_populations, H2_populations_LTE, H2_rad_rate_in, H2_rad_rate_out, H2_renorm_chemistry, H2_SaveLine, H2_stat, H2_X_colden, H2_X_colden_LTE, HeatDexc, HeatDiss, hmi, hyperfine, ipCOL_H2g, ipCOL_H2s, ipEnergySort, ipHYDROGEN, ipRot_H2_energy_sort, ipTransitionSort, ipVib_H2_energy_sort, Jlowest, lgEnabled, lgEvaluated, lgH2_radiative, LineSave, LineSv, MAX2, MIN2, N_X_COLLIDER, nCall_this_zone, nElecLevelOutput, nLevels_per_elec, nRot_hi, nVib_hi, ortho_colden, ortho_density, para_colden, para_density, EmissionProxy::Pdest(), EmissionProxy::Pelec_esc(), EmissionProxy::Pesc(), phycon, pops_per_elec, prt_wl(), rad_end, radius, rfield, save, SDIV(), secondaries, SMALLFLOAT, Solomon_dissoc_rate_g, Solomon_dissoc_rate_s, Solomon_elec_decay_g, Solomon_elec_decay_s, spsort(), states, thermal, thresh_punline_h2, and trans.
void diatomics::H2_PunchLineStuff | ( | FILE * | io, |
realnum | xLimit, | ||
long | index ) |
include H2 lines in punched optical depths, etc, called from SaveLineStuff
io | |
xLimit | |
index |
Definition at line 1167 of file mole_h2_io.cpp.
References DEBUG_ENTRY, dense, GetDopplerWidth(), ipHYDROGEN, lgEnabled, Save1Line(), and trans.
double diatomics::H2_RadPress | ( | void | ) |
rad pre due to h2 lines called in PresTotCurrent
Definition at line 320 of file mole_h2.cpp.
References ASSERT, DEBUG_ENTRY, GetDopplerWidth(), ioQQQ, lgEnabled, mass_amu, n_trace_full, nCall_this_zone, nTRACE, PressureRadiationLine(), rad_end, SMALLFLOAT, and trans.
void diatomics::H2_Read_hminus_distribution | ( | void | ) |
H2_Read_hminus_distribution read distribution function for H2 population following formation from H minus
Definition at line 984 of file mole_h2_io.cpp.
References ASSERT, BadRead(), cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, FFmtRead(), FILENAME_PATH_LENGTH_2, H2_X_hminus_formation_distribution, input, ioQQQ, Jlowest, nRot_hi, nTE_HMINUS, nVib_hi, open_data(), path, and read_whole_line().
Referenced by init().
void diatomics::H2_ReadDissocEnergies | ( | void | ) |
Definition at line 829 of file mole_h2_io.cpp.
References ASSERT, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, FFmtRead(), FILENAME_PATH_LENGTH_2, H2_DissocEnergies, input, ioQQQ, N_ELEC, open_data(), path, and read_whole_line().
Referenced by init().
void diatomics::H2_ReadDissprob | ( | long int | nelec | ) |
read dissociation probabilities and kinetic energies for all electronic levels
nelec |
Definition at line 893 of file mole_h2_io.cpp.
References ASSERT, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, FFmtRead(), FILENAME_PATH_LENGTH_2, H2_disske, H2_dissprob, input, ioQQQ, Jlowest, N_ELEC, nRot_hi, nVib_hi, open_data(), path, and read_whole_line().
Referenced by init().
void diatomics::H2_ReadEnergies | ( | ) |
Definition at line 672 of file mole_h2_io.cpp.
References ASSERT, DEBUG_ENTRY, H2_ReadEnergies(), Jlowest, label, MAX2, n_elec_states, nLevels_per_elec, nRot_hi, nVib_hi, and states.
Referenced by H2_ReadEnergies(), and init().
void diatomics::H2_ReadEnergies | ( | long int | nelec, |
vector< int > & | n, | ||
vector< int > & | v, | ||
vector< int > & | J, | ||
vector< double > & | eWN ) |
Definition at line 737 of file mole_h2_io.cpp.
References ASSERT, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, FFmtRead(), FILENAME_PATH_LENGTH_2, input, ioQQQ, Jlowest, MAX2, MIN2, N_ELEC, nLevels_per_elec, nVib_hi, open_data(), path, and read_whole_line().
void diatomics::H2_ReadTransprob | ( | long int | nelec, |
TransitionList & | trans ) |
read transition probabilities
nelec |
Definition at line 430 of file mole_h2_io.cpp.
References ASSERT, cdEXIT, DEBUG_ENTRY, TransitionList::Emis(), EXIT_FAILURE, FFmtRead(), FILENAME_PATH_LENGTH_2, input, ioQQQ, ipEnergySort, ipTransitionSort, lgH2_radiative, N_ELEC, nRot_hi, nVib_hi, open_data(), path, read_whole_line(), ShowMe(), and states.
Referenced by init().
void diatomics::H2_Reset | ( | void | ) |
H2_Reset called to reset variables that are needed after an iteration
Definition at line 274 of file mole_h2_etc.cpp.
References DEBUG_ENTRY, fnzone, H2_SaveLine, ioQQQ, iteration, iterationAsEval, lgEvaluated, n_elec_states, nCall_this_iteration, nCall_this_zone, nElecLevelOutput, nH2_pops, nH2_zone, nTRACE, nzone_nlevel_set, nzoneAsEval, renorm_max, renorm_min, TeUsedBoltz, and TeUsedColl.
void diatomics::H2_RT_diffuse | ( | void | ) |
do emission from H2 - called from RT_diffuse
Definition at line 371 of file mole_h2.cpp.
References DEBUG_ENTRY, lgEnabled, nCall_this_zone, rad_end, and trans.
void diatomics::H2_RT_OTS | ( | void | ) |
H2_RT_OTS - add H2 ots fields
Definition at line 2429 of file mole_h2.cpp.
References DEBUG_ENTRY, lgEnabled, nCall_this_zone, rad_end, RT_OTS_AddLine(), and trans.
void diatomics::H2_RT_tau_inc | ( | void | ) |
increment optical depth for the H2 molecule, called from RT_tau_inc
Definition at line 412 of file mole_h2.cpp.
References ASSERT, DEBUG_ENTRY, GetDopplerWidth(), H2_renorm_chemistry, lgEnabled, mass_amu, MAX2, MIN2, nCall_this_iteration, nzone, rad_end, renorm_max, renorm_min, RT_line_one_tauinc(), and trans.
void diatomics::H2_RT_tau_reset | ( | void | ) |
the large H2 molecule, called from RT_tau_reset
Definition at line 458 of file mole_h2.cpp.
References DEBUG_ENTRY, lgEnabled, rad_end, RT_line_one_tau_reset(), and trans.
void diatomics::H2_RTMake | ( | void | ) |
do RT for H2 lines
Definition at line 390 of file mole_h2.cpp.
References DEBUG_ENTRY, GetDopplerWidth(), lgEnabled, mass_amu, rad_end, RT_line_one(), and trans.
void diatomics::H2_Solomon_rate | ( | void | ) |
H2_Solomon_rate find rates between H2s and H2g and other levels, for use in the chemistry
Definition at line 24 of file mole_h2_etc.cpp.
References DEBUG_ENTRY, dense_total, ENERGY_H2_STAR, GetExcitedElecDensity(), H2_den_g, H2_den_s, H2_dissprob, H2_rad_rate_out, hmi, rad_end, SDIV(), SMALLFLOAT, Solomon_dissoc_rate_g, Solomon_dissoc_rate_s, Solomon_elec_decay_g, Solomon_elec_decay_s, and trans.
Referenced by H2_LevelPops().
void diatomics::H2_X_coll_rate_evaluate | ( | void | ) |
Definition at line 201 of file mole_h2.cpp.
References ASSERT, collider_density, CollRate, CollRateCoeff, DEBUG_ENTRY, molezone::den, dense, findspecieslocal(), fp_equal(), h2, H2_X_coll_rate, hmi, ioQQQ, ipHELIUM, ipHYDROGEN, lgColl_deexec_Calc, n_trace_full, N_X_COLLIDER, nLevels_per_elec, and nTRACE.
Referenced by H2_LevelPops().
void diatomics::H2_X_sink_and_source | ( | void | ) |
Definition at line 54 of file mole_h2.cpp.
References ASSERT, collider_density, collider_density_total_not_H2, Cont_Dissoc_Rate, DEBUG_ENTRY, dense, dense_total, ENERGY_H2_STAR, fixit(), H2_coll_dissoc_rate_coef, H2_coll_dissoc_rate_coef_H2, H2_den_s, H2_DISS_ALLISON_DALGARNO, H2_ipPhoto, H2_populations_LTE, H2_X_formation, H2_X_Hmin_back, H2_X_sink, H2_X_source, hmi, ipRot_H2_energy_sort, ipVib_H2_energy_sort, lgColl_deexec_Calc, mole, mole_global, nLevels_per_elec, rfield, SDIV(), sp, sp_star, spon_diss_tot, and states.
Referenced by H2_LevelPops().
void diatomics::H2_zero_pops_too_low | ( | void | ) |
H2_zero_pops_too_low - zero out some H2 variables if we decide not to compute the full sim, called by H2_LevelPops
Definition at line 187 of file mole_h2_etc.cpp.
References DEBUG_ENTRY, H2_old_populations, H2_populations_LTE, HeatDexc, HeatDexc_deriv, HeatDiss, N_ELEC, photodissoc_BigH2_H2g, photodissoc_BigH2_H2s, pops_per_elec, pops_per_vib, rad_end, Solomon_dissoc_rate_g, Solomon_dissoc_rate_s, states, and trans.
Referenced by H2_LevelPops().
void diatomics::init | ( | void | ) |
create H2 molecules, called by ContCreatePointers
Definition at line 111 of file mole_h2_create.cpp.
References abscf(), AllTransitions, ASSERT, ATOMIC_MASS_UNIT, TransitionList::begin(), BIGFLOAT, cdEXIT, CollRateCoeff, CollRateErrFac, compareEmis(), DEBUG_ENER, DEBUG_ENTRY, EH2_eval(), EN1EV, ENERGY_H2_STAR, energy_off, EXIT_FAILURE, EXIT_SUCCESS, findspecies(), fixit(), GetGF(), H2_Boltzmann, H2_col_rate_in, H2_col_rate_out, H2_coll_dissoc_rate_coef, H2_coll_dissoc_rate_coef_H2, H2_CollidRateRead(), H2_disske, H2_DissocEnergies, H2_dissprob, H2_ipPhoto, H2_lgOrtho, H2_nRot_add_ortho_para, H2_old_populations, H2_populations_LTE, H2_rad_rate_in, H2_rad_rate_out, H2_Read_hminus_distribution(), H2_ReadDissocEnergies(), H2_ReadDissprob(), H2_ReadEnergies(), H2_ReadTransprob(), H2_SaveLine, H2_stat, H2_TOP, H2_vib_dist(), H2_X_colden, H2_X_colden_LTE, H2_X_coll_rate, H2_X_formation, H2_X_grain_formation_distribution, H2_X_Hmin_back, H2_X_hminus_formation_distribution, H2_X_rate_from_elec_excited, H2_X_rate_to_elec_excited, H2_X_sink, H2_X_source, hmi, HPLANCK, ioQQQ, ipCRDW, ipElec_H2_energy_sort, ipEnergySort, ipH2, ipNCOLLIDER, ipoint(), ipRot_H2_energy_sort, ipTransitionSort, ipVib_H2_energy_sort, is_odd(), Jlowest, label, lgEnabled, lgH2_NOISE, lgH2_radiative, lgRadiative(), lgREAD_DATA, mass_amu, mole, mole_global, n_elec_states, N_X_COLLIDER, nEner_H2_ground, nLevels_per_elec, nRot_hi, nTE_HMINUS, null_mole, nVib_hi, nXLevelsMatrix, opac, PI, PI4, pops_per_vib, POW2, pow3(), rad_end, RandGauss(), RateCoefTable, Read_Mol_Diss_cross_sections(), RefIndex(), TransitionList::resize(), sexp(), shortlabel, SMALLFLOAT, sp, sp_star, states, TransitionList::states(), TotalInsanity(), trans, WAVNRYD, xMeanNoise, and xSTDNoise.
void diatomics::Mol_Photo_Diss_Rates | ( | void | ) |
Definition at line 148 of file mole_dissociate.cpp.
References ASSERT, Cont_Dissoc_Rate, Cont_Dissoc_Rate_H2g, Cont_Dissoc_Rate_H2s, DEBUG_ENTRY, Diss_Trans, ENERGY_H2_STAR, GetDissociationRateCoeff(), H2_den_g, H2_den_s, hmi, ipEnergySort, lgEnabled, mole_global, SDIV(), and states.
Referenced by Cont_Diss_Heat_Rate().
double diatomics::MolDissocOpacity | ( | const diss_tran & | tran, |
const double & | Mol_Ene ) |
Definition at line 112 of file mole_dissociate.cpp.
References cross_section(), DEBUG_ENTRY, diss_tran::initial, ipEnergySort, diss_level::j, MolDissocCrossSection(), diss_level::n, states, and diss_level::v.
void diatomics::mole_H2_form | ( | void | ) |
mole_H2_form find state specific rates grains and H- form H2
Definition at line 15 of file mole_h2_form.cpp.
References ASSERT, DEBUG_ENTRY, molezone::den, dense, deut, ENERGY_H2_STAR, findspecieslocal(), fixit(), fp_equal_tol(), gv, h2, H2_logte_hminus, H2_X_formation, H2_X_grain_formation_distribution, H2_X_Hmin_back, H2_X_hminus_formation_distribution, hd, hmi, ipEnergySort, ipH2, ipHYDROGEN, Jlowest, mole, nRot_hi, nTE_HMINUS, nVib_hi, phycon, SMALLFLOAT, and states.
Referenced by H2_LevelPops().
void diatomics::mole_H2_LTE | ( | void | ) |
mole_H2_LTE sets Boltzmann factors and LTE unit population of large H2 molecular
Definition at line 228 of file mole_h2_etc.cpp.
References ASSERT, DEBUG_ENTRY, dsexp(), fp_equal(), H2_Boltzmann, H2_populations_LTE, ioQQQ, n_trace_full, nTRACE, phycon, states, and TeUsedBoltz.
Referenced by H2_LevelPops().
long diatomics::OpacityCreate | ( | double * | stack | ) |
Definition at line 166 of file mole_h2_etc.cpp.
References ASSERT, DEBUG_ENTRY, ip_photo_opac_offset, ip_photo_opac_thresh, photoion_opacity_fun, and rfield.
void diatomics::Read_Mol_Diss_cross_sections | ( | void | ) |
Definition at line 15 of file mole_dissociate.cpp.
References ASSERT, Cont_Dissoc_Rate, DEBUG_ENTRY, Diss_Trans, FILENAME_PATH_LENGTH_2, lgEnabled, n_elec_states, nRot_hi, nVib_hi, open_data(), read_whole_line(), and WAVNRYD.
Referenced by init().
void diatomics::set_numLevelsMatrix | ( | long | numLevels | ) |
Definition at line 1994 of file mole_h2_io.cpp.
References lgREAD_DATA, and nXLevelsMatrix.
Referenced by ParseAtomH2().
void diatomics::SolveExcitedElectronicLevels | ( | void | ) |
Definition at line 1941 of file mole_h2.cpp.
References multi_arr< T, d, ALLOC, lgBC >::alloc(), ASSERT, DEBUG_ENTRY, dense_total, fixit(), H2_den_s, H2_dissprob, H2_lgOrtho, H2_old_populations, H2_rad_rate_in, H2_rad_rate_out, H2_X_rate_from_elec_excited, H2_X_rate_to_elec_excited, hmi, ioQQQ, n_elec_states, n_trace_full, nTRACE, pops_per_elec, pops_per_vib, rad_end, SDIV(), secondaries, spon_diss_tot, states, trans, and multi_arr< T, d, ALLOC, lgBC >::zero().
Referenced by H2_LevelPops().
void diatomics::SolveSomeGroundElectronicLevels | ( | void | ) |
Definition at line 2052 of file mole_h2.cpp.
References ASSERT, DEBUG_ENTRY, fp_equal(), H2_Boltzmann, H2_col_rate_in, H2_col_rate_out, H2_lgOrtho, H2_old_populations, H2_rad_rate_in, H2_rad_rate_out, H2_stat, H2_X_coll_rate, H2_X_sink, H2_X_source, hmi, ipElec_H2_energy_sort, ipRot_H2_energy_sort, ipTransitionSort, ipVib_H2_energy_sort, nLevels_per_elec, nXLevelsMatrix, rate_grain_J1_to_J0, rate_grain_op_conserve, SDIV(), secondaries, states, and trans.
Referenced by H2_LevelPops().
|
private |
Definition at line 699 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
|
private |
Definition at line 697 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
|
private |
Definition at line 700 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
double diatomics::Average_A |
Average Einstein A for H2s to H2g transition
Definition at line 296 of file h2_priv.h.
Referenced by diatomics(), and H2_Calc_Average_Rates().
double diatomics::Average_collH2_deexcit |
Average noreactive collisional rate for H2s to H2g transition
Definition at line 298 of file h2_priv.h.
Referenced by diatomics(), and H2_Calc_Average_Rates().
double diatomics::Average_collH2_dissoc_g |
Definition at line 305 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::Average_collH2_dissoc_s |
Definition at line 306 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::Average_collH2_excit |
Definition at line 300 of file h2_priv.h.
Referenced by diatomics(), and H2_Calc_Average_Rates().
double diatomics::Average_collH_deexcit |
Definition at line 299 of file h2_priv.h.
Referenced by diatomics(), and H2_Calc_Average_Rates().
double diatomics::Average_collH_dissoc_g |
Average collisional dissociation of H2g and H2s by H and H2
Definition at line 303 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::Average_collH_dissoc_s |
Definition at line 304 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::Average_collH_excit |
Definition at line 301 of file h2_priv.h.
Referenced by diatomics(), and H2_Calc_Average_Rates().
double diatomics::average_energy_g |
average energy level of H2g and H2s
Definition at line 286 of file h2_priv.h.
Referenced by H2_LevelPops(), and H2_PunchDo().
double diatomics::average_energy_s |
Definition at line 287 of file h2_priv.h.
Referenced by H2_LevelPops(), and H2_PunchDo().
|
private |
Definition at line 591 of file h2_priv.h.
Referenced by diatomics(), and H2_ParseSave().
|
private |
Definition at line 698 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
t_coll_source diatomics::coll_source[N_X_COLLIDER] |
Definition at line 316 of file h2_priv.h.
Referenced by H2_CollidRateRead(), and ParseAtomH2().
|
private |
Definition at line 701 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
Definition at line 621 of file h2_priv.h.
Referenced by H2_Calc_Average_Rates(), H2_CollidRateEvalAll(), H2_Cooling(), H2_PunchDo(), H2_X_coll_rate_evaluate(), and init().
Definition at line 622 of file h2_priv.h.
Referenced by H2_CollidRateEvalOne(), and init().
multi_arr<double,3> diatomics::Cont_Dissoc_Rate |
Definition at line 279 of file h2_priv.h.
Referenced by H2_X_sink_and_source(), Mol_Photo_Diss_Rates(), and Read_Mol_Diss_cross_sections().
double diatomics::Cont_Dissoc_Rate_H2g |
Definition at line 278 of file h2_priv.h.
Referenced by Mol_Photo_Diss_Rates().
double diatomics::Cont_Dissoc_Rate_H2s |
H2 continuum photodissociation rate coefficient (not scaled by density) from P.C. Stancil data
Definition at line 277 of file h2_priv.h.
Referenced by Mol_Photo_Diss_Rates().
|
private |
Definition at line 702 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
|
private |
Definition at line 589 of file h2_priv.h.
Referenced by Abund(), diatomics(), H2_Colden(), H2_Level_low_matrix(), H2_LevelPops(), H2_Prt_Zone(), H2_PunchDo(), H2_Solomon_rate(), H2_X_sink_and_source(), and SolveExcitedElectronicLevels().
|
private |
Definition at line 702 of file h2_priv.h.
Referenced by H2_Level_low_matrix(), and H2_PrtDepartCoef().
|
private |
Definition at line 702 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
vector< diss_tran > diatomics::Diss_Trans |
Definition at line 568 of file h2_priv.h.
Referenced by Cont_Diss_Heat_Rate(), Mol_Photo_Diss_Rates(), and Read_Mol_Diss_cross_sections().
const double diatomics::ENERGY_H2_STAR |
this is the energy (in cm-1), above which levels are considered to be H2*, and below which they are H2
Definition at line 585 of file h2_priv.h.
Referenced by diatomics(), H2_Calc_Average_Rates(), H2_LevelPops(), H2_Solomon_rate(), H2_X_sink_and_source(), init(), Mol_Photo_Diss_Rates(), and mole_H2_form().
|
private |
Definition at line 702 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
double diatomics::frac_matrix |
Definition at line 412 of file h2_priv.h.
Referenced by H2_LevelPops().
|
private |
Definition at line 638 of file h2_priv.h.
Referenced by H2_Calc_Average_Rates(), H2_Cooling(), H2_Level_low_matrix(), H2_LevelPops(), init(), mole_H2_LTE(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 651 of file h2_priv.h.
Referenced by H2_PunchDo(), init(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 652 of file h2_priv.h.
Referenced by H2_PunchDo(), init(), and SolveSomeGroundElectronicLevels().
save rate coef (cm3 s-1) for collisional dissociation
Definition at line 668 of file h2_priv.h.
Referenced by H2_CollidRateEvalAll(), H2_LevelPops(), H2_X_sink_and_source(), and init().
save rate coef (cm3 s-1) for collisional dissociation with H2g and H2s
Definition at line 671 of file h2_priv.h.
Referenced by H2_CollidRateEvalAll(), H2_LevelPops(), H2_X_sink_and_source(), and init().
|
private |
Definition at line 682 of file h2_priv.h.
Referenced by gs_rate(), H2_LevelPops(), H2_PunchDo(), H2_Solomon_rate(), and Mol_Photo_Diss_Rates().
|
private |
density of H2s and H2g during current iteration
Definition at line 682 of file h2_priv.h.
Referenced by H2_LevelPops(), H2_PunchDo(), H2_Solomon_rate(), H2_X_sink_and_source(), Mol_Photo_Diss_Rates(), and SolveExcitedElectronicLevels().
Definition at line 633 of file h2_priv.h.
Referenced by H2_Cooling(), H2_ReadDissprob(), and init().
|
private |
Definition at line 609 of file h2_priv.h.
Referenced by H2_CollidRateEvalAll(), H2_LevelPops(), H2_ReadDissocEnergies(), and init().
these will mostly become xxx[elec][vib][rot]
Definition at line 632 of file h2_priv.h.
Referenced by gs_rate(), H2_Cooling(), H2_ReadDissprob(), H2_Solomon_rate(), init(), and SolveExcitedElectronicLevels().
|
private |
Definition at line 650 of file h2_priv.h.
Referenced by H2_X_sink_and_source(), and init().
this is true if state is para, false if ortho
Definition at line 643 of file h2_priv.h.
Referenced by getLine(), H2_Calc_Average_Rates(), H2_CollidRateEvalOne(), H2_Level_low_matrix(), H2_LevelPops(), H2_PunchDo(), init(), SolveExcitedElectronicLevels(), and SolveSomeGroundElectronicLevels().
|
private |
these will mostly become xxx[elec][vib][rot]
Definition at line 637 of file h2_priv.h.
Referenced by H2_LevelPops(), H2_PunchDo(), H2_zero_pops_too_low(), init(), SolveExcitedElectronicLevels(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 639 of file h2_priv.h.
Referenced by H2_Colden(), H2_LevelPops(), H2_PunchDo(), H2_X_sink_and_source(), H2_zero_pops_too_low(), init(), and mole_H2_LTE().
|
private |
Definition at line 653 of file h2_priv.h.
Referenced by H2_LevelPops(), H2_PunchDo(), init(), SolveExcitedElectronicLevels(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 634 of file h2_priv.h.
Referenced by gs_rate(), H2_LevelPops(), H2_PunchDo(), H2_Solomon_rate(), init(), SolveExcitedElectronicLevels(), and SolveSomeGroundElectronicLevels().
|
private |
the renorm factor for this H2 to the chemistry - should be unity
Definition at line 603 of file h2_priv.h.
Referenced by H2_Cooling(), H2_LevelPops(), H2_PunchDo(), and H2_RT_tau_inc().
this is array of accumulated line intensities, used for save he lines command
Definition at line 710 of file h2_priv.h.
Referenced by getLine(), H2_LinesAdd(), H2_PunchDo(), H2_Reset(), and init().
this is total statistical weight, including nuclear spin
Definition at line 641 of file h2_priv.h.
Referenced by H2_Calc_Average_Rates(), H2_Cooling(), H2_Level_low_matrix(), H2_LevelPops(), H2_PunchDo(), init(), and SolveSomeGroundElectronicLevels().
double diatomics::H2_to_H_limit |
limit to the ratio H2/Htot - if ratio is below this, large atom is not called
Definition at line 394 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), and ParseAtomH2().
column density within X only vib and rot
Definition at line 660 of file h2_priv.h.
Referenced by GetXColden(), H2_Colden(), H2_Prt_column_density(), H2_PunchDo(), and init().
LTE column density within X only vib and rot
Definition at line 662 of file h2_priv.h.
Referenced by H2_Colden(), H2_PunchDo(), and init().
rate [s-1] for collisions from ihi to ilo
Definition at line 606 of file h2_priv.h.
Referenced by H2_Level_low_matrix(), H2_X_coll_rate_evaluate(), init(), and SolveSomeGroundElectronicLevels().
formation into specific states within X only vib and rot, includes both H- and H2 routes
Definition at line 656 of file h2_priv.h.
Referenced by H2_X_sink_and_source(), init(), and mole_H2_form().
distribution function for formation on grain surfaces, vib, rot, last dim is grain type
Definition at line 679 of file h2_priv.h.
Referenced by init(), and mole_H2_form().
backwards destruction of v,J levels due to the H- route
Definition at line 658 of file h2_priv.h.
Referenced by H2_X_sink_and_source(), init(), and mole_H2_form().
vib, rot, last dim is temperature
Definition at line 685 of file h2_priv.h.
Referenced by H2_Read_hminus_distribution(), init(), and mole_H2_form().
|
private |
rates [cm-3 s-1] from elec excited states into X only vib and rot
Definition at line 664 of file h2_priv.h.
Referenced by H2_Level_low_matrix(), H2_LevelPops(), init(), and SolveExcitedElectronicLevels().
|
private |
rates [s-1] to elec excited states from X only vib and rot
Definition at line 666 of file h2_priv.h.
Referenced by H2_Level_low_matrix(), H2_LevelPops(), init(), and SolveExcitedElectronicLevels().
|
private |
Definition at line 675 of file h2_priv.h.
Referenced by H2_Level_low_matrix(), H2_X_sink_and_source(), init(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 674 of file h2_priv.h.
Referenced by H2_Level_low_matrix(), H2_X_sink_and_source(), init(), and SolveSomeGroundElectronicLevels().
double diatomics::HeatChange |
Definition at line 293 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::HeatChangeOld |
Definition at line 293 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::HeatDexc |
Definition at line 290 of file h2_priv.h.
Referenced by diatomics(), H2_Cooling(), H2_LevelPops(), H2_PunchDo(), and H2_zero_pops_too_low().
double diatomics::HeatDexc_deriv |
Definition at line 292 of file h2_priv.h.
Referenced by diatomics(), H2_Cooling(), and H2_zero_pops_too_low().
double diatomics::HeatDexc_old |
Definition at line 291 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::HeatDiss |
Definition at line 289 of file h2_priv.h.
Referenced by diatomics(), H2_Cooling(), H2_PunchDo(), and H2_zero_pops_too_low().
long diatomics::ip_photo_opac_offset |
Definition at line 314 of file h2_priv.h.
Referenced by CalcPhotoionizationRate(), and OpacityCreate().
long diatomics::ip_photo_opac_thresh |
index for threshold for photoionization
Definition at line 313 of file h2_priv.h.
Referenced by CalcPhotoionizationRate(), and OpacityCreate().
|
private |
Definition at line 688 of file h2_priv.h.
Referenced by H2_LevelPops(), init(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 690 of file h2_priv.h.
Referenced by GetDissociationRate(), GetHeatRate(), GetIndices(), getLine(), gs_rate(), H2_Calc_Average_Rates(), H2_LevelPops(), H2_LinesAdd(), H2_Prt_Zone(), H2_PrtDepartCoef(), H2_PunchDo(), H2_ReadTransprob(), init(), Mol_Photo_Diss_Rates(), MolDissocOpacity(), and mole_H2_form().
|
private |
Definition at line 689 of file h2_priv.h.
Referenced by H2_CollidRateEvalAll(), H2_Cooling(), H2_Level_low_matrix(), H2_LevelPops(), H2_PunchDo(), H2_X_sink_and_source(), init(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 691 of file h2_priv.h.
Referenced by gs_rate(), H2_Calc_Average_Rates(), H2_Level_low_matrix(), H2_LinesAdd(), H2_PunchDo(), H2_ReadTransprob(), init(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 687 of file h2_priv.h.
Referenced by H2_CollidRateEvalAll(), H2_Cooling(), H2_Level_low_matrix(), H2_LevelPops(), H2_PunchDo(), H2_X_sink_and_source(), init(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 707 of file h2_priv.h.
Referenced by CalcPhotoionizationRate(), and diatomics().
|
private |
Definition at line 646 of file h2_priv.h.
Referenced by diatomics(), H2_Level_low_matrix(), and H2_Reset().
|
private |
this gives the first rotational state for each electronic state - J=0 does not exist when Lambda = 1
Definition at line 616 of file h2_priv.h.
Referenced by GetIndices(), gs_rate(), H2_PrtDepartCoef(), H2_PunchDo(), H2_Read_hminus_distribution(), H2_ReadDissprob(), H2_ReadEnergies(), H2_ReadEnergies(), init(), and mole_H2_form().
|
private |
Definition at line 571 of file h2_priv.h.
Referenced by diatomics(), H2_CollidRateEvalAll(), H2_ContPoint(), H2_LevelPops(), H2_LinesAdd(), H2_Prt_Zone(), H2_PrtDepartCoef(), H2_ReadEnergies(), and init().
|
private |
Definition at line 704 of file h2_priv.h.
Referenced by diatomics(), and H2_Level_low_matrix().
bool diatomics::lgColl_deexec_Calc |
this is option to turn off the calculated collision rates
Definition at line 359 of file h2_priv.h.
Referenced by diatomics(), H2_CollidRateEvalOne(), H2_X_coll_rate_evaluate(), H2_X_sink_and_source(), and ParseAtomH2().
bool diatomics::lgColl_dissoc_coll |
this is option to turn off guesses of collisional dissociation rates
Definition at line 362 of file h2_priv.h.
Referenced by diatomics(), H2_CollidRateEvalAll(), and ParseAtomH2().
bool diatomics::lgColl_gbar |
this is option to use estimates of the collision rates from g-bar approximations turn mole.lgColl_gbar on/off with atom h2 gbar on off
Definition at line 356 of file h2_priv.h.
Referenced by diatomics(), H2_CollidRateEvalOne(), and ParseAtomH2().
bool diatomics::lgEnabled |
Definition at line 345 of file h2_priv.h.
Referenced by cdH2_colden(), Cont_Diss_Heat_Rate(), diatomics(), H2_Accel(), H2_Colden(), H2_ContPoint(), H2_Cooling(), H2_itrzn(), H2_LevelPops(), H2_LinesAdd(), H2_LineZero(), H2_Prt_column_density(), H2_Prt_line_tau(), H2_Prt_Zone(), H2_PrtDepartCoef(), H2_Punch_line_data(), H2_PunchDo(), H2_PunchLineStuff(), H2_RadPress(), H2_RT_diffuse(), H2_RT_OTS(), H2_RT_tau_inc(), H2_RT_tau_reset(), H2_RTMake(), init(), Mol_Photo_Diss_Rates(), ParseAtomH2(), and Read_Mol_Diss_cross_sections().
bool diatomics::lgEvaluated |
says whether model has ever been evaluated in this run - if it has not been then use TH85 physics for mole balance and cooling
Definition at line 310 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), H2_PunchDo(), and H2_Reset().
|
private |
Definition at line 705 of file h2_priv.h.
Referenced by diatomics(), and H2_Level_low_matrix().
bool diatomics::lgH2_grain_deexcitation |
Definition at line 366 of file h2_priv.h.
Referenced by diatomics(), and ParseAtomH2().
bool diatomics::lgH2_H_coll_07 |
Definition at line 352 of file h2_priv.h.
Referenced by diatomics().
bool diatomics::lgH2_He_ORNL |
Definition at line 376 of file h2_priv.h.
Referenced by diatomics(), and ParseAtomH2().
bool diatomics::lgH2_NOISE |
put noise into collision rates
Definition at line 383 of file h2_priv.h.
Referenced by diatomics(), H2_CollidRateEvalOne(), init(), and ParseAtomH2().
bool diatomics::lgH2_NOISECOSMIC |
noise for the CR collisions
Definition at line 385 of file h2_priv.h.
Referenced by diatomics(), and ParseAtomH2().
bool diatomics::lgH2_ORH2_ORNL |
Definition at line 379 of file h2_priv.h.
Referenced by diatomics(), and ParseAtomH2().
bool diatomics::lgH2_ortho_para_coll_on |
option to turn off ortho-para collisions, command ATOM H2 COLLISIONS ORTHO PARA OFF
Definition at line 372 of file h2_priv.h.
Referenced by diatomics(), H2_CollidRateEvalOne(), and ParseAtomH2().
bool diatomics::lgH2_PAH2_ORNL |
Definition at line 380 of file h2_priv.h.
Referenced by diatomics(), and ParseAtomH2().
fully defined array saying whether (true) or not (false) a radiative decay is defined by the standard emission line structure
Definition at line 714 of file h2_priv.h.
Referenced by getLine(), gs_rate(), H2_Calc_Average_Rates(), H2_Level_low_matrix(), H2_PunchDo(), H2_ReadTransprob(), and init().
bool diatomics::lgLTE |
flag to force LTE level populations, atom H2 LTE
Definition at line 369 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), and ParseAtomH2().
bool diatomics::lgREAD_DATA |
flag saying whether molecular data have been read in yet
Definition at line 252 of file h2_priv.h.
Referenced by diatomics(), init(), ParseAtomH2(), and set_numLevelsMatrix().
long int diatomics::loop_h2_oscil |
Definition at line 387 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
realnum diatomics::mass_amu |
Definition at line 396 of file h2_priv.h.
Referenced by H2_RadPress(), H2_RT_tau_inc(), H2_RTMake(), and init().
long int diatomics::n_elec_states |
Definition at line 409 of file h2_priv.h.
Referenced by diatomics(), GetExcitedElecDensity(), gs_rate(), H2_PrtDepartCoef(), H2_ReadEnergies(), H2_Reset(), init(), ParseAtomH2(), Read_Mol_Diss_cross_sections(), and SolveExcitedElectronicLevels().
int diatomics::n_trace_final |
this sets how fine a trace we want for atom h2 trace
Definition at line 402 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), and ParseAtomH2().
int diatomics::n_trace_full |
Definition at line 404 of file h2_priv.h.
Referenced by diatomics(), H2_CollidRateEvalAll(), H2_Cooling(), H2_Level_low_matrix(), H2_LevelPops(), H2_RadPress(), H2_X_coll_rate_evaluate(), mole_H2_LTE(), ParseAtomH2(), and SolveExcitedElectronicLevels().
int diatomics::n_trace_iterations |
Definition at line 403 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), and ParseAtomH2().
int diatomics::n_trace_matrix |
Definition at line 405 of file h2_priv.h.
Referenced by diatomics(), H2_Level_low_matrix(), and ParseAtomH2().
|
private |
the number of times the H2 molecules has been called in this iteration. For the very first call we will use lte for the level populations, for later calls use the last solution
Definition at line 726 of file h2_priv.h.
Referenced by H2_Cooling(), H2_LevelPops(), H2_Reset(), and H2_RT_tau_inc().
long int diatomics::nCall_this_zone |
Definition at line 341 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), H2_Prt_column_density(), H2_Prt_Zone(), H2_PrtDepartCoef(), H2_PunchDo(), H2_RadPress(), H2_Reset(), H2_RT_diffuse(), and H2_RT_OTS().
|
private |
Definition at line 696 of file h2_priv.h.
Referenced by diatomics(), and H2_Level_low_matrix().
int diatomics::nElecLevelOutput |
Definition at line 349 of file h2_priv.h.
Referenced by diatomics(), H2_LinesAdd(), H2_ParseSave(), H2_PunchDo(), and H2_Reset().
|
private |
|
private |
counters used by H2_itrzn to find number of calls of h2 per zone
Definition at line 717 of file h2_priv.h.
Referenced by diatomics(), H2_itrzn(), H2_LevelPops(), and H2_Reset().
|
private |
Definition at line 718 of file h2_priv.h.
Referenced by diatomics(), H2_itrzn(), H2_LevelPops(), and H2_Reset().
|
private |
the number of ro-vib levels in each elec state
Definition at line 618 of file h2_priv.h.
Referenced by H2_CollidRateEvalAll(), H2_CollidRateRead(), H2_Cooling(), H2_Level_low_matrix(), H2_LevelPops(), H2_PunchDo(), H2_ReadEnergies(), H2_ReadEnergies(), H2_X_coll_rate_evaluate(), H2_X_sink_and_source(), init(), and SolveSomeGroundElectronicLevels().
|
private |
number of rotation levels within each elec - vib
Definition at line 613 of file h2_priv.h.
Referenced by GetIndices(), GetXColden(), gs_rate(), H2_PrtDepartCoef(), H2_PunchDo(), H2_Read_hminus_distribution(), H2_ReadDissprob(), H2_ReadEnergies(), H2_ReadTransprob(), init(), mole_H2_form(), and Read_Mol_Diss_cross_sections().
int diatomics::nTRACE |
turn on trace information
Definition at line 399 of file h2_priv.h.
Referenced by diatomics(), H2_CollidRateEvalAll(), H2_Cooling(), H2_Level_low_matrix(), H2_LevelPops(), H2_RadPress(), H2_Reset(), H2_X_coll_rate_evaluate(), mole_H2_LTE(), ParseAtomH2(), and SolveExcitedElectronicLevels().
|
private |
number of vib states within electronic states
Definition at line 611 of file h2_priv.h.
Referenced by GetIndices(), GetXColden(), gs_rate(), H2_PrtDepartCoef(), H2_PunchDo(), H2_Read_hminus_distribution(), H2_ReadDissprob(), H2_ReadEnergies(), H2_ReadEnergies(), H2_ReadTransprob(), init(), mole_H2_form(), and Read_Mol_Diss_cross_sections().
|
private |
number of levels within X which are done with matrix solver, set with atom h2 matrix command
Definition at line 695 of file h2_priv.h.
Referenced by diatomics(), H2_Level_low_matrix(), H2_LevelPops(), init(), set_numLevelsMatrix(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 706 of file h2_priv.h.
Referenced by CalcPhotoionizationRate(), and diatomics().
|
private |
this is used to establish zone number for evaluation of number of levels in matrix
Definition at line 721 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), and H2_Reset().
|
private |
Definition at line 646 of file h2_priv.h.
Referenced by diatomics(), H2_Level_low_matrix(), and H2_Reset().
long int diatomics::nzoneEval |
Definition at line 388 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::ortho_colden |
column density in ortho and para H2
Definition at line 328 of file h2_priv.h.
Referenced by cdH2_colden(), diatomics(), H2_Prt_column_density(), and H2_PunchDo().
double diatomics::ortho_density |
the density (cm-3) of ortho H2
Definition at line 319 of file h2_priv.h.
Referenced by H2_LevelPops(), H2_Prt_Zone(), and H2_PunchDo().
realnum diatomics::ortho_density_f |
Definition at line 324 of file h2_priv.h.
Referenced by H2_LevelPops().
double diatomics::ortho_para_current |
Definition at line 332 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::ortho_para_old |
Definition at line 332 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::ortho_para_older |
Definition at line 332 of file h2_priv.h.
Referenced by diatomics(), and H2_LevelPops().
double diatomics::para_colden |
Definition at line 329 of file h2_priv.h.
Referenced by cdH2_colden(), diatomics(), H2_Prt_column_density(), and H2_PunchDo().
double diatomics::para_density |
the density (cm-3) of para H2
Definition at line 321 of file h2_priv.h.
Referenced by H2_LevelPops(), H2_Prt_Zone(), and H2_PunchDo().
realnum diatomics::para_density_f |
Definition at line 325 of file h2_priv.h.
Referenced by H2_LevelPops().
|
private |
Definition at line 573 of file h2_priv.h.
Referenced by diatomics(), H2_CollidRateRead(), H2_Read_hminus_distribution(), H2_ReadDissocEnergies(), H2_ReadDissprob(), H2_ReadEnergies(), and H2_ReadTransprob().
double diatomics::photo_heat_hard |
Definition at line 256 of file h2_priv.h.
Referenced by CalcPhotoionizationRate(), and diatomics().
double diatomics::photo_heat_soft |
Definition at line 255 of file h2_priv.h.
Referenced by CalcPhotoionizationRate(), and diatomics().
double diatomics::photodissoc_BigH2_H2g |
Definition at line 258 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), and H2_zero_pops_too_low().
double diatomics::photodissoc_BigH2_H2s |
Definition at line 257 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), and H2_zero_pops_too_low().
double(* diatomics::photoion_opacity_fun) (double energy) |
Definition at line 74 of file h2_priv.h.
Referenced by diatomics(), and OpacityCreate().
double diatomics::photoionize_rate |
Definition at line 254 of file h2_priv.h.
Referenced by CalcPhotoionizationRate().
|
private |
Definition at line 702 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
|
private |
the total population in each elec state
Definition at line 620 of file h2_priv.h.
Referenced by GetExcitedElecDensity(), H2_LevelPops(), H2_PunchDo(), H2_zero_pops_too_low(), and SolveExcitedElectronicLevels().
|
private |
total population in each vib state
Definition at line 600 of file h2_priv.h.
Referenced by H2_LevelPops(), H2_Prt_Zone(), H2_zero_pops_too_low(), init(), and SolveExcitedElectronicLevels().
TransitionList::iterator diatomics::rad_end |
Definition at line 567 of file h2_priv.h.
Referenced by H2_Accel(), H2_ContPoint(), H2_LevelPops(), H2_LinesAdd(), H2_LineZero(), H2_PunchDo(), H2_RadPress(), H2_RT_diffuse(), H2_RT_OTS(), H2_RT_tau_inc(), H2_RT_tau_reset(), H2_RTMake(), H2_Solomon_rate(), H2_zero_pops_too_low(), init(), and SolveExcitedElectronicLevels().
double diatomics::rate_grain_J1_to_J0 |
Definition at line 274 of file h2_priv.h.
Referenced by diatomics(), H2_Level_low_matrix(), and SolveSomeGroundElectronicLevels().
double diatomics::rate_grain_op_conserve |
rate H2 goes from all X into either J=1 (ortho) or (J=0) para on grain surfaces - units s-1
Definition at line 273 of file h2_priv.h.
Referenced by diatomics(), H2_Level_low_matrix(), and SolveSomeGroundElectronicLevels().
|
private |
Definition at line 623 of file h2_priv.h.
Referenced by H2_CollidRateEvalOne(), H2_CollidRateRead(), and init().
double diatomics::rel_pop_LTE_g |
LTE pops of g and s used for H- back reactions
Definition at line 282 of file h2_priv.h.
Referenced by H2_LevelPops().
double diatomics::rel_pop_LTE_s |
Definition at line 283 of file h2_priv.h.
Referenced by H2_LevelPops().
double diatomics::renorm_max |
Definition at line 336 of file h2_priv.h.
Referenced by diatomics(), H2_Reset(), and H2_RT_tau_inc().
double diatomics::renorm_min |
Definition at line 337 of file h2_priv.h.
Referenced by diatomics(), H2_Reset(), and H2_RT_tau_inc().
|
private |
Definition at line 572 of file h2_priv.h.
Referenced by diatomics(), and init().
double diatomics::Solomon_dissoc_rate_g |
Definition at line 264 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), H2_PunchDo(), H2_Solomon_rate(), and H2_zero_pops_too_low().
double diatomics::Solomon_dissoc_rate_s |
Definition at line 265 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), H2_PunchDo(), H2_Solomon_rate(), and H2_zero_pops_too_low().
double diatomics::Solomon_elec_decay_g |
these are decay rates from electronic levels into g and s
Definition at line 268 of file h2_priv.h.
Referenced by H2_PunchDo(), and H2_Solomon_rate().
double diatomics::Solomon_elec_decay_s |
Definition at line 269 of file h2_priv.h.
Referenced by H2_PunchDo(), and H2_Solomon_rate().
molecule* diatomics::sp |
Definition at line 563 of file h2_priv.h.
Referenced by H2_LevelPops(), H2_X_sink_and_source(), and init().
molecule* diatomics::sp_star |
Definition at line 564 of file h2_priv.h.
Referenced by H2_X_sink_and_source(), and init().
double diatomics::spon_diss_tot |
Definition at line 262 of file h2_priv.h.
Referenced by diatomics(), H2_X_sink_and_source(), and SolveExcitedElectronicLevels().
|
private |
Definition at line 702 of file h2_priv.h.
Referenced by H2_Level_low_matrix().
qList diatomics::states |
Definition at line 565 of file h2_priv.h.
Referenced by diatomics(), GetDissociationRate(), GetHeatRate(), getLine(), gs_rate(), H2_Calc_Average_Rates(), H2_Colden(), H2_CollidRateEvalAll(), H2_CollidRateEvalOne(), H2_Cooling(), H2_Level_low_matrix(), H2_LevelPops(), H2_Prt_Zone(), H2_PunchDo(), H2_ReadEnergies(), H2_ReadTransprob(), H2_X_sink_and_source(), H2_zero_pops_too_low(), init(), Mol_Photo_Diss_Rates(), MolDissocOpacity(), mole_H2_form(), mole_H2_LTE(), SolveExcitedElectronicLevels(), and SolveSomeGroundElectronicLevels().
double diatomics::TeUsedBoltz |
Definition at line 415 of file h2_priv.h.
Referenced by diatomics(), H2_Reset(), and mole_H2_LTE().
double diatomics::TeUsedColl |
Definition at line 416 of file h2_priv.h.
Referenced by diatomics(), H2_LevelPops(), and H2_Reset().
TransitionList diatomics::trans |
Definition at line 566 of file h2_priv.h.
Referenced by diatomics(), gs_rate(), H2_Accel(), H2_Calc_Average_Rates(), H2_ContPoint(), H2_Level_low_matrix(), H2_LevelPops(), H2_LinesAdd(), H2_LineZero(), H2_Prt_line_tau(), H2_Punch_line_data(), H2_PunchDo(), H2_PunchLineStuff(), H2_RadPress(), H2_RT_diffuse(), H2_RT_OTS(), H2_RT_tau_inc(), H2_RT_tau_reset(), H2_RTMake(), H2_Solomon_rate(), H2_zero_pops_too_low(), init(), SolveExcitedElectronicLevels(), and SolveSomeGroundElectronicLevels().
double diatomics::xMeanNoise |
std and mean for the noise, log normal distribution
Definition at line 391 of file h2_priv.h.
Referenced by init(), and ParseAtomH2().
double diatomics::xSTDNoise |
Definition at line 391 of file h2_priv.h.
Referenced by init(), and ParseAtomH2().