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

#include <mesh.h>

Inheritance diagram for t_mesh:

Public Member Functions

void InitMesh (bool lgUnitCell)
void ValidateEdges () const
void CheckMesh () const
bool lgMeshSetUp () const
long ncells () const
double emm () const
double egamry () const
double getResolutionScaleFactor () const
void setResolutionScaleFactor (double fac)
string mesh_md5sum () const
const double * anuptr () const
double anu (size_t i) const
double anu2 (size_t i) const
double anu3 (size_t i) const
double anuln (size_t i) const
const double * anulog10ptr () const
double anulog10 (size_t i) const
double anusqrt (size_t i) const
double anumin (size_t i) const
double anumax (size_t i) const
double widflx (size_t i) const
size_t ipointC (double anu) const
size_t ipointF (double anu) const
size_t ithreshC (double threshold) const
size_t ithreshF (double threshold) const
bool isEnergyBound (Energy en) const
 t_mesh ()

Private Member Functions

void p_ReadResolution ()
void p_SetupMesh (bool lgUnitCell)
void p_SetupEdges ()

Private Attributes

double p_emm
double p_egamry
double p_ResolutionScaleFactor
string p_mesh_md5sum
vector< double > p_RangeUpperLimit
vector< double > p_RangeResolution
vector< Energyp_edges
vector< double > p_anu
vector< double > p_anu_edge
vector< double > p_widflx
vector< double > p_anulog10
vector< double > p_anuln
vector< double > p_anusqrt
vector< double > p_anu2
vector< double > p_anu3

Constructor & Destructor Documentation

◆ t_mesh()

t_mesh::t_mesh ( )
inline

Member Function Documentation

◆ anu()

double t_mesh::anu ( size_t i) const
inline

References p_anu.

Referenced by ipointC(), and ipointF().

◆ anu2()

double t_mesh::anu2 ( size_t i) const
inline

References p_anu2.

◆ anu3()

double t_mesh::anu3 ( size_t i) const
inline

References p_anu3.

◆ anuln()

double t_mesh::anuln ( size_t i) const
inline

References p_anuln.

◆ anulog10()

double t_mesh::anulog10 ( size_t i) const
inline

References p_anulog10.

◆ anulog10ptr()

const double * t_mesh::anulog10ptr ( ) const
inline

References get_ptr(), and p_anulog10.

Here is the call graph for this function:

◆ anumax()

double t_mesh::anumax ( size_t i) const
inline

References p_anu_edge.

Referenced by CheckMesh().

◆ anumin()

double t_mesh::anumin ( size_t i) const
inline

References p_anu_edge.

Referenced by CheckMesh().

◆ anuptr()

const double * t_mesh::anuptr ( ) const
inline

References get_ptr(), and p_anu.

Here is the call graph for this function:

◆ anusqrt()

double t_mesh::anusqrt ( size_t i) const
inline

References p_anusqrt.

◆ CheckMesh()

void t_mesh::CheckMesh ( ) const

References anumax(), anumin(), ASSERT, cdEXIT, DEBUG_ENTRY, egamry(), emm(), energy(), EXIT_FAILURE, fp_equal(), fprintf(), ioQQQ, ipointC(), ncells(), p_anu, and p_RangeUpperLimit.

Here is the call graph for this function:

◆ egamry()

double t_mesh::egamry ( ) const
inline

References p_egamry.

Referenced by CheckMesh(), and isEnergyBound().

◆ emm()

double t_mesh::emm ( ) const
inline

References p_emm.

Referenced by CheckMesh(), and isEnergyBound().

◆ getResolutionScaleFactor()

double t_mesh::getResolutionScaleFactor ( ) const
inline

◆ InitMesh()

void t_mesh::InitMesh ( bool lgUnitCell)
inline

References lgMeshSetUp(), MD5datafile(), p_egamry, p_emm, p_mesh_md5sum, p_ReadResolution(), p_SetupEdges(), p_SetupMesh(), and Energy::Ryd().

Here is the call graph for this function:

◆ ipointC()

size_t t_mesh::ipointC ( double anu) const
inline

References anu(), ASSERT, hunt_bisect(), lgMeshSetUp(), and p_anu_edge.

Referenced by CheckMesh(), and ipointF().

Here is the call graph for this function:

◆ ipointF()

size_t t_mesh::ipointF ( double anu) const
inline

References anu(), and ipointC().

Here is the call graph for this function:

◆ isEnergyBound()

bool t_mesh::isEnergyBound ( Energy en) const
inline

References egamry(), emm(), and Energy::Ryd().

Here is the call graph for this function:

◆ ithreshC()

size_t t_mesh::ithreshC ( double threshold) const
inline

References ASSERT, hunt_bisect(), lgMeshSetUp(), and p_anu.

Referenced by ithreshF().

Here is the call graph for this function:

◆ ithreshF()

size_t t_mesh::ithreshF ( double threshold) const
inline

References ithreshC().

Here is the call graph for this function:

◆ lgMeshSetUp()

bool t_mesh::lgMeshSetUp ( ) const
inline

References p_anu.

Referenced by InitMesh(), ipointC(), ithreshC(), and setResolutionScaleFactor().

◆ mesh_md5sum()

string t_mesh::mesh_md5sum ( ) const
inline

References p_mesh_md5sum.

◆ ncells()

long t_mesh::ncells ( ) const
inline

References p_anu.

Referenced by CheckMesh().

◆ p_ReadResolution()

void t_mesh::p_ReadResolution ( )
private

◆ p_SetupEdges()

void t_mesh::p_SetupEdges ( )
private

References DEBUG_ENTRY, and p_edges.

Referenced by InitMesh().

◆ p_SetupMesh()

void t_mesh::p_SetupMesh ( bool lgUnitCell)
private

◆ setResolutionScaleFactor()

void t_mesh::setResolutionScaleFactor ( double fac)
inline

References ASSERT, fp_equal(), lgMeshSetUp(), and p_ResolutionScaleFactor.

Here is the call graph for this function:

◆ ValidateEdges()

void t_mesh::ValidateEdges ( ) const

References cdEXIT, DEBUG_ENTRY, dense, EXIT_FAILURE, fprintf(), ioQQQ, ipH1s, ipH2p, ipH2s, ipH_LIKE, ipHe1s1S, ipHE_LIKE, ipHELIUM, ipHYDROGEN, iso_sp, opac, and p_edges.

Here is the call graph for this function:

◆ widflx()

double t_mesh::widflx ( size_t i) const
inline

References p_widflx.

Member Data Documentation

◆ p_anu

vector<double> t_mesh::p_anu
private

energy in Ryd of center of cell

Referenced by anu(), anuptr(), CheckMesh(), ithreshC(), lgMeshSetUp(), ncells(), and p_SetupMesh().

◆ p_anu2

vector<double> t_mesh::p_anu2
private

Referenced by anu2(), and p_SetupMesh().

◆ p_anu3

vector<double> t_mesh::p_anu3
private

Referenced by anu3(), and p_SetupMesh().

◆ p_anu_edge

vector<double> t_mesh::p_anu_edge
private

energy in Ryd at the edges of each cell

Referenced by anumax(), anumin(), ipointC(), and p_SetupMesh().

◆ p_anuln

vector<double> t_mesh::p_anuln
private

Referenced by anuln(), and p_SetupMesh().

◆ p_anulog10

vector<double> t_mesh::p_anulog10
private

these are log, sqrt, square, and cube of anu array

Referenced by anulog10(), anulog10ptr(), and p_SetupMesh().

◆ p_anusqrt

vector<double> t_mesh::p_anusqrt
private

Referenced by anusqrt(), and p_SetupMesh().

◆ p_edges

vector<Energy> t_mesh::p_edges
private

a list of major ionization edges that need to be fiddled into the frequency mesh

Referenced by p_ReadResolution(), p_SetupEdges(), and ValidateEdges().

◆ p_egamry

double t_mesh::p_egamry
private

the energy of the upper limit high-energy limit of the continuum

Referenced by egamry(), InitMesh(), p_ReadResolution(), and t_mesh().

◆ p_emm

double t_mesh::p_emm
private

================================================================================= the following define the continuum energy scale and its limits the energy of the lower limit low-energy limit of the continuum

Referenced by emm(), InitMesh(), p_SetupMesh(), and t_mesh().

◆ p_mesh_md5sum

string t_mesh::p_mesh_md5sum
private

MD5 sum of the continuum_mesh.ini file

Referenced by InitMesh(), and mesh_md5sum().

◆ p_RangeResolution

vector<double> t_mesh::p_RangeResolution
private

Referenced by p_ReadResolution(), and p_SetupMesh().

◆ p_RangeUpperLimit

vector<double> t_mesh::p_RangeUpperLimit
private

this is information needed to set the energy binning, full continuum is described by series of ranges where resolution is constant over that range

Referenced by CheckMesh(), p_ReadResolution(), and p_SetupMesh().

◆ p_ResolutionScaleFactor

double t_mesh::p_ResolutionScaleFactor
private

factor to reset continuum resolution from continuum_mesh.ini, default is unity, reset with set continuum resolution command

Referenced by getResolutionScaleFactor(), p_ReadResolution(), p_SetupMesh(), setResolutionScaleFactor(), and t_mesh().

◆ p_widflx

vector<double> t_mesh::p_widflx
private

width of cells in Rydberg

Referenced by p_SetupMesh(), and widflx().


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