Changeset 2133
- Timestamp:
- 06/27/08 06:20:29 (2 months ago)
- Location:
- trunk/source
- Files:
-
- 13 modified
-
abundances.cpp (modified) (1 diff)
-
conv_itercheck.cpp (modified) (1 diff)
-
dynamics.cpp (modified) (2 diffs)
-
init_defaults_preparse.cpp (modified) (3 diffs)
-
iter_end_chk.cpp (modified) (2 diffs)
-
parse_commands.cpp (modified) (1 diff)
-
parse_print.cpp (modified) (1 diff)
-
parse_stop.cpp (modified) (5 diffs)
-
prt.h (modified) (1 diff)
-
prt_comment.cpp (modified) (1 diff)
-
prt_lines_hydro.cpp (modified) (1 diff)
-
rt_ots.cpp (modified) (4 diffs)
-
stopcalc.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/abundances.cpp
r2127 r2133 263 263 /* if stop temp set below default then we are going into cold and possibly 264 264 * molecular gas - check some parameters in this case */ 265 if( called.lgTalk && (StopCalc. tend< phycon.TEMP_STOP_DEFAULT ||265 if( called.lgTalk && (StopCalc.TempLoStopZone < phycon.TEMP_STOP_DEFAULT || 266 266 /* thermal.ConstTemp def is zero, set pos when used */ 267 267 (thermal.ConstTemp > 0. && thermal.ConstTemp < phycon.TEMP_STOP_DEFAULT ) ) ) -
trunk/source/conv_itercheck.cpp
r1732 r2133 210 210 /* >>chng 96 dec 20, moved following to within if on lgAutoIt 211 211 * this is test for stopping on first zone */ 212 if( phycon.te < StopCalc. tend&& nzone == 1 )212 if( phycon.te < StopCalc.TempLoStopZone && nzone == 1 ) 213 213 { 214 214 lgConverged = true; -
trunk/source/dynamics.cpp
r2119 r2133 23 23 #include "radius.h" 24 24 #include "thirdparty.h" 25 #include "stopcalc.h" 25 26 #include "hextra.h" 26 27 #include "rfield.h" … … 1364 1365 } 1365 1366 1367 /* stop lowest temperature time command */ 1368 if( (phycon.te < StopCalc.TempLoStopIteration) || 1369 (phycon.te > StopCalc.TempHiStopIteration ) ) 1370 dynamics.lgStatic_completed = true; 1371 1366 1372 if( dynamics.time_elapsed < time_elapsed_time[0] ) 1367 1373 { -
trunk/source/init_defaults_preparse.cpp
r2062 r2133 317 317 prt.lgSurfaceBrightness = false; 318 318 prt.lgSurfaceBrightness_SR = true; 319 320 /* print line cumulative sets true, print integrated line intensity over 321 * time in temp dependent simulation */ 322 prt.lgPrintLineCumulative = false; 319 323 320 324 prt.nzdump = -100; … … 384 388 StopCalc.AV_point = 1e30f; 385 389 /* highest allowed temperature */ 386 StopCalc.T2High = (realnum)phycon.TEMP_LIMIT_HIGH; 390 StopCalc.TempHiStopZone = (realnum)phycon.TEMP_LIMIT_HIGH; 391 StopCalc.TempHiStopIteration = (realnum)phycon.TEMP_LIMIT_HIGH; 387 392 388 393 /* the floor sets a limit to the temperature in the calculation - … … 391 396 StopCalc.TeFloor = 0.; 392 397 393 /* this is in cddefines.h and is 4000 */ 394 StopCalc.tend = (realnum)phycon.TEMP_STOP_DEFAULT; 398 /* stop zone calculations when Te falls below this, 399 * TEMP_STOP_DEFAULT in cddefines.h and is 4000 */ 400 StopCalc.TempLoStopZone = (realnum)phycon.TEMP_STOP_DEFAULT; 401 /* stop iterations, used to stop time dependent command */ 402 StopCalc.TempLoStopIteration = -1.; 403 395 404 /* ending column densities */ 396 405 StopCalc.HColStop = COLUMN_INIT; -
trunk/source/iter_end_chk.cpp
r2121 r2133 336 336 } 337 337 338 else if( phycon.te > StopCalc.T 2High)338 else if( phycon.te > StopCalc.TempHiStopZone ) 339 339 { 340 340 lgDone = true; … … 342 342 } 343 343 344 else if( phycon.te < StopCalc. tend)344 else if( phycon.te < StopCalc.TempLoStopZone ) 345 345 { 346 346 lgDone = true; -
trunk/source/parse_commands.cpp
r2062 r2133 2007 2007 /* if stop temp set below default then we are going into cold and possibly molecular 2008 2008 * gas - check some parameters in this case */ 2009 if( called.lgTalk && (StopCalc. tend< phycon.TEMP_STOP_DEFAULT ||2009 if( called.lgTalk && (StopCalc.TempLoStopZone < phycon.TEMP_STOP_DEFAULT || 2010 2010 /* thermal.ConstTemp def is zero, set pos when constant temperature is set */ 2011 2011 (thermal.ConstTemp > 0. && thermal.ConstTemp < phycon.TEMP_STOP_DEFAULT ) ) ) -
trunk/source/parse_print.cpp
r1925 r2133 428 428 } 429 429 } 430 431 else if( nMatch("CUMU",chCARD_CAPS) ) 432 { 433 /* print lines cumulative - integral of line emission over time */ 434 prt.lgPrintLineCumulative = true; 435 } 436 430 437 else 431 438 { -
trunk/source/parse_stop.cpp
r1771 r2133 31 31 a = FFmtRead(chCard,&i,INPUT_LINE_LENGTH,&lgEOL); 32 32 33 /* >>chng 04 nov 09, introduce off option */ 33 /* off option to turn off one of the stopping criteria, only used if 34 * no number was tnered*/ 34 35 if( lgEOL && !nMatch(" OFF",chCard) ) 35 36 { … … 37 38 } 38 39 40 /* time option, for stopping time dependent calculations, used to stop 41 * iterations rather than zones. Only some stop commands have this option */ 42 bool lgStopZone = true; 43 if( nMatch("TIME",chCard) ) 44 lgStopZone = false; 45 39 46 if( nMatch("TEMP",chCard) ) 40 47 { 41 /* >>chng 04 nov 09, introduce off option to disablethis stopping criterion */48 /* off option disables this stopping criterion */ 42 49 if( lgEOL && nMatch(" OFF",chCard) ) 43 50 { … … 45 52 * but will still stop if Te falls below TeLowest, the lowest 46 53 * possible temperature */ 47 StopCalc.tend = -1.f; 54 if( lgStopZone ) 55 StopCalc.TempLoStopZone = -1.f; 56 else 57 StopCalc.TempLoStopIteration = -1.f; 48 58 } 49 59 else … … 85 95 /* option for this to be highest allowed temperature, 86 96 * stop temperate exceeds */ 87 StopCalc.T2High = (realnum)tread; 97 if( lgStopZone ) 98 StopCalc.TempHiStopZone = (realnum)tread; 99 else 100 StopCalc.TempHiStopIteration = (realnum)tread; 88 101 } 89 102 else … … 91 104 /* this is ending temperature - we stop if kinetic temperature 92 105 * falls below this */ 93 StopCalc.tend = (realnum)tread; 106 if( lgStopZone ) 107 StopCalc.TempLoStopZone = (realnum)tread; 108 else 109 StopCalc.TempLoStopIteration = (realnum)tread; 94 110 } 95 111 } -
trunk/source/prt.h
r1732 r2133 217 217 * in exponential format */ 218 218 bool lgPrtLineLog; 219 220 /** flag set by print line cumulative command, also print large set of 221 * emission line integrated intensities over time depend model */ 222 bool lgPrintLineCumulative; 219 223 220 224 /** quantities to do with radiation field and printed in header */ -
trunk/source/prt_comment.cpp
r2019 r2133 492 492 493 493 /* comment if cosmic rays are not included and stop temp has been lowered to go into neutral gas */ 494 if( hextra.cryden== 0. && StopCalc. tend< phycon.TEMP_STOP_DEFAULT)494 if( hextra.cryden== 0. && StopCalc.TempLoStopZone < phycon.TEMP_STOP_DEFAULT) 495 495 { 496 496 sprintf( chLine, -
trunk/source/prt_lines_hydro.cpp
r1940 r2133 270 270 Transitions[ipH_LIKE][nelem][index_of_nHi_P][index_of_nLo_S].Emis->xIntensity += 271 271 Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->xIntensity; 272 /* kill the resolved line */273 Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->xIntensity = 0.;272 /* kill the resolved line - negative means will not be printed */ 273 Transitions[ipH_LIKE][nelem][ipHi][ipLo].Emis->xIntensity = -1; 274 274 //ASSERT( Transitions[ipH_LIKE][nelem][index_of_nHi_P][index_of_nLo_S].Emis->xIntensity > 0. ); 275 275 } -
trunk/source/rt_ots.cpp
r1822 r2133 71 71 /************************************************************************** 72 72 * 73 * the bowen HeII - OIII fluorescen se problem73 * the bowen HeII - OIII fluorescence problem 74 74 * 75 75 **************************************************************************/ … … 100 100 { 101 101 /* debugging code for line oscillation problems 102 * most often Lya OTS oscillations*/ 103 /*@-redef@*/ 102 * most often Lya OTS oscillations*/ 104 103 enum {DEBUG_LOC=false}; 105 /*@+redef@*/106 104 if( DEBUG_LOC ) 107 105 { … … 268 266 /* more debugging code for rec continua */ 269 267 { 270 /*@-redef@*/271 268 enum {DEBUG_LOC=false}; 272 /*@+redef@*/273 269 if( DEBUG_LOC ) 274 270 { … … 286 282 } 287 283 288 /* now reset Lya dest prob in case is was clobbered */284 /* now reset Lya dest prob in case is was clobbered by rfield.lgHeIIOTS */ 289 285 Transitions[ipH_LIKE][ipHYDROGEN][ipH2p][ipH1s].Emis->Pdest = (realnum)save_lya_dest; 290 286 Transitions[ipH_LIKE][ipHELIUM][ipH2p][ipH1s].Emis->Pdest = (realnum)save_he2lya_dest; -
trunk/source/stopcalc.h
r1732 r2133 25 25 long int iptnu; 26 26 27 /** highest allowed temperature, set with stop temperature exceeds command */28 realnum T2High;29 30 27 /** this provides a "floor" for the temperature - when the temperature 31 28 * falls to this limit, go to constant temperature solution */ 32 29 double TeFloor; 33 30 34 /** tend is lowest temperature, set with stop temperature command */ 35 realnum tend; 31 /** highest allowed zone temperature, set with stop temperature exceeds command */ 32 realnum TempHiStopZone; 33 /** highest allowed iteration temperature, set with stop time temperature exceeds command */ 34 realnum TempHiStopIteration; 35 36 /** TempLoStopZone is lowest temperature to allow in radial zone integrations, 37 * set with stop temperature command */ 38 realnum TempLoStopZone; 39 /** TempLoStopIteration is lowest temperature to allow in iterations, 40 * set with stop time temperature command, used to stop time dependent sims */ 41 realnum TempLoStopIteration; 36 42 37 43 /** STOP EFRAC sets this limiting ratio of electron to H densities */
