/home66/gary/public_html/cloudy/c08_branch/source/cool_neon.cpp

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

Generated on Mon Feb 16 12:01:14 2009 for cloudy by  doxygen 1.4.7