26 const int nLine = 100;
30 long int iperm[
nLine];
43 for(
long i=0; i<
nLine; ++i)
54 for(
long ipISO = 0; ipISO<
NISO; ipISO++ )
56 for( nelem=ipISO; nelem <
LIMELM; nelem++ )
65 for( ipLo=0; ipLo < ipHi; ipLo++ )
67 if(
iso_sp[ipISO][nelem].trans(ipHi,ipLo).ipCont() <= 0 )
73 if(
iso_sp[ipISO][nelem].trans(ipHi,ipLo).Emis().PopOpc() > smallfloat &&
75 ( (
iso_sp[ipISO][nelem].trans(ipHi,ipLo).Emis().TauTot() -
iso_sp[ipISO][nelem].trans(ipHi,ipLo).Emis().TauIn()) > smallfloat ) )
87 ip =
MIN2((
long)nLine-1,ip+1);
100 if( (*
TauLine2[i].Hi()).Pop() > 1e-30 )
117 ip =
MIN2((
long)nLine-1,ip+1);
124 if( (*
HFLines[i].Hi()).Pop() > 1e-30 )
141 ip =
MIN2((
long)nLine-1,ip+1);
146 for(
long ipSpecies=0; ipSpecies<
nSpecies; ipSpecies++ )
154 int ipHi = (*tr).ipHi();
155 if (ipHi >=
dBaseSpecies[ipSpecies].numLevels_local || (*tr).ipCont() <= 0)
157 if( (*(*tr).Hi()).Pop() > 1e-30 )
168 wl[ip] = (*tr).WLAng();
174 ip =
MIN2((
long)nLine-1,ip+1);
183 RadPres1 = (*diatom)->H2_RadPress();
192 ip =
MIN2((
long)nLine-1,ip+1);
218 fprintf( ioPRESSURE,
" P(Lines):" );
219 for(
long i=0; i <
MIN2(10,ip); i++ )
221 int ipline = iperm[i];
222 fprintf( ioPRESSURE,
"(%4.4s ", chLab[ipline].c_str());
223 prt_wl(ioPRESSURE, wl[ipline] );
224 fprintf(ioPRESSURE,
" %.2f) ",frac[ipline]);
static const double THRESH
void prt_wl(FILE *ioOUT, realnum wl)
string chIonLbl(const TransitionProxy &t)
long int IonHigh[LIMELM+1]
TransitionList HFLines("HFLines",&AnonStates)
TransitionList TauLine2("TauLine2",&AnonStates)
void PrtLinePres(FILE *ioPRESSURE)
double pres_radiation_lines_curr
t_iso_sp iso_sp[NISO][LIMELM]
double PressureRadiationLine(const TransitionProxy &t, realnum DopplerWidth)
vector< diatomics * > diatoms
realnum GetDopplerWidth(realnum massAMU)
TransitionProxy trans(const long ipHi, const long ipLo)
realnum AtomicWeight[LIMELM]
#define DEBUG_ENTRY(funcname)
vector< species > dBaseSpecies
int fprintf(const Output &stream, const char *format,...)
vector< TransitionList > dBaseTrans
long int nCollapsed_local
vector< diatomics * >::iterator diatom_iter
void spsort(realnum x[], long int n, long int iperm[], int kflag, int *ier)