/home66/gary/public_html/cloudy/c08_branch/source/rfield.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 _RFIELD_H_
00005 #define _RFIELD_H_
00006 
00007 /* rfield.h */
00008 
00010 #define WL_V_FILT       5500.
00011 
00013 #define WL_B_FILT       4400.
00014 
00016 void rfield_opac_zero( long lo , long ihi );
00017 
00019 extern bool lgRfieldMalloced;
00020 
00021 EXTERN struct t_rfield {
00022 
00031         long int nflux;
00032 
00034         long int nupper;
00035 
00037         realnum emm;
00038 
00040         realnum egamry;
00041 
00043         realnum FluxFaint;
00044 
00046         realnum *anu;
00047 
00050         realnum *AnuOrg;
00051 
00053         realnum *widflx;
00054 
00056         long int *line_count;
00057 
00059         realnum *OccNumbBremsCont;
00060 
00062         realnum *OccNumbContEmitOut;
00063 
00065         realnum *anulog, 
00066           *anusqr, 
00067           *anu2, 
00068           *anu3;
00069 
00074         realnum *flux;
00075 
00077         realnum *flux_isotropic;
00078 
00080         realnum *flux_beam_time , *flux_beam_const;
00081 
00083         realnum *flux_accum;
00084 
00088         bool lgMustBlockHIon;
00089 
00090         /* this is set true if H-ionizing radiation is blocked with extinguish
00091          * command */
00092         bool lgBlockHIon;
00093 
00095         bool lgDoLineTrans;
00096 
00099         bool lgOpacityReevaluate;
00100 
00102         bool lgCMB_set;
00103 
00106         bool lgIonizReevaluate;
00107 
00109         realnum *convoc;
00110 
00113         realnum *OccNumbIncidCont;
00114 
00116         realnum *OccNumbDiffCont;
00117 
00120         double *ContBoltz;
00121 
00124         realnum **ConEmitLocal/* [depth][energy]*/;
00125 
00127         realnum *ConEmitReflec;
00128 
00132         realnum *ConEmitOut;
00133 
00135         realnum *ConInterOut;
00136 
00138         realnum *ConRefIncid;
00139 
00142         realnum *SummedCon;
00143         realnum *SummedDif;
00144         realnum *SummedOcc;
00145         realnum *SummedDifSave;
00146 
00149         realnum *ConOTS_local_photons,
00151                 *ConOTS_local_OTS_rate;
00152 
00154         realnum *TotDiff2Pht;
00155 
00158         realnum 
00160                 *otslin/*[NC_ELL]*/, 
00162                 *otscon/*[NC_ELL]*/, 
00163 
00166                  *otslinNew/*[NC_ELL]*/,
00167                  *otsconNew/*[NC_ELL]*/,
00168                 **otssav/*[NC_ELL][2]*/;
00169 
00171         realnum *outlin,
00172                 *outlin_noplot;
00173 
00175         realnum *reflin/*[NC_ELL]*/;
00176 
00178         realnum *flux_total_incident;
00179         realnum *flux_beam_const_save , *flux_time_beam_save , *flux_isotropic_save;
00180 
00182         realnum time_continuum_scale;
00183 
00186         realnum DiffPumpOn;
00187 
00189         char **chLineLabel/*[NC_ELL][5]*/;
00190 
00192         char **chContLabel/*[NC_ELL][5]*/;
00193 
00196         realnum **gff/*[LIMELM][NC_ELL]*/;
00197 
00201         bool lgCompileGauntFF;
00202 
00205         char chDffTrns[4];
00206 
00210         bool lgOutOnly;
00211 
00214         long int ipEnergyBremsThin;
00215         realnum EnergyBremsThin;
00216 
00218         long int ipMaxBolt;
00219 
00221         bool lgInducProcess;
00222 
00224         double *comup, 
00225           *comdn;
00226 
00228         long int ipB_filter , ipV_filter;
00229 
00232         long int ipG0_TH85_lo , ipG0_TH85_hi;
00233 
00236         long int ipG0_DB96_lo , ipG0_DB96_hi;
00237 
00239         long int ipG0_spec_lo , ipG0_spec_hi;
00240 
00242         long int ip1000A;
00243 
00246         double extin_mag_B_point , extin_mag_V_point;
00247 
00250         double extin_mag_B_extended , extin_mag_V_extended;
00251 
00253         double opac_mag_B_point, opac_mag_V_point, opac_mag_B_extended , opac_mag_V_extended;
00254 
00257         realnum *csigh, 
00258           *csigc;
00259 
00260         double comtot, 
00261           cmheat, 
00262           cmcool, 
00263           comoff, 
00264           cinrat;
00265 
00267         bool lgComUndr;
00268 
00271 #       define  LIMSPC  100
00272 
00274 #       define  NCELL   130000
00275 
00276         double totpow[LIMSPC], 
00277           slope[LIMSPC], 
00278           cutoff[LIMSPC][3], 
00279           spfac[LIMSPC];
00280 
00282         bool lgTimeVary[LIMSPC];
00283 
00284         /* beamed or isotropic continuum?  if isotropic then does not vary
00285          * with time */
00286         bool lgBeamed[LIMSPC];
00287 
00288         long int nspec, 
00289           ipspec;
00290 
00297         realnum **tNuRyd  , 
00298           **tslop , 
00300           **tFluxLog ;
00301 
00304         int *lgContMalloc;
00305 
00308         double range[LIMSPC][2];
00309 
00311         realnum *ConTabRead;
00312 
00315         char chSpNorm[LIMSPC][5], 
00316           chRSpec[LIMSPC][5], 
00317           chSpType[LIMSPC][6];
00318 
00320         string ioTableRead[LIMSPC];
00321 
00323         realnum qhtot, 
00324           qhe, 
00325           qheii, 
00326           qbal, 
00327           qrad, 
00328           qtot;
00329 
00331         realnum uh;
00332 
00334         realnum uheii;
00335 
00337         bool lgUSphON;
00339         realnum rstrom;
00340 
00343         bool lgHabing;
00344 
00352         long int fine_opac_nelem;
00353 
00355         long int fine_opac_nresolv;
00356 
00358         realnum fine_opac_velocity_width;
00359 
00362         realnum *trans_coef_zone;
00364         realnum *trans_coef_total;
00365 
00368         long int *ipnt_coarse_2_fine;
00369 
00371         realnum fine_ener_lo, fine_ener_hi;
00373         long nfine;
00375         long nfine_malloc;
00377         double fine_resol;
00379         realnum *fine_opac_zone;
00381         realnum *fine_opt_depth;
00383         realnum *fine_anu;
00384 
00389         long int ipFineConVelShift;
00390 
00392         bool lgOpacityFine;
00394         bool lgPunchOpacityFine;
00395 
00397         bool lgFine_opac_update;
00398 
00401         bool lgLyaOTS;
00402 
00405         bool lgHeIIOTS;
00406 
00408         bool lgKillOutLine;
00409 
00411         bool lgKillOutCont;
00412 
00414         bool lgKillOTSLine;
00415 
00417         bool lgTableRead;
00418 
00422         bool lgPlasNu;
00424         realnum plsfrq, 
00426                 plsfrqmax;
00428         long int ipPlasma, 
00430           ipPlasmax;
00431 
00434         bool lgMMok, 
00435           lgHPhtOK, 
00436           lgXRayOK, 
00437           lgGamrOK;
00438 
00440         realnum EnerGammaRay;
00441         long int ipEnerGammaRay;
00442 
00444         bool lgHionRad;
00445 
00447         realnum occmax, 
00448           occmnu, 
00449           tbrmax, 
00450           tbrmnu, 
00451           tbr4nu, 
00452           occ1nu;
00453 
00455         bool lgOcc1Hi;
00456 
00457 }       rfield;
00458 
00459 
00460 #endif /* _RFIELD_H_ */

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