cloudy  trunk
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ion_argon.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 /*IonArgon compute ionization balance of argon */
4 #include "cddefines.h"
5 #include "dense.h"
6 #include "ionbal.h"
7 
8 void IonArgon(void)
9 {
10  const int NDIM = ipARGON+1;
11 
12  static const double dicoef[2][NDIM] = {
13  {1.00e-3,1.10e-2,3.40e-2,6.85e-2,9.00e-2,6.35e-2,2.60e-2,1.70e-2,
14  2.10e-2,3.50e-2,4.30e-2,7.13e-2,9.60e-2,8.50e-2,1.70e-2,.476,.297,0.},
15  {.005,.045,.057,.087,.0769,.140,.120,.1,1.92,1.66,1.67,1.40,1.31,
16  1.02,.245,.294,.277,0.}
17  };
18  static const double dite[2][NDIM] = {
19  {3.20e5,2.90e5,2.39e5,2.56e5,2.50e5,2.10e5,1.80e5,2.70e6,8.30e5,
20  6.95e5,6.05e5,6.68e5,6.50e5,5.30e5,3.55e5,3.01e7,3.13e7,0.},
21  {3.10e5,5.50e5,6.00e5,3.81e5,3.30e5,2.15e5,2.15e5,3.30e6,3.50e6,
22  3.60e6,3.80e6,2.90e6,3.60e6,2.80e6,1.10e6,6.05e6,6.54e6,0.}
23  };
24  static const double ditcrt[NDIM] = {2.5e4,3.0e4,2.5e4,2.5e4,1.8e4,1.8e4,2.2e4,
25  5.0e5,1.6e5,1.5e5,1.5e5,1.3e5,1.3e5,1.1e5,7.6e4,6.5e6,1.4e7,1e20};
26  static const double aa[NDIM] = {0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.};
27  static const double bb[NDIM] = {0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.};
28  static const double cc[NDIM] = {0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.};
29  static const double dd[NDIM] = {0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.};
30  static const double ff[NDIM] = {0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.};
31 
32  DEBUG_ENTRY( "IonArgon()" );
33 
34  /* argon nelem=18
35  *
36  * rates from Shull and van Steenberg, Ap.J. Sup 48, 95. */
37 
38  /* rec from +15, 16, 17 from Arnauld et al 85 */
39  /* Pequignot and Aldrovandi Ast Ap 161, 169. */
40 
41  if( !dense.lgElmtOn[ipARGON] )
42  {
43  return;
44  }
45 
47 
48  ion_photo(ipARGON,false);
49 
50  /* find collisional ionization rates */
52 
53  /* get recombination coefficients */
54  ion_recomb(false,(const double*)dicoef,(const double*)dite,ditcrt,aa,bb,cc,dd,ff,ipARGON);
55 
56  /* solve for ionization balance */
57  ion_solver(ipARGON,false);
58  return;
59 }

Generated for cloudy by doxygen 1.8.3.1