cloudy  trunk
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
cool_chro.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 /*CoolChro compute chromium cooling */
4 #include "cddefines.h"
5 #include "taulines.h"
6 #include "coolheavy.h"
7 #include "lines_service.h"
8 #include "dense.h"
9 #include "atoms.h"
10 #include "cooling.h"
11 #include "phycon.h"
12 
13 
14 void CoolChro(void)
15 {
16  double a21,
17  a31,
18  a32;
19  realnum p2,
20  p3,
21  cs;
22 
23  DEBUG_ENTRY( "CoolChro()" );
24 
25  /* Cr Chromium cooling
26  *
27  * POPEXC( O12,g1,g2,A21,excit,abund); result already*a21
28  * [Cr III] 5828, multiplet average */
29  CoolHeavy.Cr3l21 = atom_pop2(25.,25.,9.,0.05,2.47e4,dense.xIonDense[ipCHROMIUM][2])*
30  3.41e-12;
31  CoolAdd("Cr 3",5828,CoolHeavy.Cr3l21);
32 
33  /* Cr IV
34  * these are 2 lines estimated by Jim Kingdon
35  * a's are bad, collision strengths just one */
36  a21 = 0.053;
37  a31 = 0.102;
38  a32 = 0.00;
39  /* POP3(G1,G2,G3,O12,O13,O23,A21,A31,A32,E12,E23,P2,ABUND,GAM2)
40  * energies are in kelvin */
41  p3 = (realnum)atom_pop3(28.,12.,18.,28.,12.,18.,a21,a31,a32,19795.,1356.,&p2,
42  dense.xIonDense[ipCHROMIUM][3],0.,0.,0.);
43  /* multiplet at roughly 6801 A */
44  CoolHeavy.Cr4l31 = p3*a31*2.92e-12;
45  /* multiplet at roughly 7267 A */
46  CoolHeavy.Cr4l21 = p2*a21*2.74e-12;
47  CoolAdd("Cr 4",6801,CoolHeavy.Cr4l31);
48  CoolAdd("Cr 4",7267,CoolHeavy.Cr4l21);
49 
50  /* Cr V
51  * these are 3 lines estimated by Jim Kingdon
52  * a's are bad, collision strengths just one */
53  a21 = 0.157;
54  a31 = 0.048;
55  a32 = 0.016;
56  /* POP3(G1,G2,G3,O12,O13,O23,A21,A31,A32,E12,E23,P2,ABUND,GAM2)
57  * energies are in kelvin */
58  p3 = (realnum)atom_pop3(21.,5.,9.,21.,5.,9.,a21,a31,a32,18028.,3842.,&p2,dense.xIonDense[ipCHROMIUM][4],
59  0.,0.,0.);
60  /* multiplet at roughly 6577 A */
61  CoolHeavy.Cr5l31 = p3*a31*3.02e-12;
62  /* multiplet at roughly 7979 A */
63  CoolHeavy.Cr5l21 = p2*a21*2.49e-12;
64  /* multiplet at roughly 3.74 microns */
65  CoolHeavy.Cr5l32 = p2*a32*5.31e-13;
66  CoolAdd("Cr 5",6577,CoolHeavy.Cr5l31);
67  CoolAdd("Cr 5",37,CoolHeavy.Cr5l32);
68  CoolAdd("Cr 5",7979,CoolHeavy.Cr5l21);
69 
70  /* [Cr VIII] 1.0106 mic
71  * Y(ik) from
72  * >>refer Cr8 cs Pelan, J., & Berrington, K.A. 1995, A&A Suppl, 110, 209 */
73  PutCS(1.76, &TauLines[ipCr08101]);
74  atom_level2( &TauLines[ipCr08101]);
75 
76  /* [Cr 16] 1410.60, cs from
77  * >>referold Cr16 cs Saraph, H.E. & Tully, J.A. 1994, A&AS, 107, 29 */
78  /* >>refer Cr16 cs Berrington,K.A.,Saraph, H.E. & Tully, J.A. 1998, A&AS, 129, 161 */
79  /*>>chng 06 jul 19 Changes made-Humeshkar Nemala*/
80  if(phycon.te < 4.057E6)
81  {
82  cs = (realnum)(0.0195*phycon.te10*phycon.te03*phycon.te0001);
83  }
84  else
85  {
86  cs = (realnum)(59.141956/((phycon.te40/phycon.te01)*(phycon.te007/phycon.te0002)));
87  }
88  /*PutCS(0.11, &TauLines[ipCr16141]);*/
89  PutCS(cs, &TauLines[ipCr16141]);
90  atom_level2( &TauLines[ipCr16141]);
91 
92  return;
93 }

Generated for cloudy by doxygen 1.8.1.2