29 #define TwoS (1+ipISO)
31 #if defined (__ICC) && defined(__ia64) && __INTEL_COMPILER < 910
32 #pragma optimization_level 0
38 static long lgPrt2PhtEmisCoef =
false;
66 static bool lgMustInit=
true;
96 realnum Dilution , two_photon_emiss;
131 for( nelem=ipISO; nelem <
LIMELM; nelem++ )
197 SumCaseB += Sum1level;
221 if(
Transitions[ipISO][nelem][ipHi][ipLo].ipCont < 1 )
225 ip =
Transitions[ipISO][nelem][ipHi][ipLo].ipCont-1;
229 Transitions[ipISO][nelem][ipHi][ipLo].Emis->phots =
236 xInWrd =
Transitions[ipISO][nelem][ipHi][ipLo].Emis->phots*
237 Transitions[ipISO][nelem][ipHi][ipLo].Emis->FracInwd;
252 (1. -
Transitions[ipISO][nelem][ipHi][ipLo].Emis->FracInwd)*
285 const bool lgDo2TripSToo =
false;
287 if( ipISO ==
ipHE_LIKE && lgDo2TripSToo )
321 DiffuseEscape[nu] += two_photon_emiss*
opac.
ExpmTau[nu];
334 if( lgPrt2PhtEmisCoef )
339 lgPrt2PhtEmisCoef =
false;
341 fprintf(
ioQQQ,
"\ny\tGammaNot(2q)\n");
343 for( yTimes20=1; yTimes20<=10; yTimes20++ )
347 fprintf(
ioQQQ,
"%.3e\t", (
double)y );
351 fprintf(
ioQQQ,
"%.3e\t",
357 fprintf(
ioQQQ,
"%.3e\n",
374 for( nelem=NISO; nelem <
LIMELM; nelem++ )
378 for( ion=
dense.
IonLow[nelem]; ion < nelem-NISO+1; ion++ )
382 long int ns, nshell,igRec , igIon,
402 gion = (double)igIon;
406 ASSERT( ns == (nshell-1) );
422 for( nu=iplow; nu <
iphi; ++nu )
458 for( nu=0; nu < limit; nu++ )
460 double TotBremsAllIons = 0., BremsThisIon;
466 ASSERT( BremsThisIon >= 0. );
471 TotBremsAllIons = BremsThisIon;
485 TotBremsAllIons += BremsThisIon;
493 ASSERT( TotBremsAllIons >= 0.);
517 DiffuseEscape[nu] += (
realnum)TotBremsAllIons;
554 DiffuseEscape[nu] += (
realnum)factor;
571 DiffuseEscape[nu] += (
realnum)factor;
623 enum {DEBUG_LOC=
false};
627 fprintf(
ioQQQ,
"rtdiffusedebugg %li\t%.2e\t%.2e\t%.2e\n",
640 for( nelem = ipISO; nelem <
LIMELM; nelem++ )
668 enum {DEBUG_LOC=
false};
670 if( DEBUG_LOC && i==4821 )
673 fprintf(
ioQQQ,
"DEBUG dump lev2 line %li\n", i );
675 fprintf(
ioQQQ,
"DEBUG dump %.3e %.3e %.3e\n",
715 fprintf(
ioQQQ,
" RT_diffuse returns.\n" );