Changeset 1403 for LMDZ4/trunk/libf/phylmd/phys_output_mod.F90
- Timestamp:
- Jul 1, 2010, 11:02:53 AM (14 years ago)
- Location:
- LMDZ4/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/trunk
- Property svn:mergeinfo changed
-
LMDZ4/trunk/libf/phylmd/phys_output_mod.F90
r1400 r1403 10 10 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 11 11 12 MODULE phys_output_mod 12 MODULE phys_output_mod 13 13 14 14 IMPLICIT NONE … … 60 60 61 61 !!! 2D 62 type(ctrl_out),save :: o_flat = ctrl_out((/ 5, 1, 10, 10, 5 /),'flat') 63 type(ctrl_out),save :: o_slp = ctrl_out((/ 1, 1, 1, 10, 10 /),'slp') 64 type(ctrl_out),save :: o_tsol = ctrl_out((/ 1, 1, 1, 5, 10 /),'tsol') 65 type(ctrl_out),save :: o_t2m = ctrl_out((/ 1, 1, 1, 5, 10 /),'t2m') 62 63 type(ctrl_out),save :: o_flat = ctrl_out((/ 5, 1, 10, 5, 1 /),'flat') 64 type(ctrl_out),save :: o_slp = ctrl_out((/ 1, 1, 1, 10, 1 /),'slp') 65 type(ctrl_out),save :: o_tsol = ctrl_out((/ 1, 1, 1, 5, 1 /),'tsol') 66 type(ctrl_out),save :: o_t2m = ctrl_out((/ 1, 1, 1, 5, 1 /),'t2m') 66 67 type(ctrl_out),save :: o_t2m_min = ctrl_out((/ 1, 1, 10, 10, 10 /),'t2m_min') 67 68 type(ctrl_out),save :: o_t2m_max = ctrl_out((/ 1, 1, 10, 10, 10 /),'t2m_max') … … 74 75 type(ctrl_out),save :: o_wind10max = ctrl_out((/ 10, 1, 10, 10, 10 /),'wind10max') 75 76 type(ctrl_out),save :: o_sicf = ctrl_out((/ 1, 1, 10, 10, 10 /),'sicf') 76 type(ctrl_out),save :: o_q2m = ctrl_out((/ 1, 1, 1, 5, 1 0/),'q2m')77 type(ctrl_out),save :: o_u10m = ctrl_out((/ 1, 1, 1, 5, 1 0/),'u10m')78 type(ctrl_out),save :: o_v10m = ctrl_out((/ 1, 1, 1, 5, 1 0/),'v10m')79 type(ctrl_out),save :: o_psol = ctrl_out((/ 1, 1, 1, 5, 1 0/),'psol')77 type(ctrl_out),save :: o_q2m = ctrl_out((/ 1, 1, 1, 5, 1 /),'q2m') 78 type(ctrl_out),save :: o_u10m = ctrl_out((/ 1, 1, 1, 5, 1 /),'u10m') 79 type(ctrl_out),save :: o_v10m = ctrl_out((/ 1, 1, 1, 5, 1 /),'v10m') 80 type(ctrl_out),save :: o_psol = ctrl_out((/ 1, 1, 1, 5, 1 /),'psol') 80 81 type(ctrl_out),save :: o_qsurf = ctrl_out((/ 1, 10, 10, 10, 10 /),'qsurf') 81 82 … … 93 94 94 95 type(ctrl_out),save :: o_ndayrain = ctrl_out((/ 1, 10, 10, 10, 10 /),'ndayrain') 95 type(ctrl_out),save :: o_precip = ctrl_out((/ 1, 1, 1, 10, 5/),'precip')96 type(ctrl_out),save :: o_precip = ctrl_out((/ 1, 1, 1, 5, 10 /),'precip') 96 97 type(ctrl_out),save :: o_plul = ctrl_out((/ 1, 1, 1, 10, 10 /),'plul') 97 98 98 type(ctrl_out),save :: o_pluc = ctrl_out((/ 1, 1, 1, 10, 5/),'pluc')99 type(ctrl_out),save :: o_snow = ctrl_out((/ 1, 1, 10, 10, 5/),'snow')99 type(ctrl_out),save :: o_pluc = ctrl_out((/ 1, 1, 1, 5, 10 /),'pluc') 100 type(ctrl_out),save :: o_snow = ctrl_out((/ 1, 1, 10, 5, 10 /),'snow') 100 101 type(ctrl_out),save :: o_evap = ctrl_out((/ 1, 1, 10, 10, 10 /),'evap') 101 102 type(ctrl_out),save,dimension(4) :: o_evap_srf = (/ ctrl_out((/ 1, 1, 10, 10, 10 /),'evap_ter'), & … … 136 137 type(ctrl_out),save :: o_soll0 = ctrl_out((/ 1, 5, 10, 10, 10 /),'soll0') 137 138 type(ctrl_out),save :: o_radsol = ctrl_out((/ 1, 1, 10, 10, 10 /),'radsol') 138 type(ctrl_out),save :: o_SWupSFC = ctrl_out((/ 1, 4, 10, 10, 5/),'SWupSFC')139 type(ctrl_out),save :: o_SWupSFCclr = ctrl_out((/ 1, 4, 10, 10, 5/),'SWupSFCclr')140 type(ctrl_out),save :: o_SWdnSFC = ctrl_out((/ 1, 1, 10, 10, 5/),'SWdnSFC')141 type(ctrl_out),save :: o_SWdnSFCclr = ctrl_out((/ 1, 4, 10, 10, 5/),'SWdnSFCclr')142 type(ctrl_out),save :: o_LWupSFC = ctrl_out((/ 1, 4, 10, 10, 5/),'LWupSFC')143 type(ctrl_out),save :: o_LWupSFCclr = ctrl_out((/ 1, 4, 10, 10, 5/),'LWupSFCclr')144 type(ctrl_out),save :: o_LWdnSFC = ctrl_out((/ 1, 4, 10, 10, 5/),'LWdnSFC')145 type(ctrl_out),save :: o_LWdnSFCclr = ctrl_out((/ 1, 4, 10, 10, 5/),'LWdnSFCclr')139 type(ctrl_out),save :: o_SWupSFC = ctrl_out((/ 1, 4, 10, 5, 10 /),'SWupSFC') 140 type(ctrl_out),save :: o_SWupSFCclr = ctrl_out((/ 1, 4, 10, 10, 10 /),'SWupSFCclr') 141 type(ctrl_out),save :: o_SWdnSFC = ctrl_out((/ 1, 1, 10, 5, 10 /),'SWdnSFC') 142 type(ctrl_out),save :: o_SWdnSFCclr = ctrl_out((/ 1, 4, 10, 5, 10 /),'SWdnSFCclr') 143 type(ctrl_out),save :: o_LWupSFC = ctrl_out((/ 1, 4, 10, 10, 10 /),'LWupSFC') 144 type(ctrl_out),save :: o_LWupSFCclr = ctrl_out((/ 1, 4, 10, 5, 10 /),'LWupSFCclr') 145 type(ctrl_out),save :: o_LWdnSFC = ctrl_out((/ 1, 4, 10, 5, 10 /),'LWdnSFC') 146 type(ctrl_out),save :: o_LWdnSFCclr = ctrl_out((/ 1, 4, 10, 5, 10 /),'LWdnSFCclr') 146 147 type(ctrl_out),save :: o_bils = ctrl_out((/ 1, 2, 10, 5, 10 /),'bils') 147 type(ctrl_out),save :: o_sens = ctrl_out((/ 1, 1, 10, 10, 5/),'sens')148 type(ctrl_out),save :: o_sens = ctrl_out((/ 1, 1, 10, 5, 10 /),'sens') 148 149 type(ctrl_out),save :: o_fder = ctrl_out((/ 1, 2, 10, 10, 10 /),'fder') 149 150 type(ctrl_out),save :: o_ffonte = ctrl_out((/ 1, 10, 10, 10, 10 /),'ffonte') … … 215 216 type(ctrl_out),save :: o_cldm = ctrl_out((/ 1, 1, 10, 10, 10 /),'cldm') 216 217 type(ctrl_out),save :: o_cldh = ctrl_out((/ 1, 1, 10, 10, 10 /),'cldh') 217 type(ctrl_out),save :: o_cldt = ctrl_out((/ 1, 1, 2, 10, 5/),'cldt')218 type(ctrl_out),save :: o_cldt = ctrl_out((/ 1, 1, 2, 5, 10 /),'cldt') 218 219 type(ctrl_out),save :: o_cldq = ctrl_out((/ 1, 1, 10, 10, 10 /),'cldq') 219 220 type(ctrl_out),save :: o_lwp = ctrl_out((/ 1, 5, 10, 10, 10 /),'lwp') … … 230 231 type(ctrl_out),save :: o_prw = ctrl_out((/ 1, 1, 10, 10, 10 /),'prw') 231 232 232 type(ctrl_out),save :: o_s_pblh = ctrl_out((/ 1, 10, 10, 10, 1 0/),'s_pblh')233 type(ctrl_out),save :: o_s_pblt = ctrl_out((/ 1, 10, 10, 10, 1 0/),'s_pblt')233 type(ctrl_out),save :: o_s_pblh = ctrl_out((/ 1, 10, 10, 10, 1 /),'s_pblh') 234 type(ctrl_out),save :: o_s_pblt = ctrl_out((/ 1, 10, 10, 10, 1 /),'s_pblt') 234 235 type(ctrl_out),save :: o_s_lcl = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_lcl') 235 type(ctrl_out),save :: o_s_therm = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_therm') 236 !IM : Les champs suivants (s_capCL, s_oliqCL, s_cteiCL, s_trmb1, s_trmb2, s_trmb3) ne sont pas definis dans HBTM.F 237 ! type(ctrl_out),save :: o_s_capCL = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_capCL') 238 ! type(ctrl_out),save :: o_s_oliqCL = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_oliqCL') 239 ! type(ctrl_out),save :: o_s_cteiCL = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_cteiCL') 240 ! type(ctrl_out),save :: o_s_trmb1 = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_trmb1') 241 ! type(ctrl_out),save :: o_s_trmb2 = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_trmb2') 242 ! type(ctrl_out),save :: o_s_trmb3 = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_trmb3') 236 type(ctrl_out),save :: o_s_capCL = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_capCL') 237 type(ctrl_out),save :: o_s_oliqCL = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_oliqCL') 238 type(ctrl_out),save :: o_s_cteiCL = ctrl_out((/ 1, 10, 10, 10, 1 /),'s_cteiCL') 239 type(ctrl_out),save :: o_s_therm = ctrl_out((/ 1, 10, 10, 10, 1 /),'s_therm') 240 type(ctrl_out),save :: o_s_trmb1 = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_trmb1') 241 type(ctrl_out),save :: o_s_trmb2 = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_trmb2') 242 type(ctrl_out),save :: o_s_trmb3 = ctrl_out((/ 1, 10, 10, 10, 10 /),'s_trmb3') 243 243 244 244 type(ctrl_out),save :: o_slab_bils = ctrl_out((/ 1, 1, 10, 10, 10 /),'slab_bils_oce') … … 357 357 type(ctrl_out),save :: o_solswai = ctrl_out((/ 2, 10, 10, 10, 10 /),'solswai') 358 358 359 type(ctrl_out),save,dimension(10) :: o_tausumaero = (/ ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_ASBCM'), &360 ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_ASPOMM'), &361 ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_ASSO4M'), &362 ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_CSSO4M'), &363 ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_SSSSM'), &364 ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_ASSSM'), &365 ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_CSSSM'), &366 ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_CIDUSTM'), &367 ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_AIBCM'), &368 ctrl_out((/ 2, 6, 10, 10, 10 /),'OD550_AIPOMM') /)369 370 type(ctrl_out),save :: o_od550aer = ctrl_out((/ 2, 6, 10, 10, 10 /),'od550aer')371 type(ctrl_out),save :: o_od865aer = ctrl_out((/ 2, 6, 10, 10, 10 /),'od865aer')372 type(ctrl_out),save :: o_absvisaer = ctrl_out((/ 2, 6, 10, 10, 10 /),'absvisaer')373 type(ctrl_out),save :: o_od550lt1aer = ctrl_out((/ 2, 6, 10, 10, 10 /),'od550lt1aer')374 375 type(ctrl_out),save :: o_sconcso4 = ctrl_out((/ 2, 6, 10, 10, 10 /),'sconcso4')376 type(ctrl_out),save :: o_sconcoa = ctrl_out((/ 2, 6, 10, 10, 10 /),'sconcoa')377 type(ctrl_out),save :: o_sconcbc = ctrl_out((/ 2, 6, 10, 10, 10 /),'sconcbc')378 type(ctrl_out),save :: o_sconcss = ctrl_out((/ 2, 6, 10, 10, 10 /),'sconcss')379 type(ctrl_out),save :: o_sconcdust = ctrl_out((/ 2, 6, 10, 10, 10 /),'sconcdust')380 type(ctrl_out),save :: o_concso4 = ctrl_out((/ 2, 6, 10, 10, 10 /),'concso4')381 type(ctrl_out),save :: o_concoa = ctrl_out((/ 2, 6, 10, 10, 10 /),'concoa')382 type(ctrl_out),save :: o_concbc = ctrl_out((/ 2, 6, 10, 10, 10 /),'concbc')383 type(ctrl_out),save :: o_concss = ctrl_out((/ 2, 6, 10, 10, 10 /),'concss')384 type(ctrl_out),save :: o_concdust = ctrl_out((/ 2, 6, 10, 10, 10 /),'concdust')385 type(ctrl_out),save :: o_loadso4 = ctrl_out((/ 2, 6, 10, 10, 10 /),'loadso4')386 type(ctrl_out),save :: o_loadoa = ctrl_out((/ 2, 6, 10, 10, 10 /),'loadoa')387 type(ctrl_out),save :: o_loadbc = ctrl_out((/ 2, 6, 10, 10, 10 /),'loadbc')388 type(ctrl_out),save :: o_loadss = ctrl_out((/ 2, 6, 10, 10, 10 /),'loadss')389 type(ctrl_out),save :: o_loaddust = ctrl_out((/ 2, 6, 10, 10, 10 /),'loaddust')390 391 type(ctrl_out),save :: o_swtoaas_nat = ctrl_out((/ 4, 6, 10, 10, 10 /),'swtoaas_nat') 392 type(ctrl_out),save :: o_sw srfas_nat = ctrl_out((/ 4, 6, 10, 10, 10 /),'swsrfas_nat')393 type(ctrl_out),save :: o_sw toacs_nat = ctrl_out((/ 4, 6, 10, 10, 10 /),'swtoacs_nat')394 type(ctrl_out),save :: o_sw srfcs_nat = ctrl_out((/ 4, 6, 10, 10, 10 /),'swsrfcs_nat')395 396 type(ctrl_out),save :: o_swtoaas_ant = ctrl_out((/ 4, 6, 10, 10, 10 /),'swtoaas_ant') 397 type(ctrl_out),save :: o_sw srfas_ant = ctrl_out((/ 4, 6, 10, 10, 10 /),'swsrfas_ant')398 type(ctrl_out),save :: o_sw toacs_ant = ctrl_out((/ 4, 6, 10, 10, 10 /),'swtoacs_ant')399 type(ctrl_out),save :: o_sw srfcs_ant = ctrl_out((/ 4, 6, 10, 10, 10 /),'swsrfcs_ant')400 401 type(ctrl_out),save :: o_swtoacf_nat = ctrl_out((/ 4, 6, 10, 10, 10 /),'swtoacf_nat')402 type(ctrl_out),save :: o_swsrfcf_nat = ctrl_out((/ 4, 6, 10, 10, 10 /),'swsrfcf_nat')403 type(ctrl_out),save :: o_swtoacf_ant = ctrl_out((/ 4, 6, 10, 10, 10 /),'swtoacf_ant')404 type(ctrl_out),save :: o_swsrfcf_ant = ctrl_out((/ 4, 6, 10, 10, 10 /),'swsrfcf_ant')405 type(ctrl_out),save :: o_swtoacf_zero = ctrl_out((/ 4, 6, 10, 10, 10 /),'swtoacf_zero')406 type(ctrl_out),save :: o_swsrfcf_zero = ctrl_out((/ 4, 6, 10, 10, 10 /),'swsrfcf_zero')407 408 type(ctrl_out),save :: o_cldncl = ctrl_out((/ 2, 6, 10, 10, 10 /),'cldncl')409 type(ctrl_out),save :: o_reffclwtop = ctrl_out((/ 2, 6, 10, 10, 10 /),'reffclwtop')410 type(ctrl_out),save :: o_cldnvi = ctrl_out((/ 2, 6, 10, 10, 10 /),'cldnvi')411 type(ctrl_out),save :: o_lcc = ctrl_out((/ 2, 6, 10, 10, 10 /),'lcc')359 type(ctrl_out),save,dimension(10) :: o_tausumaero = (/ ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_ASBCM'), & 360 ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_ASPOMM'), & 361 ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_ASSO4M'), & 362 ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_CSSO4M'), & 363 ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_SSSSM'), & 364 ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_ASSSM'), & 365 ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_CSSSM'), & 366 ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_CIDUSTM'), & 367 ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_AIBCM'), & 368 ctrl_out((/ 4, 4, 10, 10, 10 /),'OD550_AIPOMM') /) 369 370 type(ctrl_out),save :: o_od550aer = ctrl_out((/ 4, 4, 10, 10, 10 /),'od550aer') 371 type(ctrl_out),save :: o_od865aer = ctrl_out((/ 4, 4, 10, 10, 10 /),'od865aer') 372 type(ctrl_out),save :: o_absvisaer = ctrl_out((/ 4, 4, 10, 10, 10 /),'absvisaer') 373 type(ctrl_out),save :: o_od550lt1aer = ctrl_out((/ 4, 4, 10, 10, 10 /),'od550lt1aer') 374 375 type(ctrl_out),save :: o_sconcso4 = ctrl_out((/ 4, 4, 10, 10, 10 /),'sconcso4') 376 type(ctrl_out),save :: o_sconcoa = ctrl_out((/ 4, 4, 10, 10, 10 /),'sconcoa') 377 type(ctrl_out),save :: o_sconcbc = ctrl_out((/ 4, 4, 10, 10, 10 /),'sconcbc') 378 type(ctrl_out),save :: o_sconcss = ctrl_out((/ 4, 4, 10, 10, 10 /),'sconcss') 379 type(ctrl_out),save :: o_sconcdust = ctrl_out((/ 4, 4, 10, 10, 10 /),'sconcdust') 380 type(ctrl_out),save :: o_concso4 = ctrl_out((/ 4, 4, 10, 10, 10 /),'concso4') 381 type(ctrl_out),save :: o_concoa = ctrl_out((/ 4, 4, 10, 10, 10 /),'concoa') 382 type(ctrl_out),save :: o_concbc = ctrl_out((/ 4, 4, 10, 10, 10 /),'concbc') 383 type(ctrl_out),save :: o_concss = ctrl_out((/ 4, 4, 10, 10, 10 /),'concss') 384 type(ctrl_out),save :: o_concdust = ctrl_out((/ 4, 4, 10, 10, 10 /),'concdust') 385 type(ctrl_out),save :: o_loadso4 = ctrl_out((/ 4, 4, 10, 10, 10 /),'loadso4') 386 type(ctrl_out),save :: o_loadoa = ctrl_out((/ 4, 4, 10, 10, 10 /),'loadoa') 387 type(ctrl_out),save :: o_loadbc = ctrl_out((/ 4, 4, 10, 10, 10 /),'loadbc') 388 type(ctrl_out),save :: o_loadss = ctrl_out((/ 4, 4, 10, 10, 10 /),'loadss') 389 type(ctrl_out),save :: o_loaddust = ctrl_out((/ 4, 4, 10, 10, 10 /),'loaddust') 390 391 392 type(ctrl_out),save :: o_swtoaas_nat = ctrl_out((/ 4, 4, 10, 10, 10 /),'swtoaas_nat') 393 type(ctrl_out),save :: o_swsrfas_nat = ctrl_out((/ 4, 4, 10, 10, 10 /),'swsrfas_nat') 394 type(ctrl_out),save :: o_swtoacs_nat = ctrl_out((/ 4, 4, 10, 10, 10 /),'swtoacs_nat') 395 type(ctrl_out),save :: o_swsrfcs_nat = ctrl_out((/ 4, 4, 10, 10, 10 /),'swsrfcs_nat') 396 397 type(ctrl_out),save :: o_swtoaas_ant = ctrl_out((/ 4, 4, 10, 10, 10 /),'swtoaas_ant') 398 type(ctrl_out),save :: o_swsrfas_ant = ctrl_out((/ 4, 4, 10, 10, 10 /),'swsrfas_ant') 399 type(ctrl_out),save :: o_swtoacs_ant = ctrl_out((/ 4, 4, 10, 10, 10 /),'swtoacs_ant') 400 type(ctrl_out),save :: o_swsrfcs_ant = ctrl_out((/ 4, 4, 10, 10, 10 /),'swsrfcs_ant') 401 type(ctrl_out),save :: o_swtoacf_nat = ctrl_out((/ 4, 4, 10, 10, 10 /),'swtoacf_nat') 402 type(ctrl_out),save :: o_swsrfcf_nat = ctrl_out((/ 4, 4, 10, 10, 10 /),'swsrfcf_nat') 403 type(ctrl_out),save :: o_swtoacf_ant = ctrl_out((/ 4, 4, 10, 10, 10 /),'swtoacf_ant') 404 type(ctrl_out),save :: o_swsrfcf_ant = ctrl_out((/ 4, 4, 10, 10, 10 /),'swsrfcf_ant') 405 type(ctrl_out),save :: o_swtoacf_zero = ctrl_out((/ 4, 4, 10, 10, 10 /),'swtoacf_zero') 406 type(ctrl_out),save :: o_swsrfcf_zero = ctrl_out((/ 4, 4, 10, 10, 10 /),'swsrfcf_zero') 407 408 type(ctrl_out),save :: o_cldncl = ctrl_out((/ 4, 4, 10, 10, 10 /),'cldncl') 409 type(ctrl_out),save :: o_reffclwtop = ctrl_out((/ 4, 4, 10, 10, 10 /),'reffclwtop') 410 type(ctrl_out),save :: o_cldnvi = ctrl_out((/ 4, 4, 10, 10, 10 /),'cldnvi') 411 type(ctrl_out),save :: o_lcc = ctrl_out((/ 4, 4, 10, 10, 10 /),'lcc') 412 412 413 413 414 414 !!!!!!!!!!!!!!!!!!!!!! 3D !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 415 type(ctrl_out),save :: o_ec550aer = ctrl_out((/ 2, 6, 10, 10, 10/),'ec550aer')416 type(ctrl_out),save :: o_lwcon = ctrl_out((/ 2, 5, 10, 10, 1 0/),'lwcon')415 type(ctrl_out),save :: o_ec550aer = ctrl_out((/ 4, 4, 10, 10, 1 /),'ec550aer') 416 type(ctrl_out),save :: o_lwcon = ctrl_out((/ 2, 5, 10, 10, 1 /),'lwcon') 417 417 type(ctrl_out),save :: o_iwcon = ctrl_out((/ 2, 5, 10, 10, 10 /),'iwcon') 418 type(ctrl_out),save :: o_temp = ctrl_out((/ 2, 3, 4, 10, 1 0/),'temp')419 type(ctrl_out),save :: o_theta = ctrl_out((/ 2, 3, 4, 10, 1 0/),'theta')420 type(ctrl_out),save :: o_ovap = ctrl_out((/ 2, 3, 4, 10, 1 0/),'ovap')421 type(ctrl_out),save :: o_ovapinit = ctrl_out((/ 2, 3, 10, 10, 10/),'ovapinit')418 type(ctrl_out),save :: o_temp = ctrl_out((/ 2, 3, 4, 10, 1 /),'temp') 419 type(ctrl_out),save :: o_theta = ctrl_out((/ 2, 3, 4, 10, 1 /),'theta') 420 type(ctrl_out),save :: o_ovap = ctrl_out((/ 2, 3, 4, 10, 1 /),'ovap') 421 type(ctrl_out),save :: o_ovapinit = ctrl_out((/ 2, 3, 10, 10, 1 /),'ovapinit') 422 422 type(ctrl_out),save :: o_wvapp = ctrl_out((/ 2, 10, 10, 10, 10 /),'wvapp') 423 type(ctrl_out),save :: o_geop = ctrl_out((/ 2, 3, 10, 10, 1 0/),'geop')424 type(ctrl_out),save :: o_vitu = ctrl_out((/ 2, 3, 4, 6, 10/),'vitu')425 type(ctrl_out),save :: o_vitv = ctrl_out((/ 2, 3, 4, 6, 10/),'vitv')426 type(ctrl_out),save :: o_vitw = ctrl_out((/ 2, 3, 10, 6, 10/),'vitw')427 type(ctrl_out),save :: o_pres = ctrl_out((/ 2, 3, 10, 10, 1 0/),'pres')428 type(ctrl_out),save :: o_paprs = ctrl_out((/ 2, 3, 10, 10, 1 0/),'paprs')429 type(ctrl_out),save :: o_rneb = ctrl_out((/ 2, 5, 10, 10, 1 0/),'rneb')430 type(ctrl_out),save :: o_rnebcon = ctrl_out((/ 2, 5, 10, 10, 1 0/),'rnebcon')423 type(ctrl_out),save :: o_geop = ctrl_out((/ 2, 3, 10, 10, 1 /),'geop') 424 type(ctrl_out),save :: o_vitu = ctrl_out((/ 2, 3, 4, 5, 1 /),'vitu') 425 type(ctrl_out),save :: o_vitv = ctrl_out((/ 2, 3, 4, 5, 1 /),'vitv') 426 type(ctrl_out),save :: o_vitw = ctrl_out((/ 2, 3, 10, 5, 1 /),'vitw') 427 type(ctrl_out),save :: o_pres = ctrl_out((/ 2, 3, 10, 10, 1 /),'pres') 428 type(ctrl_out),save :: o_paprs = ctrl_out((/ 2, 3, 10, 10, 1 /),'paprs') 429 type(ctrl_out),save :: o_rneb = ctrl_out((/ 2, 5, 10, 10, 1 /),'rneb') 430 type(ctrl_out),save :: o_rnebcon = ctrl_out((/ 2, 5, 10, 10, 1 /),'rnebcon') 431 431 type(ctrl_out),save :: o_rhum = ctrl_out((/ 2, 5, 10, 10, 10 /),'rhum') 432 432 type(ctrl_out),save :: o_ozone = ctrl_out((/ 2, 10, 10, 10, 10 /),'ozone') … … 441 441 type(ctrl_out),save :: o_re = ctrl_out((/ 5, 10, 10, 10, 10 /),'re') 442 442 type(ctrl_out),save :: o_fl = ctrl_out((/ 5, 10, 10, 10, 10 /),'fl') 443 type(ctrl_out),save :: o_scdnc = ctrl_out((/ 2, 6, 10, 10, 10/),'scdnc')444 type(ctrl_out),save :: o_reffclws = ctrl_out((/ 2, 6, 10, 10, 10/),'reffclws')445 type(ctrl_out),save :: o_reffclwc = ctrl_out((/ 2, 6, 10, 10, 10/),'reffclwc')446 type(ctrl_out),save :: o_lcc3d = ctrl_out((/ 2, 6, 10, 10, 10/),'lcc3d')447 type(ctrl_out),save :: o_lcc3dcon = ctrl_out((/ 2, 6, 10, 10, 10/),'lcc3dcon')448 type(ctrl_out),save :: o_lcc3dstra = ctrl_out((/ 2, 6, 10, 10, 10/),'lcc3dstra')443 type(ctrl_out),save :: o_scdnc =ctrl_out((/ 4, 4, 10, 10, 1 /),'scdnc') 444 type(ctrl_out),save :: o_reffclws =ctrl_out((/ 4, 4, 10, 10, 1 /),'reffclws') 445 type(ctrl_out),save :: o_reffclwc =ctrl_out((/ 4, 4, 10, 10, 1 /),'reffclwc') 446 type(ctrl_out),save :: o_lcc3d =ctrl_out((/ 4, 4, 10, 10, 1 /),'lcc3d') 447 type(ctrl_out),save :: o_lcc3dcon =ctrl_out((/ 4, 4, 10, 10, 1 /),'lcc3dcon') 448 type(ctrl_out),save :: o_lcc3dstra =ctrl_out((/ 4, 4, 10, 10, 1 /),'lcc3dstra') 449 449 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 450 450 … … 464 464 ctrl_out((/ 3, 4, 10, 10, 10 /),'rugs_sic') /) 465 465 466 type(ctrl_out),save :: o_alb1 = ctrl_out((/ 3, 10, 10, 10, 10 /),'alb 1')467 type(ctrl_out),save :: o_alb2 = ctrl_out((/ 3, 10, 10, 10, 10 /),'alb 2')466 type(ctrl_out),save :: o_alb1 = ctrl_out((/ 3, 10, 10, 10, 10 /),'albs') 467 type(ctrl_out),save :: o_alb2 = ctrl_out((/ 3, 10, 10, 10, 10 /),'albslw') 468 468 469 469 type(ctrl_out),save :: o_clwcon = ctrl_out((/ 4, 10, 10, 10, 10 /),'clwcon') … … 471 471 type(ctrl_out),save :: o_dnwd = ctrl_out((/ 4, 10, 10, 10, 10 /),'dnwd') 472 472 type(ctrl_out),save :: o_dnwd0 = ctrl_out((/ 4, 10, 10, 10, 10 /),'dnwd0') 473 type(ctrl_out),save :: o_mc = ctrl_out((/ 4, 5, 10, 10, 10 /),'mc')473 type(ctrl_out),save :: o_mc = ctrl_out((/ 4, 10, 10, 10, 10 /),'mc') 474 474 type(ctrl_out),save :: o_ftime_con = ctrl_out((/ 4, 10, 10, 10, 10 /),'ftime_con') 475 type(ctrl_out),save :: o_dtdyn = ctrl_out((/ 4, 10, 10, 10, 1 0/),'dtdyn')476 type(ctrl_out),save :: o_dqdyn = ctrl_out((/ 4, 10, 10, 10, 1 0/),'dqdyn')477 type(ctrl_out),save :: o_dudyn = ctrl_out((/ 4, 10, 10, 10, 1 0/),'dudyn') !AXC478 type(ctrl_out),save :: o_dvdyn = ctrl_out((/ 4, 10, 10, 10, 1 0/),'dvdyn') !AXC475 type(ctrl_out),save :: o_dtdyn = ctrl_out((/ 4, 10, 10, 10, 1 /),'dtdyn') 476 type(ctrl_out),save :: o_dqdyn = ctrl_out((/ 4, 10, 10, 10, 1 /),'dqdyn') 477 type(ctrl_out),save :: o_dudyn = ctrl_out((/ 4, 10, 10, 10, 1 /),'dudyn') !AXC 478 type(ctrl_out),save :: o_dvdyn = ctrl_out((/ 4, 10, 10, 10, 1 /),'dvdyn') !AXC 479 479 type(ctrl_out),save :: o_dtcon = ctrl_out((/ 4, 5, 10, 10, 10 /),'dtcon') 480 480 type(ctrl_out),save :: o_ducon = ctrl_out((/ 4, 10, 10, 10, 10 /),'ducon') … … 504 504 type(ctrl_out),save :: o_w_th = ctrl_out((/ 4, 10, 10, 10, 10 /),'w_th') 505 505 type(ctrl_out),save :: o_lambda_th = ctrl_out((/ 10, 10, 10, 10, 10 /),'lambda_th') 506 type(ctrl_out),save :: o_ftime_th = ctrl_out((/ 4, 10, 10, 10, 10 /),'ftime_th')506 type(ctrl_out),save :: o_ftime_th = ctrl_out((/ 10, 10, 10, 10, 10 /),'ftime_th') 507 507 type(ctrl_out),save :: o_q_th = ctrl_out((/ 4, 10, 10, 10, 10 /),'q_th') 508 508 type(ctrl_out),save :: o_a_th = ctrl_out((/ 4, 10, 10, 10, 10 /),'a_th') … … 524 524 type(ctrl_out),save :: o_dulif = ctrl_out((/ 4, 10, 10, 10, 10 /),'dulif') 525 525 type(ctrl_out),save :: o_dvlif = ctrl_out((/ 4, 10, 10, 10, 10 /),'dvlif') 526 527 ! Attention a refaire correctement 528 type(ctrl_out),save,dimension(2) :: o_trac = (/ ctrl_out((/ 4, 10, 10, 10, 10 /),'trac01'), & 529 ctrl_out((/ 4, 10, 10, 10, 10 /),'trac02') /) 526 type(ctrl_out),save,allocatable :: o_trac(:) 530 527 CONTAINS 531 528 … … 602 599 real, dimension(nfiles), save :: phys_out_latmin = (/ -90., -90., -90., -90., -90. /) 603 600 real, dimension(nfiles), save :: phys_out_latmax = (/ 90., 90., 90., 90., 90. /) 604 605 606 607 ! 601 602 !IM definition dynamique flag o_trac pour sortie traceurs 603 INTEGER :: nq 604 CHARACTER(len=8) :: solsym(nqtot) 605 608 606 print*,'Debut phys_output_mod.F90' 609 607 ! Initialisations (Valeurs par defaut 608 609 if (.not. allocated(o_trac)) ALLOCATE(o_trac(nqtot)) 610 610 611 levmax = (/ klev, klev, klev, klev, klev /) 611 612 … … 903 904 CALL histdef2d(iff,o_absvisaer%flag,o_absvisaer%name, "Absorption aerosol visible optical depth", "-") 904 905 CALL histdef2d(iff,o_od550lt1aer%flag,o_od550lt1aer%name, "Fine mode optical depth", "-") 905 906 907 906 CALL histdef2d(iff,o_sconcso4%flag,o_sconcso4%name,"Surface Concentration of Sulfate ","kg/m3") 908 907 CALL histdef2d(iff,o_sconcoa%flag,o_sconcoa%name,"Surface Concentration of Organic Aerosol ","kg/m3") … … 1224 1223 ENDIF 1225 1224 1226 if (nqtot>=3) THEN 1227 !Attention DO iq=3,nqtot 1228 DO iq=3,4 1225 !IM traceurs dynamiques 1226 DO nq=1,nqtot 1227 IF(nq.LT.10) THEN 1228 WRITE(solsym(nq),'(i1)') nq 1229 o_trac(nq) = ctrl_out((/ 4, 5, 1, 1, 1 /),'trac0'//TRIM(solsym(nq))) 1230 ELSE 1231 WRITE(solsym(nq),'(i2)') nq 1232 o_trac(nq) = ctrl_out((/ 4, 5, 1, 1, 1 /),'trac'//TRIM(solsym(nq))) 1233 ENDIF 1234 WRITE(*,*) 'nq, o_trac(nq)=',nq, o_trac(nq) 1235 ENDDO 1236 ! 1237 if (nqtot>=3) THEN 1238 DO iq=3,nqtot 1229 1239 iiq=niadv(iq) 1230 ! CALL histdef3d (iff, o_trac%flag,'o_'//tnom(iq)%name,ttext(iiq), "-" )1231 1240 CALL histdef3d (iff, o_trac(iq-2)%flag,o_trac(iq-2)%name,ttext(iiq), "-" ) 1232 ENDDO1233 1241 ENDDO 1242 endif 1234 1243 1235 1244 CALL histend(nid_files(iff))
Note: See TracChangeset
for help on using the changeset viewer.