cloudy trunk
Loading...
Searching...
No Matches
cool_scan.cpp
Go to the documentation of this file.
1/* This file is part of Cloudy and is copyright (C)1978-2013 by Gary J. Ferland and
2 * others. For conditions of distribution and use see copyright notice in license.txt */
3/*CoolScan compute scandium cooling */
4#include "cddefines.h"
5#include "taulines.h"
6#include "coolheavy.h"
7#include "dense.h"
8#include "lines_service.h"
9#include "atoms.h"
10#include "cooling.h"
11
12void CoolScan(void)
13{
14 double a21,
15 a31,
16 a32,
17 g1,
18 g2,
19 g3,
20 p3;
21 realnum p2;
22
23 DEBUG_ENTRY( "CoolScan()" );
24
25 /* Sc scandium cooling
26 *
27 * Sc II
28 * these are 3 lines estimated by Jim Kingdon
29 * a's are bad, collision strengths just one */
30 a21 = 0.004;
31 a31 = 6.95e-3;
32 a32 = 5.0e-4;
33 g1 = 15.;
34 g2 = 5.;
35 g3 = 21.;
36 /* POP3(G1,G2,G3,O12,O13,O23,A21,A31,A32,E12,E23,P2,ABUND,GAM2)
37 * energies are in kelvin */
38 p3 = atom_pop3(g1,g2,g3,g1,g2,g3,a21,a31,a32,3504.,3407.,&p2,
39 dense.xIonDense[ipSCANDIUM][1], 0.,0.,0.);
40
41 /* 2.08 microns */
42 CoolHeavy.Sc22p08m = p3*a31*9.56e-13;
43
44 /* 4.1 micron */
45 CoolHeavy.Sc24p1m = p2*a21*4.85e-13;
46
47 /* 4.22 micron */
48 CoolHeavy.Sc24p2m = p3*a32*4.71e-13;
49
50 CoolAdd("Sc 2",41,CoolHeavy.Sc24p1m);
51 CoolAdd("Sc 2",42,CoolHeavy.Sc24p2m);
52 CoolAdd("Sc 2",21,CoolHeavy.Sc22p08m);
53
54 /* Sc III 3933
55 * POPEXC( O12,g1,g2,A21,excit,abund); result already*a21
56 * [Sc III] 3933, multiplet average */
57 g1 = 10.;
58 g2 = 2.;
59 CoolHeavy.Sc33936 = atom_pop2(g1,g1,g2,0.03,3.66e4,
60 dense.xIonDense[ipSCANDIUM][2])* 5.06e-12;
61 CoolAdd("Sc 3",3933,CoolHeavy.Sc33936);
62
63 /* [Sc V] 2.31 mic
64 * Y(ik) from
65 * >>refer sc5 cs Pelan, J., & Berrington, K.A. 1995, A&A Suppl, 110, 209 */
68
69 /* Sc VI */
70 a21 = 4.94;
71 a31 = 49.24;
72 a32 = 4.3;
73 g1 = 9.;
74 g2 = 5.;
75 g3 = 1.;
76 /* POP3(G1,G2,G3,O12,O13,O23,A21,A31,A32,E12,E23,P2,ABUND,GAM2)
77 * energies are in kelvin */
78 p3 = atom_pop3(g1,g2,g3,g1,g2,g3,a21,a31,a32,28464.,40045.,&p2,
79 dense.xIonDense[ipSCANDIUM][5], 0.,0.,0.);
80 /* 2100 ang - 3=>1 */
81 CoolHeavy.Sc42100 = p3*a31*9.47e-12;
82 /* 5054 - 2=>1 */
83 CoolHeavy.Sc45058 = p2*a21*3.93e-12;
84 /* 3592 3=>2 */
85 CoolHeavy.Sc43595 = p3*a32*5.53e-12;
86 CoolAdd("Sc 6",2100,CoolHeavy.Sc42100);
87 CoolAdd("Sc 6",5054,CoolHeavy.Sc45058);
88 CoolAdd("Sc 6",3592,CoolHeavy.Sc43595);
89
90 /* [Sc 13] 2637.97A, cs from
91 * >>refer sc13 cs Saraph, H.E. & Tully, J.A. 1994, A&AS, 107, 29 */
92 PutCS(0.182,TauLines[ipSc13264]);
94
95 return;
96}
long ipSc05231
long ipSc13264
void atom_level2(const TransitionProxy &t)
double atom_pop2(double omega, double g1, double g2, double a21, double bltz, double abund)
Definition atom_pop2.cpp:9
double atom_pop3(double g1, double g2, double g3, double o12, double o13, double o23, double a21, double a31, double a32, double Tex12, double Tex23, realnum *pop2, double abund, double gam2, double r12, double r13)
Definition atom_pop3.cpp:10
const int ipSCANDIUM
Definition cddefines.h:325
float realnum
Definition cddefines.h:103
#define DEBUG_ENTRY(funcname)
Definition cddefines.h:684
void CoolAdd(const char *chLabel, realnum lambda, double cool)
Definition cool_etc.cpp:13
void CoolScan(void)
Definition cool_scan.cpp:12
t_CoolHeavy CoolHeavy
Definition coolheavy.cpp:5
t_dense dense
Definition dense.cpp:24
TransitionList TauLines("TauLines", &AnonStates)
void PutCS(double cs, const TransitionProxy &t)