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 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
00094
00095 double elementcool[LIMELM + 1];
00096
00097
00098 double dima;
00099
00102 bool lgCNegChk;
00103
00105 realnum CoolHeatMax;
00106 realnum wlCoolHeatMax;
00107 char chCoolHeatMax[NCOLNT_LAB_LEN+1];
00108
00110 double totcol,
00112 ctot,
00114 heatl,
00116 coolheat;
00117
00119 double dCooldT;
00120
00122 double tsq1,
00123 halfte;
00124
00128 double te_update;
00129
00131 bool lgCExtraOn;
00132 realnum CoolExtra,
00133 cextpw;
00134
00139 bool lgCoolEvalOK;
00140
00142 realnum GBarMax;
00143 long int ipMaxExtra;
00144
00146 double char_tran_heat , char_tran_cool;
00147
00149 double htot,
00150
00152 power,
00153
00155 dHeatdT;
00156
00158 double heating[LIMELM][LIMELM];
00159
00161 double FreeFreeTotHeat;
00162
00164 realnum HeatLineMax;
00165
00166 };
00167 extern t_thermal thermal;
00168
00169 struct t_phoHeat
00170 {
00172 double HeatNet;
00174 double HeatLowEnr;
00176 double HeatHiEnr;
00177 };
00178
00179 #endif