Changeset 2176 for LMDZ5/branches


Ignore:
Timestamp:
Dec 24, 2014, 8:23:19 PM (9 years ago)
Author:
jescribano
Message:

SPLA output in hist files

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  
    8383  INTEGER :: ncl
    8484
     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)
    8595!$OMP THREADPRIVATE(massfrac)
    8696!$OMP THREADPRIVATE(binsHR)
     
    532542    ALLOCATE( srel(nats,nclass) )
    533543    ALLOCATE( srel2(nats,nclass) )
     544    ALLOCATE( m1dflux(klon) )
     545    ALLOCATE( m2dflux(klon) )
     546    ALLOCATE( m3dflux(klon) )
     547
     548
    534549
    535550  ! read input data from donnees_lisa.nc
     
    12041219        fluxdust(i,3)=fluxdust(i,3)+flux3*probu(kwb)
    12051220   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
    12061225
    12071226
  • LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/phys_output_ctrlout_mod.F90

    r2003 r2176  
    12551255   TYPE(ctrl_out), SAVE :: o_TxT = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
    12561256       '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 >>>>
    12591261END MODULE phys_output_ctrlout_mod
  • LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/phys_output_write_mod.F90

    r2175 r2176  
    33!
    44MODULE 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, &
    811!       d_tr_lessi_nucl, d_tr_insc, d_tr_bcscav, d_tr_evapls, d_tr_ls,  &
    912!       d_tr_trsp, d_tr_sscav, d_tr_sat, d_tr_uscav
     13!!JE20140507>>
     14
    1015  USE phytracr_spl_mod, ONLY : d_tr_cl, d_tr_th, d_tr_cv, d_tr_lessi_impa, &
    1116       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>
    1759
    1860  ! Author: Abderrahmane IDELKADI (original include file)
     
    155197         o_dtr_ls, o_dtr_trsp, o_dtr_sscav, &
    156198         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 
    158242
    159243    USE phys_state_var_mod, only: pctsrf, paire_ter, rain_fall, snow_fall, &
     
    326410       CALL histwrite_phy(o_aireTER, paire_ter)
    327411!!! Champs 2D !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     412! JE20141223 <<
     413#include "spla_output_write.h"
     414! JE20141223 >>
     415
    328416       CALL histwrite_phy(o_flat, zxfluxlat)
    329417       CALL histwrite_phy(o_slp, slp)
  • LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/physiq.F90

    r2175 r2176  
    953953
    954954  !-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 >>
    965967  ! others
    966968  REAL tsol(ngridmx)
     
    38353837                  lmt_omff, lmt_omnff, lmt_ombb_l, lmt_ombb_h, & !E
    38363838                  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>>
    38433848!  ENDIF
    38443849!   DO i=1,nbtr
     
    41424147
    41434148  !On effectue les sorties:
    4144   print *,' JE: aqui deberia escribir la salida!!!!!!!!!!'
    41454149
    41464150  CALL phys_output_write(itap, pdtphys, paprs, pphis,               &
  • LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/phytracr_spl_mod.F90

    r2175 r2176  
    4848!$OMP THREADPRIVATE(id_prec,id_fine,id_coss,id_codu,id_scdu)
    4949
     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 >>
    50235
    51236
     
    83268                      lmt_bcba,lmt_omff,lmt_omnff,lmt_ombb_l,          &  ! E
    84269                      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!!!                                                                         
    93279      USE mod_grid_phy_lmdz
    94280      USE mod_phys_lmdz_para
     
    153339!$OMP THREADPRIVATE(nbjour)
    154340!
    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 >>
    170358
    171359      INTEGER  masque_aqua_cur(klon)
     
    174362      INTEGER, DIMENSION(:), ALLOCATABLE, SAVE :: masque_terra !
    175363!$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 >>
    186376      REAL, DIMENSION(klon_glo) :: aod550_aqua_glo  ! AOD at aqua overpass time ( 13.30 local hour)
    187377      REAL, DIMENSION(klon_glo) :: aod550_terra_glo ! AOD at terra overpass time ( 10.30 local hour)
     
    409599!----------------------------------------------------------------------
    410600      REAL his_ds(klon,nbtr)
     601      REAL his_dh(klon,nbtr)
    411602      REAL his_dhlsc(klon,nbtr)        ! in-cloud scavenging lsc
    412603      REAL his_dhcon(klon,nbtr)       ! in-cloud scavenging con
     
    444635      REAL flux_tr(klon,nbtr)
    445636      REAL m_conc(klon,klev)
    446       REAL sed_ss(klon)    ! corresponds to tracer 3
    447       REAL sed_dust(klon)  ! corresponds to tracer 4
    448       REAL sed_dustsco(klon)  ! corresponds to tracer 4
     637!      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
    449640      REAL henry(nbtr)  !--cste de Henry  mol/l/atm
    450641      REAL kk(nbtr)     !--coefficient de var avec T (K)
     
    471662      CHARACTER*2 str2
    472663      LOGICAL ok_histrac
    473       PARAMETER (ok_histrac=.true.)
     664!JE2014124      PARAMETER (ok_histrac=.true.)
     665      PARAMETER (ok_histrac=.false.)
    474666      INTEGER ndex2d(iim*(jjm+1)), ndex3d(iim*(jjm+1)*klev)
    475667      INTEGER nhori1, nhori2, nhori3, nhori4, nhori5, nvert
     
    489681      REAL zx_lon_glo(nbp_lon,nbp_lat), zx_lat_glo(nbp_lon,nbp_lat)
    490682      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 >>
    511706!------------------DMS  SO2  SO4   H2S  DMSO MSA H2O2
    512707!------------------BC1, BC2, OM1, OM2,flyash  dust1   dust2
     
    562757!JE20140507      REAL,DIMENSION(klon,nbtr)        ::  flux_tr_dry
    563758!      SAVE  d_tr_dry
    564 ! JE for include gas to particle conversion in output
    565       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!)
    567762!
    568763      INTEGER ,intent(in) :: iflag_conv
     
    13431538      ALLOCATE(d_tr_lessi_nucl(klon,klev,nbtr))
    13441539
    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), &
    13521687                d_tr_sat_o(klon,klev,nbtr))
    13531688        ALLOCATE(d_tr_uscav_o(klon,klev,nbtr))
     
    14811816      DO it=1, nbtr
    14821817      DO i=1, klon
     1818        his_dh(i,it)=0.0
    14831819        his_dhlsc(i,it)=0.0
    14841820        his_dhcon(i,it)=0.0
     
    29653301
    29663302
     3303      IF (ok_histrac) THEN
    29673304!      write in output file
    29683305      call gather(aod550_aqua,aod550_aqua_glo)
     
    29993336!$OMP END MASTER
    30003337!$OMP BARRIER
    3001 
     3338      ENDIF
    30023339       !put in 0 everything
    30033340       aod550_aqua(:) =0.
     
    30423379!======================================================================
    30433380!
    3044       IF (ok_histrac) THEN
     3381!JE20141224      IF (ok_histrac) THEN
    30453382!
    30463383      ndex2d = 0
     
    32523589
    32533590
    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
    32553601!
    32563602! SAVING VARIABLES IN TRACEUR
     
    34593805       zx_tmp_fi2d(i) = his_dhlsc(i,it)+his_dhcon(i,it)+               & 
    34603806                        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
    34613810      ENDDO
    34623811!
     
    41014450      ENDIF ! ok_histrac                                                   
    41024451                                                                           
     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
    41034542
    41044543      IF (logitime) THEN
Note: See TracChangeset for help on using the changeset viewer.