Changeset 2068

Show
Ignore:
Timestamp:
05/14/08 12:21:45 (4 months ago)
Author:
rjrw
Message:

Updated C,N,O,S doubly-ionized reactions from Nick Abel.

Location:
branches/newmole/source
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • branches/newmole/source/mole_reactions.cpp

    r2043 r2068  
    252252                newreact("H+,O=>H,O+","hpoexch",1.,0.,0.); 
    253253        } 
    254  
    255         /* Sulphur Chemistry, involving double ions */ 
    256         newreact("S+2,H2=>HS+,H+","hmrate",1.6e-9,0,0); /* Chen et al. 2003  */ 
    257         newreact("S+2,H=>H+,S+","hmrate",1.0e-14,0,0); /* Yan 1997 */ 
     254        /* Chemistry involving double ions */ 
     255        /* Rate for S+2 + X comes from:  
     256         * >>refer      rate-coeff      Chen, Gao, & Kwong 2003, PhRvA, 68, 052703 */ 
     257        /* branching ratio forming HS+ unknown, for now assume 50% of S+2 reactions form SH+ */ 
     258        newreact("S+2,H2=>H2+,S+","hmrate",8e-10,0,0);  
     259        newreact("S+2,H2=>HS+,H+","hmrate",8e-10,0,0);  
     260        newreact("S+2,N2=>N2+,S+","hmrate",1.67e-9,0,0);  
     261        newreact("S+2,CO=>CO+,S+","hmrate",1.78e-9,0,0);  
     262        /* Rate for C+2 + X comes from:  
     263         * >>refer      rate-coeff      Gao & Kwong 2003, PhRvA, 68, 052704 */ 
     264        newreact("C+2,H2=>H2+,C+","hmrate",8.77e-11,0,0);  
     265        newreact("C+2,CO=>CO+,C+","hmrate",4.58e-10,0,0);  
     266        newreact("C+2,N2=>N2+,C+","hmrate",1.08e-10,0,0);  
     267        /* Rate for O+2 + X comes from:  
     268         * >>refer      rate-coeff      Fang & Kwong 1995, PhRvA, 51, 1321 */ 
     269        newreact("O+2,H2=>H2+,O+","hmrate",2.36e-9,0,0);  
     270        newreact("O+2,N2=>N2+,O+","hmrate",3.15e-9,0,0);  
     271        newreact("O+2,CO=>CO+,O+","hmrate",3.4e-9,0,0);  
     272        /* Rate for N+2 + X comes from:  
     273         * >>refer      rate-coeff      Fang & Kwong 1997, PhRvA, 55, 440 */ 
     274        newreact("N+2,H2=>H2+,N+","hmrate",3.38e-11,0,0);  
     275        newreact("N+2,N2=>N2+,N+","hmrate",2.1e-9,0,0);  
     276        newreact("N+2,CO=>CO+,N+","hmrate",3.37e-9,0,0);  
    258277        /* Argon Chemistry -- from database compiled by V. G. Anicich at http://ntrs.nasa.gov/search.jsp?R=781494&id=5&qs=N%3D4294878962 */ 
    259         newreact("H2+,Ar=>ArH+,H","hmrate",2.3e-9,0,0); /* Anicich 2003 Database */ 
    260         newreact("H3+,Ar=>ArH+,H2","hmrate",3.65e-10,0,0); /* Anicich 2003 Database */ 
    261         newreact("N2+,Ar=>Ar+,N2","hmrate",3.65e-10,0,0); /* Anicich 2003 Database */ 
    262         newreact("Ar+,H2=>Ar,H2+","hmrate",2.0e-12,0,0); /* Anicich 2003 Database */ 
    263         newreact("Ar+,H2=>ArH+,H","hmrate",8.72e-10,0,0); /* Anicich 2003 Database */ 
    264         newreact("Ar+,CH4=>CH2+,Ar,H2","hmrate",1.4e-10,0,0); /* Anicich 2003 Database */ 
    265         newreact("Ar+,CH4=>CH3+,Ar,H","hmrate",7.9e-10,0,0); /* Anicich 2003 Database */ 
    266         newreact("Ar+,NH3=>Ar,NH3+","hmrate",1.6e-9,0,0); /* Anicich 2003 Database */ 
    267         newreact("Ar+,N2=>N2+,Ar","hmrate",1.2e-11,0,0); /* Anicich 2003 Database */ 
    268         newreact("Ar+,H2O=>H2O+,Ar","hmrate",1.3e-9,0,0); /* Anicich 2003 Database */ 
    269         newreact("Ar+,O2=>O2+,Ar","hmrate",3.5e-11,0,0); /* Anicich 2003 Database */ 
    270         newreact("Ar+,HCl=>HCl+,Ar","hmrate",2.9e-10,0,0); /* Anicich 2003 Database */ 
    271         newreact("Ar+,HCl=>Cl,ArH+","hmrate",6.0e-11,0,0); /* Anicich 2003 Database */ 
    272         newreact("Ar+,CO=>CO+,Ar","hmrate",2.8e-11,0,0); /* Anicich 2003 Database */ 
     278        newreact("H2+,Ar=>ArH+,H","hmrate",2.3e-9,0,0); 
     279        newreact("H3+,Ar=>ArH+,H2","hmrate",3.65e-10,0,0); 
     280        newreact("N2+,Ar=>Ar+,N2","hmrate",3.65e-10,0,0);  
     281        newreact("Ar+,H2=>Ar,H2+","hmrate",2.0e-12,0,0);  
     282        newreact("Ar+,H2=>ArH+,H","hmrate",8.72e-10,0,0);  
     283        newreact("Ar+,CH4=>CH2+,Ar,H2","hmrate",1.4e-10,0,0);  
     284        newreact("Ar+,CH4=>CH3+,Ar,H","hmrate",7.9e-10,0,0);  
     285        newreact("Ar+,NH3=>Ar,NH3+","hmrate",1.6e-9,0,0);  
     286        newreact("Ar+,N2=>N2+,Ar","hmrate",1.2e-11,0,0);  
     287        newreact("Ar+,H2O=>H2O+,Ar","hmrate",1.3e-9,0,0);  
     288        newreact("Ar+,O2=>O2+,Ar","hmrate",3.5e-11,0,0);  
     289        newreact("Ar+,HCl=>HCl+,Ar","hmrate",2.9e-10,0,0);  
     290        newreact("Ar+,HCl=>Cl,ArH+","hmrate",6.0e-11,0,0);  
     291        newreact("Ar+,CO=>CO+,Ar","hmrate",2.8e-11,0,0);  
    273292        newreact("ArH+,e-=>H,Ar","hmrate",1.0e-7,-0.50,0); /* Guess based on typical electron recombination rate coefficients */ 
    274293        /* Neon Chemistry -- from database compiled by V. G. Anicich at http://ntrs.nasa.gov/search.jsp?R=781494&id=5&qs=N%3D4294878962 */ 
    275         newreact("Ne+2,H=>Ne+,H+","hmrate",1e-14,0,0); /*Arnnaud & Rothenflug (1985) */ 
    276         newreact("H2+,Ne=>NeH+,H","hmrate",2.3e-10,0,0); /* Anicich 2003 Database */ 
    277         newreact("H3+,Ne=>NeH+,H2","hmrate",3.65e-10,0,0); /* Anicich 2003 Database */ 
    278         newreact("HeH+,Ne=>NeH+,He","hmrate",1.25e-9,0,0); /* Anicich 2003 Database */ 
    279         newreact("Ne+,CH4=>CH+,Ne,H2,H","hmrate",8.4e-13,0,0); /* Anicich 2003 Database */ 
    280         newreact("Ne+,CH4=>CH2+,Ne,H2","hmrate",4.2e-12,0,0); /* Anicich 2003 Database */ 
    281         newreact("Ne+,CH4=>CH3+,Ne,H","hmrate",4.7e-12,0,0); /* Anicich 2003 Database */ 
    282         newreact("Ne+,CH4=>CH4+,Ne","hmrate",1.1e-11,0,0); /* Anicich 2003 Database */ 
    283         newreact("Ne+,NH3=>NH+,Ne,H2","hmrate",4.5e-12,0,0); /* Anicich 2003 Database */ 
    284         newreact("Ne+,NH3=>NH2+,Ne,H","hmrate",1.9e-10,0,0); /* Anicich 2003 Database */ 
    285         newreact("Ne+,NH3=>NH3+,Ne","hmrate",2.7e-11,0,0); /* Anicich 2003 Database */ 
    286         newreact("Ne+,N2=>N2+,Ne","hmrate",1.1e-13,0,0); /* Anicich 2003 Database */ 
    287         newreact("Ne+,H2O=>H2O+,Ne","hmrate",8.0e-10,0,0); /* Anicich 2003 Database */ 
    288         newreact("Ne+,O2=>O+,Ne,O","hmrate",6.0e-11,0,0); /* Anicich 2003 Database */ 
    289         newreact("NeH+,H2=>H3+,Ne","hmrate",2.0e-11,0,0); /* Anicich 2003 Database */ 
    290         newreact("NeH+,He=>HeH+,Ne","hmrate",3.8e-14,0,0); /* Anicich 2003 Database */ 
     294        newreact("H2+,Ne=>NeH+,H","hmrate",2.3e-10,0,0);  
     295        newreact("H3+,Ne=>NeH+,H2","hmrate",3.65e-10,0,0);  
     296        newreact("HeH+,Ne=>NeH+,He","hmrate",1.25e-9,0,0);  
     297        newreact("Ne+,CH4=>CH+,Ne,H2,H","hmrate",8.4e-13,0,0);  
     298        newreact("Ne+,CH4=>CH2+,Ne,H2","hmrate",4.2e-12,0,0);  
     299        newreact("Ne+,CH4=>CH3+,Ne,H","hmrate",4.7e-12,0,0);  
     300        newreact("Ne+,CH4=>CH4+,Ne","hmrate",1.1e-11,0,0);  
     301        newreact("Ne+,NH3=>NH+,Ne,H2","hmrate",4.5e-12,0,0);  
     302        newreact("Ne+,NH3=>NH2+,Ne,H","hmrate",1.9e-10,0,0);  
     303        newreact("Ne+,NH3=>NH3+,Ne","hmrate",2.7e-11,0,0);  
     304        newreact("Ne+,N2=>N2+,Ne","hmrate",1.1e-13,0,0);  
     305        newreact("Ne+,H2O=>H2O+,Ne","hmrate",8.0e-10,0,0);  
     306        newreact("Ne+,O2=>O+,Ne,O","hmrate",6.0e-11,0,0);  
     307        newreact("NeH+,H2=>H3+,Ne","hmrate",2.0e-11,0,0);  
     308        newreact("NeH+,He=>HeH+,Ne","hmrate",3.8e-14,0,0);  
    291309        newreact("NeH+,e-=>H,Ne","hmrate",1.0e-7,-0.5,0); /* Guess based on typical electron recombination rate coefficients */ 
    292310 
  • branches/newmole/source/mole_solve.cpp

    r2056 r2068  
    515515                        } 
    516516 
    517                         double scale; 
    518517                        for (nelem=ipHYDROGEN;nelem<LIMELM;nelem++) 
    519518                        { 
     
    522521                                        if (lgJac) 
    523522                                        { 
    524                                                 scale = -(ABSLIM+fabs(c[ncons[nelem]][ncons[nelem]])); 
     523                                                double scale = -(ABSLIM+fabs(c[ncons[nelem]][ncons[nelem]])); 
    525524                                                for(i=0;i<mole.num_compacted;i++) 
    526525                                                {