16 long int lower, iupper;
30 lower =
MIN2( n1 , n2 );
31 iupper =
MAX2( n1, n2 );
32 if( lower < 1 || lower == iupper )
34 fprintf(
ioQQQ,
" HydroEinstA called with impossible ns, =%li %li\n", lower, iupper);
41 xmicron = 1.E4/(ryd*RYD_INF);
42 EinstA_v =
HydroOscilStr(xl,xu)*TRANS_PROB_CONST*1e8f/(
POW2(xmicron))*xl*xl/xu/xu;
51 double z4 =
POW4((
double)nelem+1.);
54 if( ipHi >=
iso_sp[ipISO][nelem].numLevels_max-
iso_sp[ipISO][nelem].nCollapsed_max )
56 if( ipLo >=
iso_sp[ipISO][nelem].numLevels_max-
iso_sp[ipISO][nelem].nCollapsed_max )
71 if(
N_(ipHi) ==
N_(ipLo) )
78 else if( ipLo == 0 && ipHi == 1 )
81 Aul = 2.46e-6*
powi((
double)(nelem+1.),10);
84 else if( ipLo == 0 && ipHi == 2 )
89 else if( abs(
L_(ipLo) -
L_(ipHi) )== 1 )
98 ( abs(
L_(ipHi)-
L_(ipLo)) > 1) );
109 DEBUG_ENTRY(
"hydro_transprob_collapsed_to_collapsed()" );
114 for(
long lLo=0; lLo < nLo; ++lLo )
125 DEBUG_ENTRY(
"hydro_transprob_collapsed_to_resolved()" );
135 double Aul =
H_Einstein_A( nHi, lLo+1, nLo, lLo, nelem+1 );
139 Aul *= (2.*(lLo+1.)+1.) * 2. / (2.*(double)nHi*(
double)nHi);
144 double Aul1 =
H_Einstein_A( nHi, lLo-1, nLo, lLo, nelem+1 );
149 Aul += Aul1*(2.*(lLo-1.)+1.) * 2. / (2.*(double)nHi*(
double)nHi);
152 sp->
CachedAs[ nHi-nResMax-1 ][ ipLoRes ][1] = 0.f;
double HydroOscilStr(double xLower, double Upper)
STATIC double hydro_transprob_collapsed_to_collapsed(long nelem, long nHi, long nLo)
multi_arr< realnum, 3 > CachedAs
void iso_put_error(long ipISO, long nelem, long ipHi, long ipLo, long whichData, realnum errorOpt, realnum errorPess)
STATIC double hydro_transprob_collapsed_to_resolved(long nelem, long nHi, long nLo, long lLo)
multi_arr< long, 3 > IndexIfAllResolved
t_iso_sp iso_sp[NISO][LIMELM]
long int n_HighestResolved_max
double powi(double, long int)
double HydroEinstA(long int n1, long int n2)
#define DEBUG_ENTRY(funcname)
int fprintf(const Output &stream, const char *format,...)
double H_Einstein_A(long int n, long int l, long int np, long int lp, long int iz)
realnum hydro_transprob(long nelem, long ipHi, long ipLo)