Changeset 2266
- Timestamp:
- 2008-07-26T10:13:34Z (15 years ago)
- Location:
- trunk/source
- Files:
-
- 32 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/assert_results.cpp
r2217 r2266 544 544 strcpy( chAssertLineLabel[nAsserts] , "+Col"); 545 545 } 546 else 547 { 548 /*no option found */ 549 fprintf( ioQQQ, 550 " I could not identify an iso-sequence on this Case A/B command.\n"); 551 fprintf( ioQQQ, " Sorry.\n" ); 552 cdEXIT(EXIT_FAILURE); 553 } 546 554 } 547 555 else if( nMatch("DEPA",input.chCARDCAPS ) ) … … 1942 1950 strcat( chElemLabelCaseB , chNumb ); 1943 1951 1944 int iCase = 1; 1952 /* sets lowest quantum number index */ 1953 int iCase; 1945 1954 if( strcmp( "Ca A", chAssertLineLabel[i] ) == 0 ) 1946 1955 iCase = 0; … … 1957 1966 { 1958 1967 fprintf(ioASSERT," Species nHi nLo Wl Computed Asserted error\n"); 1959 /* limit of 10 is because that is all we printed and saved in prt_lines_hydro */ 1968 /* limit of 10 is because that is all we printed and saved in prt_lines_hydro 1969 * wavelengths will come out of atmdat.WaveLengthCaseB - first index is 1970 * nelem on C scale, H is 0, second two are configurations of line on 1971 * physics scale, so Ha is 3-2 */ 1960 1972 for( long int ipLo=1+iCase; ipLo< MIN2(10,nHighestPrinted-1); ++ipLo ) 1961 1973 { -
trunk/source/atmdat.h
r2012 r2266 203 203 bool lgCollIonOn; 204 204 205 /** wavelengths of Hummer & Storey case B lines for H - O */ 205 /** wavelengths of Hummer & Storey case B lines for H - O 206 * first dimension is atomic number of C scale, H is 0 207 * next two are upper and lower configurations on physics 208 * scale - Lya is 2-1, Lyb is 3-1, Ha is 3-2, etc */ 206 209 realnum WaveLengthCaseB[8][25][24]; 207 210 -
trunk/source/atom_feii.cpp
r2165 r2266 1762 1762 1763 1763 /* get the normalization line */ 1764 if( LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent] > 0. )1765 { 1766 renorm = LineSave.ScaleNormLine/LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent];1764 if( LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent] > 0. ) 1765 { 1766 renorm = LineSave.ScaleNormLine/LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent]; 1767 1767 } 1768 1768 else -
trunk/source/atom_hyperfine.cpp
r2130 r2266 487 487 wavelength = (realnum)help[2]; 488 488 HFLines[j].Emis->Aul = (realnum)Aul; 489 HFLines[j].Emis->damp = 1e-20f; 489 490 HFLines[j].Hi->g = (realnum) (2*(spin + .5) + 1); 490 491 HFLines[j].Lo->g = (realnum) (2*(spin - .5) + 1); -
trunk/source/cddrive.cpp
r2217 r2266 1377 1377 1378 1378 /* does the normalization line have a positive intensity*/ 1379 if( LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent] > 0. )1379 if( LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent] > 0. ) 1380 1380 { 1381 *relint = LineSv[ipobs]. sumlin[LineSave.lgLineEmergent]/LineSv[LineSave.ipNormWavL].sumlin[LineSave.lgLineEmergent]*1381 *relint = LineSv[ipobs].SumLine[LineSave.lgLineEmergent]/LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent]* 1382 1382 LineSave.ScaleNormLine; 1383 1383 } … … 1388 1388 1389 1389 /* return log of current line intensity if it is positive */ 1390 if( LineSv[ipobs]. sumlin[LineSave.lgLineEmergent] > 0. )1390 if( LineSv[ipobs].SumLine[LineSave.lgLineEmergent] > 0. ) 1391 1391 { 1392 *absint = log10(LineSv[ipobs]. sumlin[LineSave.lgLineEmergent]) + radius.Conv2PrtInten;1392 *absint = log10(LineSv[ipobs].SumLine[LineSave.lgLineEmergent]) + radius.Conv2PrtInten; 1393 1393 } 1394 1394 else … … 1452 1452 1453 1453 /* does the normalization line have a positive intensity*/ 1454 if( LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent] > 0. )1455 { 1456 *relint = LineSv[ipLine]. sumlin[LineSave.lgLineEmergent]/LineSv[LineSave.ipNormWavL].sumlin[LineSave.lgLineEmergent]*1454 if( LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent] > 0. ) 1455 { 1456 *relint = LineSv[ipLine].SumLine[LineSave.lgLineEmergent]/LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent]* 1457 1457 LineSave.ScaleNormLine; 1458 1458 } … … 1463 1463 1464 1464 /* return log of current line intensity if it is positive */ 1465 if( LineSv[ipLine]. sumlin[LineSave.lgLineEmergent] > 0. )1466 { 1467 *absint = log10(LineSv[ipLine]. sumlin[LineSave.lgLineEmergent]) + radius.Conv2PrtInten;1465 if( LineSv[ipLine].SumLine[LineSave.lgLineEmergent] > 0. ) 1466 { 1467 *absint = log10(LineSv[ipLine].SumLine[LineSave.lgLineEmergent]) + radius.Conv2PrtInten; 1468 1468 } 1469 1469 else … … 1541 1541 1542 1542 /* does the normalization line have a positive intensity*/ 1543 if( LineSv[LineSave.ipNormWavL]. sumlin[1] > 0. )1543 if( LineSv[LineSave.ipNormWavL].SumLine[1] > 0. ) 1544 1544 { 1545 *relint = LineSv[ipobs]. sumlin[1]/LineSv[LineSave.ipNormWavL].sumlin[1]*1545 *relint = LineSv[ipobs].SumLine[1]/LineSv[LineSave.ipNormWavL].SumLine[1]* 1546 1546 LineSave.ScaleNormLine; 1547 1547 } … … 1552 1552 1553 1553 /* return log of current line intensity if it is positive */ 1554 if( LineSv[ipobs]. sumlin[1] > 0. )1554 if( LineSv[ipobs].SumLine[1] > 0. ) 1555 1555 { 1556 *absint = log10(LineSv[ipobs]. sumlin[1]) + radius.Conv2PrtInten;1556 *absint = log10(LineSv[ipobs].SumLine[1]) + radius.Conv2PrtInten; 1557 1557 } 1558 1558 else -
trunk/source/continuum.txt
r1757 r2266 8 8 SummedCon is added together in RT_OTS_Update (in rtots.c) 9 9 10 rfield.SummedCon[i] = rfield.flux[ i] + rfield.SummedDif[i];10 rfield.SummedCon[i] = rfield.flux[0][i] + rfield.SummedDif[i]; 11 11 12 12 rfield.SummedDif[i] = rfield.otscon[i] + rfield.otslin[i] + 13 rfield.ConInterOut[i]*rfield.lgOutOnly + rfield.outlin[ i] +13 rfield.ConInterOut[i]*rfield.lgOutOnly + rfield.outlin[0][i] + 14 14 rfield.ConOTS_local_OTS_rate[i]; 15 15 … … 78 78 79 79 incident continua 80 rfield.flux_total_incident[ j] - the original incident continuum81 rfield.flux - outward attenuated incident continuum80 rfield.flux_total_incident[0][j] - the original incident continuum 81 rfield.flux[0] - outward attenuated incident continuum 82 82 incident continuum is initally defined in ContSetIntensity 83 83 … … 86 86 reflected continua 87 87 inward or reflected part of continuum, only computed in open geometry 88 rfield.ConRefIncid[ j] reflected incident continuum88 rfield.ConRefIncid[0][j] reflected incident continuum 89 89 rfield.ConRefDiff[j]) reflected diffuse continua 90 rfield.reflin[ j] reflected lines90 rfield.reflin[0][j] reflected lines 91 91 92 92 ==================================================================== … … 102 102 103 103 rfield.ConInterOut - integrated outward beam, interacts 104 rfield.ConEmitOut - total outward emission104 rfield.ConEmitOut[0] - total outward emission 105 105 calculated from local diffuse emission in radius_increment 106 106 … … 112 112 113 113 contains 114 rfield.flux[ i]114 rfield.flux[0][i] 115 115 rfield.otslin[i] 116 116 rfield.otscon[i] … … 118 118 ==================================================================== 119 119 120 rfield.outlin[ i]120 rfield.outlin[0][i] 121 121 outward lines, included in ionizing radiation 122 122 -
trunk/source/conv_base.cpp
r2131 r2266 989 989 } 990 990 991 /* check on heating and cooling if vary temp model */ 991 /* check on heating and cooling if vary temp model 992 * >>chng 08 jul 01, over the code's entire history it had tested whether 993 * this is a constant temperature simulation and did not do this test if 994 * the thermal solution was not done. There are some cases where we do 995 * want to specify the temperature and then find the heating or cooling - 996 * this is done in calculations of cooling curves for instance. With this 997 * change the heating/cooling are converged even in a constant temperature 998 * sim. this does make CT sims run more slowly but with greater accuracy 999 * if heating or cooling is reported */ 992 1000 if( !thermal.lgTemperatureConstant ) 993 1001 { -
trunk/source/init_defaults_preparse.cpp
r2133 r2266 2 2 * others. For conditions of distribution and use see copyright notice in license.txt */ 3 3 /*InitDefaultsPreparse initialization at start of simulation, called from cloudy 4 * before parser, sets initial values of quantities changed by parser */ 4 * before parser, sets initial values of quantities changed by parser 5 * called for each point in a grid but one time in multi-iteration sims */ 5 6 #include "cddefines.h" 6 7 #include "physconst.h" … … 37 38 * should only set defaults for variables that change in the parser. 38 39 * It does not initialize variables for the start of a calculation. That 39 * is done by InitSimPostparse */ 40 * is done by InitSimPostparse 41 * called one time in multi iteration sim */ 40 42 void InitDefaultsPreparse( void ) 41 43 { -
trunk/source/init_sim_postparse.cpp
r1914 r2266 2 2 * others. For conditions of distribution and use see copyright notice in license.txt */ 3 3 /*InitSimPostparse initialization at start of simulation, called from cloudy 4 * after parser, will be called one time per sim in grid */ 4 * after parser, will be called one time per sim in grid 5 * is not called for every iteration */ 5 6 #include "cddefines.h" 6 7 #include "dense.h" -
trunk/source/iter_end_chk.cpp
r2133 r2266 364 364 { 365 365 /* the second line is always set to something, default is H beta */ 366 if( LineSv[StopCalc.ipStopLin2[i]]. sumlin[LineSave.lgLineEmergent] > 0. )366 if( LineSv[StopCalc.ipStopLin2[i]].SumLine[LineSave.lgLineEmergent] > 0. ) 367 367 { 368 368 char chString[10]; 369 if( LineSv[StopCalc.ipStopLin1[i]]. sumlin[LineSave.lgLineEmergent]/370 LineSv[StopCalc.ipStopLin2[i]]. sumlin[LineSave.lgLineEmergent] > StopCalc.stpint[i] )369 if( LineSv[StopCalc.ipStopLin1[i]].SumLine[LineSave.lgLineEmergent]/ 370 LineSv[StopCalc.ipStopLin2[i]].SumLine[LineSave.lgLineEmergent] > StopCalc.stpint[i] ) 371 371 { 372 372 lgDone = true; -
trunk/source/lines.h
r2012 r2266 113 113 char chALab[5]; 114 114 115 /** >>chng 06 mar 09, make intrinsic and emergent one array */ 116 /** integrated intensity of the line, [0] is intrinsic, [1] emergent */ 117 double sumlin[2]; 115 /** integrated intensity of the line, 116 * [0] is intrinsic, 117 * [1] emergent 118 * [2] is intrinsic, 119 * [3] emergent 120 */ 121 double SumLine[4]; 118 122 119 123 /** the emissivity, per unit vol, for current conditions, */ -
trunk/source/lines_service.cpp
r2130 r2266 470 470 /* not first pass, sum lines only 471 471 * total emission from vol */ 472 LineSv[LineSave.nsum]. sumlin[0] += xInten*radius.dVeff;472 LineSv[LineSave.nsum].SumLine[0] += xInten*radius.dVeff; 473 473 /* local emissivity in line */ 474 474 LineSv[LineSave.nsum].emslin[0] = xInten; … … 481 481 * it would be wrong to predict their transferred intensity */ 482 482 LineSv[LineSave.nsum].emslin[1] = LineSv[LineSave.nsum].emslin[0]; 483 LineSv[LineSave.nsum]. sumlin[1] = LineSv[LineSave.nsum].sumlin[0];483 LineSv[LineSave.nsum].SumLine[1] = LineSv[LineSave.nsum].SumLine[0]; 484 484 } 485 485 } … … 489 489 /* first call to stuff lines in array, confirm that label is one of 490 490 * the four correct ones */ 491 /* >>chng 04 apr 24, last two had been != so this test never really happened; PvH */492 491 ASSERT( (chInfo == 'c') || (chInfo == 'h') || (chInfo == 'i') || (chInfo == 'r' ) ); 493 492 … … 602 601 LineSv[LineSave.nsum].emslin[0] = xInten; 603 602 /* integrated intensity or luminosity, the emissivity times the volume */ 604 LineSv[LineSave.nsum]. sumlin[0] += xInten*radius.dVeff;603 LineSv[LineSave.nsum].SumLine[0] += xInten*radius.dVeff; 605 604 606 605 /* add line to outward beam … … 625 624 xInten*rt.fracin , xInten*(1.-rt.fracin) , ipnt ); 626 625 LineSv[LineSave.nsum].emslin[1] = saveemis; 627 LineSv[LineSave.nsum]. sumlin[1] += saveemis*radius.dVeff;626 LineSv[LineSave.nsum].SumLine[1] += saveemis*radius.dVeff; 628 627 } 629 628 } … … 638 637 LineSv[LineSave.nsum].chSumTyp = (char)chInfo; 639 638 /* number of lines ok, set parameters for first pass */ 640 LineSv[LineSave.nsum]. sumlin[0] = 0.;639 LineSv[LineSave.nsum].wavelength = wavelength; 641 640 LineSv[LineSave.nsum].emslin[0] = 0.; 642 LineSv[LineSave.nsum].wavelength = wavelength;643 641 LineSv[LineSave.nsum].emslin[1] = 0.; 644 LineSv[LineSave.nsum].sumlin[1] = 0.; 642 LineSv[LineSave.nsum].SumLine[0] = 0.; 643 LineSv[LineSave.nsum].SumLine[1] = 0.; 645 644 LineSv[LineSave.nsum].chComment = chComment; 646 645 … … 1322 1321 if( LineSv[i].chSumTyp == chInfo ) 1323 1322 { 1324 totlin_v += LineSv[i]. sumlin[0];1323 totlin_v += LineSv[i].SumLine[0]; 1325 1324 } 1326 1325 } -
trunk/source/mole_h2_io.cpp
r2130 r2266 2120 2120 ASSERT( LineSave.ipNormWavL >= 0 ); 2121 2121 /* get the normalization line */ 2122 if( LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent] > SMALLFLOAT )2123 renorm = LineSave.ScaleNormLine/LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent];2122 if( LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent] > SMALLFLOAT ) 2123 renorm = LineSave.ScaleNormLine/LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent]; 2124 2124 else 2125 2125 renorm = 1.; … … 2273 2273 ASSERT( LineSave.ipNormWavL >= 0 ); 2274 2274 /* does the normalization line have a positive intensity*/ 2275 if( LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent] > 0. )2275 if( LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent] > 0. ) 2276 2276 { 2277 2277 *relint = H2_SaveLine[iElecHi][iVibHi][iRotHi][iElecLo][iVibLo][iRotLo]/ 2278 LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent] * LineSave.ScaleNormLine;2278 LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent] * LineSave.ScaleNormLine; 2279 2279 } 2280 2280 else -
trunk/source/opacity_addtotal.cpp
r1822 r2266 512 512 iso.ConOpacRatio[ipH_LIKE][ipHELIUM][ipH1s] ); 513 513 } 514 514 515 { 515 516 /* following should be set true to print strongest ots contributors */ 516 /*@-redef@*/517 517 enum {DEBUG_LOC=false}; 518 /*@+redef@*/519 518 if( DEBUG_LOC && (nzone>=378)/**/ ) 520 519 { -
trunk/source/optimize_func.cpp
r1771 r2266 144 144 } 145 145 146 if( (snorm = LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent]) == 0. )146 if( (snorm = LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent]) == 0. ) 147 147 { 148 148 fprintf( ioQQQ, "\n\n PROBLEM Normalization line has zero intensity. What has gone wrong?\n" ); … … 204 204 /* and find corresponding model value by straight search */ 205 205 nfound += 1; 206 scld = (double)LineSv[ipobs[i]]. sumlin[LineSave.lgLineEmergent]/(double)snorm*LineSave.ScaleNormLine;206 scld = (double)LineSv[ipobs[i]].SumLine[LineSave.lgLineEmergent]/(double)snorm*LineSave.ScaleNormLine; 207 207 chi1 = chi2_func(scld,(double)optimize.xLineInt_Obs[i],(double)optimize.xLineInt_error[i]); 208 208 cat = 0; … … 300 300 { 301 301 nfound += 1; 302 if( LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent] > 0.f )303 { 304 predin = log10(LineSv[LineSave.ipNormWavL]. sumlin[LineSave.lgLineEmergent]) + radius.Conv2PrtInten;302 if( LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent] > 0.f ) 303 { 304 predin = log10(LineSv[LineSave.ipNormWavL].SumLine[LineSave.lgLineEmergent]) + radius.Conv2PrtInten; 305 305 help = pow(10.,predin-(double)optimize.optint); 306 306 chi1 = chi2_func(help,1.,(double)optimize.optier); -
trunk/source/optimize_phymir.cpp
r2217 r2266 237 237 238 238 if( lgFinish ) 239 {240 239 return; 241 } 242 /* 240 241 /* maximum no. of iterations exceeded? */ 243 242 if( optimize.nOptimiz >= optimize.nIterOptim ) 244 243 { -
trunk/source/parse_coronal.cpp
r1771 r2266 23 23 DEBUG_ENTRY( "ParseCoronal()" ); 24 24 25 /* use coronal command to establish initial conditions in a cooling 26 * time-varying cloud */ 25 27 if( nMatch( "INIT" , chCard ) && nMatch( "TIME" , chCard ) ) 26 28 { -
trunk/source/parse_print.cpp
r2217 r2266 264 264 265 265 prt.lgFntSet = true; 266 if( a <= 0. )266 if( a <= 0. || nMatch(" LOG",chCARD_CAPS) ) 267 267 { 268 268 prt.TooFaint = (realnum)pow(10.,a); … … 558 558 } 559 559 560 else if( nMatch("EVER",chCARD_CAPS) ) 561 { 562 /* print every nth zone */ 560 else if( nMatch("ZONE",chCARD_CAPS) || nMatch("EVER",chCARD_CAPS) ) 561 { 562 /* print every nth zone - command was originally print every but 563 * is being changed to print zone */ 563 564 i = 5; 564 565 num1 = (long int)FFmtRead(chCARD_CAPS,&i,INPUT_LINE_LENGTH,&lgEOL); -
trunk/source/parse_punch.cpp
r2256 r2266 1586 1586 else if( nMatch("LINE",chCard) && !nMatch("XSPE",chCard) && !nMatch("NEAR",chCard)) 1587 1587 { 1588 /* punch line emissivity-1588 /* punch line options - 1589 1589 * this is not punch xspec lines and not linear option 1590 1590 * check for keyword UNITS on line, then scan wavelength or energy units, … … 1608 1608 strcpy( punch.chPunch[punch.npunch], "LINS" ); 1609 1609 sprintf( chHeader, 1610 "#Emission line structure:");1610 "#Emission line emissivity:"); 1611 1611 /* read in the list of lines to examine */ 1612 1612 punch_line(punch.ipPnunit[punch.npunch],"READ",false, chTemp); -
trunk/source/path.h
r1920 r2266 44 44 * NB - note that the backslash "\" always needs to be typed twice, as shown below: */ 45 45 46 // #define CLOUDY_DATA_PATH "c:\\projects\\cloudy\\ data;c:\\users\\gary\\data"46 // #define CLOUDY_DATA_PATH "c:\\projects\\cloudy\\trunk\\data;c:\\users\\gary\\data" 47 47 48 48 /* The // makes the above line of code a comment -
trunk/source/pressure_total.cpp
r2171 r2266 959 959 pressure.PresTotlCurr = TotalPressure_v; 960 960 961 # if 0962 /* this is special case where we are working on first zone, at963 * illuminated face of the cloud. Here we want to remember the964 * initial pressure in case constant pressure is needed */965 /* >>chng 05 jan 10, chng from nzone==1 to nzone<=1 so pressure not changed966 * during search phase */967 /*>>chng 06 jun 20, add test on first iteration, or we are holding968 * density constant - flag dense.lgDenseInitConstant false if969 * constant pressure reset is used - default is true, after first iteration970 * initial density is kept constant, when set false with reset option on971 * constant pressure density on first iteration is allowed to change to keep972 * pressure constant */973 if( nzone <= 1 && (iteration==1 || dense.lgDenseInitConstant) )974 {975 double PresTotlInitSave;976 double PresRamInitSave;977 /* this is first zone, lock onto pressure */978 if( conv.nTotalIoniz )979 {980 PresTotlInitSave = pressure.PresTotlInit;981 PresRamInitSave = pressure.PresRamInit;982 }983 else984 {985 PresTotlInitSave = 0.;986 PresRamInitSave = 0.;987 }988 pressure.PresTotlInit = pressure.PresTotlCurr;989 pressure.PresRamInit = pressure.PresRamCurr;990 if( trace.lgTrace )991 {992 fprintf( ioQQQ,993 " PresTotCurrent 1st zn reset PresTotlInit to PresTotlCurr=%.3e "994 "PresRamInit to PresRamCurr=%.3e old tot=%.3e old ram %.3e hden=%.3e\n",995 pressure.PresTotlInit,996 pressure.PresRamInit,997 PresTotlInitSave,PresRamInitSave,998 dense.gas_phase[ipHYDROGEN] );999 }1000 }1001 # endif1002 961 return; 1003 962 } -
trunk/source/prt_comment.cpp
r2217 r2266 2986 2986 2987 2987 /* this is now the linear vol, rel to inner radius */ 2988 VolComputed = LineSv[i].sumlin[0] / 1e-10; 2989 2990 /* >>chng 02 apr 22, do not zero this element out, so can be used to get vol */ 2991 /* set stored number to zero so it does not appear on the emission line list 2992 LineSv[i].sumlin[LineSave.lgLineEmergent] = 0.; */ 2988 VolComputed = LineSv[i].SumLine[0] / 1e-10; 2993 2989 2994 2990 /* spherical or plane parallel case? */ … … 3154 3150 for( i=0; i < LineSave.nsum; i++ ) 3155 3151 { 3156 if( LineSv[i].chSumTyp == chInfo && LineSv[i]. sumlin[0]/total > RATIO )3152 if( LineSv[i].chSumTyp == chInfo && LineSv[i].SumLine[0]/total > RATIO ) 3157 3153 { 3158 3154 fprintf( ioQQQ, " %4.4s ", LineSv[i].chALab ); 3159 3155 prt_wl( ioQQQ, LineSv[i].wavelength ); 3160 fprintf( ioQQQ, " %7.3f %c\n", LineSv[i]. sumlin[0]/total, chInfo );3156 fprintf( ioQQQ, " %7.3f %c\n", LineSv[i].SumLine[0]/total, chInfo ); 3161 3157 } 3162 3158 } … … 3169 3165 for( i=0; i < LineSave.nsum; i++ ) 3170 3166 { 3171 if( LineSv[i].chSumTyp == chInfo && LineSv[i]. sumlin[0]/total > RATIO )3167 if( LineSv[i].chSumTyp == chInfo && LineSv[i].SumLine[0]/total > RATIO ) 3172 3168 { 3173 3169 fprintf( ioQQQ, " %4.4s ", LineSv[i].chALab ); 3174 3170 prt_wl( ioQQQ, LineSv[i].wavelength ); 3175 fprintf( ioQQQ, " %7.3f %c\n", LineSv[i]. sumlin[0]/total, chInfo );3171 fprintf( ioQQQ, " %7.3f %c\n", LineSv[i].SumLine[0]/total, chInfo ); 3176 3172 } 3177 3173 } … … 3183 3179 for( i=0; i < LineSave.nsum; i++ ) 3184 3180 { 3185 if( LineSv[i].chSumTyp == chInfo && LineSv[i]. sumlin[0]/total > RATIO )3181 if( LineSv[i].chSumTyp == chInfo && LineSv[i].SumLine[0]/total > RATIO ) 3186 3182 { 3187 3183 fprintf( ioQQQ, " %4.4s ", LineSv[i].chALab ); 3188 3184 prt_wl( ioQQQ, LineSv[i].wavelength ); 3189 fprintf( ioQQQ, " %7.3f %c\n", LineSv[i]. sumlin[0]/total, chInfo );3185 fprintf( ioQQQ, " %7.3f %c\n", LineSv[i].SumLine[0]/total, chInfo ); 3190 3186 } 3191 3187 } -
trunk/source/prt_final.cpp
r2217 r2266 357 357 if( fabs(LineSv[i].wavelength-wlh[j] ) <= errorwave ) 358 358 { 359 LineSv[i]. sumlin[0] = 0.;360 LineSv[i]. sumlin[1] = 0.;359 LineSv[i].SumLine[0] = 0.; 360 LineSv[i].SumLine[1] = 0.; 361 361 break; 362 362 } … … 388 388 if( fabs(LineSv[i].wavelength-wlhe[j] ) <= errorwave ) 389 389 { 390 LineSv[i]. sumlin[0] = 0.;391 LineSv[i]. sumlin[1] = 0.;390 LineSv[i].SumLine[0] = 0.; 391 LineSv[i].SumLine[1] = 0.; 392 392 break; 393 393 } … … 706 706 707 707 /* this is the intensity of the line spectrum will be normalized to */ 708 snorm = LineSv[LineSave.ipNormWavL]. sumlin[ipEmType];708 snorm = LineSv[LineSave.ipNormWavL].SumLine[ipEmType]; 709 709 710 710 /* check that this line has positive intensity */ … … 723 723 * a realnum - this is not actually a problem since the number will 724 724 * overflow the format and hence be unreadable */ 725 double scale = LineSv[i]. sumlin[ipEmType]/snorm*LineSave.ScaleNormLine;725 double scale = LineSv[i].SumLine[ipEmType]/snorm*LineSave.ScaleNormLine; 726 726 /* this will become a realnum, so limit dynamic range */ 727 727 scale = MIN2(BIGFLOAT , scale ); … … 731 731 scaled[i] = (realnum)scale; 732 732 733 if( LineSv[i]. sumlin[ipEmType] > 0. )734 { 735 xLog_line_lumin[i] = log10(LineSv[i]. sumlin[ipEmType]) + radius.Conv2PrtInten;733 if( LineSv[i].SumLine[ipEmType] > 0. ) 734 { 735 xLog_line_lumin[i] = log10(LineSv[i].SumLine[ipEmType]) + radius.Conv2PrtInten; 736 736 } 737 737 else … … 815 815 if( prt.lgPrtLineLog ) 816 816 { 817 xLog_line_lumin[iprnt] = log10(LineSv[i]. sumlin[ipEmType]) + radius.Conv2PrtInten;817 xLog_line_lumin[iprnt] = log10(LineSv[i].SumLine[ipEmType]) + radius.Conv2PrtInten; 818 818 } 819 819 else 820 820 { 821 xLog_line_lumin[iprnt] = LineSv[i]. sumlin[ipEmType] * pow(10.,radius.Conv2PrtInten);821 xLog_line_lumin[iprnt] = LineSv[i].SumLine[ipEmType] * pow(10.,radius.Conv2PrtInten); 822 822 } 823 823 sclsav[iprnt] = scaled[i]; … … 1069 1069 for( i=0; i < LineSave.nsum; i++ ) 1070 1070 { 1071 a = (double)LineSv[i]. sumlin[LineSave.lgLineEmergent]/(double)thermal.totcol;1071 a = (double)LineSv[i].SumLine[LineSave.lgLineEmergent]/(double)thermal.totcol; 1072 1072 if( (a >= 0.05) && LineSv[i].chSumTyp == 'c' ) 1073 1073 { … … 1099 1099 for( i=0; i < LineSave.nsum; i++ ) 1100 1100 { 1101 a = (double)LineSv[i]. sumlin[LineSave.lgLineEmergent]/(double)thermal.power;1101 a = (double)LineSv[i].SumLine[LineSave.lgLineEmergent]/(double)thermal.power; 1102 1102 if( (a >= 0.05) && LineSv[i].chSumTyp == 'h' ) 1103 1103 { -
trunk/source/prt_lines.cpp
r1857 r2266 203 203 * remember that memory not allocated until ipass >= 0 */ 204 204 if( LineSave.ipass > 0 ) 205 LineSv[LineSave.nsum]. sumlin[LineSave.lgLineEmergent] = 0.;205 LineSv[LineSave.nsum].SumLine[LineSave.lgLineEmergent] = 0.; 206 206 /* optional sum of certain emission lines, set with "print sum" */ 207 207 linadd(sum/radius.dVeff,0,"Stoy",'i' , -
trunk/source/prt_lines_continuum.cpp
r1906 r2266 79 79 if( LineSave.ipass > 0 ) 80 80 { 81 LineSv[LineSave.nsum]. sumlin[0] = 0.;82 LineSv[LineSave.nsum]. sumlin[1] = 0.;81 LineSv[LineSave.nsum].SumLine[0] = 0.; 82 LineSv[LineSave.nsum].SumLine[1] = 0.; 83 83 } 84 84 … … 98 98 if( LineSave.ipass > 0 ) 99 99 { 100 LineSv[LineSave.nsum]. sumlin[0] = 0.;101 LineSv[LineSave.nsum]. sumlin[1] = 0.;100 LineSv[LineSave.nsum].SumLine[0] = 0.; 101 LineSv[LineSave.nsum].SumLine[1] = 0.; 102 102 } 103 103 … … 117 117 if( LineSave.ipass > 0 ) 118 118 { 119 LineSv[LineSave.nsum]. sumlin[0] = 0.;120 LineSv[LineSave.nsum]. sumlin[1] = 0.;119 LineSv[LineSave.nsum].SumLine[0] = 0.; 120 LineSv[LineSave.nsum].SumLine[1] = 0.; 121 121 } 122 122 … … 152 152 if( LineSave.ipass > 0 ) 153 153 { 154 LineSv[LineSave.nsum]. sumlin[0] = 0.;155 LineSv[LineSave.nsum]. sumlin[1] = 0.;154 LineSv[LineSave.nsum].SumLine[0] = 0.; 155 LineSv[LineSave.nsum].SumLine[1] = 0.; 156 156 } 157 157 … … 186 186 if( LineSave.ipass > 0 ) 187 187 { 188 LineSv[LineSave.nsum]. sumlin[0] = 0.;189 LineSv[LineSave.nsum]. sumlin[1] = 0.;188 LineSv[LineSave.nsum].SumLine[0] = 0.; 189 LineSv[LineSave.nsum].SumLine[1] = 0.; 190 190 } 191 191 … … 235 235 if( LineSave.ipass > 0 ) 236 236 { 237 LineSv[LineSave.nsum-1]. sumlin[1] = LineSv[LineSave.nsum-1].sumlin[0];237 LineSv[LineSave.nsum-1].SumLine[1] = LineSv[LineSave.nsum-1].SumLine[0]; 238 238 } 239 239 … … 244 244 if( LineSave.ipass > 0 ) 245 245 { 246 LineSv[LineSave.nsum-1]. sumlin[1] = LineSv[LineSave.nsum-1].sumlin[0];246 LineSv[LineSave.nsum-1].SumLine[1] = LineSv[LineSave.nsum-1].SumLine[0]; 247 247 } 248 248 … … 332 332 if( LineSave.ipass > 0 ) 333 333 { 334 LineSv[LineSave.nsum]. sumlin[0] = 0.;335 LineSv[LineSave.nsum]. sumlin[1] = 0.;334 LineSv[LineSave.nsum].SumLine[0] = 0.; 335 LineSv[LineSave.nsum].SumLine[1] = 0.; 336 336 } 337 337 … … 465 465 if( LineSave.ipass > 0 ) 466 466 { 467 LineSv[LineSave.nsum]. sumlin[0] = 0.;468 LineSv[LineSave.nsum]. sumlin[1] = 0.;467 LineSv[LineSave.nsum].SumLine[0] = 0.; 468 LineSv[LineSave.nsum].SumLine[1] = 0.; 469 469 } 470 470 … … 485 485 if( LineSave.ipass > 0 ) 486 486 { 487 LineSv[LineSave.nsum]. sumlin[0] = 0.;488 LineSv[LineSave.nsum]. sumlin[1] = 0.;489 } 490 491 /* the nsum-1 -- emslin and nsum -- sumlinis not a bug, look above - they do487 LineSv[LineSave.nsum].SumLine[0] = 0.; 488 LineSv[LineSave.nsum].SumLine[1] = 0.; 489 } 490 491 /* the nsum-1 -- emslin and nsum -- SumLine is not a bug, look above - they do 492 492 * different things to different saves */ 493 493 Cont_nInu = rfield.flux[ipPredCont[i]]*renorm*radius.r1r0sq + … … 519 519 if( LineSave.ipass > 0 ) 520 520 { 521 LineSv[LineSave.nsum]. sumlin[0] = 0.;522 LineSv[LineSave.nsum]. sumlin[1] = 0.;521 LineSv[LineSave.nsum].SumLine[0] = 0.; 522 LineSv[LineSave.nsum].SumLine[1] = 0.; 523 523 } 524 524 … … 535 535 if( LineSave.ipass > 0 ) 536 536 { 537 LineSv[LineSave.nsum]. sumlin[0] = 0.;538 LineSv[LineSave.nsum]. sumlin[1] = 0.;537 LineSv[LineSave.nsum].SumLine[0] = 0.; 538 LineSv[LineSave.nsum].SumLine[1] = 0.; 539 539 } 540 540 -
trunk/source/prt_lines_hydro.cpp
r2133 r2266 180 180 caseb = rfield.qhtot*4.75e-13; 181 181 } 182 LineSv[LineSave.nsum]. sumlin[LineSave.lgLineEmergent] = 0.;182 LineSv[LineSave.nsum].SumLine[LineSave.lgLineEmergent] = 0.; 183 183 } 184 184 else … … 194 194 { 195 195 caseb = rfield.qhtot*Transitions[ipH_LIKE][ipHYDROGEN][ipH2p][ipH1s].EnergyErg; 196 LineSv[LineSave.nsum]. sumlin[LineSave.lgLineEmergent] = 0.;196 LineSv[LineSave.nsum].SumLine[LineSave.lgLineEmergent] = 0.; 197 197 } 198 198 else -
trunk/source/punch_do.cpp
r2141 r2266 2163 2163 { 2164 2164 if( LineSv[j].wavelength > 0. && 2165 LineSv[j]. sumlin[LineSave.lgLineEmergent] > 0. )2165 LineSv[j].SumLine[LineSave.lgLineEmergent] > 0. ) 2166 2166 { 2167 2167 /* line energy, in units set with units option */ … … 2175 2175 /* intrinsic intensity */ 2176 2176 fprintf( punch.ipPnunit[ipPun], "\t%8.3f", 2177 log10(SDIV(LineSv[j]. sumlin[0]) ) + radius.Conv2PrtInten );2177 log10(SDIV(LineSv[j].SumLine[0]) ) + radius.Conv2PrtInten ); 2178 2178 /* emergent line intensity, r recombination */ 2179 2179 fprintf( punch.ipPnunit[ipPun], "\t%8.3f", 2180 log10(SDIV(LineSv[j]. sumlin[1]) ) + radius.Conv2PrtInten );2180 log10(SDIV(LineSv[j].SumLine[1]) ) + radius.Conv2PrtInten ); 2181 2181 /* type of line, i for info, etc */ 2182 2182 fprintf( punch.ipPnunit[ipPun], " \t%c\n", … … 3244 3244 for( i=0; i < LineSave.nsum; i++ ) 3245 3245 { 3246 if( LineSv[i]. sumlin[LineSave.lgLineEmergent] > 0. )3246 if( LineSv[i].SumLine[LineSave.lgLineEmergent] > 0. ) 3247 3247 { 3248 3248 PunResults1Line(ioPUN,(char*)LineSv[i].chALab,LineSv[i].wavelength, 3249 LineSv[i]. sumlin[LineSave.lgLineEmergent], "Line ");3249 LineSv[i].SumLine[LineSave.lgLineEmergent], "Line "); 3250 3250 } 3251 3251 } … … 3695 3695 for( i=0; i < LineSave.nsum; i++ ) 3696 3696 { 3697 if( LineSv[i]. sumlin[LineSave.lgLineEmergent] > 0. )3697 if( LineSv[i].SumLine[LineSave.lgLineEmergent] > 0. ) 3698 3698 { 3699 3699 PunResults1Line(ioPUN,(char*)LineSv[i].chALab,LineSv[i].wavelength, 3700 LineSv[i]. sumlin[LineSave.lgLineEmergent],"Line ");3700 LineSv[i].SumLine[LineSave.lgLineEmergent],"Line "); 3701 3701 } 3702 3702 } -
trunk/source/rt_line_all.cpp
r2129 r2266 347 347 } 348 348 } 349 /*5986 fprintf(ioQQQ,"DEBUG he rt_all\t%li\t%li\t%.4e\t%.4e\n", 350 iteration, nzone, 351 Transitions[1][1][10][5].Emis->TauIn, 352 Transitions[1][1][10][5].Emis->Pesc);*/ 349 /*fprintf(ioQQQ,"DEBUG He Lya dest is %.2e\n", 350 Transitions[ipH_LIKE][ipHELIUM][ipH2p][0].Emis->Pdest );*/ 353 351 354 352 /* is continuum pumping of H Lyman lines included? yes, but turned off -
trunk/source/rt_line_one_tau_reset.cpp
r1854 r2266 82 82 t->Emis->FracInwd = MIN2(1.f,1.5f-t->Emis->Pesc); 83 83 84 /* this is destruction probability 85 * >>chng 96 sep 4, was not here, needed to add since now taking 86 * mean of old and new dest prob */ 84 /* destruction probability */ 87 85 t->Emis->Pdest = 0.; 88 86 t->Emis->Pelec_esc = 0.; -
trunk/source/rt_ots.cpp
r2133 r2266 1080 1080 if( chFlag == 'l' || chFlag == 'b' ) 1081 1081 { 1082 fprintf( ioQQQ, "DEBUG density He %.2e He+2 %.2e O+2 %.2e\n", 1083 dense.gas_phase[ipHELIUM] , dense.xIonDense[ipHELIUM][2], 1084 dense.xIonDense[ipOXYGEN][2] ); 1082 1085 fprintf( ioQQQ, " DEBUG OTSLIN array, anu, otslin, opac, OTS*opac Lab nLine limit:%.2e zone:%.2f IonConv?%c\n", 1083 1086 weak,fnzone,TorF(conv.lgConvIoniz) ); -
trunk/source/service.cpp
r2217 r2266 151 151 DEBUG_ENTRY( "MyAssert()" ); 152 152 153 fprintf(ioQQQ," PROBLEM DISASTERAn assert has been thrown, this is bad.\n");153 fprintf(ioQQQ,"\n\n\n PROBLEM DISASTER\n An assert has been thrown, this is bad.\n"); 154 154 fprintf(ioQQQ," It happened in the file %s at line number %i\n", file, line ); 155 155 fprintf(ioQQQ," This is iteration %li, nzone %li, fzone %.2f, lgSearch=%c.\n", -
trunk/source/zone_startend.cpp
r1732 r2266 205 205 rfield.flux_isotropic[i]; 206 206 207 /* actually do the corrections208 rfield.flux[i] *= opac.tmn[i]; */209 210 207 /* >>chng 03 nov 08, update SummedCon here since flux changed */ 211 208 rfield.SummedCon[i] = rfield.flux[i] + rfield.SummedDif[i];
Note: See TracChangeset
for help on using the changeset viewer.