00001
00002
00003
00004 #ifndef THERMAL_H_
00005 #define THERMAL_H_
00006
00007
00008
00009 #define NCOLNT 10000L
00010
00013 void TempChange(
00014 double TempNew ,
00015
00016 bool lgForceUpdate);
00017
00021 void TempChange(
00022 double TempNew );
00023
00024 EXTERN struct t_thermal {
00025
00028 bool lgPredNextTe;
00029
00032 bool lgTemperatureConstant;
00033
00038 bool lgTemperatureConstantCommandParsed;
00039
00044 realnum ConstTemp;
00045
00047 realnum ConstGrainTemp;
00048
00052 long int nUnstable;
00053 bool lgUnstable;
00054
00056 realnum thist,
00057 tlowst;
00058
00060 bool lgTeHigh;
00061
00065 bool lgEdnGTcm;
00066
00068 bool lgTLaw;
00069
00072 bool lgTeBD96;
00074 realnum T0BD96,
00076 SigmaBD96;
00077
00079 realnum T0SN99;
00080 bool lgTeSN99;
00081
00087 realnum collam[NCOLNT];
00088 double cooling[NCOLNT],
00089 heatnt[NCOLNT];
00090 long int ncltot;
00091 # define NCOLNT_LAB_LEN 15
00092 char chClntLab[NCOLNT][NCOLNT_LAB_LEN+1];
00093
00096 bool lgCNegChk;
00097
00099 realnum CoolHeatMax;
00100 realnum wlCoolHeatMax;
00101 char chCoolHeatMax[NCOLNT_LAB_LEN+1];
00102
00104 double totcol,
00106 ctot,
00108 heatl,
00110 coolheat;
00111
00113 double dCooldT;
00114
00116 double tsq1,
00117 halfte;
00118
00122 double te_update;
00123
00125 bool lgCExtraOn;
00126 realnum CoolExtra,
00127 cextpw;
00128
00133 bool lgCoolEvalOK;
00134
00136 realnum GBarMax;
00137 long int ipMaxExtra;
00138
00140 double char_tran_heat , char_tran_cool;
00141
00143 double htot,
00144
00146 power,
00147
00149 dHeatdT;
00150
00152 double heating[LIMELM][LIMELM];
00153
00155 double FreeFreeTotHeat;
00156
00158 realnum HeatLineMax;
00159 long int levlmax,
00160 ipHeatlmax;
00161
00162 } thermal;
00163
00164 struct t_phoHeat
00165 {
00167 double HeatNet;
00169 double HeatLowEnr;
00171 double HeatHiEnr;
00172 };
00173
00174 #endif