00001
00002
00003
00004
00005 #ifdef _MSC_VER
00006 # pragma warning( disable : 4305 )
00007
00008 #endif
00009 #include "cddefines.h"
00010 #include "map.h"
00011 #include "optimize.h"
00012 #include "prt.h"
00013 #include "extinc.h"
00014 #include "plot.h"
00015
00016
00017
00018
00019 #include "predcont.h"
00020
00021
00022
00023
00024
00025
00026
00027 float EnrPredCont[NPREDCONT] = {
00028
00029 2.680e-06
00030 , 7.445e-04
00031 , 1.498e-03
00032 , 2.211e-03
00033 , 2.952e-03
00034 , 3.677e-03
00035 , 3.7501e-03
00036 , 3.9915e-03
00037 , 4.2543e-03
00038 , 4.314e-03
00039 , 4.6446e-03
00040 , 5.162e-03
00041 , 5.2462e-03
00042 , 5.8079e-03
00043 , 6.240e-03
00044
00045 , 7.3312e-03
00046 , 7.9936e-03
00047 , 8.7119e-03
00048 , 9.6125e-03
00049 , 9.77243e-03
00050 , 1.1099e-02
00051 , 1.2022e-02
00052 , 1.29253e-02
00053 , 2.2152e-02
00054 , 3.92044e-02
00055 , 5.54593e-02
00056
00057
00058 , 6.1563e-02
00059 , 6.3437e-02
00060 , 8.1460e-02
00061
00062
00063 , 0.1094
00064 , 0.1128
00065 , 0.14675
00066 , 0.18653
00067
00068
00069 , 0.246
00070 , 0.254
00071 , 0.375
00072 , 0.38096
00073 , 0.43994
00074 , 0.44394
00075 , 0.50811
00076 , 0.57489
00077 , 0.62487
00078 , 0.67155
00079 , 0.70244
00080 , 0.72163
00081 , 0.74812
00082 , 0.76172
00083 , 0.77551
00084 , 0.79681
00085 , 0.81859
00086 , 0.8260
00087 , 0.84859
00088 , 0.85618
00089 , 0.87967
00090 , 0.911267
00091
00092
00093
00094
00095
00096 , 0.985
00097 , 1.015
00098 , 1.199
00099 , 1.299
00100 , 1.4984
00101 , 1.58441
00102
00103
00104
00105
00106
00107 , 1.780
00108 , 1.834
00109 , 2.283};
00110
00111 long int ipPredCont[NPREDCONT];
00112 #include "heavy.h"
00113 #include "fudgec.h"
00114 #include "noexec.h"
00115 #include "reason.h"
00116 #include "rt.h"
00117 #include "trace.h"
00118 #include "magnetic.h"
00119 #include "hextra.h"
00120 #include "zero.h"
00121
00122 void Zerologic(void)
00123 {
00124 long int i,
00125 nelem;
00126
00127 DEBUG_ENTRY( "Zerologic()" );
00128
00129
00130 map.RangeMap[0] = 10.;
00131 map.RangeMap[1] = .99e10;
00132
00133
00134
00135 map.MapZone = -1;
00136 map.lgMapOK = true;
00137 map.lgMapDone = false;
00138 map.nMapStep = 20;
00139
00140 map.nMapAlloc = 0;
00141 map.nmap = 0;
00142 map.lgMapBeingDone = false;
00143
00144
00145 extinc.excolm = 0.;
00146 extinc.exleak = 0.;
00147 extinc.exlow = 1.;
00148
00149 extinc.cnst_col2optdepth = 6.22e-18f;
00150
00151 extinc.cnst_power = -2.43f;
00152
00153
00154 strcpy( Heavy.chShell[0], "1s" );
00155 strcpy( Heavy.chShell[1], "2s" );
00156 strcpy( Heavy.chShell[2], "2p" );
00157 strcpy( Heavy.chShell[3], "3s" );
00158 strcpy( Heavy.chShell[4], "3p" );
00159 strcpy( Heavy.chShell[5], "3d" );
00160 strcpy( Heavy.chShell[6], "4s" );
00161
00162
00163 for( i=0; i < LIMELM; i++ )
00164 {
00165 int j;
00166 for( j=0; j < (LIMELM - 1); j++ )
00167 {
00168 Heavy.xLyaHeavy[i][j] = 0.;
00169 }
00170 }
00171
00172 noexec.lgNoExec = false;
00173
00174
00175 prt.lgPrtTau = false;
00176 prt.PrtTauFnt = 0.1;
00177 prt.lgPrtShort = false;
00178 prt.TooFaint = 1e-3;
00179 prt.lgFaintOn = true;
00180 prt.lgFntSet = false;
00181
00182
00183
00184
00185 prt.lgPrtLineArray = true;
00186
00187
00188 prt.lgPrtLineLog = true;
00189
00190
00191 prt.lgPrtLineEmergent = false;
00192
00193
00194 prt.lgPrnAges = false;
00195
00196
00197 prt.lgPrintColumns = true;
00198
00199
00200 prt.lgSortLines = false;
00201
00202 prt.lgPrtMaser = false;
00203 prt.lgPrintTime = true;
00204
00205 prt.lgPrtContIndices = false;
00206 prt.lgPrtCont = false;
00207 prt.lgPrnDiff = false;
00208 prt.lgPrnPump = false;
00209 prt.lgPrnInwd = false;
00210 prt.lgPrnColl = false;
00211 prt.lgPrnHeat = false;
00212
00213 prt.lgSourceReflected = true;
00214 prt.lgSourceTransmitted = false;
00215 prt.lgDiffuseInward = true;
00216 prt.lgDiffuseOutward = true;
00217 prt.lgPrtLastIt = false;
00218 prt.lgOnlyZone = false;
00219 prt.lgOnlyHead = false;
00220 prt.lgPrtStart = false;
00221 prt.nstart = 0;
00222
00223
00224 prt.lgPrintHeating = false;
00225
00226
00227
00228 for( nelem=ipHYDROGEN; nelem<LIMELM; ++nelem )
00229 {
00230 prt.lgPrtArry[nelem] = false;
00231 }
00232
00233
00234 prt.lgPrintFluxEarth = false;
00235
00236
00237 prt.lgSurfaceBrightness = false;
00238 prt.lgSurfaceBrightness_SR = true;
00239
00240 prt.nzdump = -100;
00241
00242 fudgec.nfudge = 0;
00243
00244 for( i=0; i < NFUDGC; i++ )
00245 {
00246 fudgec.fudgea[i] = 0.;
00247 }
00248
00249 hextra.TurbHeat = 0.;
00250
00251 hextra.turrad = 0.;
00252 hextra.turback = 0.;
00253 hextra.cryden = 0.;
00254 hextra.cryden_ov_background = 0.;
00255 hextra.lg_CR_B_equipartition = false;
00256 hextra.cr_energydensity = 0;
00257
00258
00259
00260
00261
00262
00263
00264
00265
00266
00267
00268
00269
00270
00271
00272
00273
00274
00275
00276
00277
00278 hextra.background_density = 2.15e-9f;
00279 hextra.background_rate = 2.5e-17f;
00280 hextra.crpowr = 0.;
00281 hextra.crtemp = 0.;
00282
00283
00284 Magnetic_init();
00285
00286 strncpy( reason.chReason, "reason not specified.", sizeof(reason.chReason) );
00287
00288
00289 rt.lgStarkON = true;
00290
00291
00292 rt.nLineContShield = LINE_CONT_SHIELD_FEDERMAN;
00293
00294 trace.lgSecIon = false;
00295 trace.lgTrOvrd = true;
00296 trace.lgTraceInput = false;
00297 trace.lgOpacBug = false;
00298 trace.nTrConvg = 0;
00299 trace.lgTr8446 = false;
00300 trace.lgTrLevN = false;
00301 trace.lgTrGant = false;
00302 trace.lgOptcBug = false;
00303 trace.lgTrace3Bod = false;
00304 trace.lgOTSBug = false;
00305 trace.lgESOURCE = false;
00306 trace.lgTr_CO_Mole = false;
00307 trace.lgTr_H2_Mole = false;
00308 trace.lgHeatBug = false;
00309 trace.lgHeavyBug = false;
00310 trace.lgBug2nu = false;
00311 trace.lgDrBug = false;
00312 trace.lgPtrace = false;
00313 trace.lgDrv_cdLine = false;
00314 trace.lgDustBug = false;
00315 trace.lgComBug = false;
00316 trace.lgHeBug = false;
00317 trace.lgCarBug = false;
00318 trace.lgCalBug = false;
00319 trace.lgConBug = false;
00320 trace.lgNeBug = false;
00321 trace.lgFeBug = false;
00322 trace.lgHBug = false;
00323 trace.lgTrLine = false;
00324 trace.nznbug = 10000;
00325 trace.npsbug = 10000;
00326 trace.lgTrace = false;
00327 trace.lgPointBug = false;
00328 trace.lgNeonBug = false;
00329 trace.lgCoolTr = false;
00330 trace.lgTrDiff = false;
00331 trace.lgIsoTraceFull[ipH_LIKE] = false;
00332 trace.lgIsoTraceFull[ipHE_LIKE] = false;
00333
00334
00335 for( i=0; i < NDPLOT; i++ )
00336 {
00337 plotCom.lgPltTrace[i] = false;
00338 }
00339
00340
00341 for( i=0; i < NDPLOT; i++ )
00342 {
00343 strcpy( plotCom.chPType[i], "NONE" );
00344 }
00345 plotCom.lgPlotON = false;
00346
00347 DEBUG_EXIT( "Zerologic()" );
00348 return;
00349 }