LMDZ
yomphy3.F90
Go to the documentation of this file.
1 MODULE yomphy3
2 
3 USE parkind1 ,ONLY : jpim ,jprb
4 
5 IMPLICIT NONE
6 
7 SAVE
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.
131 INTEGER(KIND=JPIM), PARAMETER :: n_spband = 2
132 
133 REAL(KIND=JPRB) :: gca(6)
134 REAL(KIND=JPRB) :: gcb(6)
135 REAL(KIND=JPRB) :: gcc(6)
136 REAL(KIND=JPRB) :: vdp(5,6)
137 REAL(KIND=JPRB) :: vnp(5,6)
138 REAL(KIND=JPRB) :: bsfsa
139 REAL(KIND=JPRB) :: bsfsi
140 REAL(KIND=JPRB) :: bsfsn
141 REAL(KIND=JPRB) :: bsfta
142 REAL(KIND=JPRB) :: bsfti
143 REAL(KIND=JPRB) :: bsftn
144 REAL(KIND=JPRB) :: earrt
145 REAL(KIND=JPRB) :: eoasa
146 REAL(KIND=JPRB) :: eoasi
147 REAL(KIND=JPRB) :: eoasn
148 REAL(KIND=JPRB) :: eoata
149 REAL(KIND=JPRB) :: eoati
150 REAL(KIND=JPRB) :: eoatn
151 REAL(KIND=JPRB) :: eodsa
152 REAL(KIND=JPRB) :: eodsi
153 REAL(KIND=JPRB) :: eodsn
154 REAL(KIND=JPRB) :: eodta
155 REAL(KIND=JPRB) :: eodti
156 REAL(KIND=JPRB) :: eodtn
157 REAL(KIND=JPRB) :: eoray
158 REAL(KIND=JPRB) :: gcd4
159 REAL(KIND=JPRB) :: gce4
160 REAL(KIND=JPRB) :: qco2
161 REAL(KIND=JPRB) :: qlimi
162 REAL(KIND=JPRB) :: qlip0
163 REAL(KIND=JPRB) :: rii0
164 REAL(KIND=JPRB) :: usaa
165 REAL(KIND=JPRB) :: usai
166 REAL(KIND=JPRB) :: usan
167 REAL(KIND=JPRB) :: usba
168 REAL(KIND=JPRB) :: usbi
169 REAL(KIND=JPRB) :: usbn
170 REAL(KIND=JPRB) :: girec1
171 REAL(KIND=JPRB) :: girec2
172 REAL(KIND=JPRB) :: girec3
173 REAL(KIND=JPRB) :: girec4
174 REAL(KIND=JPRB) :: fcm_del_a(n_spband)
175 REAL(KIND=JPRB) :: fcm_del_d(n_spband)
176 REAL(KIND=JPRB) :: fcm_mu_a(n_spband)
177 REAL(KIND=JPRB) :: fcm_mu_d(n_spband)
178 REAL(KIND=JPRB) :: fcm_n_i
179 REAL(KIND=JPRB) :: fcm_n_l
180 REAL(KIND=JPRB) :: fcm_p_ai(n_spband,0:3)
181 REAL(KIND=JPRB) :: fcm_p_al(n_spband,0:3)
182 REAL(KIND=JPRB) :: fcm_p_di(n_spband,0:3)
183 REAL(KIND=JPRB) :: fcm_p_dl(n_spband,0:3)
184 REAL(KIND=JPRB) :: fcm_p_gi(n_spband,0:3)
185 REAL(KIND=JPRB) :: fcm_p_gl(n_spband,0:3)
186 REAL(KIND=JPRB) :: fcm_q_ai(n_spband,1:3)
187 REAL(KIND=JPRB) :: fcm_q_al(n_spband,1:3)
188 REAL(KIND=JPRB) :: fcm_q_di(n_spband,1:3)
189 REAL(KIND=JPRB) :: fcm_q_dl(n_spband,1:3)
190 REAL(KIND=JPRB) :: fcm_q_gi(n_spband,1:3)
191 REAL(KIND=JPRB) :: fcm_q_gl(n_spband,1:3)
192 REAL(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)
199 END MODULE yomphy3
real(kind=jprb) eodti
Definition: yomphy3.F90:155
real(kind=jprb) gce4
Definition: yomphy3.F90:159
real(kind=jprb), dimension(n_spband, 1:3) fcm_q_al
Definition: yomphy3.F90:187
real(kind=jprb), dimension(n_spband) fcm_del_d
Definition: yomphy3.F90:175
real(kind=jprb) bsftn
Definition: yomphy3.F90:143
real(kind=jprb) usaa
Definition: yomphy3.F90:164
real(kind=jprb), dimension(n_spband, 0:3) fcm_p_gi
Definition: yomphy3.F90:184
real(kind=jprb) usbi
Definition: yomphy3.F90:168
real(kind=jprb), dimension(n_spband) fcm_del_a
Definition: yomphy3.F90:174
real(kind=jprb), dimension(6) gcb
Definition: yomphy3.F90:134
real(kind=jprb) fcm_n_l
Definition: yomphy3.F90:179
real(kind=jprb) eoasa
Definition: yomphy3.F90:145
real(kind=jprb), dimension(n_spband, 0:3) fcm_p_dl
Definition: yomphy3.F90:183
real(kind=jprb) gcd4
Definition: yomphy3.F90:158
real(kind=jprb) eoatn
Definition: yomphy3.F90:150
real(kind=jprb) qlip0
Definition: yomphy3.F90:162
real(kind=jprb) girec1
Definition: yomphy3.F90:170
real(kind=jprb), dimension(5, 6) vnp
Definition: yomphy3.F90:137
real(kind=jprb) fcm_n_i
Definition: yomphy3.F90:178
real(kind=jprb) bsfsi
Definition: yomphy3.F90:139
real(kind=jprb), dimension(n_spband, 1:3) fcm_q_dl
Definition: yomphy3.F90:189
real(kind=jprb) bsfsa
Definition: yomphy3.F90:138
real(kind=jprb) girec4
Definition: yomphy3.F90:173
real(kind=jprb), dimension(n_spband, 1:3) fcm_q_ai
Definition: yomphy3.F90:186
real(kind=jprb) bsfta
Definition: yomphy3.F90:141
real(kind=jprb) girec2
Definition: yomphy3.F90:171
real(kind=jprb), dimension(n_spband) fcm_mu_d
Definition: yomphy3.F90:177
real(kind=jprb), dimension(n_spband, 0:3) fcm_p_al
Definition: yomphy3.F90:181
real(kind=jprb), dimension(6) gca
Definition: yomphy3.F90:133
real(kind=jprb) usai
Definition: yomphy3.F90:165
real(kind=jprb) eoasi
Definition: yomphy3.F90:146
real(kind=jprb) usbn
Definition: yomphy3.F90:169
real(kind=jprb) qco2
Definition: yomphy3.F90:160
real(kind=jprb) rii0
Definition: yomphy3.F90:163
real(kind=jprb) eodtn
Definition: yomphy3.F90:156
real(kind=jprb), dimension(5, 6) vdp
Definition: yomphy3.F90:136
integer, parameter jprb
Definition: parkind1.F90:31
real(kind=jprb) eoasn
Definition: yomphy3.F90:147
integer(kind=jpim), parameter n_spband
Definition: yomphy3.F90:131
real(kind=jprb) usan
Definition: yomphy3.F90:166
real(kind=jprb), dimension(n_spband, 0:3) fcm_p_di
Definition: yomphy3.F90:182
real(kind=jprb) rexp_neb
Definition: yomphy3.F90:192
real(kind=jprb) usba
Definition: yomphy3.F90:167
real(kind=jprb), dimension(n_spband) fcm_mu_a
Definition: yomphy3.F90:176
real(kind=jprb), dimension(n_spband, 0:3) fcm_p_gl
Definition: yomphy3.F90:185
real(kind=jprb) qlimi
Definition: yomphy3.F90:161
real(kind=jprb) bsfti
Definition: yomphy3.F90:142
real(kind=jprb), dimension(n_spband, 0:3) fcm_p_ai
Definition: yomphy3.F90:180
real(kind=jprb), dimension(n_spband, 1:3) fcm_q_gi
Definition: yomphy3.F90:190
real(kind=jprb), dimension(n_spband, 1:3) fcm_q_di
Definition: yomphy3.F90:188
real(kind=jprb) eodsi
Definition: yomphy3.F90:152
integer, parameter jpim
Definition: parkind1.F90:13
real(kind=jprb) eoray
Definition: yomphy3.F90:157
real(kind=jprb) bsfsn
Definition: yomphy3.F90:140
real(kind=jprb) earrt
Definition: yomphy3.F90:144
real(kind=jprb), dimension(n_spband, 1:3) fcm_q_gl
Definition: yomphy3.F90:191
real(kind=jprb) eodsa
Definition: yomphy3.F90:151
real(kind=jprb) eoati
Definition: yomphy3.F90:149
real(kind=jprb), dimension(6) gcc
Definition: yomphy3.F90:135
real(kind=jprb) girec3
Definition: yomphy3.F90:172
real(kind=jprb) eoata
Definition: yomphy3.F90:148
real(kind=jprb) eodta
Definition: yomphy3.F90:154
real(kind=jprb) eodsn
Definition: yomphy3.F90:153