58 ASSERT(nzone_minus_1>=0 && nzone_minus_1 <
struc.nzlim );
65 struc.DenParticles[nzone_minus_1] =
dense.pden;
69 struc.DenMass[nzone_minus_1] =
dense.xMassDensity;
79 struc.AccelTotalOutward[nzone_minus_1] =
wind.AccelTotalOutward;
80 struc.AccelGravity[nzone_minus_1] =
wind.AccelGravity;
88 struc.gas_phase[nelem][nzone_minus_1] =
dense.gas_phase[nelem];
89 for( ion=0; ion<nelem+2; ++ion )
91 struc.xIonDense[nelem][ion][nzone_minus_1] =
dense.xIonDense[nelem][ion];
96 for( nelem=ipISO; nelem<
LIMELM; ++nelem)
98 if(
dense.lgElmtOn[nelem] )
100 for(
long level=0; level <
iso_sp[ipISO][nelem].numLevels_max; ++level )
102 struc.StatesElem[nelem][nelem-ipISO][level][nzone_minus_1] = (
realnum)
iso_sp[ipISO][nelem].st[level].Pop();
113 struc.H2_abund[nzone_minus_1] =
hmi.H2_total;
125 " radius_increment called; radius=%10.3e rinner=%10.3e DRAD=%10.3e drNext=%10.3e ROUTER=%10.3e DEPTH=%10.3e\n",
132 if( Error >
conv.BigEdenError )
148 Error = fabs(
pressure.PresTotlError);
214 static realnum AccelElecScatZone1;
216 AccelElecScatZone1 =
wind.AccelElectron;
236 if(
iteration > 1 && nzone_minus_1 <
struc.nzonePreviousIteration )
248 struc.TempChangeMax = 0.;
259 for(
unsigned i = 0; i <
mole.species.size(); ++i )
261 if(
mole.species[i].levels != NULL )
265 (*st).ColDen() +=
radius.drad_x_fillfac * (*st).Pop();
313 h2.ortho_colden +=
h2.ortho_density*
radius.drad_x_fillfac;
314 h2.para_colden +=
h2.para_density*
radius.drad_x_fillfac;
316 ASSERT( fabs(
h2.ortho_density +
h2.para_density -
hmi.H2_total ) /
hmi.H2_total < 1e-4 );
329 for( i=0; i < 5; i++ )
336 for( i=0; i < 3; i++ )
343 for( i=0; i < 4; i++ )
359 for( nelem=0; nelem <
LIMELM; nelem++ )
361 avWeight +=
dense.gas_phase[nelem]*
dense.AtomicWeight[nelem];
366 rfield.opac_mag_B_point = 0.;
367 rfield.opac_mag_V_point = 0.;
368 rfield.opac_mag_B_extended = 0.;
369 rfield.opac_mag_V_extended = 0.;
370 for(
size_t nd=0; nd <
gv.bin.size(); nd++ )
376 rfield.opac_mag_B_point += (
gv.bin[nd]->dstab1[
rfield.ipB_filter-1] +
377 gv.bin[nd]->pure_sc1[
rfield.ipB_filter-1])*
double(
gv.bin[nd]->dstAbund)*
380 rfield.opac_mag_V_point += (
gv.bin[nd]->dstab1[
rfield.ipV_filter-1] +
381 gv.bin[nd]->pure_sc1[
rfield.ipV_filter-1])*
double(
gv.bin[nd]->dstAbund)*
387 rfield.opac_mag_B_extended += (
gv.bin[nd]->dstab1[
rfield.ipB_filter-1] +
388 gv.bin[nd]->pure_sc1[
rfield.ipB_filter-1]*
gv.bin[nd]->asym[
rfield.ipB_filter-1])*
391 rfield.opac_mag_V_extended += (
gv.bin[nd]->dstab1[
rfield.ipV_filter-1] +
392 gv.bin[nd]->pure_sc1[
rfield.ipV_filter-1]*
gv.bin[nd]->asym[
rfield.ipV_filter-1])*
398 gv.bin[nd]->avDGRatio += (
realnum)(
gv.bin[nd]->dustp[1]*
gv.bin[nd]->dustp[2]*
399 gv.bin[nd]->dustp[3]*
gv.bin[nd]->dustp[4]*
gv.bin[nd]->dstAbund/avWeight*
418 double meanDensity = double(
dense.xMassDensity)*
geometry.FillFac;
419 rjeans = 7.79637 + (
phycon.alogte - log10(
dense.wmole) -
420 log10(meanDensity))/2.;
423 ajmass = 3.*(rjeans - 0.30103) + log10(4.*
PI/3.*meanDensity);
431 fprintf(
ioQQQ,
" radius_increment returns\n" );
diatomics h2("h2", 4100., &hmi.H2_total, Yan_H2_CS)