Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
species.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  species
 
struct  t_pseudo_cont
 

Functions

void db_basename_to_spectral (const string &chBasename, string &chElement, char *chSpecLabel)
 
void parsespect (const char *chLabel, long &nelem, long &IonStg)
 
string makeChemical (long nelem, long ion)
 
void makeChemical (char *chLabelChemical, long nelem, long ion)
 
void spectral_to_chemical (char *chLabelSpec, const char *chLabelChem)
 
void spectral_to_chemical (string &chLabelSpec, const char *chLabelChem)
 
bool parse_chemical (const string &chLabelChem, string &chElemMol, long &spCharge)
 
void chemical_to_spectral (const string &chLabelChem, string &chLabelSpec)
 
bool isSpeciesActive (const string &chSpecLabel)
 
bool isAtomicIonValid (const long element_index, const long spCharge)
 
bool isBareNucleus (const long element_index, const long spCharge)
 

Variables

t_pseudo_cont pseudoContDef
 

Function Documentation

void chemical_to_spectral ( const string &  chLabelChem,
string &  chLabelSpec 
)

chemical_to_spectral - Convert a chemical label to spectral.

Parameters
chLabelChem[in]Chemical label, e.g., "C+"
chLabelSpec[out]Spectral label, e.g., "C 2"

References DEBUG_ENTRY, elem_symbol_to_index(), isAtomicIonValid(), isBareNucleus(), isElementSym(), and parse_chemical().

Referenced by SaveAllSpeciesLabelsLevels(), SaveSpeciesLines(), and band_emission::setup().

Here is the call graph for this function:

void db_basename_to_spectral ( const string &  chBasename,
string &  chElement,
char *  chSpecLabel 
)

db_basename_to_spectral - Convert the species basename in Stout or Chianti to a spectral label.

Parameters
chBasename[in]File basename, e.g., "c_2"
chElement[out]Extracted element name, e.g., "C"
chSpecLabel[out]Spectral label, e.g., "C 2"

References ASSERT, DEBUG_ENTRY, toupper(), and uncaps().

Referenced by database_readin().

Here is the call graph for this function:

bool isAtomicIonValid ( const long  element_index,
const long  spCharge 
)

isAtomicIonValid - Tell if an atomic ion is has a charge consistent with its atomic number.

Parameters
element_index[in]Zero-offset index for element; 0 for H, 29 for Zn
spCharge[in]Species charge
Returns
bool True, if ion is valid; false, otherwise.

References ASSERT, and DEBUG_ENTRY.

Referenced by cdTemp(), and chemical_to_spectral().

bool isBareNucleus ( const long  element_index,
const long  spCharge 
)

isBareNucleus - Tell if the given ion is a bare nucleus.

Parameters
element_index[in]Zero-offset index for element; 0 for H, 29 for Zn
spCharge[in]Species charge
Returns
bool True, if ion is bare nucleus; false, otherwise.

References ASSERT, and DEBUG_ENTRY.

Referenced by chemical_to_spectral().

bool isSpeciesActive ( const string &  chSpecLabel)

isSpeciesActive - Tell if the species is enabled

An atomic/ionic species may be inactive if the relevant element is disabled. Likewise, a molecular species may be inactive if one of its constituents elements is disabled. This function reports on the given species. If not found, the result is false.

Parameters
chLabelChem[in] Chemical label, e.g., "C+2", or "HCl"
Returns
bool True, if species active; false, otherwise.

References DEBUG_ENTRY, t_mole_global::list, mole, mole_global, NULL, and t_mole_local::species.

Referenced by SpeciesBandsCreate().

void makeChemical ( char *  chLabelChemical,
long  nelem,
long  ion 
)

References CHARS_SPECIES, DEBUG_ENTRY, and makeChemical().

Here is the call graph for this function:

bool parse_chemical ( const string &  chLabelChem,
string &  chElemMol,
long &  spCharge 
)

parse_chemical - Parse the element and charge of a chemical label.

Parameters
chLabelChem[in]Chemical label, e.g., "C+2", or "HCl"
chElemMol[out]Element or molecule, e.g., "C", or "HCl"
spCharge[out]Species charge, e.g., 2, or 0
Returns
bool True, if successful; false, otherwise.

References DEBUG_ENTRY, fprintf(), and ioQQQ.

Referenced by cdTemp(), and chemical_to_spectral().

Here is the call graph for this function:

void parsespect ( const char *  chLabel,
long &  nelem,
long &  IonStg 
)
void spectral_to_chemical ( char *  chLabelSpec,
const char *  chLabelChem 
)

spectral_to_chemical - Convert a spectral label to chemical.

Parameters
chLabelSpec[in]Spectral label, e.g., "C 2"
chLabelChem[out]Chemical label, e.g., "C+"

References DEBUG_ENTRY, and spectral_to_chemical().

Here is the call graph for this function:

void spectral_to_chemical ( string &  chLabelSpec,
const char *  chLabelChem 
)

spectral_to_chemical - Convert a spectral label to chemical.

Parameters
chLabelSpec[in]Spectral label, e.g., "C 2"
chLabelChem[out]Chemical label, e.g., "C+"

References DEBUG_ENTRY, NCHLAB, and spectral_to_chemical().

Here is the call graph for this function:

Variable Documentation

t_pseudo_cont pseudoContDef

Referenced by InitDefaultsPreparse().