#include <conv.h>
the variables that deal with the convergence of the model
Definition at line 89 of file conv.h.
const char* t_conv::chConvIoniz | ( | ) | const [inline] |
Definition at line 119 of file conv.h.
References m_chConvIoniz.
Referenced by ConvBase(), ConvEdenIoniz(), ConvFail(), and ConvIoniz().
double t_conv::convIonizNewVal | ( | ) | const [inline] |
Definition at line 127 of file conv.h.
References m_BadConvIoniz.
Referenced by ConvFail(), and ConvIoniz().
double t_conv::convIonizOldVal | ( | ) | const [inline] |
Definition at line 123 of file conv.h.
References m_BadConvIoniz.
Referenced by ConvFail(), and ConvIoniz().
long t_conv::getCounter | ( | const long | type | ) | [inline] |
long t_conv::getCounterZone | ( | const long | type | ) | [inline] |
void t_conv::incrementCounter | ( | const counter_type | type | ) | [inline] |
Definition at line 308 of file conv.h.
References m_counters, and m_counters_zone.
Referenced by ConvBase(), ConvPresTempEdenIoniz(), CoolHeatError(), EdenError(), ion_solver(), mole_solve(), and newton_step().
bool t_conv::lgConvIoniz | ( | ) | const [inline] |
Definition at line 115 of file conv.h.
References m_lgConvIoniz.
Referenced by ConvBase(), ConvFail(), ConvIoniz(), ConvPresTempEdenIoniz(), CoolSave(), EdenError(), iso_renorm(), lgStatesConserved(), TransitionProxy::outline(), RT_OTS_PrtRate(), and SaveHeat().
void t_conv::resetConvIoniz | ( | ) | [inline] |
Definition at line 100 of file conv.h.
References INPUT_LINE_LENGTH, m_BadConvIoniz, m_chConvIoniz, and m_lgConvIoniz.
Referenced by ConvBase(), ConvIoniz(), and zero().
void t_conv::resetCounters | ( | ) | [inline] |
void t_conv::resetCountersZone | ( | ) | [inline] |
Definition at line 318 of file conv.h.
References m_counters_zone, and NTYPES.
Referenced by ZoneStart().
void t_conv::setConvIonizFail | ( | const char * | reason, | |
double | oldval, | |||
double | newval | |||
) | [inline] |
Definition at line 107 of file conv.h.
References INPUT_LINE_LENGTH, m_BadConvIoniz, m_chConvIoniz, and m_lgConvIoniz.
Referenced by check_co_ion_converge(), ConvBase(), GrainChargeTemp(), iso_renorm(), lgConvEden(), lgNetEdenSrcSmall(), lgStatesConserved(), and mole_solve().
a convergence criteria
Definition at line 262 of file conv.h.
Referenced by ConvIterCheck(), ParseIterations(), and zero().
remember the average electron density error
Definition at line 178 of file conv.h.
Referenced by ConvInitSolution(), PrtFinal(), radius_increment(), and zero().
Definition at line 182 of file conv.h.
Referenced by ConvInitSolution(), PrtFinal(), radius_increment(), and zero().
Definition at line 186 of file conv.h.
Referenced by ConvInitSolution(), PrtFinal(), radius_increment(), and zero().
remember the biggest electron density error as test of convergence quality
Definition at line 220 of file conv.h.
Referenced by ConvInitSolution(), PrtComment(), PrtFinal(), radius_increment(), and zero().
remember the biggest and average heating-cooling error
Definition at line 181 of file conv.h.
Referenced by ConvInitSolution(), PrtFinal(), radius_increment(), and zero().
remember the biggest and average pressure error
Definition at line 185 of file conv.h.
Referenced by ConvInitSolution(), PrtFinal(), radius_increment(), and zero().
this gives the reason the model was declared not converged when 'iter to convergence' command is given
Definition at line 135 of file conv.h.
Referenced by ConvIterCheck(), PrtComment(), and zero().
char t_conv::chSolverEden[20] |
which electron density solver to use? set with set eden solver command, simple and new
Definition at line 245 of file conv.h.
Referenced by ConvEdenIoniz(), and zero().
char t_conv::chSolverTemp[20] |
which temperature density solver to use? set with set eden solver command, default and brent
Definition at line 249 of file conv.h.
Referenced by ConvTempEdenIoniz(), and zero().
double t_conv::dCmHdT |
numerical estimate of d(cooling-heating)/dT
Definition at line 288 of file conv.h.
Referenced by ConvTempEdenIoniz(), IterStart(), lgConvTemp(), and zero().
double t_conv::EdenErrorAllowed |
this is relative error in the electron density we want set in zero to 0.01 reset with set eden error command
Definition at line 267 of file conv.h.
Referenced by advection_set_default(), ConvBase(), GrainDrive(), GrainsInit(), diatomics::H2_LevelPops(), lgConvEden(), lgStatesConserved(), ParseSet(), PrtComment(), and zero().
failmx is largest relative error in heating cooling match
Definition at line 211 of file conv.h.
Referenced by ConvFail(), IterStart(), PrtComment(), and zero().
allowed error in total gas-phase density of each element, including molecules change with "SET DENSITY TOLERANCE" command default set in zero
Definition at line 285 of file conv.h.
Referenced by get_total_abundance_ions(), lgElemsConserved(), ParseSet(), GroupMap::setup(), and zero().
allowed error in heating - cooling balance, set with TOLERANCE command default set in zerologic
Definition at line 278 of file conv.h.
Referenced by advection_set_default(), ConvBase(), ConvFail(), CoolEvaluate(), CoolHeatError(), GrainsInit(), diatomics::H2_LevelPops(), lgConvTemp(), lgCoolHeatCheckConverge(), ParseSet(), and zero().
vector<double> t_conv::hist_pres_current |
Definition at line 295 of file conv.h.
Referenced by ConvPresTempEdenIoniz(), logPressureState(), and SaveDo().
vector<double> t_conv::hist_pres_density |
these are used to retain the density pressure history in current zone, can be output with save pressure history
Definition at line 295 of file conv.h.
Referenced by ConvPresTempEdenIoniz(), logPressureState(), and SaveDo().
vector<double> t_conv::hist_pres_error |
Definition at line 295 of file conv.h.
Referenced by ConvPresTempEdenIoniz(), logPressureState(), and SaveDo().
long int t_conv::hist_pres_nzone |
Definition at line 296 of file conv.h.
Referenced by ConvInitSolution(), and ConvPresTempEdenIoniz().
vector<double> t_conv::hist_temp_cool |
Definition at line 300 of file conv.h.
Referenced by CoolHeatError(), and SaveDo().
vector<double> t_conv::hist_temp_heat |
Definition at line 300 of file conv.h.
Referenced by CoolHeatError(), and SaveDo().
long int t_conv::hist_temp_nzone |
Definition at line 301 of file conv.h.
Referenced by ConvInitSolution(), and CoolHeatError().
vector<double> t_conv::hist_temp_temp |
these are used to retain the temp/heat/cooling history in current zone, can be output with save temperature history
Definition at line 300 of file conv.h.
Referenced by CoolHeatError(), and SaveDo().
long int t_conv::ifailz[12] |
zones where converge problems occurred
Definition at line 241 of file conv.h.
Referenced by ConvFail(), and PrtComment().
Definition at line 280 of file conv.h.
Referenced by ConvBase(), iso_renorm(), mole_solve(), ParseSet(), and zero().
bool t_conv::lgAutoIt |
says "interate to convergence" command given
Definition at line 256 of file conv.h.
Referenced by ConvIterCheck(), ParseCommands(), ParseIterations(), PrtComment(), and zero().
bool t_conv::lgBadStop |
flag saying that calculation stopped for bad reason mostly set in lgEndfun
Definition at line 253 of file conv.h.
Referenced by iter_end_check(), PrtComment(), and PrtFinal().
bool t_conv::lgConvEden |
true when the electron density has converged
Definition at line 202 of file conv.h.
Referenced by ConvEdenIoniz(), ConvPresTempEdenIoniz(), CoolSave(), lgConvEden(), TransitionProxy::outline(), SaveHeat(), and zero().
bool t_conv::lgConvPops |
this flag is used in ConvPresTempEdenIoniz to check that populations have converged
Definition at line 143 of file conv.h.
Referenced by ConvFail(), ConvPresTempEdenIoniz(), diatomics::H2_LevelPops(), and TransitionProxy::outline().
bool t_conv::lgConvPres |
true if pressure is converged, false if not
Definition at line 199 of file conv.h.
Referenced by ConvPresTempEdenIoniz(), CoolSave(), TransitionProxy::outline(), PressureChange(), SaveDo(), SaveHeat(), and zero().
bool t_conv::lgConvTemp |
true if temperature is converged, false if not
Definition at line 196 of file conv.h.
Referenced by ConvFail(), ConvPresTempEdenIoniz(), ConvTempEdenIoniz(), CoolSave(), lgConvTemp(), TransitionProxy::outline(), SaveDo(), SaveHeat(), and zero().
first sweep through solvers in this zone. also true is search phase
Definition at line 155 of file conv.h.
Referenced by ConvBase(), ConvInitSolution(), ConvPresTempEdenIoniz(), Fe2_cooling(), RT_line_all(), RT_line_escape(), RT_line_pumping(), RT_tau_inc(), RT_tau_init(), and UpdateUTAs().
flag set in ConvBase, saying whether ionization stage is trimmed down
Definition at line 189 of file conv.h.
Referenced by ConvBase(), ion_trim(), and RT_line_all().
last sweep through solvers in this zone, so update fine opacities
Definition at line 157 of file conv.h.
Referenced by ConvInitSolution(), ConvPresTempEdenIoniz(), Fe2_cooling(), RT_line_all(), RT_line_fine_opacity(), RT_line_one(), and RT_tau_inc().
bool t_conv::lgMap |
lgMap is option to map failures
Definition at line 238 of file conv.h.
Referenced by ConvFail(), ParseFail(), and zero().
bool t_conv::lgOscilOTS |
this is true if ots rates are oscillating, and this is why ionization is not converged
Definition at line 193 of file conv.h.
Referenced by ConvBase(), ConvInitSolution(), ConvIoniz(), and RT_tau_init().
bool t_conv::lgSearch |
conv.lgSearch is true during initial temp-ion search phase, false after first zone established
Definition at line 175 of file conv.h.
Referenced by atom_levelN(), ConvBase(), ConvEdenIoniz(), ConvInitSolution(), ConvIoniz(), CoolEvaluate(), dBase_solve(), EdenChange(), Fe2_cooling(), GrainCharge(), GrainChargeTemp(), GrainDrive(), H21_cm_pops(), diatomics::H2_Cooling(), diatomics::H2_LevelPops(), HeatSum(), ion_trim(), iso_level(), iter_end_check(), lgNetEdenSrcSmall(), map_do(), MyAssert(), OpacityAddTotal(), PresTotCurrent(), and store_new_densities().
says update inter-couplings after every ion solution
Definition at line 259 of file conv.h.
Referenced by ConvBase(), ParseSet(), and zero().
long int t_conv::LimFail |
LimFail is limit to number of te failures, set with "failures" cmnd
Definition at line 235 of file conv.h.
Referenced by ConvFail(), grid_do(), ParseFail(), and zero().
long int t_conv::limPres2Ioniz |
a limit to the above, in case where one zone takes forever to not converge, usually very large, set with SET PRESIONIZ command
Definition at line 161 of file conv.h.
Referenced by ConvBase(), ParseSet(), and zero().
double t_conv::m_BadConvIoniz[2] [private] |
when the lgConvIoniz flag is set false, the old and new numbers, the reason for the lack of convergence, should be set to following
Definition at line 148 of file conv.h.
Referenced by convIonizNewVal(), convIonizOldVal(), resetConvIoniz(), and setConvIonizFail().
char t_conv::m_chConvIoniz[INPUT_LINE_LENGTH] [private] |
this says why the ionization did not converge, reasons can be a large change in the level of ionization, or in the heating
Definition at line 97 of file conv.h.
Referenced by chConvIoniz(), resetConvIoniz(), and setConvIonizFail().
long t_conv::m_counters[NTYPES] [private] |
Definition at line 305 of file conv.h.
Referenced by getCounter(), incrementCounter(), and resetCounters().
long t_conv::m_counters_zone[NTYPES] [private] |
Definition at line 306 of file conv.h.
Referenced by getCounterZone(), incrementCounter(), and resetCountersZone().
bool t_conv::m_lgConvIoniz [private] |
this flag is used in ConvPresTempEdenIoniz to check that ionization has converged
Definition at line 139 of file conv.h.
Referenced by lgConvIoniz(), resetConvIoniz(), and setConvIonizFail().
Definition at line 274 of file conv.h.
Referenced by ConvPresTempEdenIoniz(), limitedDensityScaling(), and zero().
long int t_conv::nChemFail |
number of chemistry solution failures
Definition at line 232 of file conv.h.
Referenced by IterStart().
long int t_conv::nGrainFail |
number of grain ionization balance failures
Definition at line 229 of file conv.h.
Referenced by ConvFail(), IterStart(), and zero().
long int t_conv::nIonFail |
nIonFail is number of ionization failures
Definition at line 223 of file conv.h.
Referenced by cdNwcns(), ConvFail(), IterStart(), and zero().
long int t_conv::nNeFail |
nNeFail is number of electron density failures
Definition at line 217 of file conv.h.
Referenced by cdNwcns(), ConvFail(), IterStart(), and zero().
long int t_conv::nPopFail |
nIonFail is number of level population failures
Definition at line 226 of file conv.h.
Referenced by ConvFail(), IterStart(), and zero().
long int t_conv::nPreFail |
nPreFail is number of pressure failures
Definition at line 214 of file conv.h.
Referenced by cdNwcns(), ConvFail(), IterStart(), and zero().
long int t_conv::nPres2Ioniz |
this will count the number of ionizations in one call from ConvPresTempEdenIoniz
Definition at line 152 of file conv.h.
Referenced by ConvBase(), ConvInitSolution(), ConvIoniz(), ConvPresTempEdenIoniz(), CoolEvaluate(), ion_photo(), iso_update_rates(), mole_h_reactions(), OpacityAddTotal(), PrtZone(), RT_line_all(), SaveDo(), and zero().
long int t_conv::nTeFail |
nTeFail number of temperature failures
Definition at line 208 of file conv.h.
Referenced by cdNwcns(), ConvFail(), IterStart(), PrtComment(), ShowMe(), and zero().
long int t_conv::nTotalFailures |
total number of all falures, used to trigger abort
Definition at line 205 of file conv.h.
Referenced by ConvFail(), IterStart(), and zero().
long int t_conv::nTotalIoniz |
counts the number of calls to conv base after iteration starts can be used to determine very first pass through an iteration reset to zero at start of each iteration in a simulation
Definition at line 166 of file conv.h.
Referenced by ChargTranEval(), ConvBase(), ConvInitSolution(), dBase_solve(), EdenChange(), find_solution(), diatomics::H2_LevelPops(), HomogeneousSource(), ion_trim(), IonHelium(), iso_collapsed_update(), iso_collide(), iso_continuum_lower(), iso_ionize_recombine(), iso_level(), iso_radiative_recomb(), iso_update_rates(), iter_end_check(), lgCheckMonitors(), map_do(), PresTotCurrent(), PrtFinal(), RT_DestProb(), RT_iso_integrate_RRC(), tauff(), TempChange(), and zero().
long int t_conv::nTotalIoniz_start |
the same counter but set to zero after the initial solution is converged, so this is a measure of the number of calls within true zones
Definition at line 171 of file conv.h.
Referenced by ConvInitSolution(), lgCheckMonitors(), and PrtFinal().
this is relative error in the pressure, initialized to 0.02 in reset with set pressure error command
Definition at line 272 of file conv.h.
Referenced by advection_set_default(), lgTestPressureConvergence(), ParseSet(), PresTotCurrent(), and zero().
double t_conv::sigma_dCmHdT |
1-sigma uncertainty in numerical estimate of d(cooling-heating)/dT
Definition at line 291 of file conv.h.
Referenced by ConvTempEdenIoniz(), and lgConvTemp().