cloudy  trunk
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
cool_nick.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 /*CoolNick compute nickel cooling */
4 #include "cddefines.h"
5 #include "taulines.h"
6 #include "phycon.h"
7 #include "lines_service.h"
8 #include "dense.h"
9 #include "atoms.h"
10 #include "cooling.h"
11 
12 void CoolNick(void)
13 {
14  double tused;
15  realnum rate;
16 
17  DEBUG_ENTRY( "CoolNick()" );
18 
19  /*>>refer Ni1 cs Hollenbach, D. & McKee, C.F. 1989, ApJ, 342, 306 */
20  /* rates are said to be ok over range 30 - 3000K */
21  tused = MAX2( 30. , phycon.te );
22  tused = MIN2( 3000. , phycon.te );
23  tused /= 100.;
24 
25  /* the 7.5 micron line */
26  /* >>chng 03 nov 15, add these lines */
27  rate = (realnum)(1.2e-7 * dense.eden +
28  /*8.0e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0]) / dense.eden);*/
29  /* >>chng 05 jul 05, eden to cdsqte */
30  8.0e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0] );
32 
33  /* the 11.3 micron line */
34  rate = (realnum)(9.3e-8 * dense.eden +
35  /* >>chng 05 jul 05, eden to cdsqte */
36  /*5.3e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0]) / dense.eden);*/
37  5.3e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0] );
39 
40  rate = (realnum)(1.2e-7 * dense.eden +
41  /* >>chng 05 jul 05, eden to cdsqte */
42  /*6.9e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0]) / dense.eden);*/
43  6.9e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0] );
44  (*(*TauDummy).Hi()).g() = (*TauLines[ipNi1_11m].Hi()).g();
45  LineConvRate2CS( *TauDummy , rate );
46  /* this says that line is a dummy, not real one */
47  (*(*TauDummy).Hi()).g() = 0.;
48 
49  atom_level3(TauLines[ipNi1_7m],TauLines[ipNi1_11m],*TauDummy);
50 
51  return;
52 }
#define MIN2
Definition: cddefines.h:765
TransitionProxy::iterator TauDummy
Definition: taulines.cpp:60
long ipNi1_11m
#define MAX2
Definition: cddefines.h:786
t_phycon phycon
Definition: phycon.cpp:6
t_dense dense
Definition: dense.cpp:24
static double * g
Definition: species2.cpp:28
double xIonDense[LIMELM][LIMELM+1]
Definition: dense.h:125
float realnum
Definition: cddefines.h:107
void atom_level3(const TransitionProxy &t10, const TransitionProxy &t21, const TransitionProxy &t20)
Definition: atom_level3.cpp:15
TransitionList TauLines("TauLines",&AnonStates)
#define DEBUG_ENTRY(funcname)
Definition: cddefines.h:688
double eden
Definition: dense.h:190
void CoolNick(void)
Definition: cool_nick.cpp:12
long ipNi1_7m
void LineConvRate2CS(const TransitionProxy &t, realnum rate)
Definition: transition.cpp:521
double te
Definition: phycon.h:11
const int ipHYDROGEN
Definition: cddefines.h:309