cloudy  trunk
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ion_helium.cpp
Go to the documentation of this file.
1 /* This file is part of Cloudy and is copyright (C)1978-2008 by Gary J. Ferland and
2  * others. For conditions of distribution and use see copyright notice in license.txt */
3 /*IonHelium solve ionization balance for helium */
4 #include "cddefines.h"
5 #include "dense.h"
6 #include "trace.h"
7 #include "conv.h"
8 #include "iso.h"
9 #include "ionbal.h"
10 
11 void IonHelium( void )
12 {
13  bool lgDebugPrint=false;
14 
15  DEBUG_ENTRY( "IonHelium()" );
16 
17  /* option to "turn off" helium */
18  if( !dense.lgElmtOn[ipHELIUM] )
19  {
20  dense.xIonDense[ipHELIUM][0] = 0.;
21  dense.xIonDense[ipHELIUM][1] = 0.;
22  dense.xIonDense[ipHELIUM][2] = 0.;
23  return;
24  }
25 
26  /* populations */
27  /* >>chng 01 may 09, add option to set ionization with element name ioniz cmnd */
29  {
33  return;
34  }
35 
36  lgDebugPrint = false;
37 # if 0
38  if( nzone > 197 )
39  lgDebugPrint = true;
40 # endif
41 
42  /* find ionization balance */
43  ion_solver( ipHELIUM , lgDebugPrint );
44 
45  if( trace.lgHeBug )
46  {
47  fprintf( ioQQQ, " %li IonHelium returns; He0:%.4e He+:%.4e He+2:%.4e",
52 
53  fprintf( ioQQQ, " He+/0:%s %.2e smp:%.2e rec:%.2e ion:%.2e ",
55  iso.pop_ion_ov_neut[ipHE_LIKE][ipHELIUM] ,
56  iso.xIonSimple[ipHE_LIKE][ipHELIUM],
57  ionbal.RateRecomTot[ipHELIUM][0],
58  iso.RateLevel2Cont[ipHE_LIKE][ipHELIUM][ipH1s] );
59 
60  fprintf( ioQQQ, " He+/+2:%s %.4e smp:%.4e rec:%.4e ion:%.4e rad rec:%.4e",
61  iso.chTypeAtomUsed[ipH_LIKE][ipHELIUM],
62  iso.pop_ion_ov_neut[ipH_LIKE][ipHELIUM] ,
63  iso.xIonSimple[ipH_LIKE][ipHELIUM] ,
64  ionbal.RateRecomTot[ipHELIUM][1],
65  iso.RateLevel2Cont[ipH_LIKE][ipHELIUM][ipH1s] ,
66  ionbal.RR_rate_coef_used[ipHELIUM][1] );
67 
68  fprintf( ioQQQ, "\n" );
69  }
70  return;
71 }

Generated for cloudy by doxygen 1.8.1.1