54 static double gCa2[5]={2.,4.,6.,2.,4.};
55 static double exCa2[4]={13650.2,60.7,11480.6,222.9};
68 PhotoRate5 = 1.7e-18*hlgam;
69 PhotoRate4 = 8.4e-19*hlgam;
70 PhotoRate3 = 7.0e-18*hlgam;
71 PhotoRate2 = 4.8e-18*hlgam;
90 d52 = 5.6*opcxyz/(opcxyz + opCax)*(1. -
TauLines[
ipT8498].Emis().Pesc());
91 d53 = 5.6*opcxyz/(opcxyz + opCay)*(1. -
TauLines[
ipT8542].Emis().Pesc());
92 d42 = 5.6*opcxyz/(opcxyz + opCaz)*(1. -
TauLines[
ipT8662].Emis().Pesc());
108 d51 = 5.6*opckh/(opckh + op51);
110 d41 = 5.6*opckh/(opckh + op41);
120 r21 = PhotoRate2 + a21;
121 r31 = PhotoRate3 + a31;
122 r41 = a41 + PhotoRate4 + d41;
123 r51 = a51 + PhotoRate5 + d51;
138 double Cooling , CoolingDeriv;
139 atom_pop5(gCa2,exCa2,5.8,8.6,cs14,cs15,20.6,22.9,9.8,3.4,44.4,1.0,
140 r21,r31,r41,r51,0.,r42,r52,0.,r53,0.,Ca2pop,
141 dense.xIonDense[
ipCALCIUM][1],&Cooling , &CoolingDeriv, 0.,0.,0.,0.);
144 c21 = 5.8/4.*
dense.cdsqte;
148 ca.Ca2RmLya =
MAX2(
ca.Ca2RmLya,(
realnum)(PhotoRate2/(PhotoRate2+a21+c21)));
150 ca.Cak = (
realnum)(Ca2pop[4]*a51*5.06e-12);
151 ca.Cah = (
realnum)(Ca2pop[3]*a41*5.01e-12);
152 ca.Cax = (
realnum)(Ca2pop[4]*a52*2.34e-12);
153 ca.Cay = (
realnum)(Ca2pop[4]*a53*2.33e-12);
154 ca.Caz = (
realnum)(Ca2pop[3]*a42*2.30e-12);
155 ca.Caf1 = (
realnum)(Ca2pop[2]*a31*2.73e-12);
156 ca.Caf2 = (
realnum)(Ca2pop[1]*a21*2.72e-12);
157 ca.popca2ex = (
realnum)(Ca2pop[1] + Ca2pop[2] + Ca2pop[3] + Ca2pop[4]);
161 ca.c7306 =
ca.Caf1 +
ca.Caf2;
162 ca.Cakh =
ca.Cak +
ca.Cah;
166 thermal.dCooldT += CoolingDeriv;
172 ca.dstCala = (
realnum)(Ca2pop[4]*PhotoRate5 + Ca2pop[3]*PhotoRate4);
174 ca.dCaf12 = (
realnum)((Ca2pop[2]*PhotoRate3 + Ca2pop[1]*PhotoRate2)*2.31e-12);
188 enum {DEBUG_LOC=
false};
192 fprintf(
ioQQQ,
" hlgam is %e\n", hlgam);
200 ca.Ca3d = (
realnum)(Ca2pop[1] + Ca2pop[2]);
201 ca.Ca4p = (
realnum)(Ca2pop[3] + Ca2pop[4]);
236 else if(
phycon.te < 2.512e5 )
void atom_pop5(const double g[], const double EnerWN[], double cs12, double cs13, double cs14, double cs15, double cs23, double cs24, double cs25, double cs34, double cs35, double cs45, double a21, double a31, double a41, double a51, double a32, double a42, double a52, double a43, double a53, double a54, double p[], realnum abund, double *Cooling, double *CoolingDeriv, double pump01, double pump02, double pump03, double pump04)