/home66/gary/public_html/cloudy/c08_branch/source/hmi.h

Go to the documentation of this file.
00001 /* This file is part of Cloudy and is copyright (C)1978-2008 by Gary J. Ferland and
00002  * others.  For conditions of distribution and use see copyright notice in license.txt */
00003 
00004 #ifndef _HMI_H_
00005 #define _HMI_H_
00006 
00008 void hmole(void);
00009 
00011 void hmole_reactions(void);
00012 
00014 void hmole_init(void);
00015 
00019 double hmirat(double te);
00020 
00025 void hmole_step(int *nFixup, double *error);
00026 
00028 EXTERN struct t_hmi {
00029 
00031         realnum Hmolec[N_H_MOLEC];
00032         int nProton[N_H_MOLEC];
00033         int nElectron[N_H_MOLEC];
00034 
00036         double H2_BigH2_H2g_av;
00037         double H2_BigH2_H2s_av;
00038 
00040         double H2_chem_BigH2_H2g;
00041         double H2_chem_BigH2_H2s;
00042 
00044         char chLab[N_H_MOLEC][5];
00045 
00047         double assoc_detach;
00048 
00050         double bh2h2p;
00051 
00054         double rate_grain_h2_J1_to_J0,
00055           rate_grain_h2_op_conserve;
00056 
00058         realnum H2_total;
00059         realnum H2_total_BigH2;
00060         realnum H2s_BigH2;
00061         realnum H2g_BigH2;
00062         
00063 
00065         double H2_rate_destroy;
00066 
00068         double Average_A;
00069         double h2s_sp_decay;
00070 
00072         double Average_collH2_deexcit;
00073         double Average_collH_deexcit;
00074         double Average_collH2_excit;
00075         double Average_collH_excit;
00076 
00078         double Average_collH2s_dissoc;
00079         double Average_collH2g_dissoc;
00080 
00082         double hmihet, 
00083           hmitot, 
00084           hmicol;
00085 
00087         realnum H2Opacity;
00088 
00091         double hmidep, 
00092           h2dep, 
00093           h2pdep, 
00094           h3pdep;
00095 
00097         double h2plus_heat;
00098 
00100         double HMinus_photo_rate;
00101 
00102         realnum 
00104           HeatH2DexcMax,
00106           CoolH2DexcMax,
00107           h2dfrc, 
00108           h2dtot,
00110           h2line_cool_frac;
00111 
00112         double HMinus_induc_rec_cooling,
00113           HMinus_induc_rec_rate,
00114           HMinus_photo_heat,
00115           hminus_rad_attach;
00116 
00117         long int iheh1, 
00118           iheh2;
00119 
00121         realnum rh2dis;
00122 
00124         realnum HalphaHmin;
00125 
00127         realnum BiggestH2;
00128 
00131         realnum UV_Cont_rel2_Habing_TH85_face,
00132           UV_Cont_rel2_Habing_TH85_depth,
00134           UV_Cont_rel2_Habing_spec_depth;
00135 
00141         realnum UV_Cont_rel2_Draine_DB96_face , 
00142                 UV_Cont_rel2_Draine_DB96_depth;
00143 
00145         double H2_H2g_to_H2s_rate_TH85;
00146 
00148         double H2_H2g_to_H2s_rate_BHT90;
00149         
00151         double H2_H2g_to_H2s_rate_BD96;
00152         
00154         double H2_H2g_to_H2s_rate_ELWERT;
00155         
00157         double H2_H2g_to_H2s_rate_BigH2;
00158 
00160         double H2_H2g_to_H2s_rate_used;
00161 
00163         double H2_Solomon_dissoc_rate_used_H2g;
00164         double H2_Solomon_dissoc_rate_BigH2_H2g;
00165         double H2_Solomon_dissoc_rate_TH85_H2g;
00166         double H2_Solomon_dissoc_rate_BHT90_H2g;
00167         double H2_Solomon_dissoc_rate_BD96_H2g;
00168         double H2_Solomon_dissoc_rate_ELWERT_H2g;
00169 
00170         double H2_Solomon_dissoc_rate_used_H2s;
00171         double H2_Solomon_dissoc_rate_BigH2_H2s;
00172         double H2_Solomon_dissoc_rate_TH85_H2s;
00173         double H2_Solomon_dissoc_rate_BHT90_H2s;
00174         double H2_Solomon_dissoc_rate_BD96_H2s;
00175         double H2_Solomon_dissoc_rate_ELWERT_H2s;
00176 
00181         double H2_photodissoc_used_H2g;
00182         double H2_photodissoc_used_H2s;
00183         double H2_photodissoc_BigH2_H2s;
00184         double H2_photodissoc_BigH2_H2g;
00185         double H2_photodissoc_ELWERT_H2g;
00186         double H2_photodissoc_ELWERT_H2s;
00187         double H2_photodissoc_TH85;
00188         double H2_photodissoc_BHT90;
00189 
00191         double H2_Solomon_elec_decay_H2g ,
00192           H2_Solomon_elec_decay_H2s;
00193         
00196         double H2_tripletdissoc_H2s,
00197           H2_tripletdissoc_H2g;
00198 
00201         bool lgBigH2_evaluated;
00202 
00204         long int iphmin;
00205 
00207         realnum h2pmax;
00208 
00211         realnum Tad;
00212 
00213         double 
00214 
00216           HeatH2Dish_used, 
00217           HeatH2Dish_BigH2, 
00218           HeatH2Dish_TH85, 
00219           HeatH2Dish_BD96 ,
00220           HeatH2Dish_BHT90, 
00221           HeatH2Dish_ELWERT ,
00222 
00225           HeatH2Dexc_used,
00226           HeatH2Dexc_BigH2,
00227           HeatH2Dexc_TH85,
00228           HeatH2Dexc_BD96,
00229           HeatH2Dexc_BHT90,
00230           HeatH2Dexc_ELWERT;
00231 
00233         realnum 
00234                 deriv_HeatH2Dexc_used,
00235                 deriv_HeatH2Dexc_BigH2 ,
00236                 deriv_HeatH2Dexc_TH85 ,
00237                 deriv_HeatH2Dexc_BD96 ,
00238                 deriv_HeatH2Dexc_BHT90 ,
00239                 deriv_HeatH2Dexc_ELWERT;
00240 
00243         realnum H2_forms_grains ,
00244                 H2_forms_hminus,
00245                 H2star_forms_grains,
00246                 H2star_forms_hminus;
00247 
00250         bool lgH2_Thermal_BigH2,
00254           lgH2_Chemistry_BigH2;
00255 
00257         bool lgNoH2Mole;
00258 
00261         char chH2_small_model_type;
00262 
00264         char chGrainFormPump;
00265 
00267         char chJura;
00268 
00271         realnum ScaleJura;
00272 
00274         double rate_h2_form_grains_set;  
00275 
00278         double H2_frac_abund_set;
00279 
00283         realnum rheph2hpheh,
00284           heph2heh2p;   
00285 
00287         realnum hmin_ct_firstions;
00288 
00290         double exphmi,
00296           rel_pop_LTE_Hmin,
00299           rel_pop_LTE_H2s;
00302         double rel_pop_LTE_H2p,
00305           rel_pop_LTE_H2g,
00307           rel_pop_LTE_H3p,
00309           H2g_LTE_bigH2,
00310           H2s_LTE_bigH2;
00311 
00313         bool lgLeiden_Keep_ipMH2s;
00314         bool lgLeidenCRHack;
00315 
00318           double assoc_detach_backwards_grnd, 
00319                   assoc_detach_backwards_exct, 
00320                   bh2h22hh2,
00321                   h3phmh2hh,
00322                   h3phm2h2,
00323                   h32h2,
00324                   eh3_h2h,
00325                   h3ph2hp,
00326                   h2sh,
00327                   CR_reac_H2g,
00328                   CR_reac_H2s,
00329                   h2phmh2h,
00330                   hehph2h3phe,
00331                   h2ph3p,
00332                   h2sh2g,
00333                   h2h22hh2, 
00334                   h2sh2sh2g2h, 
00335                   h2sh2sh2s2h, 
00336                   H2_photoionize_rate ,
00337                   H2_photo_heat_soft ,
00338                   H2_photo_heat_hard ,
00339                   rh2h2p ,
00340                   eh2hh ,
00341                   h2ge2h,
00342                   h2se2h,
00343                   h2hph3p,
00344                   bh2dis,
00345                   radasc, 
00346                   h3ph2p, 
00347                   h3petc,
00349                   H2_rate_create;
00350 
00351         }       hmi;
00352 
00354 enum {
00355         ipMH,    
00356         ipMHp,   
00357         ipMHm,   
00358         ipMH2g,  
00359         ipMH2p,  
00360         ipMH3p,  
00361         ipMH2s,  
00362         ipMHeHp  
00363 };
00364 
00365 
00366 #endif /* _HMI_H_ */

Generated on Mon Feb 16 12:01:17 2009 for cloudy by  doxygen 1.4.7