Changeset 2176 for LMDZ5/branches/LMDZ5_SPLA
- Timestamp:
- Dec 24, 2014, 8:23:19 PM (10 years ago)
- Location:
- LMDZ5/branches/LMDZ5_SPLA/libf/phylmd
- Files:
-
- 2 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/dustemission_mod.F90
r2175 r2176 83 83 INTEGER :: ncl 84 84 85 ! outputs 86 REAL,DIMENSION(:), ALLOCATABLE,SAVE :: m1dflux !fluxes for each soil mode 87 REAL,DIMENSION(:), ALLOCATABLE,SAVE :: m2dflux 88 REAL,DIMENSION(:), ALLOCATABLE,SAVE :: m3dflux 89 90 91 92 !$OMP THREADPRIVATE(m1dflux) 93 !$OMP THREADPRIVATE(m2dflux) 94 !$OMP THREADPRIVATE(m3dflux) 85 95 !$OMP THREADPRIVATE(massfrac) 86 96 !$OMP THREADPRIVATE(binsHR) … … 532 542 ALLOCATE( srel(nats,nclass) ) 533 543 ALLOCATE( srel2(nats,nclass) ) 544 ALLOCATE( m1dflux(klon) ) 545 ALLOCATE( m2dflux(klon) ) 546 ALLOCATE( m3dflux(klon) ) 547 548 534 549 535 550 ! read input data from donnees_lisa.nc … … 1204 1219 fluxdust(i,3)=fluxdust(i,3)+flux3*probu(kwb) 1205 1220 ENDDO !kwb=1,nwb 1221 m1dflux(i)=10.*fluxdust(i,1) 1222 m2dflux(i)=10.*fluxdust(i,2) ! tous en Kg/m2/s 1223 m3dflux(i)=10.*fluxdust(i,3) 1224 1206 1225 1207 1226 -
LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/phys_output_ctrlout_mod.F90
r2003 r2176 1255 1255 TYPE(ctrl_out), SAVE :: o_TxT = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), & 1256 1256 'T2', 'T2', 'K2', (/ "inst(X)", "inst(X)", "inst(X)", & 1257 "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)" /)) 1258 1257 "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)" /)) 1258 !! JE20141223 <<<< including SPLA output in standard model outputs 1259 #include "spla_output_dat.h" 1260 !! JE20141223 >>>> 1259 1261 END MODULE phys_output_ctrlout_mod -
LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/phys_output_write_mod.F90
r2175 r2176 3 3 ! 4 4 MODULE phys_output_write_mod 5 6 !JE20140507<< 7 ! USE phytrac_mod, ONLY : d_tr_cl, d_tr_th, d_tr_cv, d_tr_lessi_impa, & 5 !JE20141213< 6 !!JE20140507<< 7 !! USE phytrac_mod, ONLY : d_tr_cl, d_tr_th, d_tr_cv, d_tr_lessi_impa, & 8 !! d_tr_lessi_nucl, d_tr_insc, d_tr_bcscav, d_tr_evapls, d_tr_ls, & 9 !! d_tr_trsp, d_tr_sscav, d_tr_sat, d_tr_uscav 10 ! USE phytracr_spl_mod, ONLY : d_tr_cl, d_tr_th, d_tr_cv, d_tr_lessi_impa, & 8 11 ! d_tr_lessi_nucl, d_tr_insc, d_tr_bcscav, d_tr_evapls, d_tr_ls, & 9 12 ! d_tr_trsp, d_tr_sscav, d_tr_sat, d_tr_uscav 13 !!JE20140507>> 14 10 15 USE phytracr_spl_mod, ONLY : d_tr_cl, d_tr_th, d_tr_cv, d_tr_lessi_impa, & 11 16 d_tr_lessi_nucl, d_tr_insc, d_tr_bcscav, d_tr_evapls, d_tr_ls, & 12 d_tr_trsp, d_tr_sscav, d_tr_sat, d_tr_uscav 13 !JE20140507>> 14 15 16 17 d_tr_trsp, d_tr_sscav, d_tr_sat, d_tr_uscav ,& 18 diff_aod550_tot,& 19 diag_aod670_tot, diag_aod865_tot, & 20 diff_aod550_tr2, diag_aod670_tr2, diag_aod865_tr2, & 21 diag_aod550_ss, diag_aod670_ss, diag_aod865_ss, & 22 diag_aod550_dust, diag_aod670_dust, diag_aod865_dust , & 23 diag_aod550_dustsco, diag_aod670_dustsco, diag_aod865_dustsco, & 24 aod550_aqua, aod670_aqua, aod865_aqua, & 25 aod550_terra, aod670_terra, aod865_terra, & 26 trm01,trm02,trm03,trm04,trm05, & 27 sconc01,sconc02,sconc03,sconc04,sconc05, & 28 flux01,flux02,flux03,flux04,flux05,& 29 ds01,ds02,ds03,ds04,ds05, & 30 dh01,dh02,dh03,dh04,dh05, & 31 dtrconv01,dtrconv02,dtrconv03,dtrconv04,dtrconv05, & 32 dtherm01,dtherm02,dtherm03,dtherm04,dtherm05, & 33 dhkecv01,dhkecv02,dhkecv03,dhkecv04,dhkecv05, & 34 dhkelsc01,dhkelsc02,dhkelsc03,dhkelsc04,dhkelsc05, & 35 d_tr_cv01,d_tr_cv02,d_tr_cv03,d_tr_cv04,d_tr_cv05, & 36 d_tr_trsp01,d_tr_trsp02,d_tr_trsp03,d_tr_trsp04,d_tr_trsp05, & 37 d_tr_sscav01,d_tr_sscav02,d_tr_sscav03,d_tr_sscav04,d_tr_sscav05, & 38 d_tr_sat01,d_tr_sat02,d_tr_sat03,d_tr_sat04,d_tr_sat05, & 39 d_tr_uscav01,d_tr_uscav02,d_tr_uscav03,d_tr_uscav04,d_tr_uscav05, & 40 sed_ss,sed_dust,sed_dustsco,his_g2pgas,his_g2paer, & 41 fluxbb, & 42 fluxff,fluxbcbb,fluxbcff,fluxbcnff, & 43 fluxbcba,fluxbc,fluxombb,fluxomff,fluxomnff, & 44 fluxomba,fluxomnat,fluxom,fluxh2sff,fluxh2snff, & 45 fluxso2ff,fluxso2nff,fluxso2bb,fluxso2vol,fluxso2ba, & 46 fluxso2,fluxso4ff,fluxso4nff,fluxso4ba,fluxso4bb, & 47 fluxso4,fluxdms,fluxh2sbio,fluxdustec,& 48 fluxddfine, & 49 fluxddcoa,fluxddsco,fluxdd, & 50 fluxssfine,fluxsscoa, & 51 fluxss,flux_sparam_ind,flux_sparam_bb,flux_sparam_ff, & 52 flux_sparam_ddfine,flux_sparam_ddcoa, & 53 flux_sparam_ddsco,flux_sparam_ssfine, & 54 flux_sparam_sscoa,u10m_ss,v10m_ss 55 56 USE dustemission_mod, ONLY : m1dflux, m2dflux, m3dflux 57 58 !JE20141213> 17 59 18 60 ! Author: Abderrahmane IDELKADI (original include file) … … 155 197 o_dtr_ls, o_dtr_trsp, o_dtr_sscav, & 156 198 o_dtr_sat, o_dtr_uscav, o_trac_cum, o_du_gwd_rando, o_dv_gwd_rando, & 157 o_vstr_gwd_rando 199 !JE o_vstr_gwd_rando 200 o_vstr_gwd_rando, & 201 ! JE20141223 spla outputs 202 o_m1dflux,o_m2dflux,o_m3dflux, & 203 o_taue550, & 204 o_taue670,o_taue865, & 205 o_taue550_tr2, o_taue670_tr2, o_taue865_tr2, & 206 o_taue550_ss,o_taue670_ss, o_taue865_ss, & 207 o_taue550_dust, o_taue670_dust, o_taue865_dust, & 208 o_taue550_dustsco, o_taue670_dustsco, o_taue865_dustsco, & 209 o_taue550_aqua, o_taue670_aqua, o_taue865_aqua, & 210 o_taue550_terra, o_taue670_terra, o_taue865_terra, & 211 o_trm01,o_trm02,o_trm03,o_trm04,o_trm05,& 212 o_sconc01,o_sconc02,o_sconc03,o_sconc04,o_sconc05, & 213 o_flux01,o_flux02,o_flux03,o_flux04,o_flux05, & 214 o_ds01,o_ds02,o_ds03,o_ds04,o_ds05, & 215 o_dh01,o_dh02,o_dh03,o_dh04,o_dh05, & 216 o_dtrconv01,o_dtrconv02,o_dtrconv03,o_dtrconv04,o_dtrconv05, & 217 o_dtherm01,o_dtherm02,o_dtherm03,o_dtherm04,o_dtherm05, & 218 o_dhkecv01,o_dhkecv02,o_dhkecv03,o_dhkecv04,o_dhkecv05, & 219 o_dhkelsc01,o_dhkelsc02,o_dhkelsc03,o_dhkelsc04,o_dhkelsc05, & 220 o_d_tr_sat01,o_d_tr_cv01,o_d_tr_cv02,o_d_tr_cv03,o_d_tr_cv04,o_d_tr_cv05, & 221 o_d_tr_trsp01,o_d_tr_trsp02,o_d_tr_trsp03,o_d_tr_trsp04,o_d_tr_trsp05, & 222 o_d_tr_sscav01,o_d_tr_sscav02,o_d_tr_sscav03,o_d_tr_sscav04,o_d_tr_sscav05, & 223 o_d_tr_sat02,o_d_tr_sat03,o_d_tr_sat04,o_d_tr_sat05, & 224 o_d_tr_uscav01,o_d_tr_uscav02,o_d_tr_uscav03,o_d_tr_uscav04,o_d_tr_uscav05, & 225 o_sed_ss,o_sed_dust,o_sed_dustsco,o_g2p_gas,o_g2p_aer, & 226 o_fluxbb, & 227 o_fluxff ,o_fluxbcbb ,o_fluxbcff ,o_fluxbcnff , & 228 o_fluxbcba ,o_fluxbc ,o_fluxombb ,o_fluxomff , & 229 o_fluxomnff ,o_fluxomba ,o_fluxomnat ,o_fluxom , & 230 o_fluxh2sff ,o_fluxh2snff,o_fluxso2ff ,o_fluxso2nff, & 231 o_fluxso2bb ,o_fluxso2vol,o_fluxso2ba ,o_fluxso2 , & 232 o_fluxso4ff ,o_fluxso4nff,o_fluxso4bb ,o_fluxso4ba , & 233 o_fluxso4 ,o_fluxdms ,o_fluxh2sbio,o_fluxdustec, & 234 o_fluxddfine,o_fluxddcoa ,o_fluxddsco ,o_fluxdd ,& 235 o_fluxssfine,o_fluxsscoa, o_fluxss, & 236 o_flux_sparam_ind,o_flux_sparam_bb, & 237 o_flux_sparam_ff ,o_flux_sparam_ddfine ,o_flux_sparam_ddcoa, & 238 o_flux_sparam_ddsco,o_flux_sparam_ssfine,o_flux_sparam_sscoa, & 239 o_u10m_ss,o_v10m_ss 240 241 158 242 159 243 USE phys_state_var_mod, only: pctsrf, paire_ter, rain_fall, snow_fall, & … … 326 410 CALL histwrite_phy(o_aireTER, paire_ter) 327 411 !!! Champs 2D !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 412 ! JE20141223 << 413 #include "spla_output_write.h" 414 ! JE20141223 >> 415 328 416 CALL histwrite_phy(o_flat, zxfluxlat) 329 417 CALL histwrite_phy(o_slp, slp) -
LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/physiq.F90
r2175 r2176 953 953 954 954 !-output phytrac variables 955 REAL diff_aod550_tot(ngridmx) ! epaisseur optique total aerosol 550 nm 956 REAL diag_aod865_tot(ngridmx) ! epaisseur optique total aerosol 865 nm 957 REAL diff_aod550_tr2(ngridmx) ! epaisseur optique Traceur 2 aerosol 550 nm, diagnostic 958 REAL diag_aod865_tr2(ngridmx) ! epaisseur optique Traceur 2 aerosol 865 nm, diagnostic 959 REAL diag_aod550_dust(ngridmx) ! epaisseur optique Dust coarse aerosol 550 nm, diagnostic 960 REAL diag_aod865_dust(ngridmx) ! epaisseur optique Dust coarse aerosol 865 nm, diagnostic 961 REAL diag_aod550_dustsco(ngridmx) ! epaisseur optique Dust SCOarse aerosol 550 nm, diagnostic 962 REAL diag_aod865_dustsco(ngridmx) ! epaisseur optique Dust SCOarse aerosol 865 nm, diagnostic 963 REAL diag_aod550_ss(ngridmx) ! epaisseur optique Sels marins aerosol 550 nm, diagnostic 964 REAL diag_aod865_ss(ngridmx) ! epaisseur optique Sels marins aerosol 865 nm, diagnostic 955 !JE20141224 << 956 ! REAL diff_aod550_tot(ngridmx) ! epaisseur optique total aerosol 550 nm 957 ! REAL diag_aod865_tot(ngridmx) ! epaisseur optique total aerosol 865 nm 958 ! REAL diff_aod550_tr2(ngridmx) ! epaisseur optique Traceur 2 aerosol 550 nm, diagnostic 959 ! REAL diag_aod865_tr2(ngridmx) ! epaisseur optique Traceur 2 aerosol 865 nm, diagnostic 960 ! REAL diag_aod550_dust(ngridmx) ! epaisseur optique Dust coarse aerosol 550 nm, diagnostic 961 ! REAL diag_aod865_dust(ngridmx) ! epaisseur optique Dust coarse aerosol 865 nm, diagnostic 962 ! REAL diag_aod550_dustsco(ngridmx) ! epaisseur optique Dust SCOarse aerosol 550 nm, diagnostic 963 ! REAL diag_aod865_dustsco(ngridmx) ! epaisseur optique Dust SCOarse aerosol 865 nm, diagnostic 964 ! REAL diag_aod550_ss(ngridmx) ! epaisseur optique Sels marins aerosol 550 nm, diagnostic 965 ! REAL diag_aod865_ss(ngridmx) ! epaisseur optique Sels marins aerosol 865 nm, diagnostic 966 !JE20141224 >> 965 967 ! others 966 968 REAL tsol(ngridmx) … … 3835 3837 lmt_omff, lmt_omnff, lmt_ombb_l, lmt_ombb_h, & !E 3836 3838 lmt_omnat, lmt_omba, & !E 3837 tr_seri, & !O 3838 diff_aod550_tot,diag_aod865_tot, & !O 3839 diff_aod550_tr2,diag_aod865_tr2, & !O 3840 diag_aod550_dust,diag_aod865_dust, & !O 3841 diag_aod550_dustsco,diag_aod865_dustsco, & !O 3842 diag_aod550_ss,diag_aod865_ss) !O 3839 tr_seri) !O 3840 !JE20141224<< 3841 ! tr_seri, & !O 3842 ! diff_aod550_tot,diag_aod865_tot, & !O 3843 ! diff_aod550_tr2,diag_aod865_tr2, & !O 3844 ! diag_aod550_dust,diag_aod865_dust, & !O 3845 ! diag_aod550_dustsco,diag_aod865_dustsco, & !O 3846 ! diag_aod550_ss,diag_aod865_ss) !O 3847 !JE20141224>> 3843 3848 ! ENDIF 3844 3849 ! DO i=1,nbtr … … 4142 4147 4143 4148 !On effectue les sorties: 4144 print *,' JE: aqui deberia escribir la salida!!!!!!!!!!'4145 4149 4146 4150 CALL phys_output_write(itap, pdtphys, paprs, pphis, & -
LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/phytracr_spl_mod.F90
r2175 r2176 48 48 !$OMP THREADPRIVATE(id_prec,id_fine,id_coss,id_codu,id_scdu) 49 49 50 ! JE20141224 << 51 52 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diff_aod550_tot ! epaisseur optique total aerosol 550 nm 53 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod670_tot ! epaisseur optique total aerosol 670 nm 54 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod865_tot ! epaisseur optique total aerosol 865 nm 55 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diff_aod550_tr2 ! epaisseur optique Traceur 2 aerosol 550 nm, diagnostic 56 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod670_tr2 ! epaisseur optique Traceur 2 aerosol 670 nm, diagnostic 57 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod865_tr2 ! epaisseur optique Traceur 2 aerosol 865 nm, diagnostic 58 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod550_ss ! epaisseur optique Sels marins aerosol 550 nm, diagnostic 59 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod670_ss ! epaisseur optique Sels marins aerosol 670 nm, diagnostic 60 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod865_ss ! epaisseur optique Sels marins aerosol 865 nm, diagnostic 61 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod550_dust ! epaisseur optique Dust aerosol 550 nm, diagnostic 62 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod670_dust ! epaisseur optique Dust aerosol 670 nm, diagnostic 63 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod865_dust ! epaisseur optique Dust aerosol 865 nm, diagnostic 64 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod550_dustsco ! epaisseur optique Dust SCOarse aerosol 550 nm, diagnostic 65 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod670_dustsco ! epaisseur optique Dust SCOarse aerosol 670 nm, diagnostic 66 REAL,DIMENSION(:),ALLOCATABLE,SAVE :: diag_aod865_dustsco ! epaisseur optique Dust SCOarse aerosol 865 nm, diagnostic 67 68 !$OMP THREADPRIVATE(diff_aod550_tot,diag_aod670_tot,diag_aod865_tot) 69 !$OMP THREADPRIVATE(diff_aod550_tr2,diag_aod670_tr2,diag_aod865_tr2) 70 !$OMP THREADPRIVATE(diag_aod550_ss,diag_aod670_ss,diag_aod865_ss,diag_aod550_dust) 71 !$OMP THREADPRIVATE(diag_aod670_dust,diag_aod865_dust,diag_aod550_dustsco) 72 !$OMP THREADPRIVATE(diag_aod670_dustsco,diag_aod865_dustsco) 73 74 75 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod550_aqua ! AOD at aqua overpass time ( 13.30 local hour) 76 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod550_terra ! AOD at terra overpass time ( 10.30 local hour) 77 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod670_aqua ! AOD at aqua overpass time ( 13.30 local hour) 78 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod670_terra ! AOD at terra overpass time ( 10.30 local hour) 79 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod865_aqua ! AOD at aqua overpass time ( 13.30 local hour) 80 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod865_terra ! AOD at terra overpass time ( 10.30 local hour) 81 82 !$OMP THREADPRIVATE(aod550_aqua,aod550_terra,aod670_aqua,aod670_terra) 83 !$OMP THREADPRIVATE(aod865_aqua,aod865_terra) 84 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: sconc01 ! surface concentration 85 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: trm01 ! burden 86 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: sconc02 ! surface concentration 87 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: trm02 ! burden 88 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: sconc03 ! surface concentration 89 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: trm03 ! burden 90 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: sconc04 ! surface concentration 91 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: trm04 ! burden 92 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: sconc05 ! surface concentration 93 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: trm05 ! burden 94 !$OMP THREADPRIVATE(sconc01,sconc02,sconc03,sconc04,sconc05) 95 !$OMP THREADPRIVATE(trm01,trm02,trm03,trm04,trm05) 96 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux01 97 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux02 98 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux03 99 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux04 100 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux05 101 !$OMP THREADPRIVATE(flux01,flux02,flux03,flux04,flux05) 102 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: ds01 103 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: ds02 104 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: ds03 105 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: ds04 106 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: ds05 107 !$OMP THREADPRIVATE(ds01,ds02,ds03,ds04,ds05) 108 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dh01 109 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dh02 110 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dh03 111 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dh04 112 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dh05 113 !$OMP THREADPRIVATE(dh01,dh02,dh03,dh04,dh05) 114 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtrconv01 115 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtrconv02 116 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtrconv03 117 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtrconv04 118 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtrconv05 119 !$OMP THREADPRIVATE(dtrconv01,dtrconv02,dtrconv03,dtrconv04,dtrconv05) 120 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtherm01 121 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtherm02 122 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtherm03 123 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtherm04 124 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dtherm05 125 !$OMP THREADPRIVATE(dtherm01,dtherm02,dtherm03,dtherm04,dtherm05) 126 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkecv01 127 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkecv02 128 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkecv03 129 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkecv04 130 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkecv05 131 !$OMP THREADPRIVATE(dhkecv01,dhkecv02,dhkecv03,dhkecv04,dhkecv05) 132 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkelsc01 133 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkelsc02 134 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkelsc03 135 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkelsc04 136 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: dhkelsc05 137 !$OMP THREADPRIVATE(dhkelsc01,dhkelsc02,dhkelsc03,dhkelsc04,dhkelsc05) 138 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_cv01 139 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_cv02 140 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_cv03 141 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_cv04 142 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_cv05 143 !$OMP THREADPRIVATE(d_tr_cv01,d_tr_cv02,d_tr_cv03,d_tr_cv04,d_tr_cv05) 144 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_trsp01 145 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_trsp02 146 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_trsp03 147 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_trsp04 148 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_trsp05 149 !$OMP THREADPRIVATE(d_tr_trsp01,d_tr_trsp02,d_tr_trsp03,d_tr_trsp04,d_tr_trsp05) 150 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sscav01 151 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sscav02 152 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sscav03 153 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sscav04 154 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sscav05 155 !$OMP THREADPRIVATE(d_tr_sscav01,d_tr_sscav02,d_tr_sscav03,d_tr_sscav04,d_tr_sscav05) 156 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sat01 157 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sat02 158 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sat03 159 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sat04 160 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_sat05 161 !$OMP THREADPRIVATE(d_tr_sat01,d_tr_sat02,d_tr_sat03,d_tr_sat04,d_tr_sat05) 162 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_uscav01 163 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_uscav02 164 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_uscav03 165 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_uscav04 166 REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: d_tr_uscav05 167 !$OMP THREADPRIVATE(d_tr_uscav01,d_tr_uscav02,d_tr_uscav03,d_tr_uscav04,d_tr_uscav05) 168 169 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: sed_ss ! corresponds to tracer 3 170 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: sed_dust ! corresponds to tracer 4 171 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: sed_dustsco ! corresponds to tracer 4 172 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: his_g2pgas ! corresponds to tracer 4 173 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: his_g2paer ! corresponds to tracer 4 174 !$OMP THREADPRIVATE(sed_ss,sed_dust,sed_dustsco,his_g2pgas,his_g2paer) 175 176 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxbb 177 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxff 178 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxbcbb 179 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxbcff 180 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxbcnff 181 !$OMP THREADPRIVATE(fluxbb,fluxff,fluxbcbb,fluxbcff,fluxbcnff) 182 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxbcba 183 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxbc 184 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxombb 185 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxomff 186 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxomnff 187 !$OMP THREADPRIVATE(fluxbcba,fluxbc,fluxombb,fluxomff,fluxomnff) 188 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxomba 189 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxomnat 190 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxom 191 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxh2sff 192 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxh2snff 193 !$OMP THREADPRIVATE(fluxomba,fluxomnat,fluxom,fluxh2sff,fluxh2snff) 194 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso2ff 195 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso2nff 196 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso2bb 197 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso2vol 198 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso2ba 199 !$OMP THREADPRIVATE(fluxso2ff,fluxso2nff,fluxso2bb,fluxso2vol,fluxso2ba) 200 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso2 201 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso4ff 202 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso4nff 203 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso4bb 204 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso4ba 205 !$OMP THREADPRIVATE(fluxso2,fluxso4ff,fluxso4nff,fluxso4ba,fluxso4bb) 206 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxso4 207 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxdms 208 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxh2sbio 209 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxdustec 210 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxddfine 211 !$OMP THREADPRIVATE(fluxso4,fluxdms,fluxh2sbio,fluxdustec,fluxddfine) 212 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxddcoa 213 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxddsco 214 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxdd 215 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxssfine 216 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxsscoa 217 !$OMP THREADPRIVATE(fluxddcoa,fluxddsco,fluxdd,fluxssfine,fluxsscoa) 218 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: fluxss 219 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux_sparam_ind 220 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux_sparam_bb 221 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux_sparam_ff 222 !$OMP THREADPRIVATE(fluxss,flux_sparam_ind,flux_sparam_bb,flux_sparam_ff) 223 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux_sparam_ddfine 224 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux_sparam_ddcoa 225 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux_sparam_ddsco 226 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux_sparam_ssfine 227 !$OMP THREADPRIVATE(flux_sparam_ddfine,flux_sparam_ddcoa) 228 !$OMP THREADPRIVATE(flux_sparam_ddsco,flux_sparam_ssfine) 229 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: flux_sparam_sscoa 230 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: u10m_ss 231 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: v10m_ss 232 !$OMP THREADPRIVATE(flux_sparam_sscoa,u10m_ss,v10m_ss) 233 234 ! JE20141224 >> 50 235 51 236 … … 83 268 lmt_bcba,lmt_omff,lmt_omnff,lmt_ombb_l, & ! E 84 269 lmt_ombb_h,lmt_omnat,lmt_omba, & ! E 85 tr_seri, & ! O 86 diff_aod550_tot,diag_aod865_tot, & ! O 87 diff_aod550_tr2,diag_aod865_tr2, & ! O 88 diag_aod550_dust,diag_aod865_dust, & ! O 89 diag_aod550_dustsco,diag_aod865_dustsco, & ! O 90 diag_aod550_ss,diag_aod865_ss) ! O 91 ! E wth,cly,zprecipinsoil,lmt_sea_salt, ! Titane 92 ! 270 tr_seri) ! O 271 ! tr_seri, & ! O 272 !JE20141224 diff_aod550_tot,diag_aod865_tot, & ! O 273 ! diff_aod550_tr2,diag_aod865_tr2, & ! O 274 ! diag_aod550_dust,diag_aod865_dust, & ! O 275 ! diag_aod550_dustsco,diag_aod865_dustsco, & ! O 276 ! diag_aod550_ss,diag_aod865_ss) ! O 277 !!! E wth,cly,zprecipinsoil,lmt_sea_salt, ! Titane 278 !!! 93 279 USE mod_grid_phy_lmdz 94 280 USE mod_phys_lmdz_para … … 153 339 !$OMP THREADPRIVATE(nbjour) 154 340 ! 155 REAL diff_aod550_tot(klon) ! epaisseur optique total aerosol 550 nm 156 REAL diag_aod670_tot(klon) ! epaisseur optique total aerosol 670 nm 157 REAL diag_aod865_tot(klon) ! epaisseur optique total aerosol 865 nm 158 REAL diff_aod550_tr2(klon) ! epaisseur optique Traceur 2 aerosol 550 nm, diagnostic 159 REAL diag_aod670_tr2(klon) ! epaisseur optique Traceur 2 aerosol 670 nm, diagnostic 160 REAL diag_aod865_tr2(klon) ! epaisseur optique Traceur 2 aerosol 865 nm, diagnostic 161 REAL diag_aod550_ss(klon) ! epaisseur optique Sels marins aerosol 550 nm, diagnostic 162 REAL diag_aod670_ss(klon) ! epaisseur optique Sels marins aerosol 670 nm, diagnostic 163 REAL diag_aod865_ss(klon) ! epaisseur optique Sels marins aerosol 865 nm, diagnostic 164 REAL diag_aod550_dust(klon) ! epaisseur optique Dust aerosol 550 nm, diagnostic 165 REAL diag_aod670_dust(klon) ! epaisseur optique Dust aerosol 670 nm, diagnostic 166 REAL diag_aod865_dust(klon) ! epaisseur optique Dust aerosol 865 nm, diagnostic 167 REAL diag_aod550_dustsco(klon) ! epaisseur optique Dust SCOarse aerosol 550 nm, diagnostic 168 REAL diag_aod670_dustsco(klon) ! epaisseur optique Dust SCOarse aerosol 670 nm, diagnostic 169 REAL diag_aod865_dustsco(klon) ! epaisseur optique Dust SCOarse aerosol 865 nm, diagnostic 341 !JE20141224 << 342 ! REAL diff_aod550_tot(klon) ! epaisseur optique total aerosol 550 nm 343 ! REAL diag_aod670_tot(klon) ! epaisseur optique total aerosol 670 nm 344 ! REAL diag_aod865_tot(klon) ! epaisseur optique total aerosol 865 nm 345 ! REAL diff_aod550_tr2(klon) ! epaisseur optique Traceur 2 aerosol 550 nm, diagnostic 346 ! REAL diag_aod670_tr2(klon) ! epaisseur optique Traceur 2 aerosol 670 nm, diagnostic 347 ! REAL diag_aod865_tr2(klon) ! epaisseur optique Traceur 2 aerosol 865 nm, diagnostic 348 ! REAL diag_aod550_ss(klon) ! epaisseur optique Sels marins aerosol 550 nm, diagnostic 349 ! REAL diag_aod670_ss(klon) ! epaisseur optique Sels marins aerosol 670 nm, diagnostic 350 ! REAL diag_aod865_ss(klon) ! epaisseur optique Sels marins aerosol 865 nm, diagnostic 351 ! REAL diag_aod550_dust(klon) ! epaisseur optique Dust aerosol 550 nm, diagnostic 352 ! REAL diag_aod670_dust(klon) ! epaisseur optique Dust aerosol 670 nm, diagnostic 353 ! REAL diag_aod865_dust(klon) ! epaisseur optique Dust aerosol 865 nm, diagnostic 354 ! REAL diag_aod550_dustsco(klon) ! epaisseur optique Dust SCOarse aerosol 550 nm, diagnostic 355 ! REAL diag_aod670_dustsco(klon) ! epaisseur optique Dust SCOarse aerosol 670 nm, diagnostic 356 ! REAL diag_aod865_dustsco(klon) ! epaisseur optique Dust SCOarse aerosol 865 nm, diagnostic 357 !JE20141224 >> 170 358 171 359 INTEGER masque_aqua_cur(klon) … … 174 362 INTEGER, DIMENSION(:), ALLOCATABLE, SAVE :: masque_terra ! 175 363 !$OMP THREADPRIVATE(masque_aqua,masque_terra) 176 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod550_aqua ! AOD at aqua overpass time ( 13.30 local hour) 177 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod550_terra ! AOD at terra overpass time ( 10.30 local hour) 178 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod670_aqua ! AOD at aqua overpass time ( 13.30 local hour) 179 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod670_terra ! AOD at terra overpass time ( 10.30 local hour) 180 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod865_aqua ! AOD at aqua overpass time ( 13.30 local hour) 181 REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod865_terra ! AOD at terra overpass time ( 10.30 local hour) 182 183 !$OMP THREADPRIVATE(aod550_aqua,aod550_terra,aod670_aqua,aod670_terra) 184 !$OMP THREADPRIVATE(aod865_aqua,aod865_terra) 185 364 !JE20141224 << 365 ! REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod550_aqua ! AOD at aqua overpass time ( 13.30 local hour) 366 ! REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod550_terra ! AOD at terra overpass time ( 10.30 local hour) 367 ! REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod670_aqua ! AOD at aqua overpass time ( 13.30 local hour) 368 ! REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod670_terra ! AOD at terra overpass time ( 10.30 local hour) 369 ! REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod865_aqua ! AOD at aqua overpass time ( 13.30 local hour) 370 ! REAL, DIMENSION(:), ALLOCATABLE, SAVE :: aod865_terra ! AOD at terra overpass time ( 10.30 local hour) 371 ! 372 !!$OMP THREADPRIVATE(aod550_aqua,aod550_terra,aod670_aqua,aod670_terra) 373 !!$OMP THREADPRIVATE(aod865_aqua,aod865_terra) 374 375 !JE20141224 >> 186 376 REAL, DIMENSION(klon_glo) :: aod550_aqua_glo ! AOD at aqua overpass time ( 13.30 local hour) 187 377 REAL, DIMENSION(klon_glo) :: aod550_terra_glo ! AOD at terra overpass time ( 10.30 local hour) … … 409 599 !---------------------------------------------------------------------- 410 600 REAL his_ds(klon,nbtr) 601 REAL his_dh(klon,nbtr) 411 602 REAL his_dhlsc(klon,nbtr) ! in-cloud scavenging lsc 412 603 REAL his_dhcon(klon,nbtr) ! in-cloud scavenging con … … 444 635 REAL flux_tr(klon,nbtr) 445 636 REAL m_conc(klon,klev) 446 REAL sed_ss(klon) ! corresponds to tracer 3447 REAL sed_dust(klon) ! corresponds to tracer 4448 REAL sed_dustsco(klon) ! corresponds to tracer 4637 ! REAL sed_ss(klon) ! corresponds to tracer 3 638 ! REAL sed_dust(klon) ! corresponds to tracer 4 639 ! REAL sed_dustsco(klon) ! corresponds to tracer 4 449 640 REAL henry(nbtr) !--cste de Henry mol/l/atm 450 641 REAL kk(nbtr) !--coefficient de var avec T (K) … … 471 662 CHARACTER*2 str2 472 663 LOGICAL ok_histrac 473 PARAMETER (ok_histrac=.true.) 664 !JE2014124 PARAMETER (ok_histrac=.true.) 665 PARAMETER (ok_histrac=.false.) 474 666 INTEGER ndex2d(iim*(jjm+1)), ndex3d(iim*(jjm+1)*klev) 475 667 INTEGER nhori1, nhori2, nhori3, nhori4, nhori5, nvert … … 489 681 REAL zx_lon_glo(nbp_lon,nbp_lat), zx_lat_glo(nbp_lon,nbp_lat) 490 682 REAL zsto, zout, zout_h, zout_m, zjulian 491 REAL fluxbb(klon), fluxff(klon) 492 REAL fluxbcbb(klon), fluxbcff(klon), fluxbcnff(klon) 493 REAL fluxombb(klon), fluxomff(klon), fluxomnat(klon) 494 REAL fluxomnff(klon), fluxomba(klon), fluxbcba(klon) 495 REAL fluxso2ff(klon), fluxso2bb(klon), fluxso2(klon) 496 REAL fluxso2nff(klon), fluxso2vol(klon), fluxso2ba(klon) 497 REAL fluxh2sff(klon), fluxh2snff(klon) 498 REAL fluxso4ff(klon), fluxso4bb(klon), fluxso4ba(klon) 499 REAL fluxh2sbio(klon), fluxso4nff(klon) 500 REAL fluxdms(klon) 501 REAL fluxbc(klon), fluxom(klon), fluxso4(klon) 502 REAL fluxdd(klon), fluxss(klon) 503 REAL fluxdustec(klon), fluxssfine(klon), fluxsscoa(klon) 504 REAL fluxddfine(klon), fluxddcoa(klon) ,fluxddsco(klon) 505 REAL flux_sparam_bb(klon), flux_sparam_ff(klon) 506 REAL flux_sparam_ind(klon) !, flux_sparam_sulf(klon,klev) 507 REAL flux_sparam_ddfine(klon), flux_sparam_ddcoa(klon) 508 REAL flux_sparam_ddsco(klon) 509 REAL flux_sparam_ssfine(klon), flux_sparam_sscoa(klon) 510 683 684 ! JE20141224 << 685 ! REAL fluxbb(klon), fluxff(klon) 686 ! REAL fluxbcbb(klon), fluxbcff(klon), fluxbcnff(klon) 687 ! REAL fluxombb(klon), fluxomff(klon), fluxomnat(klon) 688 ! REAL fluxomnff(klon), fluxomba(klon), fluxbcba(klon) 689 ! REAL fluxso2ff(klon), fluxso2bb(klon), fluxso2(klon) 690 ! REAL fluxso2nff(klon), fluxso2vol(klon), fluxso2ba(klon) 691 ! REAL fluxh2sff(klon), fluxh2snff(klon) 692 ! REAL fluxso4ff(klon), fluxso4bb(klon), fluxso4ba(klon) 693 ! REAL fluxh2sbio(klon), fluxso4nff(klon) 694 ! REAL fluxdms(klon) 695 ! REAL fluxbc(klon), fluxom(klon), fluxso4(klon) 696 ! REAL fluxdd(klon), fluxss(klon) 697 ! REAL fluxdustec(klon), fluxssfine(klon), fluxsscoa(klon) 698 ! REAL fluxddfine(klon), fluxddcoa(klon) ,fluxddsco(klon) 699 ! REAL flux_sparam_bb(klon), flux_sparam_ff(klon) 700 ! REAL flux_sparam_ind(klon) !, flux_sparam_sulf(klon,klev) 701 ! REAL flux_sparam_ddfine(klon), flux_sparam_ddcoa(klon) 702 ! REAL flux_sparam_ddsco(klon) 703 ! REAL flux_sparam_ssfine(klon), flux_sparam_sscoa(klon) 704 ! 705 ! JE20141224 >> 511 706 !------------------DMS SO2 SO4 H2S DMSO MSA H2O2 512 707 !------------------BC1, BC2, OM1, OM2,flyash dust1 dust2 … … 562 757 !JE20140507 REAL,DIMENSION(klon,nbtr) :: flux_tr_dry 563 758 ! SAVE d_tr_dry 564 ! JE for include gas to particle conversion in output565 REAL his_g2pgas(klon) ! gastoparticle in gas units (check!)566 REAL his_g2paer(klon) ! gastoparticle in aerosol units (check!)759 !! JE for include gas to particle conversion in output 760 ! REAL his_g2pgas(klon) ! gastoparticle in gas units (check!) 761 ! REAL his_g2paer(klon) ! gastoparticle in aerosol units (check!) 567 762 ! 568 763 INTEGER ,intent(in) :: iflag_conv … … 1343 1538 ALLOCATE(d_tr_lessi_nucl(klon,klev,nbtr)) 1344 1539 1345 1346 1347 1348 1349 ALLOCATE(d_tr_cv_o(klon,klev,nbtr)) 1350 ALLOCATE(d_tr_trsp_o(klon,klev,nbtr)) 1351 ALLOCATE(d_tr_sscav_o(klon,klev,nbtr), & 1540 ALLOCATE( diff_aod550_tot(klon) ) 1541 ALLOCATE( diag_aod670_tot(klon) ) 1542 ALLOCATE( diag_aod865_tot(klon) ) 1543 ALLOCATE( diff_aod550_tr2(klon) ) 1544 ALLOCATE( diag_aod670_tr2(klon) ) 1545 ALLOCATE( diag_aod865_tr2(klon) ) 1546 ALLOCATE( diag_aod550_ss(klon) ) 1547 ALLOCATE( diag_aod670_ss(klon) ) 1548 ALLOCATE( diag_aod865_ss(klon) ) 1549 ALLOCATE( diag_aod550_dust(klon) ) 1550 ALLOCATE( diag_aod670_dust(klon) ) 1551 ALLOCATE( diag_aod865_dust(klon) ) 1552 ALLOCATE( diag_aod550_dustsco(klon) ) 1553 ALLOCATE( diag_aod670_dustsco(klon) ) 1554 ALLOCATE( diag_aod865_dustsco(klon) ) 1555 1556 1557 ALLOCATE( sconc01(klon) ) 1558 ALLOCATE( trm01(klon) ) 1559 ALLOCATE( sconc02(klon) ) 1560 ALLOCATE( trm02(klon) ) 1561 ALLOCATE( sconc03(klon) ) 1562 ALLOCATE( trm03(klon) ) 1563 ALLOCATE( sconc04(klon) ) 1564 ALLOCATE( trm04(klon) ) 1565 ALLOCATE( sconc05(klon) ) 1566 ALLOCATE( trm05(klon) ) 1567 1568 1569 ALLOCATE( flux01(klon) ) 1570 ALLOCATE( flux02(klon) ) 1571 ALLOCATE( flux03(klon) ) 1572 ALLOCATE( flux04(klon) ) 1573 ALLOCATE( flux05(klon) ) 1574 ALLOCATE( ds01(klon) ) 1575 ALLOCATE( ds02(klon) ) 1576 ALLOCATE( ds03(klon) ) 1577 ALLOCATE( ds04(klon) ) 1578 ALLOCATE( ds05(klon) ) 1579 ALLOCATE( dh01(klon) ) 1580 ALLOCATE( dh02(klon) ) 1581 ALLOCATE( dh03(klon) ) 1582 ALLOCATE( dh04(klon) ) 1583 ALLOCATE( dh05(klon) ) 1584 ALLOCATE( dtrconv01(klon) ) 1585 ALLOCATE( dtrconv02(klon) ) 1586 ALLOCATE( dtrconv03(klon) ) 1587 ALLOCATE( dtrconv04(klon) ) 1588 ALLOCATE( dtrconv05(klon) ) 1589 ALLOCATE( dtherm01(klon) ) 1590 ALLOCATE( dtherm02(klon) ) 1591 ALLOCATE( dtherm03(klon) ) 1592 ALLOCATE( dtherm04(klon) ) 1593 ALLOCATE( dtherm05(klon) ) 1594 ALLOCATE( dhkecv01(klon) ) 1595 ALLOCATE( dhkecv02(klon) ) 1596 ALLOCATE( dhkecv03(klon) ) 1597 ALLOCATE( dhkecv04(klon) ) 1598 ALLOCATE( dhkecv05(klon) ) 1599 ALLOCATE( dhkelsc01(klon) ) 1600 ALLOCATE( dhkelsc02(klon) ) 1601 ALLOCATE( dhkelsc03(klon) ) 1602 ALLOCATE( dhkelsc04(klon) ) 1603 ALLOCATE( dhkelsc05(klon) ) 1604 ALLOCATE( d_tr_cv01(klon,klev)) 1605 ALLOCATE( d_tr_cv02(klon,klev)) 1606 ALLOCATE( d_tr_cv03(klon,klev)) 1607 ALLOCATE( d_tr_cv04(klon,klev)) 1608 ALLOCATE( d_tr_cv05(klon,klev)) 1609 ALLOCATE( d_tr_trsp01(klon,klev)) 1610 ALLOCATE( d_tr_trsp02(klon,klev)) 1611 ALLOCATE( d_tr_trsp03(klon,klev)) 1612 ALLOCATE( d_tr_trsp04(klon,klev)) 1613 ALLOCATE( d_tr_trsp05(klon,klev)) 1614 ALLOCATE( d_tr_sscav01(klon,klev)) 1615 ALLOCATE( d_tr_sscav02(klon,klev)) 1616 ALLOCATE( d_tr_sscav03(klon,klev)) 1617 ALLOCATE( d_tr_sscav04(klon,klev)) 1618 ALLOCATE( d_tr_sscav05(klon,klev)) 1619 ALLOCATE( d_tr_sat01(klon,klev)) 1620 ALLOCATE( d_tr_sat02(klon,klev)) 1621 ALLOCATE( d_tr_sat03(klon,klev)) 1622 ALLOCATE( d_tr_sat04(klon,klev)) 1623 ALLOCATE( d_tr_sat05(klon,klev)) 1624 ALLOCATE( d_tr_uscav01(klon,klev)) 1625 ALLOCATE( d_tr_uscav02(klon,klev)) 1626 ALLOCATE( d_tr_uscav03(klon,klev)) 1627 ALLOCATE( d_tr_uscav04(klon,klev)) 1628 ALLOCATE( d_tr_uscav05(klon,klev)) 1629 1630 ALLOCATE( sed_ss(klon)) 1631 ALLOCATE( sed_dust(klon)) 1632 ALLOCATE( sed_dustsco(klon)) 1633 ALLOCATE( his_g2pgas(klon)) 1634 ALLOCATE( his_g2paer(klon)) 1635 1636 ALLOCATE( fluxbb(klon)) 1637 ALLOCATE( fluxff(klon)) 1638 ALLOCATE( fluxbcbb(klon)) 1639 ALLOCATE( fluxbcff(klon)) 1640 ALLOCATE( fluxbcnff(klon)) 1641 ALLOCATE( fluxbcba(klon)) 1642 ALLOCATE( fluxbc(klon)) 1643 ALLOCATE( fluxombb(klon)) 1644 ALLOCATE( fluxomff(klon)) 1645 ALLOCATE( fluxomnff(klon)) 1646 ALLOCATE( fluxomba(klon)) 1647 ALLOCATE( fluxomnat(klon)) 1648 ALLOCATE( fluxom(klon)) 1649 ALLOCATE( fluxh2sff(klon)) 1650 ALLOCATE( fluxh2snff(klon)) 1651 ALLOCATE( fluxso2ff(klon)) 1652 ALLOCATE( fluxso2nff(klon)) 1653 ALLOCATE( fluxso2bb(klon)) 1654 ALLOCATE( fluxso2vol(klon)) 1655 ALLOCATE( fluxso2ba(klon)) 1656 ALLOCATE( fluxso2(klon)) 1657 ALLOCATE( fluxso4ff(klon)) 1658 ALLOCATE( fluxso4nff(klon)) 1659 ALLOCATE( fluxso4bb(klon)) 1660 ALLOCATE( fluxso4ba(klon)) 1661 ALLOCATE( fluxso4(klon)) 1662 ALLOCATE( fluxdms(klon)) 1663 ALLOCATE( fluxh2sbio(klon)) 1664 ALLOCATE( fluxdustec(klon)) 1665 ALLOCATE( fluxddfine(klon)) 1666 ALLOCATE( fluxddcoa(klon)) 1667 ALLOCATE( fluxddsco(klon)) 1668 ALLOCATE( fluxdd(klon)) 1669 ALLOCATE( fluxssfine(klon)) 1670 ALLOCATE( fluxsscoa(klon)) 1671 ALLOCATE( fluxss(klon)) 1672 ALLOCATE( flux_sparam_ind(klon)) 1673 ALLOCATE( flux_sparam_bb(klon)) 1674 ALLOCATE( flux_sparam_ff(klon)) 1675 ALLOCATE( flux_sparam_ddfine(klon)) 1676 ALLOCATE( flux_sparam_ddcoa(klon)) 1677 ALLOCATE( flux_sparam_ddsco(klon)) 1678 ALLOCATE( flux_sparam_ssfine(klon)) 1679 ALLOCATE( flux_sparam_sscoa(klon)) 1680 ALLOCATE( u10m_ss(klon)) 1681 ALLOCATE( v10m_ss(klon)) 1682 1683 1684 ALLOCATE(d_tr_cv_o(klon,klev,nbtr)) 1685 ALLOCATE(d_tr_trsp_o(klon,klev,nbtr)) 1686 ALLOCATE(d_tr_sscav_o(klon,klev,nbtr), & 1352 1687 d_tr_sat_o(klon,klev,nbtr)) 1353 1688 ALLOCATE(d_tr_uscav_o(klon,klev,nbtr)) … … 1481 1816 DO it=1, nbtr 1482 1817 DO i=1, klon 1818 his_dh(i,it)=0.0 1483 1819 his_dhlsc(i,it)=0.0 1484 1820 his_dhcon(i,it)=0.0 … … 2965 3301 2966 3302 3303 IF (ok_histrac) THEN 2967 3304 ! write in output file 2968 3305 call gather(aod550_aqua,aod550_aqua_glo) … … 2999 3336 !$OMP END MASTER 3000 3337 !$OMP BARRIER 3001 3338 ENDIF 3002 3339 !put in 0 everything 3003 3340 aod550_aqua(:) =0. … … 3042 3379 !====================================================================== 3043 3380 ! 3044 IF (ok_histrac) THEN3381 !JE20141224 IF (ok_histrac) THEN 3045 3382 ! 3046 3383 ndex2d = 0 … … 3252 3589 3253 3590 3254 3591 DO it=1,nbtr 3592 WRITE(str2,'(i2.2)') it 3593 DO i=1, klon 3594 his_dh(i,it)= his_dhlsc(i,it)+his_dhcon(i,it)+ & 3595 his_dhbclsc(i,it)+his_dhbccon(i,it) 3596 3597 ENDDO 3598 ENDDO 3599 3600 IF (ok_histrac) THEN 3255 3601 ! 3256 3602 ! SAVING VARIABLES IN TRACEUR … … 3459 3805 zx_tmp_fi2d(i) = his_dhlsc(i,it)+his_dhcon(i,it)+ & 3460 3806 his_dhbclsc(i,it)+his_dhbccon(i,it) 3807 his_dh(i,it)= his_dhlsc(i,it)+his_dhcon(i,it)+ & 3808 his_dhbclsc(i,it)+his_dhbccon(i,it) 3809 3461 3810 ENDDO 3462 3811 ! … … 4101 4450 ENDIF ! ok_histrac 4102 4451 4452 4453 4454 4455 !JE20141224 4456 ! saving variables for output 4457 ! 2D outputs 4458 4459 DO i=1, klon 4460 trm01(i)=trm(i,id_prec) 4461 trm02(i)=trm(i,id_fine) 4462 trm03(i)=trm(i,id_coss) 4463 trm04(i)=trm(i,id_codu) 4464 trm05(i)=trm(i,id_scdu) 4465 sconc01(i)=sconc_seri(i,id_prec) 4466 sconc02(i)=sconc_seri(i,id_fine) 4467 sconc03(i)=sconc_seri(i,id_coss) 4468 sconc04(i)=sconc_seri(i,id_codu) 4469 sconc05(i)=sconc_seri(i,id_scdu) 4470 flux01(i)=flux_tr(i,id_prec) 4471 flux02(i)=flux_tr(i,id_fine) 4472 flux03(i)=flux_tr(i,id_coss) 4473 flux04(i)=flux_tr(i,id_codu) 4474 flux05(i)=flux_tr(i,id_scdu) 4475 ds01(i)=his_ds(i,id_prec) 4476 ds02(i)=his_ds(i,id_fine) 4477 ds03(i)=his_ds(i,id_coss) 4478 ds04(i)=his_ds(i,id_codu) 4479 ds05(i)=his_ds(i,id_scdu) 4480 dh01(i)=his_dh(i,id_prec) 4481 dh02(i)=his_dh(i,id_fine) 4482 dh03(i)=his_dh(i,id_coss) 4483 dh04(i)=his_dh(i,id_codu) 4484 dh05(i)=his_dh(i,id_scdu) 4485 dtrconv01(i)=dtrconv(i,id_prec) 4486 dtrconv02(i)=dtrconv(i,id_fine) 4487 dtrconv03(i)=dtrconv(i,id_coss) 4488 dtrconv04(i)=dtrconv(i,id_codu) 4489 dtrconv05(i)=dtrconv(i,id_scdu) 4490 dtherm01(i)=his_th(i,id_prec) 4491 dtherm02(i)=his_th(i,id_fine) 4492 dtherm03(i)=his_th(i,id_coss) 4493 dtherm04(i)=his_th(i,id_codu) 4494 dtherm05(i)=his_th(i,id_scdu) 4495 dhkecv01(i)=his_dhkecv(i,id_prec) 4496 dhkecv02(i)=his_dhkecv(i,id_fine) 4497 dhkecv03(i)=his_dhkecv(i,id_coss) 4498 dhkecv04(i)=his_dhkecv(i,id_codu) 4499 dhkecv05(i)=his_dhkecv(i,id_scdu) 4500 dhkelsc01(i)=his_dhkelsc(i,id_prec) 4501 dhkelsc02(i)=his_dhkelsc(i,id_fine) 4502 dhkelsc03(i)=his_dhkelsc(i,id_coss) 4503 dhkelsc04(i)=his_dhkelsc(i,id_codu) 4504 dhkelsc05(i)=his_dhkelsc(i,id_scdu) 4505 u10m_ss(i)=u10m_ec(i) 4506 v10m_ss(i)=v10m_ec(i) 4507 ENDDO 4508 ! 3D outs 4509 DO i=1, klon 4510 DO k=1,klev 4511 d_tr_cv01(i,k)=d_tr_cv_o(i,k,id_prec) 4512 d_tr_cv02(i,k)=d_tr_cv_o(i,k,id_fine) 4513 d_tr_cv03(i,k)=d_tr_cv_o(i,k,id_coss) 4514 d_tr_cv04(i,k)=d_tr_cv_o(i,k,id_codu) 4515 d_tr_cv05(i,k)=d_tr_cv_o(i,k,id_scdu) 4516 d_tr_trsp01(i,k)=d_tr_trsp_o(i,k,id_prec) 4517 d_tr_trsp02(i,k)=d_tr_trsp_o(i,k,id_fine) 4518 d_tr_trsp03(i,k)=d_tr_trsp_o(i,k,id_coss) 4519 d_tr_trsp04(i,k)=d_tr_trsp_o(i,k,id_codu) 4520 d_tr_trsp05(i,k)=d_tr_trsp_o(i,k,id_scdu) 4521 d_tr_sscav01(i,k)=d_tr_sscav_o(i,k,id_prec) 4522 d_tr_sscav02(i,k)=d_tr_sscav_o(i,k,id_fine) 4523 d_tr_sscav03(i,k)=d_tr_sscav_o(i,k,id_coss) 4524 d_tr_sscav04(i,k)=d_tr_sscav_o(i,k,id_codu) 4525 d_tr_sscav05(i,k)=d_tr_sscav_o(i,k,id_scdu) 4526 d_tr_sat01(i,k)=d_tr_sat_o(i,k,id_prec) 4527 d_tr_sat02(i,k)=d_tr_sat_o(i,k,id_fine) 4528 d_tr_sat03(i,k)=d_tr_sat_o(i,k,id_coss) 4529 d_tr_sat04(i,k)=d_tr_sat_o(i,k,id_codu) 4530 d_tr_sat05(i,k)=d_tr_sat_o(i,k,id_scdu) 4531 d_tr_uscav01(i,k)=d_tr_uscav_o(i,k,id_prec) 4532 d_tr_uscav02(i,k)=d_tr_uscav_o(i,k,id_fine) 4533 d_tr_uscav03(i,k)=d_tr_uscav_o(i,k,id_coss) 4534 d_tr_uscav04(i,k)=d_tr_uscav_o(i,k,id_codu) 4535 d_tr_uscav05(i,k)=d_tr_uscav_o(i,k,id_scdu) 4536 ENDDO 4537 ENDDO 4538 4539 4540 4541 4103 4542 4104 4543 IF (logitime) THEN
Note: See TracChangeset
for help on using the changeset viewer.