source: LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/rrtm/yomphy3.F90

Last change on this file was 2010, checked in by Laurent Fairhead, 11 years ago

Modifications pour OpenMP


OpenMP modifications

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
File size: 9.7 KB
Line 
1MODULE YOMPHY3
2
3USE PARKIND1  ,ONLY : JPIM     ,JPRB
4
5IMPLICIT NONE
6
7SAVE
8
9!*
10!     ------------------------------------------------------------------
11!     CONSTANTES PHYSIQUES REGLABLES UTILISEES POUR LES CALCULS
12!     RADIATIFS :
13!       BSFSA   : "BACK-SCATTERED FRACTION" SOLAIRE POUR LES AEROSOLS.
14!               : SOLAR "BACK-SCATTERED FRACTION" FOR AEROSOLS.
15!       BSFSI   : "BACK-SCATTERED FRACTION" SOLAIRE POUR LA GLACE.
16!               : SOLAR "BACK-SCATTERED FRACTION" FOR ICE CLOUDS.
17!       BSFSN   : "BACK-SCATTERED FRACTION" SOLAIRE POUR LES NUAGES.
18!               : SOLAR "BACK-SCATTERED FRACTION" FOR CLOUDS.
19!       BSFTA   : "BACK-SCATTERED FRACTION" THERMIQUE POUR LES AEROSOLS.
20!               : THERMAL "BACK-SCATTERED FRACTION" FOR AEROSOLS.
21!       BSFTI   : "BACK-SCATTERED FRACTION" THERMIQUE POUR LA GLACE.
22!               : THERMAL "BACK-SCATTERED FRACTION" FOR ICE CLOUDS.
23!       BSFTN   : "BACK-SCATTERED FRACTION" THERMIQUE POUR LES NUAGES.
24!               : THERMAL "BACK-SCATTERED FRACTION" FOR CLOUDS.
25!       EARRT   : EPAISSEUR DE L'ATMOSPHERE  /  RAYON DE LA TERRE.
26!               : RATIO "DEPTH OF THE ATMOSPHERE / EARTH'S RADIUS".
27!       EOASA   : COEFFICIENT D'ABSORPTION SOLAIRE PAR LES AEROSOLS.
28!               : SOLAR ABSORPTION COEFFICIENT FOR AEROSOLS.
29!       EOASI   : COEFFICIENT D'ABSORPTION SOLAIRE PAR LA GLACE.
30!               : SOLAR ABSORPTION COEFFICIENT FOR ICE CLOUDS.
31!       EOASN   : COEFFICIENT D'ABSORPTION SOLAIRE PAR LES NUAGES.
32!               : SOLAR ABSORPTION COEFFICIENT FOR CLOUDS.
33!       EOATA   : COEFFICIENT D'ABSORPTION THERMIQUE PAR LES AEROSOLS.
34!               : THERMAL ABSORPTION COEFFICIENT FOR AEROSOLS.
35!       EOATI   : COEFFICIENT D'ABSORPTION THERMIQUE PAR LA GLACE.
36!               : THERMAL ABSORPTION COEFFICIENT FOR ICE CLOUDS.
37!       EOATN   : COEFFICIENT D'ABSORPTION THERMIQUE PAR LES NUAGES.
38!               : THERMAL ABSORPTION COEFFICIENT FOR CLOUDS.
39!       EODSA   : COEFFICIENT DE DIFFUSION SOLAIRE PAR LES AEROSOLS.
40!               : SOLAR SCATTERING COEFFICIENT FOR AEROSOLS.
41!       EODSI   : COEFFICIENT DE DIFFUSION SOLAIRE PAR LA GLACE.
42!               : SOLAR SCATTERING COEFFICIENT FOR ICE CLOUDS.
43!       EODSN   : COEFFICIENT DE DIFFUSION SOLAIRE PAR LES NUAGES.
44!               : SOLAR SCATTERING COEFFICIENT FOR CLOUDS.
45!       EODTA   : COEFFICIENT DE DIFFUSION THERMIQUE PAR LES AEROSOLS.
46!               : THERMAL SCATTERING COEFFICIENT FOR AEROSOLS.
47!       EODTI   : COEFFICIENT DE DIFFUSION THERMIQUE PAR LA GLACE.
48!               : THERMAL SCATTERING COEFFICIENT FOR ICE CLOUDS.
49!       EODTN   : COEFFICIENT DE DIFFUSION THERMIQUE PAR LES NUAGES.
50!               : THERMAL SCATTERING COEFFICIENT FOR CLOUDS.
51!       EORAY   : COEFFICIENT DE DIFFUSION RAYLEIGH.
52!               : RAYLEIGH SCATTERING COEFFICIENT.
53!       GCA(6)  : POUR LE CALCUL "WEAK LINE" DE LA LARGEUR EQUIVALENTE.
54!               : FOR THE "WEAK LINE" PART OF THE EQUIVALENT WIDTH.
55!       GCB(6)  : POUR LE CALCUL "STRONG LINE" DE LA LARGEUR EQUIVAL..
56!               : FOR THE "STRONG LINE" PART OF THE EQUIVALENT WIDTH.
57!       GCC(6)  : POUR LE CALCUL "CONTINUUM" DE LA LARGEUR EQUIVALENTE.
58!               : FOR THE "CONTINUUM" PART OF THE EQUIVALENT WIDTH.
59!       GCD4    : POUR LA CONTRIBUTION "E-TYPE" A GCC(4) (H2O THERM.).
60!               : FOR THE E-TYPE CONTRIBUTION TO GCC(4) (H2O THERM.).
61!       GCE4    : POUR LA DEPENDANCE EN TEMPERATURE DU "E-TYPE" (GCD4).
62!               : FOR THE TEMPERATURE DEPENDENCY OF THE E-TYPE (GCD4).
63!       GIREC*  : JEU DE COEFFICIENTS MODULANT L'INTERACTION INFRA-ROUGE ENTRE COUCHES.
64!               : COEFFICIENTS SET TO TUNE THE INFRA-RED EXCHANGE BETWEEN LAYERS.
65!       QCO2    : CONCENTRATION MASSIQUE DU CO2.
66!               : SPECIFIC RATIO OF CO2.
67!       QLIMI   : INVERSE DU QL+QI MAXIMUM POUR UNE NEBULOSITE DE UN.
68!               : INVERSE OF THE MAXIMUM QL+QI FOR CLOUD COVER ONE.
69!       QLIP0   : PRESSION DE REFERENCE POUR LE CALCUL DE PQLI ET PQICE.
70!               : SCALING PRESSURE FOR COMPUTING PQLI AND PQICE.
71!       RII0    : VALEUR INSTANTANNEE DE LA CONST. SOLAIRE (CYCLE ANN.).
72!               : INSTANTANEOUS VALUE OF THE SOLAR CONST. (ANN. CYCLE).
73!       USAA    : AU NUMERATEUR DE "L'UPSCATTERED FRACTION" CAS AEROS.
74!               : AT THE UPPER CASE OF THE UPSCATTERED FRACTION, AEROS.
75!       USAI    : AU NUMERATEUR DE "L'UPSCATTERED FRACTION" CAS GLACE.
76!               : AT THE UPPER CASE OF THE UPSCATTERED FRACTION, ICE.
77!       USAN    : AU NUMERATEUR DE "L'UPSCATTERED FRACTION" CAS NUAGES.
78!               : AT THE UPPER CASE OF THE UPSCATTERED FRACTION, CLOUDS.
79!       USBA    : AU DENOMINATEUR DE "L'UPSCATTERED FRACT." CAS AEROS.
80!               : AT THE LOWER CASE OF THE UPSCATTERED FRACTION, AEROS.
81!       USBI    : AU DENOMINATEUR DE "L'UPSCATTERED FRACT." CAS GLACE.
82!               : AT THE LOWER CASE OF THE UPSCATTERED FRACTION, ICE.
83!       USBN    : AU DENOMINATEUR DE "L'UPSCATTERED FRACT." CAS NUAGES.
84!               : AT THE LOWER CASE OF THE UPSCATTERED FRACTION, CLOUDS.
85!       VDP(5,6): AU DENOMINATEUR DES FONCTIONS DE PADE POUR LES GAZ.
86!               : AT THE LOWER CASE OF PADE FUNCTIONS FOR GASES.
87!       VNP(5,6): AU NUMERATEUR DES FONCTIONS DE PADE POUR LES GAZ.
88!               : AT THE UPPER CASE OF PADE FUNCTIONS FOR GASES.
89! Parameters for cloud model:
90!
91!   Notations:
92!     g      - asymmetry factor            (unscaled)
93!     k_abs  - mass absorption coefficient (delta-scaled)
94!     k_scat - mass scattering coefficient (delta-scaled)
95!     delta0 - unsaturated optical depth
96!     c_abs  - saturation factor for k_abs
97!     c_scat - saturation factor for k_scat
98!     iwc    - ice water content
99!     lwc    - liquid water content
100!
101!   First index of FCM arrays (FCM = Fitting parameters for Cloud Model)
102!   denotes spectral band:
103!     1      - solar
104!     2      - thermal
105!
106!   FCM_DEL_A(2)    : Critical value of delta0 for computation of c_abs.
107!   FCM_DEL_D(2)    : Critical value of delta0 for computation of c_scat.
108!   FCM_MU_A(2)     : Exponent mu for computation of c_abs.
109!   FCM_MU_D(2)     : Exponent mu for computation of c_scat.
110!   FCM_N_I         : Scaling exponent for iwc.
111!   FCM_N_L         : Scaling exponent for lwc.
112!   FCM_P_AI(2,0:3) : Pade coefficients in numerator for k_abs, ice.
113!   FCM_P_AL(2,0:3) : Pade coefficients in numerator for k_abs, liquid.
114!   FCM_P_DI(2,0:3) : Pade coefficients in numerator for k_scat, ice.
115!   FCM_P_DL(2,0:3) : Pade coefficients in numerator for k_scat, liquid.
116!   FCM_P_GI(2,0:3) : Pade coefficients in numerator for g, ice.
117!   FCM_P_GL(2,0:3) : Pade coefficients in numerator for g, liquid.
118!   FCM_Q_AI(2,1:3) : Pade coefficients in denominator for k_abs, ice.
119!   FCM_Q_AL(2,1:3) : Pade coefficients in denominator for k_abs, liquid.
120!   FCM_Q_DI(2,1:3) : Pade coefficients in denominator for k_scat, ice.
121!   FCM_Q_DL(2,1:3) : Pade coefficients in denominator for k_scat, liquid.
122!   FCM_Q_GI(2,1:3) : Pade coefficients in denominator for g, ice.
123!   FCM_Q_GL(2,1:3) : Pade coefficients in denominator for g, liquid.
124!   N_SPBAND        : Number of spectral bands.
125!   N_CLOUD_MODEL   : Version of cloud model:
126!                       0 - no dependency on iwc/lwc, mean saturation
127!                       1 - dependency on iwc/lwc, saturation based on
128!                           effective delta0 approach
129!   REXP_NEB        : Scaling exponent for cloud fraction in definition
130!                     of effective delta0.
131INTEGER(KIND=JPIM), PARAMETER :: N_SPBAND = 2
132
133REAL(KIND=JPRB) :: GCA(6)
134REAL(KIND=JPRB) :: GCB(6)
135REAL(KIND=JPRB) :: GCC(6)
136REAL(KIND=JPRB) :: VDP(5,6)
137REAL(KIND=JPRB) :: VNP(5,6)
138REAL(KIND=JPRB) :: BSFSA
139REAL(KIND=JPRB) :: BSFSI
140REAL(KIND=JPRB) :: BSFSN
141REAL(KIND=JPRB) :: BSFTA
142REAL(KIND=JPRB) :: BSFTI
143REAL(KIND=JPRB) :: BSFTN
144REAL(KIND=JPRB) :: EARRT
145REAL(KIND=JPRB) :: EOASA
146REAL(KIND=JPRB) :: EOASI
147REAL(KIND=JPRB) :: EOASN
148REAL(KIND=JPRB) :: EOATA
149REAL(KIND=JPRB) :: EOATI
150REAL(KIND=JPRB) :: EOATN
151REAL(KIND=JPRB) :: EODSA
152REAL(KIND=JPRB) :: EODSI
153REAL(KIND=JPRB) :: EODSN
154REAL(KIND=JPRB) :: EODTA
155REAL(KIND=JPRB) :: EODTI
156REAL(KIND=JPRB) :: EODTN
157REAL(KIND=JPRB) :: EORAY
158REAL(KIND=JPRB) :: GCD4
159REAL(KIND=JPRB) :: GCE4
160REAL(KIND=JPRB) :: QCO2
161REAL(KIND=JPRB) :: QLIMI
162REAL(KIND=JPRB) :: QLIP0
163REAL(KIND=JPRB) :: RII0
164REAL(KIND=JPRB) :: USAA
165REAL(KIND=JPRB) :: USAI
166REAL(KIND=JPRB) :: USAN
167REAL(KIND=JPRB) :: USBA
168REAL(KIND=JPRB) :: USBI
169REAL(KIND=JPRB) :: USBN
170REAL(KIND=JPRB) :: GIREC1
171REAL(KIND=JPRB) :: GIREC2
172REAL(KIND=JPRB) :: GIREC3
173REAL(KIND=JPRB) :: GIREC4
174REAL(KIND=JPRB) :: FCM_DEL_A(N_SPBAND)
175REAL(KIND=JPRB) :: FCM_DEL_D(N_SPBAND)
176REAL(KIND=JPRB) :: FCM_MU_A(N_SPBAND)
177REAL(KIND=JPRB) :: FCM_MU_D(N_SPBAND)
178REAL(KIND=JPRB) :: FCM_N_I
179REAL(KIND=JPRB) :: FCM_N_L
180REAL(KIND=JPRB) :: FCM_P_AI(N_SPBAND,0:3)
181REAL(KIND=JPRB) :: FCM_P_AL(N_SPBAND,0:3)
182REAL(KIND=JPRB) :: FCM_P_DI(N_SPBAND,0:3)
183REAL(KIND=JPRB) :: FCM_P_DL(N_SPBAND,0:3)
184REAL(KIND=JPRB) :: FCM_P_GI(N_SPBAND,0:3)
185REAL(KIND=JPRB) :: FCM_P_GL(N_SPBAND,0:3)
186REAL(KIND=JPRB) :: FCM_Q_AI(N_SPBAND,1:3)
187REAL(KIND=JPRB) :: FCM_Q_AL(N_SPBAND,1:3)
188REAL(KIND=JPRB) :: FCM_Q_DI(N_SPBAND,1:3)
189REAL(KIND=JPRB) :: FCM_Q_DL(N_SPBAND,1:3)
190REAL(KIND=JPRB) :: FCM_Q_GI(N_SPBAND,1:3)
191REAL(KIND=JPRB) :: FCM_Q_GL(N_SPBAND,1:3)
192REAL(KIND=JPRB) :: REXP_NEB
193!     ------------------------------------------------------------------
194!$OMP THREADPRIVATE(bsfsa,bsfsi,bsfsn,bsfta,bsfti,bsftn,earrt,eoasa,eoasi,eoasn,eoata,eoati,eoatn,eodsa,eodsi)
195!$OMP THREADPRIVATE(eodsn,eodta,eodti,eodtn,eoray,fcm_del_a,fcm_del_d,fcm_mu_a,fcm_mu_d,fcm_n_i,fcm_n_l,fcm_p_ai)
196!$OMP THREADPRIVATE(fcm_p_al,fcm_p_di,fcm_p_dl,fcm_p_gi,fcm_p_gl,fcm_q_ai,fcm_q_al,fcm_q_di,fcm_q_dl,fcm_q_gi)
197!$OMP THREADPRIVATE(fcm_q_gl,gca,gcb,gcc,gcd4,gce4,girec1,girec2,girec3,girec4,qco2,qlimi,qlip0,rexp_neb,rii0)
198!$OMP THREADPRIVATE(usaa,usai,usan,usba,usbi,usbn,vdp,vnp)
199END MODULE YOMPHY3
Note: See TracBrowser for help on using the repository browser.