source: trunk/LMDZ.GENERIC/utilities/photochemistry/reaction_rate_lib.py @ 3436

Last change on this file since 3436 was 3431, checked in by mmaurice, 2 months ago

Generic PCM:

Add photochemistry postprocessing and visualization python routines
along with an introduction notebook to utilities.

MM

File size: 1.1 KB
Line 
1import numpy as np
2
3def k_JPL_2015(T,dens):
4    """ Computes rate for CO + OH -> CO2 + H from JPL 2015 """
5    rate1 = 1.15e-13*T/300.
6    ak0   = 5.9e-33*(T/300.)**(-1.0)
7    ak1   = 1.1e-12*(T/300.)**(1.3)
8    rate2 = (ak0 * dens) / (1. + ak0 * dens / ak1)
9    xpo2  = 1./(1. + np.log10((ak0 * dens) / ak1)**2)
10    return rate1 + rate2 * 0.6**xpo2
11
12def k_Joshi_2006(T,dens):
13    """ Computes rate for CO + OH -> CO2 + H from Joshi et al 2006 """
14    k1a0 = 1.34*2.5*dens                                  \
15         * 1/(1/(3.62e-26*T**(-2.739)*np.exp(-20./T))  \
16         + 1/(6.48e-33*T**(0.14)*np.exp(-57./T)))
17    k1b0 = 1.17e-19*T**(2.053)*np.exp(139./T)          \
18         + 9.56e-12*T**(-0.664)*np.exp(-167./T)
19    k1ainf = 1.52e-17*T**(1.858)*np.exp(28.8/T)        \
20           + 4.78e-8*T**(-1.851)*np.exp(-318./T)
21    x = k1a0/(k1ainf - k1b0)
22    y = k1b0/(k1ainf - k1b0)
23    fc = 0.628*np.exp(-1223./T) + (1. - 0.628)*np.exp(-39./T)  \
24       + np.exp(-T/255.)
25    fx = fc**(1./(1. + (np.log(x))**2))
26    k1a = k1a0*((1. + y)/(1. + x))*fx
27    k1b = k1b0*(1./(1.+x))*fx
28    return  k1a + k1b
Note: See TracBrowser for help on using the repository browser.