cloudy
trunk
|
00001 /* This file is part of Cloudy and is copyright (C)1978-2008 by Gary J. Ferland and 00002 * others. For conditions of distribution and use see copyright notice in license.txt */ 00003 /*CoolNick compute nickel cooling */ 00004 #include "cddefines.h" 00005 #include "taulines.h" 00006 #include "phycon.h" 00007 #include "lines_service.h" 00008 #include "dense.h" 00009 #include "atoms.h" 00010 #include "cooling.h" 00011 00012 void CoolNick(void) 00013 { 00014 double cs, 00015 tused; 00016 realnum rate; 00017 00018 DEBUG_ENTRY( "CoolNick()" ); 00019 00020 /*>>refer Ni1 cs Hollenbach, D. & McKee, C.F. 1989, ApJ, 342, 306 */ 00021 /* rates are said to be ok over range 30 - 3000K */ 00022 tused = MAX2( 30. , phycon.te ); 00023 tused = MIN2( 3000. , phycon.te ); 00024 tused /= 100.; 00025 00026 /* the 7.5 micron line */ 00027 /* >>chng 03 nov 15, add these lines */ 00028 rate = (realnum)(1.2e-7 * dense.eden + 00029 /*8.0e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0]) / dense.eden);*/ 00030 /* >>chng 05 jul 05, eden to cdsqte */ 00031 8.0e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0] ); 00032 LineConvRate2CS( &TauLines[ipNi1_7m] , rate ); 00033 00034 /* the 11.3 micron line */ 00035 rate = (realnum)(9.3e-8 * dense.eden + 00036 /* >>chng 05 jul 05, eden to cdsqte */ 00037 /*5.3e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0]) / dense.eden);*/ 00038 5.3e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0] ); 00039 LineConvRate2CS( &TauLines[ipNi1_11m] , rate ); 00040 00041 rate = (realnum)(1.2e-7 * dense.eden + 00042 /* >>chng 05 jul 05, eden to cdsqte */ 00043 /*6.9e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0]) / dense.eden);*/ 00044 6.9e-10*pow(tused, 0.17 )*dense.xIonDense[ipHYDROGEN][0] ); 00045 TauDummy.Hi->g = TauLines[ipNi1_11m].Hi->g; 00046 LineConvRate2CS( &TauDummy , rate ); 00047 /* this says that line is a dummy, not real one */ 00048 TauDummy.Hi->g = 0.; 00049 00050 atom_level3(&TauLines[ipNi1_7m],&TauLines[ipNi1_11m],&TauDummy); 00051 00052 /* [Ni XII] 4230.8A 00053 * Y(ik) from 00054 * >>refer ni12 cs Pelan, J., & Berrington, K.A. 1995, A&A Suppl, 110, 209 00055 * call PutCS( 1.68 , xNi1242 ) 00056 * >>chng 98 jan 09, update collision strength to 00057 * >>refer ni12 cs Mathews, A., Ramsbottom, C.A., Bell, K.L., & Keenan, F.P., 1998, 00058 * >>refercon ApJ 492, 415 */ 00059 if( phycon.alogte < 5.4 ) 00060 { 00061 cs = MAX2(0.6,0.6+0.8182*(phycon.alogte-3.2)); 00062 } 00063 else 00064 { 00065 cs = MAX2(0.6,2.4-1.5*(phycon.alogte-5.4)); 00066 } 00067 PutCS(cs,&TauLines[ipxNi1242]); 00068 atom_level2(&TauLines[ipxNi1242]); 00069 return; 00070 }