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 /*CoolChro compute chromium cooling */ 00004 #include "cddefines.h" 00005 #include "taulines.h" 00006 #include "coolheavy.h" 00007 #include "lines_service.h" 00008 #include "dense.h" 00009 #include "atoms.h" 00010 #include "cooling.h" 00011 #include "phycon.h" 00012 00013 00014 void CoolChro(void) 00015 { 00016 double a21, 00017 a31, 00018 a32; 00019 realnum p2, 00020 p3, 00021 cs; 00022 00023 DEBUG_ENTRY( "CoolChro()" ); 00024 00025 /* Cr Chromium cooling 00026 * 00027 * POPEXC( O12,g1,g2,A21,excit,abund); result already*a21 00028 * [Cr III] 5828, multiplet average */ 00029 CoolHeavy.Cr3l21 = atom_pop2(25.,25.,9.,0.05,2.47e4,dense.xIonDense[ipCHROMIUM][2])* 00030 3.41e-12; 00031 CoolAdd("Cr 3",5828,CoolHeavy.Cr3l21); 00032 00033 /* Cr IV 00034 * these are 2 lines estimated by Jim Kingdon 00035 * a's are bad, collision strengths just one */ 00036 a21 = 0.053; 00037 a31 = 0.102; 00038 a32 = 0.00; 00039 /* POP3(G1,G2,G3,O12,O13,O23,A21,A31,A32,E12,E23,P2,ABUND,GAM2) 00040 * energies are in kelvin */ 00041 p3 = (realnum)atom_pop3(28.,12.,18.,28.,12.,18.,a21,a31,a32,19795.,1356.,&p2, 00042 dense.xIonDense[ipCHROMIUM][3],0.,0.,0.); 00043 /* multiplet at roughly 6801 A */ 00044 CoolHeavy.Cr4l31 = p3*a31*2.92e-12; 00045 /* multiplet at roughly 7267 A */ 00046 CoolHeavy.Cr4l21 = p2*a21*2.74e-12; 00047 CoolAdd("Cr 4",6801,CoolHeavy.Cr4l31); 00048 CoolAdd("Cr 4",7267,CoolHeavy.Cr4l21); 00049 00050 /* Cr V 00051 * these are 3 lines estimated by Jim Kingdon 00052 * a's are bad, collision strengths just one */ 00053 a21 = 0.157; 00054 a31 = 0.048; 00055 a32 = 0.016; 00056 /* POP3(G1,G2,G3,O12,O13,O23,A21,A31,A32,E12,E23,P2,ABUND,GAM2) 00057 * energies are in kelvin */ 00058 p3 = (realnum)atom_pop3(21.,5.,9.,21.,5.,9.,a21,a31,a32,18028.,3842.,&p2,dense.xIonDense[ipCHROMIUM][4], 00059 0.,0.,0.); 00060 /* multiplet at roughly 6577 A */ 00061 CoolHeavy.Cr5l31 = p3*a31*3.02e-12; 00062 /* multiplet at roughly 7979 A */ 00063 CoolHeavy.Cr5l21 = p2*a21*2.49e-12; 00064 /* multiplet at roughly 3.74 microns */ 00065 CoolHeavy.Cr5l32 = p2*a32*5.31e-13; 00066 CoolAdd("Cr 5",6577,CoolHeavy.Cr5l31); 00067 CoolAdd("Cr 5",37,CoolHeavy.Cr5l32); 00068 CoolAdd("Cr 5",7979,CoolHeavy.Cr5l21); 00069 00070 /* [Cr VIII] 1.0106 mic 00071 * Y(ik) from 00072 * >>refer Cr8 cs Pelan, J., & Berrington, K.A. 1995, A&A Suppl, 110, 209 */ 00073 PutCS(1.76, &TauLines[ipCr08101]); 00074 atom_level2( &TauLines[ipCr08101]); 00075 00076 /* [Cr 16] 1410.60, cs from 00077 * >>referold Cr16 cs Saraph, H.E. & Tully, J.A. 1994, A&AS, 107, 29 */ 00078 /* >>refer Cr16 cs Berrington,K.A.,Saraph, H.E. & Tully, J.A. 1998, A&AS, 129, 161 */ 00079 /*>>chng 06 jul 19 Changes made-Humeshkar Nemala*/ 00080 if(phycon.te < 4.057E6) 00081 { 00082 cs = (realnum)(0.0195*phycon.te10*phycon.te03*phycon.te0001); 00083 } 00084 else 00085 { 00086 cs = (realnum)(59.141956/((phycon.te40/phycon.te01)*(phycon.te007/phycon.te0002))); 00087 } 00088 /*PutCS(0.11, &TauLines[ipCr16141]);*/ 00089 PutCS(cs, &TauLines[ipCr16141]); 00090 atom_level2( &TauLines[ipCr16141]); 00091 00092 return; 00093 }