22 for(
long iVib = 0; iVib <=
nVib_hi[0]; ++iVib )
38 hmi.H2_forms_grains = 0.;
39 hmi.H2star_forms_grains = 0.;
41 double sum_check = 0.;
44 for(
size_t nd=0; nd <
gv.bin.size(); ++nd )
46 int ipH2 = (int)
gv.which_H2distr[
gv.bin[nd]->matType];
47 for(
long iVib = 0; iVib <=
nVib_hi[0]; ++iVib )
56 gv.bin[nd]->rate_h2_form_grains_used;
71 hmi.H2star_forms_grains += one;
76 hmi.H2_forms_grains += one;
86 hmi.H2star_forms_hminus = 0.;
87 hmi.H2_forms_hminus = 0.;
88 double frac_lo , frac_hi;
98 else if(
phycon.alogte>=4. )
113 frac_lo = 1.-frac_hi;
122 double rateback = (
mole.findrk(
"H2,e-=>H,H-")+
mole.findrk(
"H2*,e-=>H,H-"))*
dense.eden;
126 for(
long iVib=0; iVib<=
nVib_hi[0]; ++iVib )
138 double one = rate * rate_interp;
146 oldrate += rate_interp;
151 hmi.H2star_forms_hminus += one;
156 hmi.H2_forms_hminus += one;
161 ASSERT( fabs(1.-oldrate)<1e-4 );
176 for(
long iVib=0; iVib<=
nVib_hi[0]; ++iVib )
#define DEBUG_ENTRY(funcname)
bool fp_equal_tol(sys_float x, sys_float y, sys_float tol)
multi_arr< realnum, 3 > H2_X_hminus_formation_distribution
multi_arr< realnum, 2 > H2_X_formation
const double ENERGY_H2_STAR
multi_arr< realnum, 2 > H2_X_Hmin_back
multi_arr< realnum, 3 > H2_X_grain_formation_distribution
valarray< long > nRot_hi[N_ELEC]
multi_arr< long int, 3 > ipEnergySort
diatomics hd("hd", 4100., &hmi.HD_total, Yan_H2_CS)
diatomics h2("h2", 4100., &hmi.H2_total, Yan_H2_CS)
const realnum H2_logte_hminus[nTE_HMINUS]
molezone * findspecieslocal(const char buf[])