Go to the source code of this file.
Data Structures | |
struct | t_dynamics |
Functions | |
void | DynaIterStart (void) |
void | DynaIterEnd (void) |
void | DynaStartZone (void) |
void | DynaEndZone (void) |
void | DynaIonize (void) |
double | DynaPresChngFactor (void) |
void | DynaZero (void) |
void | DynaCreateArrays (void) |
void | ParseDynaWind (Parser &p) |
void | ParseDynaTime (Parser &p) |
void | DynaPrtZone (void) |
void | DynaSave (FILE *ipPnunit, char chJob) |
void | DynaPunchTimeDep (FILE *ipPnunit, const char *chJob) |
realnum | DynaFlux (double depth) |
Variables | |
EXTERN struct t_dynamics | dynamics |
void DynaCreateArrays | ( | void | ) |
DynaCreateArrays allocate some space needed to save the dynamics structure variables, called from atmdat_readin
Definition at line 1937 of file dynamics.cpp.
References t_dynamics::CO_molec, DEBUG_ENTRY, dense, dynamics, EnthalpyDensity, fixit(), t_dynamics::H2_molec, ipH_LIKE, ipHYDROGEN, iso, t_dense::lgElmtOn, LIMELM, MALLOC, mole, N_H_MOLEC, NISO, t_mole::num_comole_calc, t_iso::numLevels_max, t_struc::nzlim, Old_CO_molec, Old_DenMass, Old_depth, Old_ednstr, Old_EnthalpyDensity, Old_gas_phase, Old_H2_molec, Old_hden, Old_hiistr, Old_histr, Old_pressure, Old_StatesElemNEW, Old_xIonDense, Old_xLyman_depth, t_dynamics::oldFullDepth, t_dynamics::Rate, t_dynamics::Source, t_dynamics::StatesElemNEW, struc, Upstream_CO_molec, Upstream_H2_molec, UpstreamElem, UpstreamIon, and UpstreamStatesElemNEW.
Referenced by atmdat_readin().
void DynaEndZone | ( | void | ) |
DynaEndZone called at end of iteration when advection is turned on
Definition at line 1375 of file dynamics.cpp.
References DEBUG_ENTRY, t_radius::depth, DivergePresInteg, t_radius::drad, DynaFlux(), dynamics, ioQQQ, t_dynamics::lgTracePrint, radius, wind, and Wind::windv.
Referenced by ZoneEnd().
realnum DynaFlux | ( | double | depth | ) |
Definition at line 1829 of file dynamics.cpp.
References DEBUG_ENTRY, dense, dynamics, t_dynamics::FluxCenter, t_dynamics::FluxIndex, t_dynamics::FluxScale, t_dynamics::lgFluxDScale, pow(), and t_dense::xMassDensity0.
Referenced by DynaEndZone(), DynaPresChngFactor(), and PresTotCurrent().
void DynaIonize | ( | void | ) |
DynaIonize, called from ionize to evaluate advective terms for current conditions
Definition at line 599 of file dynamics.cpp.
References AdvecSpecificEnthalpy, ASSERT, t_dynamics::CO_molec, t_dynamics::Cool(), t_dynamics::Cool_r, t_dynamics::dCooldT(), DEBUG_ENTRY, dense, t_radius::depth, t_dynamics::dHeatdT, Dyn_dr, dynamics, t_phycon::EnthalpyDensity, EnthalpyDensity, t_dense::gas_phase, t_dynamics::H2_molec, t_dense::H_sum_in_CO, t_dynamics::Heat(), t_dynamics::Heat_v, hmi, t_hmi::Hmolec, t_thermal::htot, t_dense::IonHigh, t_dense::IonLow, ioQQQ, ipCARBON, ipH_LIKE, ipHYDROGEN, ipUpstream, iso, iteration, t_dynamics::lgCoolHeat, t_dense::lgElmtOn, t_dynamics::lgTimeDependentStatic, t_dynamics::lgTracePrint, LIMELM, mole, N_H_MOLEC, t_dynamics::n_initial_relax, NISO, t_hmi::nProton, t_mole::num_comole_calc, t_iso::numLevels_local, t_struc::nzlim, nzone, Old_depth, Old_xIonDense, t_dynamics::oldFullDepth, phycon, POW2, t_pressure::PresGasCurr, pressure, radius, t_dynamics::Rate, t_dynamics::Source, t_dynamics::StatesElemNEW, struc, t_phycon::te, thermal, t_dynamics::timestep, Upstream_CO_molec, Upstream_H2_molec, UpstreamElem, UpstreamIon, UpstreamStatesElemNEW, wind, Wind::windv, t_dense::xIonDense, and t_dense::xMassDensity.
Referenced by ConvBase().
void DynaIterEnd | ( | void | ) |
routine called at end of iteration when advection is turned on
Definition at line 1396 of file dynamics.cpp.
References t_dynamics::AdvecLengthInit, ASSERT, t_thermal::ConstTemp, t_dynamics::Cool(), cosmology, t_thermal::ctot, DEBUG_ENTRY, dense, t_radius::depth, t_dynamics::discretization_error, DivergePresInteg, t_radius::dr_max_last_iter, Dyn_dr, dynamics, DynaNewStep(), DynaSaveLast(), t_dynamics::error_scale2, t_dense::gas_phase, GetHubbleFactor(), ioQQQ, iphUpstream, ipHYDROGEN, ipUpstream, ipyUpstream, t_iterations::iter_malloc, iteration, iterations, t_dynamics::lg_coronal_time_init, t_cosmology::lgDo, t_dynamics::lgRecom, t_radius::lgSdrmaxRel, Wind::lgStatic(), t_dynamics::lgStatic_completed, t_thermal::lgTemperatureConstant, lgtime_dt_specified, lgtime_Recom, t_dynamics::lgTimeDependentStatic, t_dynamics::lgTracePrint, t_dynamics::n_initial_relax, nTime_flux, phycon, t_pressure::PresGasCurr, pressure, radius, t_cosmology::redshift_current, t_cosmology::redshift_step, rfield, t_radius::sdrmax, StopCalc, t_radius::StopThickness, t_phycon::te, t_StopCalc::TempHiStopIteration, t_StopCalc::TempLoStopIteration, thermal, t_rfield::time_continuum_scale, time_dt, time_dt_scale_factor, t_dynamics::time_elapsed, time_elapsed_time, t_dynamics::timestep, t_dynamics::timestep_factor, timestep_next(), t_dynamics::timestep_stop, wind, and Wind::windv0.
Referenced by IterRestart().
void DynaIterStart | ( | void | ) |
routine called at start of iteration when advection is turned on
Definition at line 2738 of file dynamics.cpp.
References cdEXIT, DEBUG_ENTRY, dynamics, hextra, ioQQQ, iteration, t_dynamics::lgRecom, t_rfield::lgTimeVary, t_hextra::lgTurbHeatVaryTime, linint(), t_rfield::nShape, nTime_flux, rfield, t_rfield::time_continuum_scale, t_dynamics::time_elapsed, time_elapsed_time, time_flux_ratio, t_dynamics::timestep, t_hextra::TurbHeat, and t_hextra::TurbHeatSave.
Referenced by IterStart().
double DynaPresChngFactor | ( | void | ) |
DynaPresChngFactor, called from PressureChange to evaluate new density needed for current conditions and wind solution, returns ratio of new to old density, called when wind velocity is negative for D-critical solutions
Definition at line 214 of file dynamics.cpp.
References ANTISHOCK, ANTISHOCK2, ASSERT, cdEXIT, t_dynamics::chPresMode, DEBUG_ENTRY, dense, t_radius::depth, DivergePresInteg, DynaFlux(), dynamics, t_dense::gas_phase, ioQQQ, ipHYDROGEN, t_pressure::lgContRadPresOn, t_dynamics::lgSetPresMode, t_pressure::lgSonicPointAbortOK, t_dynamics::lgTimeDependentStatic, t_trace::lgTrace, t_dynamics::lgTracePrint, MAX2, t_trace::nTrConvg, nzone, ORIGINAL, t_pressure::PresGasCurr, t_pressure::PresInteg, t_pressure::PresRamCurr, pressure, PresTotCurrent(), t_pressure::PresTotlCorrect, t_pressure::PresTotlCurr, t_pressure::PresTotlInit, radius, SHOCK, t_dynamics::ShockDepth, t_dynamics::ShockMach, sign(), SMALLFLOAT, STRONGD, SUBSONIC, SUPERSONIC, trace, wind, Wind::windv, and t_dense::xMassDensity.
Referenced by lgConvPres().
void DynaPrtZone | ( | void | ) |
DynaPrtZone - called to print zone results
Definition at line 2560 of file dynamics.cpp.
References AdvecSpecificEnthalpy, ASSERT, t_dynamics::Cool(), t_thermal::ctot, DEBUG_ENTRY, dense, dynamics, t_phycon::EnergyBinding, t_phycon::EnergyExcitation, t_phycon::EnergyIonization, EnthalpyDensity, t_dense::gas_phase, t_dynamics::Heat(), ioQQQ, ipHYDROGEN, t_struc::nzlim, nzone, phycon, POW2, t_pressure::PresGasCurr, pressure, t_timesc::sound_speed_adiabatic, struc, thermal, timesc, wind, Wind::windv, and t_dense::xMassDensity.
Referenced by PrtZone().
void DynaPunchTimeDep | ( | FILE * | ipPnunit, | |
const char * | chJob | |||
) |
DynaPunchTimeDep - save info about time dependent solution
ipPnunit | ||
*chJob |
Definition at line 2590 of file dynamics.cpp.
References cdIonFrac(), cdTemp(), t_colden::colden, colden, cosmology, DEBUG_ENTRY, dense, dynamics, t_dense::eden, findspecies(), t_dense::gas_phase, ipCOL_HTOT, ipHYDROGEN, t_cosmology::redshift_current, rfield, SDIV(), t_rfield::time_continuum_scale, t_dynamics::time_elapsed, t_dynamics::timestep, and TotalInsanity().
Referenced by SaveDo().
void DynaSave | ( | FILE * | ipPnunit, | |
char | chJob | |||
) |
DynaSave save info related to advection
ipPnunit | ||
chJob |
Definition at line 2699 of file dynamics.cpp.
References AdvecSpecificEnthalpy, t_dynamics::Cool(), t_dynamics::dCooldT(), DEBUG_ENTRY, dense, t_radius::depth_mid_zone, dynamics, t_phycon::EnthalpyDensity, t_dense::gas_phase, t_dynamics::Heat(), t_thermal::htot, ipHYDROGEN, phycon, radius, t_dynamics::Rate, t_dynamics::Source, thermal, and TotalInsanity().
Referenced by SaveDo().
void DynaStartZone | ( | void | ) |
DynaStartZone called at start of iteration when advection is turned on
Definition at line 850 of file dynamics.cpp.
References AdvecSpecificEnthalpy, ASSERT, BIGFLOAT, COmole, DEBUG_ENTRY, dense, t_radius::depth, t_dynamics::discretization_error, t_dynamics::dRad, Dyn_dr, dynamics, t_dynamics::error_scale2, fp_bound(), t_dense::gas_phase, hmi, ioQQQ, ipH_LIKE, iphUpstream, ipHYDROGEN, ipUpstream, ipyUpstream, isnan, iso, iteration, t_mole::lgElem_in_chemistry, t_dense::lgElmtOn, t_dynamics::lgTracePrint, LIMELM, MAX2, MIN2, mole, N_H_MOLEC, molecule::nElem, NISO, nOld_zone, t_hmi::nProton, t_mole::num_comole_calc, t_iso::numLevels_max, nzone, Old_CO_molec, Old_depth, Old_EnthalpyDensity, Old_H2_molec, Old_hden, Old_StatesElemNEW, Old_xIonDense, POW2, radius, t_dynamics::Rate, SMALLFLOAT, t_dynamics::Source, Upstream_CO_molec, Upstream_H2_molec, t_dynamics::Upstream_hden, UpstreamElem, UpstreamIon, and UpstreamStatesElemNEW.
Referenced by ZoneStart().
void DynaZero | ( | void | ) |
DynaZero zero some dynamics variables, called from zero.c
Definition at line 1858 of file dynamics.cpp.
References t_dynamics::AdvecLengthInit, AdvecSpecificEnthalpy, BIGFLOAT, t_dynamics::convergence_tolerance, t_dynamics::Cool_r, t_dynamics::CoolMax, DEBUG_ENTRY, t_dynamics::dHeatdT, t_dynamics::discretization_error, DivergePresInteg, t_dynamics::dRad, dynamics, t_dynamics::error_scale2, t_dynamics::FluxCenter, t_dynamics::FluxIndex, t_dynamics::FluxScale, t_dynamics::Heat_v, t_dynamics::HeatMax, ipH_LIKE, t_dynamics::lgAdvection, t_dynamics::lgCoolHeat, t_dynamics::lgEquilibrium, t_dynamics::lgFluxDScale, t_dynamics::lgISO, t_dynamics::lgMETALS, t_dynamics::lgRecom, t_dynamics::lgSetPresMode, t_dynamics::lgStatic_completed, t_dynamics::lgTimeDependentStatic, t_dynamics::n_initial_relax, NISO, nOld_zone, t_dynamics::Rate, t_dynamics::time_elapsed, t_dynamics::timestep_factor, and t_dynamics::timestep_init.
Referenced by zero().
void ParseDynaTime | ( | Parser & | p | ) |
ParseDynaTime parse the time command, called from ParseCommands, in dynamics.c
*chCard |
Definition at line 2204 of file dynamics.cpp.
References advection_set_default(), ASSERT, cdEXIT, DEBUG_ENTRY, dynamics, Parser::getline(), Parser::getNumberCheckAlwaysLog(), Parser::getNumberCheckAlwaysLogLim(), Parser::getNumberDefaultAlwaysLog(), ioQQQ, lgtime_dt_specified, lgtime_Recom, t_dynamics::lgTimeDependentStatic, t_dynamics::lgTracePrint, Parser::m_lgEOF, MALLOC, Parser::nMatch(), NTIME, nTime_flux, Wind::setStatic(), Parser::strcmp(), time_dt, time_dt_scale_factor, time_elapsed_time, time_flux_ratio, t_dynamics::timestep, t_dynamics::timestep_init, t_dynamics::timestep_stop, wind, Wind::windv, and Wind::windv0.
Referenced by ParseCommands().
void ParseDynaWind | ( | Parser & | p | ) |
Definition at line 2349 of file dynamics.cpp.
References advection_set_default(), BIGDOUBLE, cdEXIT, t_dense::chDenseLaw, Wind::comass, DEBUG_ENTRY, dense, dynamics, t_dynamics::FluxCenter, t_dynamics::FluxIndex, t_dynamics::FluxScale, Parser::getNumberCheck(), Parser::getNumberDefault(), Parser::getNumberPlain(), ioQQQ, t_pressure::lgContRadPresOn, Wind::lgDisk, t_dynamics::lgFluxDScale, t_dynamics::lgTracePrint, Wind::lgWindOK, Parser::nMatch(), pow(), pressure, Wind::setBallistic(), Wind::setDefault(), Wind::setStatic(), wind, Wind::windv, and Wind::windv0.
Referenced by ParseCommands().
EXTERN struct t_dynamics dynamics |
all of these are initialized in zero
Referenced by advection_set_default(), cloudy(), CO_solve(), ConvBase(), ConvInitSolution(), ConvIterCheck(), CoolEvaluate(), CoolSave(), DynaCreateArrays(), DynaEndZone(), DynaFlux(), DynaIonize(), DynaIterEnd(), DynaIterStart(), DynaNewStep(), DynaPresChngFactor(), DynaPrtZone(), DynaPunchTimeDep(), DynaSave(), DynaSaveLast(), DynaStartZone(), DynaZero(), hmole_step(), InitDefaultsPreparse(), iso_level(), iso_radiative_recomb(), IterEnd(), IterRestart(), IterStart(), lgConserveEnergy(), lgHomogeneousSource(), lines_general(), ParseCoronal(), ParseDont(), ParseDynaTime(), ParseDynaWind(), ParseSet(), PresTotCurrent(), PrintRates(), PrtComment(), PrtFinal(), PrtZone(), radius_first(), radius_next(), SaveDo(), SaveHeat(), store_new_densities(), timestep_next(), zero(), ZoneEnd(), and ZoneStart().