Cloudy
Spectral Synthesis Code for Astrophysics
Loading...
Searching...
No Matches
t_thermal Class Reference

#include <thermal.h>

Inheritance diagram for t_thermal:
Collaboration diagram for t_thermal:

Public Member Functions

const char * chName () const
 
void zero ()
 
void comment (t_warnings &)
 
double heating (long nelem, long ion)
 
void setHeating (long nelem, long ion, double heating)
 
void AddHeating (long nelem, long ion, double heating)
 
- Public Member Functions inherited from module
 module ()
 
virtual ~module ()
 

Public Attributes

bool lgPredNextTe
 
bool lgTemperatureConstant
 
bool lgTemperatureConstantCommandParsed
 
realnum ConstTemp
 
realnum ConstGrainTemp
 
long int nUnstable
 
bool lgUnstable
 
realnum thist
 
realnum tlowst
 
bool lgTeHigh
 
bool lgEdnGTcm
 
bool lgTLaw
 
bool lgTeBD96
 
realnum T0BD96
 
realnum SigmaBD96
 
realnum T0SN99
 
bool lgTeSN99
 
DepthTable tlaw
 
bool lgTeTLaw
 
realnum collam [NCOLNT]
 
double cooling [NCOLNT]
 
double heatnt [NCOLNT]
 
long int ncltot
 
char chClntLab [NCOLNT][NCOLNT_LAB_LEN+1]
 
double elementcool [LIMELM+1]
 
double heavycollcool [LIMELM]
 
double dima
 
bool lgCNegChk
 
realnum CoolHeatMax
 
realnum wlCoolHeatMax
 
char chCoolHeatMax [NCOLNT_LAB_LEN+1]
 
double totcol
 
double ctot
 
double heatl
 
double coolheat
 
double dCooldT
 
double tsq1
 
double halfte
 
double te_update
 
bool lgCExtraOn
 
realnum CoolExtra
 
realnum cextpw
 
bool lgCoolEvalOK
 
realnum GBarMax
 
long int ipMaxExtra
 
double char_tran_heat
 
double char_tran_cool
 
double htot
 
double power
 
double dHeatdT
 
double FreeFreeTotHeat
 
realnum HeatLineMax
 

Private Attributes

double m_heating [LIMELM][LIMELM]
 

Member Function Documentation

◆ AddHeating()

void t_thermal::AddHeating ( long nelem,
long ion,
double heating )
inline

References heating(), and m_heating.

Here is the call graph for this function:

◆ chName()

const char * t_thermal::chName ( ) const
inlinevirtual

Implements module.

◆ comment()

void t_thermal::comment ( t_warnings & )
inlinevirtual

Implements module.

◆ heating()

double t_thermal::heating ( long nelem,
long ion )
inline

References m_heating.

Referenced by AddHeating(), and setHeating().

◆ setHeating()

void t_thermal::setHeating ( long nelem,
long ion,
double heating )
inline

References heating(), and m_heating.

Here is the call graph for this function:

◆ zero()

void t_thermal::zero ( void )
virtual

Member Data Documentation

◆ cextpw

realnum t_thermal::cextpw

◆ char_tran_cool

double t_thermal::char_tran_cool

Referenced by zero().

◆ char_tran_heat

double t_thermal::char_tran_heat

heating - cooling due to charge transfer ionization / recombination

Referenced by zero().

◆ chClntLab

char t_thermal::chClntLab[NCOLNT][NCOLNT_LAB_LEN+1]

◆ chCoolHeatMax

char t_thermal::chCoolHeatMax[NCOLNT_LAB_LEN+1]

◆ collam

realnum t_thermal::collam[NCOLNT]

remember strongest coolants these save arrays of line heating and cooling CoolAdd is called by n level cooling routines, and CoolAdd fills in cooling (cooling) or heating (heatnt) heatnt is always positive, although it is negative cooling

◆ ConstGrainTemp

realnum t_thermal::ConstGrainTemp

constant grain temperature

◆ ConstTemp

realnum t_thermal::ConstTemp

three uses, temperature set with constant temperature command, initial forced temperature with force temperature command also set if temperature floor is hit

◆ CoolExtra

realnum t_thermal::CoolExtra

Referenced by zero().

◆ coolheat

double t_thermal::coolheat

coolheat is other coolants that were heat sources

Referenced by zero().

◆ CoolHeatMax

realnum t_thermal::CoolHeatMax

max of negative coolants, and a pointer to it

Referenced by zero().

◆ cooling

double t_thermal::cooling[NCOLNT]

◆ ctot

double t_thermal::ctot

cooling in this zone

Referenced by zero().

◆ dCooldT

double t_thermal::dCooldT

derivative of cooling wrt temperature

◆ dHeatdT

double t_thermal::dHeatdT

derivative of total heating in this zone, evaluated in SumHeat

◆ dima

double t_thermal::dima

◆ elementcool

double t_thermal::elementcool[LIMELM+1]

◆ FreeFreeTotHeat

double t_thermal::FreeFreeTotHeat

total free free heating integrated over model

Referenced by zero().

◆ GBarMax

realnum t_thermal::GBarMax

value of, and pointer to, strongest g-bar cooling line

◆ halfte

double t_thermal::halfte

◆ heatl

double t_thermal::heatl

heatl is total line heating, t(ipLnHeat)

Referenced by zero().

◆ HeatLineMax

realnum t_thermal::HeatLineMax

HeatLineMax is largest fractional heating due to lines

◆ heatnt

double t_thermal::heatnt[NCOLNT]

◆ heavycollcool

double t_thermal::heavycollcool[LIMELM]

Referenced by zero().

◆ htot

double t_thermal::htot

total heat input to this zone

Referenced by zero().

◆ ipMaxExtra

long int t_thermal::ipMaxExtra

◆ lgCExtraOn

bool t_thermal::lgCExtraOn

info about 'extra' cooling, lgCextOn says it is on

Referenced by zero().

◆ lgCNegChk

bool t_thermal::lgCNegChk

flag set true during cooling map, saying to keep cool even if cooling is negative

Referenced by zero().

◆ lgCoolEvalOK

bool t_thermal::lgCoolEvalOK

this flag indicates (true) that we are between when cooling was set to zero with call to CoolZero, and when final sum was used. Any call after final summation in CoolSum, where set (false), would be ignored and so is fatal error

◆ lgEdnGTcm

bool t_thermal::lgEdnGTcm

flag set if energy density of rad field greater tha compton temp - this is unphysical but could be set by users

◆ lgPredNextTe

bool t_thermal::lgPredNextTe

flag saying whether to use temperature predictor for next zone, in constant density models

◆ lgTeBD96

bool t_thermal::lgTeBD96

flag to do Berltodi & Draine simple temperature law, set with tlaw bd96

◆ lgTeHigh

bool t_thermal::lgTeHigh

flag set if temperature map is from hot to cool, set with high command

◆ lgTemperatureConstant

bool t_thermal::lgTemperatureConstant

normally false, is set true if constant temperature model is assumed, this can be because the temperature floor was hit

◆ lgTemperatureConstantCommandParsed

bool t_thermal::lgTemperatureConstantCommandParsed

set true when command parser sees constant temperature assumption, not set true when temperature floor is hit. distinguishes between true constant temperature sim, and one where floor was hit

◆ lgTeSN99

bool t_thermal::lgTeSN99

◆ lgTeTLaw

bool t_thermal::lgTeTLaw

◆ lgTLaw

bool t_thermal::lgTLaw

flag saying that temperature law has been specified with tlaw command

◆ lgUnstable

bool t_thermal::lgUnstable

◆ m_heating

double t_thermal::m_heating[LIMELM][LIMELM]
private

heating per unit vol, erg cm^-3 s^-1, heating[nelem][ion]

Referenced by AddHeating(), heating(), and setHeating().

◆ ncltot

long int t_thermal::ncltot

◆ nUnstable

long int t_thermal::nUnstable

keep track of possibly thermally unstable models nUnstable is number of zones that were possibly thermally unstable lgUnstable says that current conditions possibly unstable

◆ power

double t_thermal::power

total energy input over calculated structure, updated in lines

Referenced by zero().

◆ SigmaBD96

realnum t_thermal::SigmaBD96

the coefficient on column density for temp drop off

◆ T0BD96

realnum t_thermal::T0BD96

the initial temperature in their equation

◆ T0SN99

realnum t_thermal::T0SN99

these incorporate the Sternberg & Neufeld density/temperature relationship

◆ te_update

double t_thermal::te_update

this is set to phycon.te in tfidle, is used to insure that all temp vars are properly updated when conv_ionizeopacitydo is called NB must be same type as phycon.te

◆ thist

realnum t_thermal::thist

remember the highest and lowest temperature that occurs in the model

◆ tlaw

DepthTable t_thermal::tlaw

Depth table for temperature

◆ tlowst

realnum t_thermal::tlowst

◆ totcol

double t_thermal::totcol

integrated cooling over model

Referenced by zero().

◆ tsq1

double t_thermal::tsq1

derivative of cooling, 1/te^2, .5/T

◆ wlCoolHeatMax

realnum t_thermal::wlCoolHeatMax

Referenced by zero().


The documentation for this class was generated from the following files: