cloudy  trunk
Data Structures | Defines | Functions | Variables
punch.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  t_punch

Defines

#define LIMPUN   100L

Functions

void PunchDo (const char *chTime)
void pun1Line (transition *t, FILE *io, realnum xLimit, long index, double population)
NORETURN void PunchLineData (FILE *io)
void punch_opacity (FILE *io, long int np)
void PunchSpecial (FILE *io, const char *chTime)
void Punch1LineData (transition *t, FILE *io, bool lgCS_2)
void punch_line (FILE *ip, const char *chDo, bool lgLog3, char *chHeader)
void punch_average (long int ipPun, const char *chJob, char *chHeader)
void punch_colden (char header[], FILE *ioPUN, const char *chDo)
void Punch_Line_RT (FILE *ip, const char *chJob)
void punchFITSfile (FILE *io, int option)
void HeatPunch (FILE *io)
void CoolPunch (FILE *io)

Variables

EXTERN struct t_punch punch

Define Documentation

#define LIMPUN   100L

Definition at line 8 of file punch.h.

Referenced by InitDefaultsPreparse(), ParsePunch(), and PunchFilesInit().


Function Documentation

void CoolPunch ( FILE *  io)
void HeatPunch ( FILE *  io)
void pun1Line ( transition t,
FILE *  io,
realnum  xLimit,
long  index,
double  population 
)
void Punch1LineData ( transition t,
FILE *  io,
bool  lgCS_2 
)

Punch1LineData data for punch one line

Parameters:
t
io
lgCS_2this flag says whether collision strength should be punched - should be false for multi level atoms since sums are not done properly
Todo:
1 define lifetime and collision rate for multi-level species so that the critical density is derived correctly in this routine. For now the flag lgCS_2 being true means to punch critical den and is only true for two-level systems all places where this routine is called with lgCS_2 false need to be fixed

Definition at line 293 of file punch_linedata.cpp.

References t_emission::Aul, chIonLbl(), t_transition::Coll, COLL_CONST, t_collision::cs, DEBUG_ENTRY, t_transition::Emis, t_quantumState::g, t_emission::gf, t_transition::Hi, t_transition::ipCont, t_transition::Lo, phycon, PrintEfmt(), prt_wl(), t_phycon::sqrte, and t_transition::WLAng.

Referenced by FeIIPunData(), H2_Punch_line_data(), and PunchLineData().

Here is the call graph for this function:

void punch_average ( long int  ipPun,
const char *  chJob,
char *  chHeader 
)

punch_average parse punch average command, or actually do the punch output

Parameters:
ipPun- array index for file for final punch output
chJob- the job we shall do, READ for reading from input stream, PUNCH

Definition at line 11 of file punch_average.cpp.

References ASSERT, caps(), cdColm(), cdEXIT, cdIonFrac(), cdTemp(), t_punch::chAverageSpeciesLabel, t_punch::chAverageType, t_elementnames::chElementNameShort, DEBUG_ENTRY, elementnames, FFmtRead(), FILENAME_PATH_LENGTH_2, GetElem(), input, INPUT_LINE_LENGTH, input_readarray(), ioQQQ, t_punch::ipPnunit, MALLOC, t_punch::nAverage2ndPar, t_punch::nAverageIonList, t_punch::nAverageList, nMatch(), NoNumb(), t_input::nRead, punch, and TotalInsanity().

Referenced by ParsePunch(), and PunchDo().

Here is the call graph for this function:

void punch_colden ( char  header[],
FILE *  ioPUN,
const char *  chDo 
)

punch_colden parse punch column density command, or actually do the punch lines output

Parameters:
ipthe file we will write to
chDo

Definition at line 12 of file punch_colden.cpp.

References caps(), cdColm(), cdEXIT, colden, DEBUG_ENTRY, FFmtRead(), INPUT_LINE_LENGTH, input_readarray(), ioQQQ, MAX2, NoNumb(), NPUNLM, and SMALLFLOAT.

Referenced by ParsePunch(), and PunchDo().

Here is the call graph for this function:

void punch_line ( FILE *  ip,
const char *  chDo,
bool  lgLog3,
char *  chHeader 
)

punch_line parse punch lines command, or actually do the punch output

Parameters:
ipthe file we will write to
chDo
lgLog3

Definition at line 25 of file punch_line.cpp.

References ASSERT, caps(), cdEmis(), cdEmis_ip(), cdEXIT, cdLine(), t_input::chCARDCAPS, DEBUG_ENTRY, t_radius::depth_mid_zone, FFmtRead(), h2, input, INPUT_LINE_LENGTH, input_readarray(), ioQQQ, lgAbort, t_h2::lgH2ON, LineSave, MAX2, NPUNLM, t_LineSave::nsum, nzone, radius, SMALLFLOAT, sprt_wl(), and wavelength.

Referenced by ParsePunch(), and PunchDo().

Here is the call graph for this function:

void Punch_Line_RT ( FILE *  ip,
const char *  chJob 
)

Punch_Line_RT parse the punch line rt command - read in a set of lines

Parameters:
ipthe file we will write to
*chJob

Definition at line 295 of file punch_line.cpp.

References caps(), cdEXIT, chLabel, chLineLbl(), DEBUG_ENTRY, dense, t_radius::depth_mid_zone, t_dense::eden, FFmtRead(), INPUT_LINE_LENGTH, input_readarray(), ioQQQ, LIMLINE, nMatch(), opac, t_opac::opacity_abs, t_opac::opacity_sct, phycon, radius, t_radius::Radius_mid_zone, StatesElem, t_phycon::te, and Transitions.

Referenced by ParsePunch(), and PunchDo().

Here is the call graph for this function:

void punch_opacity ( FILE *  io,
long int  np 
)
void PunchDo ( const char *  chTime)

PunchDo produce punch output during calculation

Parameters:
chTimechTime is null terminated 4 char string, either "MIDL" or "LAST"
Todo:
2 introduce units option for wavelength and include area for intensity to make luminosity
Todo:
1 these hardwired numbers for indices can't be right

Definition at line 102 of file punch_do.cpp.

References abund, t_wind::AccelCont, t_wind::AccelGravity, t_wind::AccelLine, t_wind::AccelTot, t_timesc::AgeCOMoleDest, AGN_He1_CS(), AGN_Hemis(), t_opac::albedo, t_rfield::anu, t_rfield::anu2, t_rfield::AnuOrg, AnuUnit(), ASSERT, GrainBin::asym, GrainBin::AveDustZ, GrainBin::AvRadius, t_gv::bin, BOLTZMANN, t_colden::C1Pops, t_colden::C2Pops, called, cdColm(), cdExecTime(), cdEXIT, cdLine(), t_tag_LineSv::chALab, ChargTranPun(), t_rfield::chContLabel, GrainBin::chDstLab, chDummy, t_elementnames::chElementSym, t_punch::chHashString, t_hmi::chLab, chLabel, t_rfield::chLineLabel, t_punch::chLineListLabel, t_punch::chPunch, t_punch::chPunchArgs, t_Heavy::chShell, t_tag_LineSv::chSumTyp, t_optimize::chVarFmt, t_thermal::ClGrid, GrainBin::cnv_H_pCM3, CO_findrk(), CO_punch_mol(), t_colden::colden, colden, t_iso::ColIoniz, t_transition::Coll, t_rfield::comdn, COmole, t_rfield::comup, t_rfield::ConEmitLocal, t_rfield::ConEmitOut, t_rfield::ConEmitReflec, t_rfield::ConInterOut, t_rfield::ConRefIncid, conv, t_radius::Conv2PrtInten, t_dynamics::Cool, t_collision::cool, CoolPunch(), t_geometry::covgeo, t_secondaries::csupra, t_thermal::ctot, t_thermal::dCooldT, DEBUG_ENTRY, dense, t_radius::depth, t_radius::depth_mid_zone, DoppVel, t_radius::drad, t_gv::dstab, GrainBin::dstab1, GrainBin::dstAbund, GrainBin::dstpot, t_gv::dstsc, GrainBin::DustDftVel, GrainBin::dustp, dynamics, DynaPunch(), DynaPunchTimeDep(), t_dense::eden, t_dense::EdenHCorr, t_dense::EdenTrue, t_yield::elec_eject_frac(), elementnames, t_transition::Emis, EN1RYD, t_phycon::EnergyBinding, t_phycon::EnergyExcitation, t_phycon::EnergyIonization, t_magnetic::EnthalpyDensity, t_phycon::EnthalpyDensity, EVRYD, t_rfield::extin_mag_V_extended, t_rfield::extin_mag_V_point, FeII_Cont, FeIIPunchColden(), FeIIPunchLevels(), FeIIPunchLines(), FeIIPunchOpticalDepth(), FeIIPunDepart(), FeIIPunPop(), t_geometry::FillFac, findspecies(), t_rfield::fine_anu, t_rfield::fine_opac_zone, t_rfield::fine_opt_depth, t_rfield::flux, t_rfield::flux_total_incident, t_wind::fmul, GammaPrt(), t_iso::gamnc, t_dense::gas_phase, t_gv::GasCoolColl, GrainBin::GasHeatPhotoEl, geometry, t_gv::GrainEmission, t_gv::GraphiteEmission, grid, GridGatherAfterCloudy(), GridGatherInCloudy(), gv, t_colden::H0_21cm_lower, t_colden::H0_21cm_upper, t_colden::H0_ov_Tspin, h2, H2_PunchDo(), t_hmi::H2_Solomon_dissoc_rate_used_H2g, t_hmi::H2_total, hcmap, t_dynamics::Heat, t_hmi::HeatH2Dexc_used, t_hmi::HeatH2Dish_used, t_thermal::heating, HeatPunch(), Heavy, molecule::hevmol, HFLines, t_transition::Hi, t_conv::hist_pres_correct, t_conv::hist_pres_current, t_conv::hist_pres_density, t_conv::hist_pres_npres, t_conv::hist_temp_cool, t_conv::hist_temp_heat, t_conv::hist_temp_ntemp, t_conv::hist_temp_temp, hmi, t_hmi::Hmolec, t_thermal::HtGrid, t_thermal::htot, HydroRecCool(), hyperfine, Singleton< T >::Inst(), Singleton< t_yield >::Inst(), GrainBin::IntArea, t_grid::interpParameters, GrainBin::IntVol, ion_recombAGN(), ionbal, ioQQQ, ipALUMINIUM, ipCARBON, ipCOL_elec, ipCOL_H0, ipCOL_H2g, ipCOL_H2s, ipCOL_H3p, ipCOL_Hp, ipCOL_HTOT, t_punch::ipConPun, t_opac::ipElement, ipFineCont(), ipH1s, ipH2p, ipH2s, ipH_LIKE, ipHe1s1S, ipHe2p1P, ipHe2p3P0, ipHe2p3P1, ipHe2p3P2, ipHe2s3S, ipHE_LIKE, ipHELIUM, ipHYDROGEN, ipIRON, t_iso::ipIsoLevNIonCon, ipMAGNESIUM, t_rfield::ipMaxBolt, ipMH2g, ipMH2p, ipMH2s, ipMH3p, ipMHm, ipoint(), t_iso::ipOpac, ipOXYGEN, t_punch::ipPnunit, ipRecEsc, ipRecNetEsc, ipRecRad, ipSILICON, ipSODIUM, ipSULPHUR, ipT146, ipT157, ipT370, ipT610, ipT63, t_rfield::ipV_filter, is_odd(), iso, iteration, iterations, molecule::label, t_punch::lg_separate_iterations, t_grid::lgAbort, lgAbort, lgCheckAsserts(), t_conv::lgConvPres, t_conv::lgConvTemp, t_dense::lgElmtOn, t_punch::lgFITS, t_punch::lgFLUSH, t_grid::lgGrid, t_grid::lgGridDone, t_h2::lgH2ON, t_punch::lgHashEndIter, t_iterations::lgLastIt, t_LineSave::lgLineEmergent, t_punch::lgLineListRatio, t_punch::lgLinEvery, t_hcmap::lgMapBeingDone, t_hcmap::lgMapDone, t_grid::lgOutputTypeOn, t_punch::lgPunchEveryZone, t_punch::lgPunLstIter, t_punch::lgRealPunch, t_geometry::lgSphere, t_dynamics::lgStatic, t_called::lgTalk, t_DoppVel::lgTurb_pressure, t_grid::lgWarn, LIMELM, t_rfield::line_count, LineSave, LineSv, t_punch::LinEvery, t_transition::Lo, magnetic, map_do(), t_hcmap::MapZone, MAX2, mean, MIN2, mole, N_H_MOLEC, t_gv::nBin, t_punch::ncPunchSkip, t_yield::nelec_eject(), nFeIIConBins, t_rfield::nfine, t_rfield::nflux, NGRID, t_grid::nintparm, t_punch::nLineList, t_conv::nPres2Ioniz, t_punch::npunch, t_punch::nPunchEveryZone, t_Heavy::nsShells, t_LineSave::nsum, t_mole::num_comole_calc, NUM_OUTPUT_TYPES, t_iso::numLevels_local, t_rfield::nupper, nzone, t_thermal::nZonGrid, t_colden::O1Pops, OccupationNumberLine(), opac, t_opac::opacity_abs, optimize, t_rfield::otscon, t_rfield::otslin, t_rfield::outlin, t_rfield::outlin_noplot, t_dense::pden, t_ionbal::PhotoRate_Shell, phycon, t_pressure::pinzon, plankf(), t_quantumState::Pop, t_emission::PopOpc, POW2, t_pressure::pres_radiation_lines_curr, t_pressure::PresGasCurr, t_pressure::PresInteg, t_pressure::PresRamCurr, t_magnetic::pressure, pressure, t_pressure::PresTotlCorrect, t_pressure::PresTotlCurr, t_pressure::PresTotlInit, t_pressure::PresTurbCurr, prt_LineLabels(), prt_wl(), PrtColumns(), PrtMeanIon(), t_punch::punarg, punch, punch_average(), punch_colden(), punch_line(), Punch_Line_RT(), punch_opacity(), punchFITSfile(), PunchGaunts(), PunchLineData(), PunchLineStuff(), t_punch::PunchLWidth, PunchNewContinuum(), PunchSpecial(), PunLineIntensity(), punResults(), GrainBin::pure_sc1, t_radius::r1r0sq, t_radius::Radius, radius, t_radius::Radius_mid_zone, t_iso::RadRec_caseB, t_iso::RadRecomb, t_dynamics::Rate, GrainBin::rate_h2_form_grains_used, t_gv::rate_h2_form_grains_used_total, t_ionbal::RateIonizTot, t_ionbal::RateRecomTot, t_rfield::reflin, rfield, RYDLAM, safe_div(), SDIV(), secondaries, sexp(), ShowMe(), t_gv::SilicateEmission, SMALLFLOAT, t_timesc::sound_speed_adiabatic, t_dynamics::Source, StatesElem, struc, t_opac::TauAbsFace, t_opac::TauAbsGeo, t_emission::TauIn, TauLines, t_opac::TauScatFace, t_phycon::te, t_phycon::te03, t_phycon::te10, t_phycon::te70, GrainBin::tedust, t_thermal::TeGrid, t_phycon::TeInit, t_phycon::telogn, TempChange(), t_phycon::TeProp, t_struc::testr, TexcLine(), thermal, t_dynamics::time_elapsed, t_timesc::time_H2_Dest_here, timesc, TorF(), t_gv::TotalEden, TotalInsanity(), t_rfield::TotDiff2Pht, t_grid::totNumModels, t_rfield::trans_coef_total, Transitions, t_hyperfine::Tspin21cm, t_DoppVel::TurbVel, t_hmi::UV_Cont_rel2_Draine_DB96_depth, t_hmi::UV_Cont_rel2_Habing_TH85_depth, wavelength, t_tag_LineSv::wavelength, t_rfield::widflx, wind, t_wind::windv, t_punch::wlLineList, t_secondaries::x12tot, t_dense::xIonDense, t_mean::xIonMeans, and t_dense::xMassDensity.

Referenced by BadStart(), and cloudy().

void punchFITSfile ( FILE *  io,
int  option 
)
NORETURN void PunchLineData ( FILE *  io)
void PunchSpecial ( FILE *  io,
const char *  chTime 
)

PunchSpecial generate output for the punch special command

Parameters:
io
chTime

Definition at line 12 of file punch_special.cpp.

References t_rfield::anu, t_rfield::anu2, t_iso::As2nu, ASSERT, C12O16Rotate, DEBUG_ENTRY, dense, t_radius::depth, t_radius::drad, t_transition::Emis, EN1RYD, fnzone, h2, H2Lines, ipH1s, ipH2p, ipH2s, ipH_LIKE, ipHYDROGEN, iso, iteration, t_h2::lgH2ON, phycon, PunFeII(), radius, rfield, RYDLAM, StatesElem, t_emission::TauIn, t_phycon::te, Transitions, t_rfield::widflx, and t_dense::xIonDense.

Referenced by PunchDo().

Here is the call graph for this function:


Variable Documentation

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated for cloudy by doxygen 1.7.6.1