cloudy  trunk
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Macros | Functions | Variables
cdinit.cpp File Reference
#include "cddefines.h"
#include "taulines.h"
#include "abund.h"
#include "atmdat.h"
#include "atoms.h"
#include "atomfeii.h"
#include "assertresults.h"
#include "broke.h"
#include "ca.h"
#include "called.h"
#include "carb.h"
#include "cddrive.h"
#include "colden.h"
#include "conv.h"
#include "continuum.h"
#include "coolheavy.h"
#include "dense.h"
#include "doppvel.h"
#include "dynamics.h"
#include "elementnames.h"
#include "embesq.h"
#include "extinc.h"
#include "fe.h"
#include "fudgec.h"
#include "geometry.h"
#include "grainvar.h"
#include "grid.h"
#include "h2.h"
#include "h2_priv.h"
#include "he.h"
#include "heavy.h"
#include "hextra.h"
#include "hmi.h"
#include "hydrogenic.h"
#include "hyperfine.h"
#include "input.h"
#include "ionbal.h"
#include "iso.h"
#include "iterations.h"
#include "lines.h"
#include "magnetic.h"
#include "hcmap.h"
#include "mean.h"
#include "mewecoef.h"
#include "mole.h"
#include "nitro.h"
#include "noexec.h"
#include "numderiv.h"
#include "oxy.h"
#include "parse.h"
#include "peimbt.h"
#include "phycon.h"
#include "plot.h"
#include "sil.h"
#include "version.h"
#include "pressure.h"
#include "prt.h"
#include "punch.h"
#include "radius.h"
#include "rfield.h"
#include "opacity.h"
#include "rt.h"
#include "secondaries.h"
#include "state.h"
#include "stopcalc.h"
#include "struc.h"
#include "thermal.h"
#include "timesc.h"
#include "trace.h"
#include "warnings.h"
#include "wind.h"
#include "init.h"

Go to the source code of this file.

Macros

#define EXTERN

Functions

void cdMPI (void)
void cdInit (void)
NORETURN void cdExit (int iexit)

Variables

FILE * ioMAP = NULL
const double ZeroNum = 0.
long nWindLine = NWINDDIM
long int nCORotate = NCOROTATE
bool lgCORotateMalloc = false
bool lgcdInitCalled = false
bool lgH2_READ_DATA = false
bool lgHydroMalloc = false
LinSvLineSv = NULL
bool lgFeIIMalloc = false
bool lgRfieldMalloced = false
bool lgOpacMalloced = false
static bool lgMPI = false

Macro Definition Documentation

#define EXTERN

Definition at line 6 of file cdinit.cpp.

Function Documentation

NORETURN void cdExit ( int  iexit)
the Cloudy exit handler 
Parameters
iexit,EXIT_FAILUREfor failure, EXIT_SUCCESS for success

Definition at line 243 of file cdinit.cpp.

References ClosePunchFiles(), ioQQQ, and lgMPI.

Referenced by main().

Here is the call graph for this function:

void cdInit ( void  )

cdInit This routine must be called before any of the others - it reinitializes many variables, and must be called before any of the other routines. In a large grid of calculations it must be repeatedly called before the start of the new calculation and after all results have been obtained from the previous model

Definition at line 141 of file cdinit.cpp.

References called, cdSetExecTime(), t_input::chCardSav, DEBUG_ENTRY, grid, input, ioPrnErr, ioQQQ, ioStdin, lgAssertsOK, lgBigBotch, t_input::lgBracketFound, lgcdInitCalled, t_grid::lgGrid, t_optimize::lgNoVary, t_optimize::lgOptimr, t_grid::lgOutputTypeOn, lgPrnErr, lgPrtSciNot, t_called::lgTalk, t_called::lgTalkForcedOff, t_called::lgTalkIsOK, t_input::lgUnderscoreFound, t_optimize::lgVaryOn, LIMPAR, t_grid::nGridCommands, NKRD, t_input::nRead, t_input::nSave, t_input::nSaveIni, NUM_OUTPUT_TYPES, t_grid::numParamValues, optimize, TotalInsanity(), and zero().

Referenced by main().

Here is the call graph for this function:

void cdMPI ( void  )

cdMPI sets flag telling exit handler to call MPI_Finalize, This routine must be called after cdInit when MPI is used

Definition at line 134 of file cdinit.cpp.

References lgMPI.

Variable Documentation

FILE* ioMAP = NULL

Definition at line 10 of file cdinit.cpp.

Referenced by ClosePunchFiles(), iter_end_check(), ParseMap(), ParsePunch(), and PunchFilesInit().

bool lgcdInitCalled = false

this is the value that will be set true when cdInit is called. Other routines will check that this is true when they are called, to verify that cdInit was called first. Definition is in cdInit.cpp

Definition at line 41 of file cdinit.cpp.

Referenced by cdDrive(), cdGetLineList(), cdInit(), and cdRead().

bool lgCORotateMalloc = false

this will be set true once space is allocated for the CO rotation array. from then on any ATOM CO LEVELS command will be ignored, this is set to false in cddefines.c

Definition at line 26 of file cdinit.cpp.

Referenced by atmdat_readin(), and ParseAtomCO().

bool lgFeIIMalloc = false

this is set true when space is allocated for the FeII arrays, once this happens FeII.nFeIILevel cannot be changed with the atom feii levels command set false in cddefines

Definition at line 95 of file cdinit.cpp.

Referenced by FeIICreate(), FeIIZero(), and ParseAtomFeII().

bool lgH2_READ_DATA = false

flag saying whether molecular data have been read in yet

Definition at line 59 of file cdinit.cpp.

Referenced by H2_Create(), H2_Zero(), and ParseAtomH2().

bool lgHydroMalloc = false

this will be set true once space is allocaed for the HydroLines array. from then on any HYDROGENIC LEVELS command will be ignored, this is set to false in cddefines.c

Definition at line 68 of file cdinit.cpp.

Referenced by ParseAtomISO().

bool lgMPI = false
static

Definition at line 130 of file cdinit.cpp.

Referenced by cdExit(), and cdMPI().

bool lgOpacMalloced = false

set true when malloced, init to false

Definition at line 105 of file cdinit.cpp.

Referenced by OpacityCreateAll(), and tauff().

bool lgRfieldMalloced = false

set true when malloced, init to false

Definition at line 103 of file cdinit.cpp.

Referenced by rfield_opac_malloc(), rfield_opac_zero(), and tfidle().

LinSv* LineSv = NULL
long int nCORotate = NCOROTATE
long nWindLine = NWINDDIM
const double ZeroNum = 0.

this is the number zero, used to trick clever compilers when dividing by it to crash program there is a routine called zero - this name cannot overlap definition is in cddefines.cpp

Definition at line 14 of file cdinit.cpp.

Referenced by ParseCrashDo().


Generated for cloudy by doxygen 1.8.1.2