/home66/gary/public_html/cloudy/c08_branch/source/punch.h

Go to the documentation of this file.
00001 /* This file is part of Cloudy and is copyright (C)1978-2008 by Gary J. Ferland and
00002  * others.  For conditions of distribution and use see copyright notice in license.txt */
00003 
00004 #ifndef _PUNCH_H_
00005 #define _PUNCH_H_
00006 
00007 /* punch.h */
00008 #define LIMPUN  100L
00009 
00013 void PunchDo(
00014         const char *chTime); 
00015 
00023 void pun1Line( 
00024         transition * t , 
00025         FILE * io , 
00026         realnum xLimit , 
00027         long index , 
00028         double population );
00029 
00033 NORETURN void PunchLineData(
00034         FILE * io);
00035 
00040 void punch_opacity(
00041         FILE * io, 
00042         long int np);
00043 
00048 void PunchSpecial(
00049         FILE* io , 
00050   const char *chTime);
00051 
00058 void Punch1LineData( 
00059         transition * t , 
00060         FILE * io,
00061          bool lgCS_2 );
00062 
00068 void punch_line(
00069         FILE * ip,
00070   const char *chDo, 
00071   /* true, return rel intensity, false, log of true intensity */
00072   bool lgLog3,
00073   char *chHeader);
00074 
00079 void punch_average( 
00080         long int ipPun,
00081         const char *chJob,
00082         char *chHeader );
00083 
00089 void punch_colden(
00090   /* the header for the file - the identification for the column densities */
00091   char header[] ,
00092   /* the file we will write to */
00093   FILE * ioPUN, 
00094   /* the job we shall do - one of */
00095   const char *chDo );
00096 
00101 void Punch_Line_RT(
00102         FILE * ip, 
00103         const char *chJob );
00104 
00109 void punchFITSfile( 
00110         FILE* io, 
00111         int option );
00112 
00116 void HeatPunch(FILE* io);
00117 
00121 void CoolPunch(FILE * io);
00122 
00123 EXTERN struct t_punch {
00124 
00127         long int *nLineList;
00129         char ***chLineListLabel;
00131         realnum **wlLineList;
00133         bool *lgLineListRatio;
00134 
00137         long int *nAverageList;
00139         char ***chAverageType;
00141         char ***chAverageSpeciesLabel;
00143         int **nAverageIonList;
00145         int **nAverage2ndPar;
00146 
00148         FILE *ipPnunit[LIMPUN]; 
00149 
00152         bool lgRealPunch[LIMPUN]; 
00153 
00155         long int npunch;
00156 
00158         char chPunch[LIMPUN][5];
00159 
00161         char chOpcTyp[LIMPUN][5];
00162 
00166         bool lgPunchToSeparateFiles[LIMPUN];
00167 
00170         bool lg_separate_iterations[LIMPUN];
00171 
00174         bool lgPunHeader;
00175 
00179         bool lgPunContinuum;
00180 
00182         realnum punarg[LIMPUN][3];
00183 
00186         bool lgPunchEveryZone[LIMPUN];
00187         long int nPunchEveryZone[LIMPUN];
00188 
00190         char chPunchArgs[LIMPUN][5];
00191 
00194         bool lgPunLstIter[LIMPUN];
00195 
00197         bool lgFITS[LIMPUN];
00198 
00201         bool lgPunchFits;
00202 
00204         char chConPunEnr[LIMPUN][5];
00205 
00207         long int ipConPun;
00208 
00211         bool lgHashEndIter[LIMPUN];
00212 
00215         char chHashString[INPUT_LINE_LENGTH];
00216 
00218         bool lgFLUSH;
00219 
00222         char chFilenamePrefix[INPUT_LINE_LENGTH];
00223 
00226         realnum cp_range_min[LIMPUN] , cp_range_max[LIMPUN];
00228 
00232         realnum cp_resolving_power[LIMPUN];
00233 
00235         long int cp_npun;
00236 
00240         char chPunRltType[7];
00241 
00245         FILE* ipPoint;
00246         bool lgPunPoint;
00247 
00249         bool lgPunConv;
00250         FILE* ipPunConv;
00251 
00255         FILE * ipDRout;
00256         bool lgDROn, 
00257           lgDRPLst,
00258           lgDRHash;
00259 
00260         /* set true punch convergence base */
00261         bool lgTraceConvergeBase,
00262                 lgTraceConvergeBaseHash;
00263         FILE * ipTraceConvergeBase;
00264 
00266         FILE* ioRecom;
00267         bool lgioRecom;
00268 
00271         long int LinEvery;
00272         bool lgLinEvery;
00273 
00275         long int ncPunchSkip;
00276 
00279         realnum WeakHeatCool;
00280 
00284         realnum PunchLWidth;
00285 
00286         }       punch;
00287 
00288 #endif /* _PUNCH_H_ */

Generated on Mon Feb 16 12:01:27 2009 for cloudy by  doxygen 1.4.7