Go to the documentation of this file.
32 fprintf(
ioQQQ,
" PrtMacros:\n FLT_IS_DBL\t");
34 fprintf(
ioQQQ,
"defined.\n");
37 fprintf(
ioQQQ ,
"\n DMALLOC\t");
39 fprintf(
ioQQQ,
"defined");
42 fprintf(
ioQQQ ,
"\n SYS_CONFIG\t");
44 fprintf(
ioQQQ,
"defined");
47 fprintf(
ioQQQ ,
"\n MPI_GRID_RUN\t");
49 fprintf(
ioQQQ,
"defined");
52 fprintf(
ioQQQ ,
"\n USE_GPROF\t");
54 fprintf(
ioQQQ,
"defined");
57 fprintf(
ioQQQ ,
"\n HAVE_FUNC\t");
59 fprintf(
ioQQQ,
"defined");
62 fprintf(
ioQQQ ,
"\n _MSC_VER\t");
64 fprintf(
ioQQQ,
"defined");
67 fprintf(
ioQQQ ,
"\n __INTEL_COMPILER\t");
68 # ifdef __INTEL_COMPILER
69 fprintf(
ioQQQ,
"defined");
72 fprintf(
ioQQQ ,
"\n OLD_ASSERT\t");
74 fprintf(
ioQQQ,
"defined");
77 fprintf(
ioQQQ ,
"\n HAVE_POWI\t");
79 fprintf(
ioQQQ,
"defined");
82 fprintf(
ioQQQ ,
"\n HAVE_POW_DOUBLE_INT\t");
83 # ifdef HAVE_POW_DOUBLE_INT
84 fprintf(
ioQQQ,
"defined");
87 fprintf(
ioQQQ ,
"\n HAVE_POW_DOUBLE_LONG\t");
88 # ifdef HAVE_POW_DOUBLE_LONG
89 fprintf(
ioQQQ,
"defined");
92 fprintf(
ioQQQ ,
"\n HAVE_POW_FLOAT_INT\t");
93 # ifdef HAVE_POW_FLOAT_INT
94 fprintf(
ioQQQ,
"defined");
97 fprintf(
ioQQQ ,
"\n HAVE_POW_FLOAT_LONG\t");
98 # ifdef HAVE_POW_FLOAT_LONG
99 fprintf(
ioQQQ,
"defined");
102 fprintf(
ioQQQ ,
"\n HAVE_POW_FLOAT_DOUBLE\t");
103 # ifdef HAVE_POW_FLOAT_DOUBLE
104 fprintf(
ioQQQ,
"defined");
107 fprintf(
ioQQQ ,
"\n HAVE_POW_DOUBLE_FLOAT\t");
108 # ifdef HAVE_POW_DOUBLE_FLOAT
109 fprintf(
ioQQQ,
"defined");
112 fprintf(
ioQQQ ,
"\n");
137 else if( p.
nMatch(
"ARRA") )
145 fprintf(
ioQQQ,
"An element name must appear on this PRINT ARRAYS ONLY xx command.\n");
161 else if( p.
nMatch(
"CITA") )
173 else if( p.
nMatch(
" OFF") )
184 else if( p.
nMatch(
"DEPA") )
199 nelem =
MAX2( nelem, ipISO );
205 else if( p.
nMatch(
"CONS") )
211 else if( p.
nMatch(
"ERRO") )
217 else if( p.
nMatch(
"HEAT") )
223 else if( p.
nMatch(
"PATH") )
230 else if( p.
nMatch(
"POPU"))
244 nelem =
MAX2(0,nelem);
252 fprintf(
ioQQQ,
"This iso-sequence (%s) and element (%s) are impossible.\n",
263 else if( p.
nMatch(
"LAST") )
269 else if( p.
nMatch(
"LINE") )
279 else if( p.
nMatch(
"CELL") )
286 p.
NoNumb(
"cell for line print" );
290 fprintf(
ioQQQ ,
"The cell number on the PRINT LINE CELL command must be positive.\n");
295 else if( p.
nMatch(
"COLL") )
311 else if( p.
nMatch(
"COLU") )
339 " There faintest line to print must be on this line, sorry.\n" );
345 if( a <= 0. || p.
nMatch(
" LOG") )
368 else if( p.
nMatch(
"HEAT") )
374 else if( p.
nMatch(
"INWA") )
398 fprintf(
ioQQQ,
" There must be a number for the FAINT option. They are HEAD and ZONE. Sorry.\n" );
404 else if( p.
nMatch(
"PUMP") )
410 else if( p.
nMatch(
"SORT") )
433 fprintf(
ioQQQ,
" There must be two numbers for the RANGE option, the lower and upper wavelength. Sorry.\n" );
439 fprintf(
ioQQQ,
" The lower and upper wavelength must be positive and in the correct order. Sorry.\n" );
449 else if( p.
nMatch(
"INTE") )
458 fprintf(
ioQQQ,
"I can sort by wavelength or intensity - one must be specified.\nSorry.\n" );
463 else if( p.
nMatch(
" SUM") )
486 else if( p.
nMatch(
"CUMU") )
494 fprintf(
ioQQQ,
"One of the keys should have appeared. \nPlease consult Hazy.\nSorry.\n" );
500 else if( p.
nMatch(
"MASE") )
505 else if( p.
nMatch(
"ONLY") )
510 else if( p.
nMatch(
"HEAD") )
515 fprintf(
ioQQQ,
" There must be a keyword for the ONLY option. They are HEAD and ZONE. Sorry.\n" );
520 else if( p.
nMatch(
"STAR") )
529 " The zone on which the print is to start MUST be entered on this line. Sorry.\n" );
535 else if( p.
nMatch(
"CONT") )
540 fprintf(
ioQQQ ,
" PROBLEM The PRINT CONTINUUM BLOCK command has been removed. Ignored for now.\n");
542 else if( p.
nMatch(
"INDI" ))
564 fprintf(
ioQQQ,
" PROBLEM PRINT CONTINUUM command is now the default, and the command has been removed.\n" );
568 else if( p.
nMatch(
"COOL") )
588 else if( p.
nMatch(
"MACR") )
594 else if( p.
nMatch(
" ON ") )
607 else if (p.
nMatch(
"RECOMB"))
613 else if( p.
nMatch(
"SHOR") )
621 else if( p.
nMatch(
"VERS") )
624 fprintf(
ioQQQ,
"\nThis is Cloudy %s\n%s\n\n" ,
629 else if( p.
nMatch(
"VOIGT") )
635 fprintf(
ioQQQ,
" The damping constant must appear on the print voigt command. Sorry.\n" );
639 const long NVOIGT=100;
640 realnum xprofile[NVOIGT], profileVoigtH[NVOIGT];
641 for(
long i=0; i<NVOIGT; ++i )
644 VoigtH( damp, xprofile, profileVoigtH, NVOIGT );
646 fprintf(
ioQQQ,
"\n x VoigtH\n");
647 for(
long int i=0; i<NVOIGT; ++i )
649 fprintf(
ioQQQ,
"%.4e %.4e\n", xprofile[i], profileVoigtH[i] );
660 fprintf(
ioQQQ,
" The number of zones to print MUST be entered on this line. Sorry.\n" );
679 fprintf(
ioQQQ,
" There MUST be a keyword on the following line. Sorry.\n" );
680 fprintf(
ioQQQ,
" The PRINT FAINT command is now the PRINT LINE FAINT command.\n" );
693 fprintf(
ioQQQ,
"\n\nPhysical constants used by Cloudy, taken from physconst.h\n");
695 fprintf(
ioQQQ,
"EE\t%.15g\n",
EE);
697 fprintf(
ioQQQ,
"PI\t%.15g\n",
PI);
711 fprintf(
ioQQQ,
"AU\t%.15g\n",
AU);
755 fprintf(
ioQQQ,
"Some other interesting sizes:\n");
756 fprintf(
ioQQQ,
"bool\t%lu\n",(
unsigned long)
sizeof(
bool));
757 fprintf(
ioQQQ,
"char\t%lu\n",(
unsigned long)
sizeof(
char));
758 fprintf(
ioQQQ,
"int\t%lu\n",(
unsigned long)
sizeof(
int));
759 fprintf(
ioQQQ,
"long int\t%lu\n",(
unsigned long)
sizeof(
long int));
760 fprintf(
ioQQQ,
"unsigned int\t%lu\n",(
unsigned long)
sizeof(
unsigned int));
762 fprintf(
ioQQQ,
"realnum\t%lu\n",(
unsigned long)
sizeof(
realnum));
763 fprintf(
ioQQQ,
"double\t%lu\n",(
unsigned long)
sizeof(
double));
764 fprintf(
ioQQQ,
"double*\t%lu\n",(
unsigned long)
sizeof(
double*));
767 fprintf(
ioQQQ,
"Some constants from float.h.\n");
769 fprintf(
ioQQQ,
"DBL_DIG \t%i\n", DBL_DIG);
770 fprintf(
ioQQQ,
"DBL_EPSILON \t%.15g\n",DBL_EPSILON);
771 fprintf(
ioQQQ,
"DBL_MANT_DIG\t%i\n",DBL_MANT_DIG);
772 fprintf(
ioQQQ,
"DBL_MAX\t%.15g\n", DBL_MAX);
773 fprintf(
ioQQQ,
"DBL_MAX_10_EXP\t%i\n", DBL_MAX_10_EXP);
774 fprintf(
ioQQQ,
"DBL_MAX_EXP\t%i\n", DBL_MAX_EXP);
775 fprintf(
ioQQQ,
"DBL_MIN\t%.15g\n", DBL_MIN);
777 fprintf(
ioQQQ,
"FLT_DIG\t%i\n", FLT_DIG);
778 fprintf(
ioQQQ,
"FLT_EPSILON\t%.15g\n", FLT_EPSILON);
779 fprintf(
ioQQQ,
"FLT_MANT_DIG\t%i\n", FLT_MANT_DIG);
780 fprintf(
ioQQQ,
"FLT_MAX\t%.15g\n", FLT_MAX);
781 fprintf(
ioQQQ,
"FLT_MAX_10_EXP\t%i\n", FLT_MAX_10_EXP);
782 fprintf(
ioQQQ,
"FLT_MAX_EXP\t%i\n", FLT_MAX_EXP);
783 fprintf(
ioQQQ,
"FLT_MIN\t%.15g\n", FLT_MIN);
790 fprintf(
ioQQQ,
"\nThis machine has %ld threads.\n",
cpu.
i().
nCPU() );
char chElementName[LIMELM][CHARS_ELEMENT_NAME]
const UNUSED double ELEM_CHARGE_ESU
const UNUSED double FR1RYD
bool nMatch(const char *chKey) const
const UNUSED double ELEM_CHARGE
diatomics h2("h2", 4100., &hmi.H2_total, Yan_H2_CS)
static t_version & Inst()
t_elementnames elementnames
const UNUSED double STEFAN_BOLTZ
void VoigtH(realnum a, const realnum v[], realnum y[], int n)
const UNUSED double LOG10_E
const UNUSED double EULER
const UNUSED double SOLAR_MASS
const UNUSED double HIONPOT
const UNUSED double EVDEGK
const UNUSED double TWO_PHOT_CONST
const UNUSED double HBAReV
const UNUSED double RADIAN
const UNUSED double SQRT2
const UNUSED double SQAS_SKY
const UNUSED double FR1RYDHYD
const UNUSED double ATOMIC_MASS_UNIT
const UNUSED double PROTON_MASS
bool lgPrintLineCumulative
bool lgSurfaceBrightness_SR
const UNUSED double HION_LTE_POP
void ParsePrtLineSum(Parser &p)
STATIC void PrtMacros(void)
NORETURN void NoNumb(const char *chDesc) const
const UNUSED double PARSEC
realnum lgPrtContIndices_hi_E
const UNUSED double SQAS1SR
const UNUSED double WAVNRYD
const UNUSED double EN1EV
const UNUSED double FREQ_1EV
const UNUSED double H_BAR
const UNUSED double MILNE_CONST
bool lgRecom_Badnell_print
const UNUSED double FINE_STRUCTURE
const UNUSED double SPEEDLIGHT
const UNUSED double ELECTRON_MASS
const UNUSED double SQRTPIBY2
const UNUSED double LN_TWO
const UNUSED double SQRTPI
const UNUSED double RYDLAM
const UNUSED double RYD_INF
const UNUSED double HPLANCK
const UNUSED realnum BIGFLOAT
STATIC void prt_constants(void)
long int GetElem(void) const
const UNUSED double ELECTRIC_CONST
realnum lgPrtContIndices_lo_E
const UNUSED double RYDLAMHYD
const UNUSED double COLL_CONST
const UNUSED double SOLAR_LUMINOSITY
const UNUSED double LN_TEN
const UNUSED double HNU3C2
const UNUSED double AS1RAD
const UNUSED double OPTDEP2EXTIN
void ParsePrint(Parser &p)
const UNUSED double TRANS_PROB_CONST
const UNUSED double ERG1CM
const UNUSED double TE1RYD
void printDataPath() const
t_iso_sp iso_sp[NISO][LIMELM]
const UNUSED double GRAV_CONST
const UNUSED double EVRYD
bool lgSortLineWavelength
int PrintLine(FILE *fp) const
const UNUSED double BOLTZMANN
const UNUSED double BOHR_RADIUS_CM
const UNUSED double EN1RYD
#define DEBUG_ENTRY(funcname)