73 ASSERT( ipLoEnr >= 0 && ipHiEnr >= 0 );
77 double RateInducRec = 0.;
78 double RateInducRecCool = 0.;
100 photoHeat->
HeatNet += phisig*anubar;
111 RateInducRec += prod;
113 RateInducRecCool += prod*(anubar - thresh);
120 for( i=ipLoEnr; i < limit; i++ )
132 RateInducRec += prod;
134 RateInducRecCool += prod*(
rfield.
anu(i) - thresh);
140 for( i=ilo; i < iup; i++ )
149 RateInducRec += prod;
151 RateInducRecCool += prod*(
rfield.
anu(i) - thresh);
181 *rcool = RateInducRecCool*EN1RYD;
182 *ainduc = RateInducRec;
199 fprintf(
ioQQQ,
" GammaPrtShells nz\t%.2f \t%.2li %.2li ",
268 if( ipLoEnr >=
rfield.
nflux || ipLoEnr >= ipHiEnr )
279 fprintf( ioFILE,
" of total=");
281 fprintf( ioFILE,
" (frac inc, otslin, otscon, ConInterOut, outlin ConOTS_local_OTS_rate ) chL, C\n");
283 if( threshold <= 0. || total <= 0. )
297 if( phisig > threshold || phisig < 0.)
302 fprintf( ioFILE,
"[%5ld]" , i );
305 fprintf( ioFILE,
"%5.2f%5.2f%5.2f%5.2f%5.2f%5.2f %4.4s %4.4s %.2e \n",
318 for( i=k; i < j; i++ )
321 if( phisig > threshold || phisig < 0.)
330 fprintf( ioFILE,
"%5.2f%5.2f%5.2f%5.2f%5.2f%5.2f %4.4s %4.4s %.2e \n",
370 if( ipLoEnr >=
rfield.
nflux || ipLoEnr >= ipHiEnr )
384 double eauger =
rfield.
anu(ipLoEnr-1)*yield1;
392 long ipOffset = ipOpac - ipLoEnr;
457 long int nshell , ns;
465 fprintf(ioFILE ,
"GammaPrtRate: %li %li",ion , nelem );
466 for( ns=nshell-1; ns>=0; --ns )
long int ipElement[LIMELM][LIMELM][7][3]
realnum * ConOTS_local_OTS_rate
double GammaK(long int ipLoEnr, long int ipHiEnr, long int ipOpac, double yield1, t_phoHeat *photoHeat)
double widflx(size_t i) const
vector< string > chContLabel
void GammaPrtShells(long nelem, long ion)
vector< double, allocator_avx< double > > ContBoltzAvg
double anu(size_t i) const
const double * anuptr() const
bool fp_equal(sys_float x, sys_float y, int n=3)
long int nsShells[LIMELM][LIMELM]
vector< string > chLineLabel
double reduce_abc_ab(const double *a, const double *b, const double *c, long ilo, long ihi, double *sum_ab)
double anumin(size_t i) const
double **** PhotoRate_Shell
#define DEBUG_ENTRY(funcname)
double GammaBn(long int ipLoEnr, long int ipHiEnr, long int ipOpac, double thresh, double *ainduc, double *rcool, t_phoHeat *photoHeat)
int fprintf(const Output &stream, const char *format,...)
sys_float SDIV(sys_float x)
void GammaPrt(long int ipLoEnr, long int ipHiEnr, long int ipOpac, FILE *ioFILE, double total, double threshold)
double anumax(size_t i) const
t_secondaries secondaries
void GammaPrtRate(FILE *ioFILE, long int ion, long int nelem, bool lgPRT)