00001 /* This file is part of Cloudy and is copyright (C)1978-2013 by Gary J. Ferland and 00002 * others. For conditions of distribution and use see copyright notice in license.txt */ 00003 /*CoolNeon evaluate total cooling due to neon */ 00004 #include "cddefines.h" 00005 #include "coolheavy.h" 00006 #include "taulines.h" 00007 #include "mole.h" 00008 #include "dense.h" 00009 #include "phycon.h" 00010 #include "embesq.h" 00011 #include "ligbar.h" 00012 #include "thermal.h" 00013 #include "lines_service.h" 00014 #include "atoms.h" 00015 #include "cooling.h" 00016 00017 void CoolNeon(void) 00018 { 00019 double a21, 00020 a31, 00021 a32, 00022 cs2s2p, 00023 cs2s3p, 00024 /*Introduce the following three variables for use in Ne V-Humeshkar Nemala*/ 00025 cs12, 00026 cs13, 00027 cs23, 00028 /* >>chng 08 may 06, Add collisional excitation of NeII by H, important in AGN */ 00029 cs_neII_h; 00030 realnum 00031 cs, 00032 pop2; 00033 00034 DEBUG_ENTRY( "CoolNeon()" ); 00035 00036 /* Neon II 12.8 micron 00037 * >>referold ne2 cs Saraph, H.E. & Tully, J.A. 1994, A&AS, 107, 29 */ 00038 /*These statements were commented out-Humeshkar Nemala*/ 00039 /*cs = (realnum)MIN2(0.4,0.1294*phycon.te10/phycon.te02*phycon.te005);*/ 00040 /*cs = (realnum)MAX2(0.272,cs);*/ 00041 /*>>chng 06 jun 30 Changes made by Humeshkar Nemala-Jun 2006*/ 00042 /*>>refer ne2 cs Griffin,D.C., Mitnik,D.M. & Badnell, N. R.,2001,JPhB,34,4401*/ 00043 /*Temperature range from 1000 TO 4E5 */ 00044 00045 /*>>chng 06 jul 02, adjust precoef to get exact result at 1e4 K */ 00046 cs = (realnum)(0.132*phycon.te07*phycon.te02 *phycon.te004 *phycon.te0001 ); 00047 00048 /* >>chng 08 mag 06, Collisional de-excitation rate of fine-structure level of Ne+ by H impact, from * 00049 * >>refer ne2 csh Hollenbach, D. & McKee, C. F. 1989, ApJ, 342, 306 */ 00050 00051 cs_neII_h = 1.3e-9; 00052 00053 PutCS(cs+cs_neII_h*(dense.xIonDense[ipHYDROGEN][0]+findspecieslocal("H2")->den+findspecieslocal("H2*")->den)/dense.cdsqte,TauLines[ipTNe13]); 00054 atom_level2(TauLines[ipTNe13]); 00055 00056 /*********************************************************************************** 00057 **************************************Ne III***************************************** 00058 ************************************************************************************/ 00059 double neiii_cs3P13P0, 00060 neiii_cs3P23P1, 00061 neiii_cs3P23P0, 00062 neiii_cs3P1D2, 00063 neiii_cs3P1S0; 00064 00065 //neiii_cs calculates the collision strenghts for Ne III 00066 neiii_cs(neiii_cs3P13P0, 00067 neiii_cs3P23P1, 00068 neiii_cs3P23P0, 00069 neiii_cs3P1D2, 00070 neiii_cs3P1S0); 00071 00072 PutCS(neiii_cs3P13P0,TauLines[ipTNe36]); 00073 00074 PutCS(neiii_cs3P23P1,TauLines[ipTNe16]); 00075 00076 PutCS(neiii_cs3P23P0,*TauDummy); 00077 00078 /* now do the level populations */ 00079 atom_level3(TauLines[ipTNe16],TauLines[ipTNe36],*TauDummy); 00080 00081 /* POP3(G1,G2,G3,O12,O13,O23,A21,A31,A32,E12,E23,P2,ABUND,GAM2) 00082 >>refer Ne3 as Froese Fischer, C., & Tachiev, G. 2004, At. Data Nucl. Data Tables, 87, 1 00083 */ 00084 a21=0.231; 00085 a31=2.069; 00086 a32=2.545; 00087 CoolHeavy.c3343 = atom_pop3(9.,5.,1.,neiii_cs3P1D2,neiii_cs3P1S0,0.32,a21,a31,a32, 00088 3.583e4,4.301e4,&pop2,dense.xIonDense[ipNEON][2],0.,0.,0.)*a32*5.954e-12; 00089 CoolHeavy.c3869 = pop2*a21*5.14e-12; 00090 thermal.dCooldT += CoolHeavy.c3869*(3.72e4*thermal.tsq1 - thermal.halfte); 00091 CoolAdd("Ne 3",3342,CoolHeavy.c3343); 00092 CoolAdd("Ne 3",3869,CoolHeavy.c3869); 00093 CoolAdd("Ne 3",1793,CoolHeavy.c3343*1.38); 00094 00095 /*********************************************************************************** 00096 **************************************Ne IV***************************************** 00097 ************************************************************************************/ 00098 /* Ne IV 2425.4+2422.8 A'S from 00099 * >>refer ne4 as Zeippen, C.J. 1982, MNRAS 198 111 00100 * Ne IV CS from 00101 * >>referold ne4 cs Giles, K. 1981, MNRAS, 195, 63 00102 * above gave table, actually used, but following is most recent 00103 * calculation, in great agreement, but only gives figures 00104 * >>refer ne4 cs Ramsbottom, C.A., Bell, K.L., & Keenan, F.P. 1998, MNRAS, 293, 233 00105 * POP3(G1,G2,G3,O12,O13,O23,A21,A31,A32,E12,E23,P2,ABUND,GAM2) */ 00106 a21 = 2.46e-3; 00107 a31 = 1.02; 00108 a32 = 0.693; 00109 CoolHeavy.c4720 = atom_pop3(4.,10.,6.,1.37,0.464,2.14,a21,a31,a32,5.94e4, 00110 3.05e4,&pop2,dense.xIonDense[ipNEON][3],0.,0.,0.)*a32*4.22e-12; 00111 CoolHeavy.c2424 = pop2*8.21e-12*a21; 00112 CoolAdd("Ne 4",2424,CoolHeavy.c2424); 00113 CoolAdd("Ne 4",4720,CoolHeavy.c4720); 00114 CoolAdd("Ne 4",1602,CoolHeavy.c4720*4.1); 00115 00116 /* Ne V 3426, CS data from 00117 * >>referold ne5 cs Lennon, D.J. & Burke, V.M. 1991, MNRAS 251, 628 00118 * revised from 00119 * >>refer ne5 cs Lennon, D.J. Burke, V.M. 1994, A&AS, 103, 273 00120 * A's from 00121 * >>refer ne5 as Baluja, K.L. 1985, J.Phys. B, 18, L413 00122 * POP3(G1,G2,G3,O12,O13,O23,A21,A31,A32,E12,E23,P2,ABUND,GAM2) */ 00123 /*>>chng 06 jun 30 The collision strengths are changed-Humeshkar Nemala*/ 00124 /*Temperature dependence for the cs is included*/ 00125 /*>>refer ne5 cs Griffin,D.C., & Badnell,N.R.2000,JPhB,33,4389*/ 00126 /*The cs for the 1-2 transition was obtained by summing the cs 00127 for transitions 3P0-1D2,3P1-1D2,3P2-1D2*/ 00128 cs12=1.2172*(phycon.te04*phycon.te003*phycon.te0004); 00129 /*The cs for the 1-3 i.e., the 3P-1S0 transition was obtained by summing the cs 00130 for the 3P0-1S0,3P1-1S0,3P2-1S0transitions */ 00131 cs13=1.2598/(phycon.te10*phycon.te04*phycon.te007*phycon.te002*phycon.te0004); 00132 /*Temperature dependent data avilable for the cs between states 2 and 3,i.e.,1D2-1S0 00133 on the internet at the Oak Ridge National Laboratory CFADC. 00134 Fit was done for data obtained through private communication*/ 00135 cs23 = 0.2524*(phycon.te07*phycon.te01*phycon.te007*phycon.te0003); 00136 /*CoolHeavy.c2975 = atom_pop3(9.,5.,1.,2.18,0.254,0.688,0.521,4.35,2.76, 00137 4.297e4,4.835e4,&pop2,dense.xIonDense[ipNEON][4],0.,0.,0.)*2.76*6.69e-12;*/ 00138 CoolHeavy.c2975 = atom_pop3(9.,5.,1.,cs12,cs13,cs23,0.521,4.35,2.76, 00139 4.297e4,4.835e4,&pop2,dense.xIonDense[ipNEON][4],0.,0.,0.)*2.76*6.69e-12; 00140 /* following are old values 00141 * C2975 = POP3( 9.,5.,1., 1.8,0.25,0.52, 0.521,4.34,2.76, 00142 * 1 4.297E4,4.835E4, POP2 , ANEON(5),0.) * 2.76*6.69E-12 */ 00143 CoolHeavy.c1565 = CoolHeavy.c2975*1.901*1.572; 00144 CoolHeavy.c3426 = pop2*0.521*5.81e-12; 00145 thermal.dCooldT += CoolHeavy.c3426*(4.20e4*thermal.tsq1 - thermal.halfte) + 00146 (CoolHeavy.c2975 + CoolHeavy.c1565)*9.132e4*thermal.tsq1; 00147 CoolAdd("Ne 5",2975,CoolHeavy.c2975); 00148 CoolAdd("Ne 5",1565,CoolHeavy.c1565); 00149 CoolAdd("Ne 5",3426,CoolHeavy.c3426); 00150 00151 /* Ne V 24.2, 14.3 micron 00152 * CS from 00153 * >>referold ne5 cs Lennon, D.J. Burke, V.M. 1994, A&AS, 103, 273 00154 * A's from 00155 * >>refer ne5 as Baluja, K.L. 1985, J.Phys. B, 18, L413 */ 00156 /*cs = (realnum)MIN2(1.84,21.12/(phycon.te10*phycon.te10*phycon.te10/ 00157 phycon.te003/phycon.te003));*/ 00158 /*>>chng 06 jun 30 Changed-Humeshkar Nemala*/ 00159 /* >>refer ne5 cs Griffin,D.C., & Badnell,N.R.2000,JPhB,33,4389*/ 00160 /*this line corresponds to the 3P1-3P0 transition - the lowest of the 3P transitions */ 00161 cs = (realnum)(21.917/(phycon.te20 *phycon.te07 *phycon.te02 *phycon.te001 00162 *phycon.te0007 *phycon.te0002)); 00163 PutCS(cs,TauLines[ipTNe24]); 00164 /*cs = (realnum)MIN2(9.5,261.71/(phycon.te10*phycon.te10*phycon.te10* 00165 phycon.te10*phycon.te01*phycon.te003));*/ 00166 /*this line corresponds to the 3P2-3P1 transition*/ 00167 cs = (realnum)(122.49/(phycon.te30 *phycon.te04 *phycon.te005 00168 *phycon.te003 *phycon.te0001 )); 00169 PutCS(cs,TauLines[ipTNe14]); 00170 /*we introduce the dummy line 3P2-3P0 transition*/ 00171 /*cs = (realnum)MIN2(3.2,139.86/(phycon.sqrte/phycon.te03*phycon.te003/ 00172 phycon.te001));*/ 00173 cs = (realnum)(58.788/(phycon.te40*phycon.te001*phycon.te0007)); 00174 PutCS(cs,*TauDummy); 00175 /* now do the level populations */ 00176 atom_level3(TauLines[ipTNe24],TauLines[ipTNe14],*TauDummy); 00177 00178 /* Ne V 5S - 3P, CS 00179 * >>referold ne5 cs Lennon, D.J. Burke, V.M. 1994, A&AS, 103, 273 00180 * A from 00181 * >>referold ne5 cs Mendoza, C. 1982, in Planetary Nebulae, IAU Symp No. 103, 00182 * >>referoldcon ed by D.R. Flower, (D. Reidel: Holland), 143 */ 00184 /*>>chng 06 july 05 Changed-Humeshkar Nemala*/ 00185 /* >>refer ne5 cs Griffin,D.C., & Badnell,N.R.2000,JPhB,33,4389*/ 00186 /*this line corresponds to the 2s2 2p2 3P- 2s2p3 5S0 transition*/ 00187 /*The cs was obtained by summing the cs of the transitions 00188 3P0-5S2,3P1-5S2,3P2-5S2*/ 00189 cs = (realnum)(22.956/((phycon.te30/phycon.te01)*phycon.te001*phycon.te0002)); 00190 /*CoolHeavy.c1134 = atom_pop2(11.9/(phycon.te10*phycon.te10*phycon.te03), 00191 9.,5.,4.67e3,1.273e5,dense.xIonDense[ipNEON][4])*1.767e-11;*/ 00192 CoolHeavy.c1134 = atom_pop2(cs,9.,5.,4.67e3,1.273e5, 00193 dense.xIonDense[ipNEON][4])*1.767e-11; 00194 CoolAdd("Ne 5",1134,CoolHeavy.c1134); 00195 00196 /* Ne VI 7.6 micron, A from 00197 * >>refer ne6 as Froese Fischer, C. 1983, J.Phys. B, 16, 157 00198 * cs from 00199 * >>referold ne6 cs Zhang, H.L., Graziani, M., Pradhan, A.K. 1994, A&A, 283, 319 00200 * >>chng 96 jul 16 had been just constant 2.0 */ 00201 /*cs = (realnum)MIN2(3.71,23.623/(phycon.te20*phycon.te02/phycon.te003));*/ 00202 /*>>chng 06 jun 30 Changed-Humeshkar Nemala*/ 00203 /*>>refer ne6 cs Mitnik,D.M.,Griffin,D.C., & Badnell,N.R. 2001,JPhB,34,4455*/ 00204 cs = (realnum) (35.705/(phycon.te20 *phycon.te07 *phycon.te004 *phycon.te0007 )); 00205 PutCS(cs,TauLines[ipxNe0676]); 00206 atom_level2(TauLines[ipxNe0676]); 00207 /* fs76 = atom_pop2(0.37,2.,4.,1.9E-2,1.89E3,dense.xIonDense(10,6))*2.62E-13 00208 * dCooldT = dCooldT + fs76*(1890.*tsq1-halfte) 00209 * call CoolAdd( 'Ne 6' , 76 , FS76 ) 00210 * 00211 * Ne VII col data from 00212 * >>refer ne7 cs Berrington, K.A., Burke, P.G., Dufton, P.L., Kingston, A.E. 1985, 00213 * >>refercon At. Data Nucl. Data Tables, 33, 195 00214 * low te from 00215 * >>refer ne7 cs Dufton, P.L., Doyle, J.G., Kingston, A.E. 1979, A&A, 78, 318 00216 * newer fit to 00217 * >>refer ne7 cs Ramsbottom, C.A., Berrington, K.A., Bell, K.L. 1995, 00218 * >>refercon At. Data Nucl. Data Tables, 61, 105 */ 00219 if( phycon.te < 4e4 ) 00220 { 00221 cs = (realnum)(0.0352*(phycon.te20/phycon.te03)); 00222 } 00223 else 00224 { 00225 cs = (realnum)(0.736/(phycon.te10*phycon.te02/phycon.te003)); 00226 } 00227 /* >>chng 01 sep 09, AtomSeqBeryllium will reset this to 1/3 so critical density correct */ 00228 PutCS(cs,TauLines[ipT895]); 00229 /* AtomSeqBeryllium(CS23,CS24,CS34,tarray,A41) 00230 * c895 = AtomSeqBeryllium(.52,.61, 2.0,t895,.0578) * 2.223E-11 00231 * A's 00232 * >>refer ne7 as Fleming, J., Bell, K.L, Hibbert, A., Vaeck, N., Godefroid, M.R. 00233 * >>refercon 1996, MNRAS, 279, 1289 */ 00234 AtomSeqBeryllium(.52,.61,2.0,TauLines[ipT895],.07066); 00235 embesq.em895 = (realnum)(atoms.PopLevels[3]*0.0578*2.223e-11); 00236 00237 /* Ne VIII 774, iso with 1549, extrapolation for omega 00238 * >>refer ne8 ?? Cochrane, D.M., & McWhirter, R.W.P. 1983, PhyS, 28, 25 */ 00239 ligbar(10,TauLines[ipT770],TauLines[ipT88],&cs2s2p,&cs2s3p); 00240 PutCS(cs2s2p,TauLines[ipT770]); 00241 PutCS(cs2s2p*0.5,TauLines[ipT780]); 00242 PutCS(1.0,*TauDummy); 00243 atom_level3(TauLines[ipT780],*TauDummy,TauLines[ipT770]); 00244 00245 PutCS(cs2s3p,TauLines[ipT88]); 00246 atom_level2(TauLines[ipT88]); 00247 return; 00248 } 00249 00250 //neiii_cs calculates the collision strenghts for Ne III 00251 void neiii_cs(double& neiii_cs3P13P0, 00252 double& neiii_cs3P23P1, 00253 double& neiii_cs3P23P0, 00254 double& neiii_cs3P1D2, 00255 double& neiii_cs3P1S0) 00256 { 00257 DEBUG_ENTRY( "neiii_cs()" ); 00258 /* Ne III fine structure lines 00259 * >>referold ne3 cs Butler, K., & Zeippen, C.J. 1994, A&AS, 108, 1 */ 00260 /*PutCS(0.774,TauLines[ipTNe16]); 00261 PutCS(0.244,TauLines[ipTNe36]); 00262 PutCS(0.208,TauDummy);*/ 00263 /* Ne III fine structure lines 00264 *>>refer ne3 cs McLaughlin,B.M., & Bell,K.L.2000,JPhB,33,597 */ 00265 /*>>chng 06 jun 30 Changes made by-Humeshkar Nemala*/ 00266 /*Data available over temps 1E3 K to 1E6 K*/ 00267 /* this is the highest of the two transitions, J = 0-1, 36 mm 00268 * (3P J levels inverted for this ion) */ 00269 if(phycon.te <6.3E3) 00270 { 00271 neiii_cs3P13P0=(realnum)((9.34E-02)*phycon.te10*phycon.te003*phycon.te0002); 00272 } 00273 else if(phycon.te < 2.5E4) 00274 { 00275 neiii_cs3P13P0=(realnum)((19.8888E-02)*(phycon.te02/(phycon.te003*phycon.te0002))); 00276 } 00277 else if(phycon.te < 4E4) 00278 { 00279 neiii_cs3P13P0=(realnum)((838.0688E-06)*phycon.sqrte*phycon.te05*(phycon.te007/phycon.te0001)); 00280 } 00281 else if(phycon.te < 1E5) 00282 { 00283 neiii_cs3P13P0=(realnum)((256.2312E-11)*phycon.te*phycon.te70*phycon.te05*phycon.te005*phycon.te0002); 00284 } 00285 else if(phycon.te < 2.5E5 ) 00286 { 00287 neiii_cs3P13P0=(realnum)((238.5789E-06)*phycon.te70*phycon.te05*phycon.te01* 00288 phycon.te001*phycon.te0004); 00289 } 00290 else 00291 { 00292 neiii_cs3P13P0=(realnum)(147.59848/(phycon.te30*phycon.te01*phycon.te001*phycon.te0005)); 00293 } 00294 00295 /* this is the lowest of the two transitions, J = 1-2 16 mm 00296 * (3P J levels inverted for this ion) */ 00297 00298 if(phycon.te < 2.5E4) 00299 { 00300 neiii_cs3P23P1 = (realnum)(0.3702*phycon.te07*phycon.te005*phycon.te0004); 00301 } 00302 else if(phycon.te < 4E4) 00303 { 00304 neiii_cs3P23P1 = (realnum)((16.6945E-04)*(phycon.te40*phycon.te20*phycon.te005*phycon.te003* 00305 phycon.te0005*phycon.te0003)); 00306 } 00307 else if(phycon.te < 1.6E5) 00308 { 00309 neiii_cs3P23P1 = (realnum)((50.5069E-09)*(phycon.te32*phycon.te07*phycon.te02*phycon.te0007 00310 *phycon.te0001)); 00311 } 00312 else if(phycon.te < 2.5E5) 00313 { 00314 neiii_cs3P23P1 = (realnum)((778.1245E-04)*phycon.te40*(phycon.te002/phycon.te0002)); 00315 } 00316 else 00317 { 00318 neiii_cs3P23P1 = (realnum)(786.6482/(phycon.te30*phycon.te04*phycon.te0001)); 00319 } 00320 00321 /* this is the transition from highest to lowest J within 3P - it has a tiny A 00322 * which we ignore, so use the TauDummy struc */ 00323 00324 if(phycon.te <4E4) 00325 { 00326 neiii_cs3P23P0 = (realnum)(0.0999*phycon.te07*phycon.te005*phycon.te001); 00327 } 00328 else if( phycon.te < 2.5E5) 00329 { 00330 neiii_cs3P23P0=(realnum)(9.02142E-06* 00331 phycon.te90*phycon.te05*phycon.te004*phycon.te0007*phycon.te0001); 00332 } 00333 else 00334 { 00335 neiii_cs3P23P0=(realnum)(66.1264/(phycon.te30*phycon.te01*phycon.te007)); 00336 } 00337 /*cs = 0.207f;*/ 00338 00339 /* Ne III 3869+3968, 3343, A's 00340 * >>referold ne3 as Mendoza, C. 1982, in Planetary Nebulae, IAU Symp No. 103, 00341 * >>refercon ed by D.R. Flower, (D. Reidel: Holland), 143 00342 * CS 00343 * >>referold ne3 cs Butler, K., & Zeippen, C.J. 1994, A&AS, 108, 1 */ 00344 /*>>chng 06 jun 30 Changes made-Humeshkar Nemala*/ 00345 /* >>refer ne3 cs McLaughlin, B. M., & Bell, K. L. 2000, Journal of Physics B Atomic Molecular Physics, 33, 597 00346 * (3P J levels inverted for this ion) */ 00347 /*This is the transition between states 1-2 i.e., 3P-1D2*/ 00348 /*The cs for 1-2 transition was obtained by summing the cs of 00349 transitions 3P2-1D2,3P1-1D2,3P0-1D2*/ 00350 /*The cs are determined over two ranges: as below and above 2.5E5 00351 *>>chng 10 feb 24 ML: Updated the coefficients for the cs12 and cs13 values using the McLaughlin and Bell reference. 00352 *The coefficients have been chosen to ensure continuity over 2.5E5 K.*/ 00353 if(phycon.te <2.5E5) 00354 { 00355 neiii_cs3P1D2 = (realnum)(0.919 *phycon.te03*phycon.te007* 00356 phycon.te002*phycon.te0007*phycon.te0001); 00357 } 00358 else 00359 { 00360 neiii_cs3P1D2 = (realnum)((19.7)/(phycon.te20*phycon.te005* 00361 phycon.te001*phycon.te0007*phycon.te0002)); 00362 } 00363 /*This is the transition between states 1-3 i.e., 3P-1S0*/ 00364 /*The cs for 1-3 transition was obtained by summing the cs of 00365 transitions 3P2-1S0,3P1-1S0,3P0-1S0*/ 00366 /*The cs are determined over three ranges: as below 2.5E4, 00367 above 2.5E4 and below 2.5E5, and above 2.5E5*/ 00368 if(phycon.te < 2.5E4) 00369 { 00370 /*The cs remains fairly constant in the range 1E3 to 2.5E4,with an average of 0.152*/ 00371 neiii_cs3P1S0 = 0.152f; 00372 } 00373 else if( phycon.te < 2.5E5) 00374 { 00375 neiii_cs3P1S0 = (realnum)((798.0776E-05)*(phycon.te30/phycon.te01)*phycon.te001); 00376 } 00377 else 00378 { 00379 neiii_cs3P1S0 = (realnum)((1026.2621E-02)/(phycon.te20*phycon.te07*phycon.te01*phycon.te005)); 00380 } 00381 /*cs of 3343 which refers to the 1D2-1S0 cs*/ 00382 /*This is the transition between states 2-3*/ 00383 /*data over temperatures 1E3 to 1E6 remains fairly constant at 0.32 00384 cs = 0.32f;*/ 00385 00386 return; 00387 }