/home66/gary/public_html/cloudy/c10_branch/source/cpu.cpp File Reference

#include "cddefines.h"
#include "path.h"
#include "trace.h"
Include dependency graph for cpu.cpp:

Go to the source code of this file.

Functions

STATIC NORETURN void AbortErrorMessage (const char *fname, vector< string > &PathList, access_scheme scheme)
FILE * open_data (const char *fname, const char *mode, access_scheme scheme)
void open_data (fstream &stream, const char *fname, ios_base::openmode mode, access_scheme scheme)
void set_NaN (sys_float &x)
void set_NaN (sys_float x[], long n)
void set_NaN (double &x)
void set_NaN (double x[], long n)
bool MyIsnan (const sys_float &x)
bool MyIsnan (const double &x)

Detailed Description

implement hardware dependent definitions

Definition in file cpu.cpp.


Function Documentation

STATIC NORETURN void AbortErrorMessage ( const char *  fname,
vector< string > &  PathList,
access_scheme  scheme 
)

Definition at line 493 of file cpu.cpp.

References AS_DATA_ONLY, AS_DATA_OPTIONAL, cdEXIT, cpu, DEBUG_ENTRY, t_cpu::firstOpen(), ioQQQ, and t_cpu::printDataPath().

Referenced by open_data().

Here is the call graph for this function:

bool MyIsnan ( const double &  x  ) 

detect quiet and signaling NaNs in double precision FP

Definition at line 689 of file cpu.cpp.

References t_cpu::big_endian(), cpu, and t_cpu::little_endian().

Here is the call graph for this function:

bool MyIsnan ( const sys_float x  ) 

detect quiet and signaling NaNs in single precision FP

Definition at line 674 of file cpu.cpp.

Referenced by ParseCrashDo().

void open_data ( fstream &  stream,
const char *  fname,
ios_base::openmode  mode,
access_scheme  scheme 
)
FILE* open_data ( const char *  fname,
const char *  mode,
access_scheme  scheme 
)

Definition at line 546 of file cpu.cpp.

References AbortErrorMessage(), AS_DATA_LOCAL, AS_DATA_ONLY, AS_DATA_OPTIONAL, AS_LOCAL_DATA, AS_LOCAL_ONLY, cpu, DEBUG_ENTRY, t_cpu::getPathList(), ioQQQ, lgAbort, t_trace::lgTrace, t_cpu::nFileDone, and trace.

Referenced by append_file(), atmdat_CHIANTI_readin(), atmdat_LAMDA_readin(), atmdat_readin(), Badnell_rec_init(), cdGetLineList(), cdInput(), cdOutput(), ContBandsCreate(), database_readin(), FeIIBandsCreate(), FeIICreate(), FillGFF(), GetStandardHeLines(), H2_CollidRateRead(), H2_He_coll_init(), H2_ORH2_coll_init(), H2_PAH2_coll_init(), H2_Read_hminus_distribution(), H2_ReadDissprob(), H2_ReadEnergies(), H2_ReadTransprob(), HeCollidSetup(), HelikeTransProbSetup(), HyperfineCreate(), t_yield::init_yield(), InitGrid(), input_readvector(), iso_recomb_setup(), lgCompileAtmosphere(), lgCompileAtmosphereCoStar(), lgFileReadable(), lgOptimize_do(), lgValidAsciiFile(), lgValidBinFile(), main(), MD5datafile(), MD5file(), mie_read_mix(), mie_read_opc(), mie_read_rfi(), mie_read_szd(), mie_write_opc(), optimize_phymir(), phymir_state< X, Y, NP, NSTR >::p_execute_job_parallel(), phymir_state< X, Y, NP, NSTR >::p_rd_state(), phymir_state< X, Y, NP, NSTR >::p_wr_state(), ParseInit(), ParseSave(), ParseState(), pnegopc(), process_output(), ptrcer(), RauchInitializeSub(), RauchReadMPP(), rd_block(), read_continuum_mesh(), read_Helike_cross_sections(), read_hm05(), read_SH98_He1_cross_sections(), ReadAugerData(), ReadBadnellAIData(), ReadTable(), save_opacity(), StarburstInitialize(), state_get_put(), t_ADfA::t_ADfA(), t_fe2ovr_la::t_fe2ovr_la(), vary_input(), and wr_block().

Here is the call graph for this function:

void set_NaN ( double  x[],
long  n 
)

Definition at line 646 of file cpu.cpp.

References cpu, and t_cpu::Double_SNaN_Value.

void set_NaN ( double &  x  ) 

Definition at line 629 of file cpu.cpp.

References cpu, and t_cpu::Double_SNaN_Value.

void set_NaN ( sys_float  x[],
long  n 
)

Definition at line 611 of file cpu.cpp.

References cpu, and t_cpu::Float_SNaN_Value.

void set_NaN ( sys_float x  ) 

define routines for setting single and double precision signaling NaN The bit pattern for an SNaN is implementation defined, but this should work on most modern CPU's. The system definition is preferred, so in C++ this should be replaced by numeric_limits<TYPE>::signaling_NaN()

Definition at line 603 of file cpu.cpp.

References cpu, and t_cpu::Float_SNaN_Value.

Referenced by Amsterdam_Method(), ConvInitSolution(), Fe7Lev8(), Fe_10_11_13_cs(), invalidate_array(), MyMalloc(), iter_track::p_clear1(), ParseBlackbody(), ParseCrashDo(), SpeciesJunk(), xNI_coll_stren(), and zero().

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Nov 2012 for cloudy by  doxygen 1.6.1