/home66/gary/public_html/cloudy/c08_branch/source/dynamics.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_dynamics

Functions

void DynaEndIter (void)
void DynaStartZone (void)
void DynaEndZone (void)
void DynaIonize (void)
double DynaPresChngFactor (void)
void DynaZero (void)
void DynaCreateArrays (void)
void ParseDynaWind (char *chCard)
void ParseDynaTime (char *chCard)
void DynaPrtZone (void)
void DynaPunch (FILE *ipPnunit, char chJob)
void DynaPunchTimeDep (FILE *ipPnunit, const char *chJob)
realnum DynaFlux (double depth)

Variables

EXTERN struct t_dynamics dynamics


Function Documentation

void DynaCreateArrays ( void   ) 

DynaCreateArrays allocate some space needed to save the dynamics structure variables, called from atmdat_readin

Definition at line 1810 of file dynamics.cpp.

References t_dynamics::CO_molec, DEBUG_ENTRY, dynamics, EnthalpyDensity, t_dynamics::H2_molec, ipHYDROGEN, MALLOC, mole, t_mole::num_comole_calc, 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_xIonDense, Old_xLyman_depth, t_dynamics::Rate, t_dynamics::Source, struc, Upstream_CO_molec, Upstream_H2_molec, UpstreamElem, and UpstreamIon.

void DynaEndIter ( void   ) 

routine called at end of iteration when advection is turned on

Definition at line 1256 of file dynamics.cpp.

References t_dynamics::AdvecLengthInit, DEBUG_ENTRY, t_radius::depth, DivergePresInteg, Dyn_dr, dynamics, ioQQQ, t_iterations::iter_malloc, iteration, iterations, t_dynamics::lgStatic, t_dynamics::n_initial_relax, radius, and t_radius::router.

Referenced by IterRestart().

void DynaEndZone ( void   ) 

DynaEndZone called at end of iteration when advection is turned on

Definition at line 1236 of file dynamics.cpp.

References DEBUG_ENTRY, t_radius::depth, DIAG_PRINT, DivergePresInteg, t_radius::drad, DynaFlux(), ioQQQ, radius, wind, and t_wind::windv.

Referenced by ZoneEnd().

Here is the call graph for this function:

realnum DynaFlux ( double  depth  ) 

Definition at line 1704 of file dynamics.cpp.

References DEBUG_ENTRY, dense, dynamics, t_dynamics::FluxCenter, t_dynamics::FluxIndex, t_dynamics::FluxScale, t_dynamics::lgFluxDScale, and t_dense::xMassDensity0.

Referenced by DynaEndZone(), and DynaPresChngFactor().

void DynaIonize ( void   ) 

DynaIonize, called from ionize to evaluate advective terms for current conditions

Definition at line 604 of file dynamics.cpp.

References AdvecSpecificEnthalpy, ASSERT, t_dynamics::CO_molec, t_dynamics::Cool, t_dynamics::dCooldT, DEBUG_ENTRY, dense, t_dynamics::dHeatdT, Dyn_dr, dynamics, t_phycon::EnthalpyDensity, EnthalpyDensity, t_dense::gas_phase, t_dynamics::H2_molec, t_dynamics::Heat, ioQQQ, ipHYDROGEN, iteration, t_dynamics::lgCoolHeat, t_dynamics::lgStatic, LIMELM, MAINPRINT, mole, N_H_MOLEC, t_dynamics::n_initial_relax, t_mole::num_comole_calc, t_struc::nzlim, nzone, phycon, POW2, t_pressure::PresGasCurr, pressure, t_dynamics::Rate, t_dynamics::Source, struc, t_phycon::te, timestep, wind, t_wind::windv, and t_dense::xMassDensity.

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

Todo:
2 this should be setable at run time as per Robin Williams email rshock = 4e16;

Todo:
2 Switch to supersonic when bad enough failure for STRONGD -- need to improve this logic when the p(rho) data is cleaner

Definition at line 219 of file dynamics.cpp.

References ANTISHOCK, ANTISHOCK2, ASSERT, cdEXIT, t_dynamics::chPresMode, DEBUG_ENTRY, dense, t_radius::depth, DIAG_PRINT, DivergePresInteg, DynaFlux(), dynamics, t_dense::gas_phase, ioQQQ, ipHYDROGEN, t_pressure::lgContRadPresOn, t_dynamics::lgSetPresMode, t_pressure::lgSonicPointAbortOK, t_dynamics::lgStatic, t_trace::lgTrace, 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, t_wind::windv, and t_dense::xMassDensity.

Referenced by lgConvPres().

Here is the call graph for this function:

void DynaPrtZone ( void   ) 

DynaPrtZone - called to print zone results

Definition at line 2306 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, t_wind::windv, and t_dense::xMassDensity.

Referenced by PrtZone().

void DynaPunch ( FILE *  ipPnunit,
char  chJob 
)

DynaPunch punch info related to advection

Parameters:
ipPnunit 
chJob 

Definition at line 2442 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().

Here is the call graph for this function:

void DynaPunchTimeDep ( FILE *  ipPnunit,
const char *  chJob 
)

DynaPunchTimeDep - punch info about time dependent solution

Parameters:
ipPnunit 
*chJob 

Definition at line 2336 of file dynamics.cpp.

References cdIonFrac(), cdTemp(), t_colden::colden, colden, DEBUG_ENTRY, dense, dynamics, findspecies(), t_dense::gas_phase, ipCOL_HTOT, ipHYDROGEN, rfield, SDIV(), t_rfield::time_continuum_scale, t_dynamics::time_elapsed, timestep, and TotalInsanity().

Here is the call graph for this function:

void DynaStartZone ( void   ) 

DynaStartZone called at start of iteration when advection is turned on

Definition at line 825 of file dynamics.cpp.

References AdvecSpecificEnthalpy, ASSERT, BIGFLOAT, COmole, DEBUG_ENTRY, t_radius::depth, Dyn_dr, hmi, ioQQQ, iphUpstream, ipHYDROGEN, ipUpstream, ipyUpstream, iteration, t_mole::lgElem_in_chemistry, MAX2, mole, molecule::nElem, nOld_zone, t_hmi::nProton, t_mole::num_comole_calc, Old_CO_molec, Old_depth, Old_EnthalpyDensity, Old_H2_molec, Old_hden, Old_xIonDense, radius, SMALLFLOAT, Upstream_CO_molec, Upstream_H2_molec, Upstream_hden, UpstreamElem, and UpstreamIon.

void DynaZero ( void   ) 

DynaZero zero some dynamics variables, called from zero.c

Definition at line 1733 of file dynamics.cpp.

References t_dynamics::AdvecLengthInit, AdvecSpecificEnthalpy, BIGFLOAT, t_dynamics::convergence_tolerance, t_dynamics::Cool, t_dynamics::CoolMax, t_dynamics::dCooldT, 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, t_dynamics::HeatMax, ipH_LIKE, t_dynamics::lgAdvection, t_dynamics::lgCoolHeat, t_dynamics::lgFluxDScale, t_dynamics::lgISO, t_dynamics::lgMETALS, t_dynamics::lgRecom, t_dynamics::lgSetPresMode, t_dynamics::lgStatic, t_dynamics::lgStatic_completed, t_dynamics::n_initial_relax, NISO, nOld_zone, t_dynamics::Rate, t_dynamics::time_elapsed, timestep_factor, and timestep_init.

void ParseDynaTime ( char *  chCard  ) 

ParseDynaTime parse the time command, called from ParseCommands, in dynamics.c

Parameters:
*chCard 

Definition at line 1984 of file dynamics.cpp.

References advection_set_detault(), caps(), cdEXIT, t_dense::chDenseLaw, DEBUG_ENTRY, dense, dynamics, FFmtRead(), INPUT_LINE_LENGTH, input_readarray(), ioQQQ, t_dynamics::lgStatic, lgtime_dt_specified, lgtime_Recom, MALLOC, nMatch(), NoNumb(), NTIME, nTime_flux, time_dt, time_dt_scale_factor, time_elapsed_time, time_flux_ratio, timestep, timestep_init, timestep_stop, wind, t_wind::windv, and t_wind::windv0.

Here is the call graph for this function:

void ParseDynaWind ( char *  chCard  ) 

ParseDynaWind parse the wind command, called from ParseCommands

Parameters:
*chCard 

Todo:
2 Need to include divergence terms in pressure balance if flux index is != 0

Todo:
2 Need to include divergence terms in pressure balance if flux index is != 0

Definition at line 2129 of file dynamics.cpp.

References advection_set_detault(), BIGDOUBLE, cdEXIT, t_dense::chDenseLaw, t_wind::comass, DEBUG_ENTRY, dense, dynamics, FFmtRead(), t_dynamics::FluxCenter, t_dynamics::FluxIndex, t_dynamics::FluxScale, INPUT_LINE_LENGTH, ioQQQ, t_pressure::lgContRadPresOn, t_wind::lgDisk, t_dynamics::lgFluxDScale, t_wind::lgWindOK, nMatch(), NoNumb(), pressure, wind, t_wind::windv, and t_wind::windv0.

Here is the call graph for this function:


Variable Documentation

EXTERN struct t_dynamics dynamics

all of these are initialized in zero

Referenced by advection_set_detault(), cloudy(), CoolPunch(), DynaCreateArrays(), DynaEndIter(), DynaFlux(), DynaIonize(), DynaNewStep(), DynaPresChngFactor(), DynaPrtZone(), DynaPunch(), DynaPunchTimeDep(), DynaSaveLast(), DynaZero(), HeatPunch(), IterRestart(), lgConvPres(), ParseCoronal(), ParseDont(), ParseDynaTime(), ParseDynaWind(), ParseSet(), PrtComment(), PrtZone(), radius_first(), radius_increment(), timestep_next(), and ZoneEnd().


Generated on Mon Feb 16 12:06:04 2009 for cloudy by  doxygen 1.4.7