[1607] | 1 | ! Declarations specifiques au cas Toga |
---|
| 2 | character*80 :: fich_toga |
---|
| 3 | ! integer nlev_prof |
---|
| 4 | ! parameter (nlev_prof = 41) |
---|
| 5 | integer nlev_toga, nt_toga |
---|
| 6 | parameter (nlev_toga=41, nt_toga=480) |
---|
| 7 | integer year_ini_toga, day_ini_toga, mth_ini_toga |
---|
| 8 | real day_ju_ini_toga ! Julian day of toga coare first day |
---|
| 9 | parameter (year_ini_toga=1992) |
---|
| 10 | parameter (mth_ini_toga=11) |
---|
| 11 | parameter (day_ini_toga=1) ! 1erNov1992 |
---|
| 12 | real dt_toga |
---|
| 13 | parameter (dt_toga=6.*3600.) |
---|
| 14 | !! |
---|
| 15 | integer year_print, month_print, day_print |
---|
| 16 | real sec_print |
---|
| 17 | !! |
---|
| 18 | integer nn |
---|
| 19 | integer it_toga1, it_toga2 |
---|
| 20 | real time_toga1,time_toga2 |
---|
| 21 | |
---|
| 22 | real ts_toga(nt_toga) |
---|
| 23 | real plev_toga(nlev_toga,nt_toga),w_toga(nlev_toga,nt_toga) |
---|
| 24 | real t_toga(nlev_toga,nt_toga),q_toga(nlev_toga,nt_toga) |
---|
| 25 | real u_toga(nlev_toga,nt_toga),v_toga(nlev_toga,nt_toga) |
---|
| 26 | real ht_toga(nlev_toga,nt_toga),vt_toga(nlev_toga,nt_toga) |
---|
| 27 | real hq_toga(nlev_toga,nt_toga),vq_toga(nlev_toga,nt_toga) |
---|
| 28 | |
---|
| 29 | real ts_prof |
---|
| 30 | real plev_prof(nlev_toga),w_prof(nlev_toga) |
---|
| 31 | real t_prof(nlev_toga),q_prof(nlev_toga) |
---|
| 32 | real u_prof(nlev_toga),v_prof(nlev_toga) |
---|
| 33 | real ht_prof(nlev_toga),vt_prof(nlev_toga) |
---|
| 34 | real hq_prof(nlev_toga),vq_prof(nlev_toga) |
---|
| 35 | |
---|
| 36 | real plev_mod(llm),w_mod(llm), t_mod(llm),q_mod(llm) |
---|
| 37 | real u_mod(llm),v_mod(llm), ht_mod(llm),vt_mod(llm) |
---|
| 38 | real hq_mod(llm),vq_mod(llm),qv_mod(llm),ql_mod(llm),qt_mod(llm) |
---|
| 39 | |
---|
| 40 | real ts_cur |
---|
| 41 | common /sst_forcing/ts_cur ! also in read_tsurf1d.F |
---|
| 42 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 43 | ! Declarations specifiques au cas RICO |
---|
| 44 | character*80 :: fich_rico |
---|
| 45 | integer nlev_rico |
---|
| 46 | |
---|
| 47 | parameter (nlev_rico=81) |
---|
| 48 | real ts_rico,ps_rico |
---|
| 49 | real w_rico(llm) |
---|
| 50 | real t_rico(llm),q_rico(llm) |
---|
| 51 | real u_rico(llm),v_rico(llm) |
---|
| 52 | real dth_rico(llm) |
---|
| 53 | real dqh_rico(llm) |
---|
| 54 | real du_age(llm),dv_age(llm) |
---|
| 55 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 56 | ! Declarations specifiques au cas TWPice |
---|
| 57 | character*80 :: fich_twpice |
---|
| 58 | integer nlev_twpi, nt_twpi |
---|
| 59 | parameter (nlev_twpi=40, nt_twpi=215) |
---|
| 60 | integer year_ini_twpi, day_ini_twpi, mth_ini_twpi |
---|
| 61 | real heure_ini_twpi |
---|
| 62 | real day_ju_ini_twpi ! Julian day of twpice first day |
---|
| 63 | parameter (year_ini_twpi=2006) |
---|
| 64 | parameter (mth_ini_twpi=1) |
---|
| 65 | parameter (day_ini_twpi=17) ! 17 = 17Jan2006 |
---|
| 66 | parameter (heure_ini_twpi=10800.) !3h en secondes |
---|
| 67 | real dt_twpi |
---|
| 68 | parameter (dt_twpi=3.*3600.) |
---|
| 69 | |
---|
| 70 | real ts_twpi(nt_twpi) |
---|
| 71 | real plev_twpi(nlev_twpi,nt_twpi),w_twpi(nlev_twpi,nt_twpi) |
---|
| 72 | real t_twpi(nlev_twpi,nt_twpi),q_twpi(nlev_twpi,nt_twpi) |
---|
| 73 | real u_twpi(nlev_twpi,nt_twpi),v_twpi(nlev_twpi,nt_twpi) |
---|
| 74 | real ht_twpi(nlev_twpi,nt_twpi),vt_twpi(nlev_twpi,nt_twpi) |
---|
| 75 | real hq_twpi(nlev_twpi,nt_twpi),vq_twpi(nlev_twpi,nt_twpi) |
---|
| 76 | |
---|
| 77 | real ts_proftwp |
---|
| 78 | real plev_proftwp(nlev_twpi),w_proftwp(nlev_twpi) |
---|
| 79 | real t_proftwp(nlev_twpi),q_proftwp(nlev_twpi) |
---|
| 80 | real u_proftwp(nlev_twpi),v_proftwp(nlev_twpi) |
---|
| 81 | real ht_proftwp(nlev_twpi),vt_proftwp(nlev_twpi) |
---|
| 82 | real hq_proftwp(nlev_twpi),vq_proftwp(nlev_twpi) |
---|
[1795] | 83 | |
---|
| 84 | |
---|
[1607] | 85 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
[1795] | 86 | !Declarations specifiques au cas AMMA |
---|
| 87 | character*80 :: fich_amma |
---|
| 88 | ! Option du cas AMMA ou on impose la discretisation verticale (Ap,Bp) |
---|
| 89 | logical :: fixe_disvert=.true. |
---|
| 90 | integer nlev_amma, nt_amma |
---|
| 91 | ! parameter (nlev_amma=29, nt_amma=48) ! Fleur, juillet 2012 |
---|
| 92 | parameter (nlev_amma=36, nt_amma=48) ! Romain, octobre 2012 |
---|
| 93 | ! parameter (nlev_amma=26, nt_amma=48) ! Test MPL feverier 2013 |
---|
| 94 | integer year_ini_amma, day_ini_amma, mth_ini_amma |
---|
| 95 | real heure_ini_amma |
---|
| 96 | real day_ju_ini_amma ! Julian day of amma first day |
---|
| 97 | parameter (year_ini_amma=2006) |
---|
| 98 | parameter (mth_ini_amma=7) |
---|
| 99 | parameter (day_ini_amma=10) ! 10 = 10Juil2006 |
---|
| 100 | parameter (heure_ini_amma=0.) !0h en secondes |
---|
| 101 | real dt_amma |
---|
| 102 | parameter (dt_amma=1800.) |
---|
| 103 | |
---|
| 104 | !profils initiaux: |
---|
| 105 | real plev_amma(nlev_amma) |
---|
| 106 | real tv_amma(nlev_amma),rho_amma(nlev_amma) |
---|
| 107 | real thv_amma(nlev_amma) |
---|
| 108 | |
---|
| 109 | real z_amma(nlev_amma) |
---|
| 110 | real th_amma(nlev_amma),q_amma(nlev_amma) |
---|
| 111 | real u_amma(nlev_amma) |
---|
| 112 | real v_amma(nlev_amma) |
---|
| 113 | |
---|
| 114 | real thvsurf_amma,tvsurf_amma,rhosurf_amma,thsurf |
---|
| 115 | |
---|
| 116 | real th_ammai(nlev_amma),q_ammai(nlev_amma) |
---|
| 117 | real u_ammai(nlev_amma) |
---|
| 118 | real v_ammai(nlev_amma) |
---|
| 119 | real vitw_ammai(nlev_amma) |
---|
| 120 | real ht_ammai(nlev_amma) |
---|
| 121 | real hq_ammai(nlev_amma) |
---|
| 122 | real vt_ammai(nlev_amma) |
---|
| 123 | real vq_ammai(nlev_amma) |
---|
| 124 | |
---|
| 125 | !forcings |
---|
| 126 | real ht_amma(nlev_amma,nt_amma) |
---|
| 127 | real hq_amma(nlev_amma,nt_amma) |
---|
| 128 | real vitw_amma(nlev_amma,nt_amma) |
---|
| 129 | real lat_amma(nt_amma),sens_amma(nt_amma) |
---|
| 130 | |
---|
| 131 | !champs interpoles |
---|
| 132 | real plev_profamma(nlev_amma),vitw_profamma(nlev_amma) |
---|
| 133 | real ht_profamma(nlev_amma) |
---|
| 134 | real hq_profamma(nlev_amma) |
---|
| 135 | real lat_profamma,sens_profamma |
---|
| 136 | real vt_profamma(nlev_amma) |
---|
| 137 | real vq_profamma(nlev_amma) |
---|
| 138 | real th_profamma(nlev_amma) |
---|
| 139 | real q_profamma(nlev_amma) |
---|
| 140 | real u_profamma(nlev_amma) |
---|
| 141 | real v_profamma(nlev_amma) |
---|
| 142 | |
---|
| 143 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 144 | !Declarations specifiques au cas FIRE |
---|
| 145 | character*80 :: fich_fire |
---|
| 146 | integer nlev_fire, nt_fire |
---|
| 147 | parameter (nlev_fire=120, nt_fire=1) |
---|
| 148 | integer year_ini_fire, day_ini_fire, mth_ini_fire |
---|
| 149 | real heure_ini_fire |
---|
| 150 | real day_ju_ini_fire ! Julian day of fire first day |
---|
| 151 | parameter (year_ini_fire=1987) |
---|
| 152 | parameter (mth_ini_fire=7) |
---|
| 153 | parameter (day_ini_fire=14) ! 14 = 14Juil1987 |
---|
| 154 | parameter (heure_ini_fire=0.) !0h en secondes |
---|
| 155 | |
---|
| 156 | !profils initiaux: |
---|
| 157 | real z_fire(nlev_fire) |
---|
| 158 | real thl_fire(nlev_fire),qt_fire(nlev_fire) |
---|
| 159 | real u_fire(nlev_fire), v_fire(nlev_fire) |
---|
| 160 | real tke_fire(nlev_fire) |
---|
| 161 | |
---|
| 162 | !forcings |
---|
| 163 | real ugeo_fire(nlev_fire),vgeo_fire(nlev_fire) |
---|
| 164 | real wls_fire(nlev_fire),dqtdx_fire(nlev_fire) |
---|
| 165 | real dqtdy_fire(nlev_fire) |
---|
| 166 | real dqtdt_fire(nlev_fire),thl_rad_fire(nlev_fire) |
---|
| 167 | |
---|
| 168 | real ugeo_mod(llm),vgeo_mod(llm),wls_mod(llm) |
---|
| 169 | real dqtdx_mod(llm),dqtdy_mod(llm),dqtdt_mod(llm) |
---|
| 170 | real thl_rad_mod(llm) |
---|
| 171 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
[1607] | 172 | ! Declarations specifiques au cas GCSSold |
---|
| 173 | character*80 :: fich_gcssold_ctl |
---|
| 174 | character*80 :: fich_gcssold_dat |
---|
| 175 | real ht_gcssold(llm),hq_gcssold(llm),hw_gcssold(llm) |
---|
| 176 | real hu_gcssold(llm) |
---|
| 177 | real hv_gcssold(llm) |
---|
| 178 | real hthturb_gcssold(llm) |
---|
| 179 | real hqturb_gcssold(llm) |
---|
| 180 | real Ts_gcssold |
---|
| 181 | real dtime_frcg |
---|
| 182 | cAl1 logical :: imp_fcg_gcssold |
---|
| 183 | c logical :: ts_fcg_gcssold |
---|
| 184 | c logical :: Tp_fcg_gcssold |
---|
| 185 | logical :: Turb_fcg_gcssold |
---|
| 186 | common /turb_forcing/ dtime_frcg, |
---|
| 187 | $ Turb_fcg_gcssold, hthturb_gcssold, hqturb_gcssold |
---|
| 188 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 189 | ! Declarations specifiques au cas Arm_cu |
---|
| 190 | character*80 :: fich_armcu |
---|
| 191 | |
---|
| 192 | |
---|
| 193 | integer nlev_armcu, nt_armcu |
---|
| 194 | parameter (nlev_armcu=40, nt_armcu=31) |
---|
| 195 | integer year_ini_armcu, day_ini_armcu, mth_ini_armcu |
---|
| 196 | real heure_ini_armcu |
---|
| 197 | real day_ju_ini_armcu ! Julian day of armcu case first day |
---|
| 198 | parameter (year_ini_armcu=1997) |
---|
| 199 | parameter (mth_ini_armcu=6) |
---|
| 200 | parameter (day_ini_armcu=21) ! 172 = 21 juin 1997 |
---|
| 201 | parameter (heure_ini_armcu=41400) ! 11:30 en secondes |
---|
| 202 | real dt_armcu |
---|
| 203 | parameter (dt_armcu=1.*1800.) ! forcages donnes ttes les demi-heures par ifa_armcu.txt |
---|
| 204 | real sens_armcu(nt_armcu),flat_armcu(nt_armcu) |
---|
| 205 | real adv_theta_armcu(nt_armcu),rad_theta_armcu(nt_armcu) |
---|
| 206 | real adv_qt_armcu(nt_armcu) |
---|
| 207 | real theta_mod(llm),rv_mod(llm),play_mod(llm) |
---|
| 208 | real d_t_dyn_ls(llm),d_q_dyn_ls(llm) |
---|
| 209 | ! profc comme "profil armcu" |
---|
| 210 | real h_profc,play_profc,t_profc,th_profc,plev_profc |
---|
| 211 | real u_profc,v_profc,qv_profc,rv_profc |
---|
| 212 | |
---|
| 213 | ! forcages interpoles dans le temps |
---|
| 214 | real adv_theta_prof,rad_theta_prof,adv_qt_prof |
---|
| 215 | real sens_prof,flat_prof,fact |
---|
| 216 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
[1795] | 217 | ! declarations specifiques au cas Sandu |
---|
| 218 | character*80 :: fich_sandu |
---|
| 219 | ! integer nlev_prof |
---|
| 220 | ! parameter (nlev_prof = 41) |
---|
| 221 | integer nlev_sandu, nt_sandu |
---|
| 222 | parameter (nlev_sandu=87, nt_sandu=13) |
---|
| 223 | integer year_ini_sandu, day_ini_sandu, mth_ini_sandu |
---|
| 224 | real day_ju_ini_sandu ! Julian day of sandu case first day |
---|
| 225 | parameter (year_ini_sandu=2006) |
---|
| 226 | parameter (mth_ini_sandu=7) |
---|
| 227 | parameter (day_ini_sandu=15) ! 196 = 15 juillet 2006 |
---|
| 228 | real dt_sandu, tau_sandu |
---|
| 229 | logical :: trouve_700=.true. |
---|
| 230 | parameter (dt_sandu=6.*3600.) ! forcages donnes ttes les 6 heures par ifa_sandu.txt |
---|
| 231 | ! parameter (tau_sandu=3600.) ! temps de relaxation u,v,thetal,qt vers profil init et au dessus 700hPa |
---|
| 232 | !! |
---|
| 233 | integer it_sandu1, it_sandu2 |
---|
| 234 | real time_sandu1,time_sandu2 |
---|
[1607] | 235 | |
---|
[1795] | 236 | real ts_sandu(nt_sandu) |
---|
| 237 | ! profs comme "profil sandu" |
---|
| 238 | real plev_profs(nlev_sandu) |
---|
| 239 | real t_profs(nlev_sandu),thl_profs(nlev_sandu) |
---|
| 240 | real q_profs(nlev_sandu) |
---|
| 241 | real u_profs(nlev_sandu),v_profs(nlev_sandu),w_profs(nlev_sandu) |
---|
| 242 | real omega_profs(nlev_sandu),o3mmr_profs(nlev_sandu) |
---|
| 243 | |
---|
| 244 | real thl_mod(llm),omega_mod(llm),o3mmr_mod(llm),tke_mod(llm) |
---|
| 245 | ! pour relaxer u,v,thl et qt vers les profils initiaux au dessus de 700hPa |
---|
| 246 | real relax_u(llm),relax_v(llm),relax_thl(llm),relax_q(llm,2) |
---|
| 247 | !vertical advection computation |
---|
| 248 | real d_t_z(llm), d_q_z(llm) |
---|
| 249 | real d_t_dyn_z(llm), d_q_dyn_z(llm) |
---|
| 250 | real zz(llm) |
---|
| 251 | real zfact |
---|
| 252 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 253 | ! Declarations specifiques au cas Astex |
---|
| 254 | character*80 :: fich_astex |
---|
| 255 | integer nlev_astex, nt_astex |
---|
| 256 | parameter (nlev_astex=34, nt_astex=49) |
---|
| 257 | integer year_ini_astex, day_ini_astex, mth_ini_astex |
---|
| 258 | real day_ju_ini_astex ! Julian day of astex case first day |
---|
| 259 | parameter (year_ini_astex=1992) |
---|
| 260 | parameter (mth_ini_astex=6) |
---|
| 261 | parameter (day_ini_astex=13) ! 165 = 13 juin 1992 |
---|
| 262 | real dt_astex, tau_astex |
---|
| 263 | parameter (dt_astex=3600.) ! forcages donnes ttes les heures par ifa_astex.txt |
---|
| 264 | integer it_astex1, it_astex2 |
---|
| 265 | real time_astex1,time_astex2 |
---|
| 266 | real ts_astex(nt_astex),div_astex(nt_astex),ug_astex(nt_astex) |
---|
| 267 | real vg_astex(nt_astex),ufa_astex(nt_astex),vfa_astex(nt_astex) |
---|
| 268 | real div_prof,ug_prof,vg_prof,ufa_prof,vfa_prof |
---|
| 269 | ! profa comme "profil astex" |
---|
| 270 | real plev_profa(nlev_astex) |
---|
| 271 | real t_profa(nlev_astex),thl_profa(nlev_astex) |
---|
| 272 | real qv_profa(nlev_astex),ql_profa(nlev_astex) |
---|
| 273 | real qt_profa(nlev_astex),o3mmr_profa(nlev_astex) |
---|
| 274 | real u_profa(nlev_astex),v_profa(nlev_astex),w_profa(nlev_astex) |
---|
| 275 | real tke_profa(nlev_astex) |
---|
| 276 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 277 | |
---|