Changeset 1828


Ignore:
Timestamp:
Aug 6, 2013, 6:06:40 PM (11 years ago)
Author:
idelkadi
Message:

Gestion des fichiers de sorties sur les niveaux de pression NMC (hist*NMC.nc) via le meme mecanisme utilise pour les fichiers histoires (phys_output_mod, ...)
Ces sorties sont ainsi controles par les memes flags : phys_out_filekeys, phys_out_filenames, phys_out_filetimesteps, phys_out_filelevels, ...
(exemple dans config.def : phys_out_filenames=histmth histday histhf histins histLES histstn histmthNMC histdayNMC histhfNMC)

Location:
LMDZ5/trunk/libf/phylmd
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/phylmd/clesphys.h

    r1753 r1828  
    6161       REAL pasphys
    6262       LOGICAL ok_histNMC(3)
     63       INTEGER levout_histNMC(3)
    6364       REAL freq_outNMC(3) , freq_calNMC(3)
    6465       CHARACTER(len=4) type_run
     
    9192     &     , f_cdrag_ter,f_cdrag_oce,f_rugoro                           &
    9293     &     , lev_histhf, lev_histday, lev_histmth                       &
    93      &     , lev_histins, lev_histLES, lev_histdayNMC                   &
     94     &     , lev_histins, lev_histLES, lev_histdayNMC, levout_histNMC   &
    9495     &     , pasphys, ok_histNMC, freq_outNMC, freq_calNMC              &
    9596     &     , type_run, ok_isccp, ok_regdyn, ok_cosp                     &
  • LMDZ5/trunk/libf/phylmd/conf_phys_m.F90

    r1767 r1828  
    155155  Integer, save :: lev_histins_omp, lev_histLES_omp
    156156  INTEGER, SAVE :: lev_histdayNMC_omp
     157  INTEGER, SAVE :: levout_histNMC_omp(3)
    157158  LOGICAL, SAVE :: ok_histNMC_omp(3)
    158159  REAL, SAVE :: freq_outNMC_omp(3), freq_calNMC_omp(3)
     
    12671268  lev_histLES_omp = 1
    12681269  call getin('lev_histLES',lev_histLES_omp)
    1269 !
     1270! 
    12701271!Config Key  = lev_histdayNMC
    12711272!Config Desc =
     
    12751276  lev_histdayNMC_omp = 8
    12761277  call getin('lev_histdayNMC',lev_histdayNMC_omp)
     1278!
     1279!Config Key  = levout_histNMC
     1280!Config Desc =
     1281!Config Def  = 5
     1282!Config Help =
     1283!
     1284  levout_histNMC_omp(1) = 5
     1285  levout_histNMC_omp(2) = 5
     1286  levout_histNMC_omp(3) = 5
     1287  call getin('levout_histNMC',levout_histNMC_omp)
    12771288!
    12781289!histNMC BEG
     
    12901301!
    12911302!Config Key  = freq_outNMC
    1292 !Config Desc = freq_outNMC(1) = frequence de sortie fichiers histmthNMC
    1293 !Config Desc = freq_outNMC(2) = frequence de sortie fichiers histdayNMC
    1294 !Config Desc = freq_outNMC(3) = frequence de sortie fichiers histhfNMC
    1295 !Config Def  = 2592000., 86400., 21600.
    1296 !Config Help =
    1297 !
    1298 ! freq_outNMC_omp(1) = 2592000.
    1299   freq_outNMC_omp(1) = mth_len*86400.
    1300   freq_outNMC_omp(2) = 86400.
    1301   freq_outNMC_omp(3) = 21600.
     1303!Config Desc = freq_outNMC(1) = frequence en jour de sortie fichiers histmthNMC
     1304!Config Desc = freq_outNMC(2) = frequence en jour de sortie fichiers histdayNMC
     1305!Config Desc = freq_outNMC(3) = frequence en jour de sortie fichiers histhfNMC
     1306!Config Def  = 30., 1., 0.25
     1307!Config Help =
     1308!
     1309  freq_outNMC_omp(1) = mth_len
     1310  freq_outNMC_omp(2) = 1.
     1311  freq_outNMC_omp(3) = 0.25
    13021312  call getin('freq_outNMC',freq_outNMC_omp)
    13031313!
     
    17021712    lev_histLES = lev_histLES_omp
    17031713    lev_histdayNMC = lev_histdayNMC_omp
     1714    levout_histNMC = levout_histNMC_omp
    17041715    ok_histNMC(:) = ok_histNMC_omp(:)
    17051716    freq_outNMC(:) = freq_outNMC_omp(:)
     
    19251936  write(lunout,*)' lev_histLES = ',lev_histLES
    19261937  write(lunout,*)' lev_histdayNMC = ',lev_histdayNMC
     1938  write(lunout,*)' levout_histNMC = ',levout_histNMC
    19271939  write(lunout,*)' ok_histNMC = ',ok_histNMC
    19281940  write(lunout,*)' freq_outNMC = ',freq_outNMC
  • LMDZ5/trunk/libf/phylmd/declare_STDlev.h

    r1797 r1828  
    22!      real twriteSTD(klon,nlevSTD,nfiles)
    33!      real qwriteSTD(klon,nlevSTD,nfiles)
    4       real rhwriteSTD(klon,nlevSTD,nfiles)
     4!      real rhwriteSTD(klon,nlevSTD,nfiles)
    55!      real phiwriteSTD(klon,nlevSTD,nfiles)
    66!      real uwriteSTD(klon,nlevSTD,nfiles)
  • LMDZ5/trunk/libf/phylmd/iophy.F90

    r1825 r1828  
    907907    INTEGER, INTENT(IN), OPTIONAL :: STD_iff ! ug RUSTINE POUR LES STD LEVS.....
    908908     
    909     INTEGER :: iff
     909    INTEGER :: iff, iff_beg, iff_end
    910910
    911911    REAL,DIMENSION(klon_mpi,SIZE(field,2)) :: buffer_omp
     
    917917  IF (prt_level >= 9) write(lunout,*)'Begin histrwrite3d ',var%name
    918918
     919! ug RUSTINE POUR LES STD LEVS.....
     920      IF (PRESENT(STD_iff)) THEN
     921            iff_beg = STD_iff
     922            iff_end = STD_iff
     923      ELSE
     924            iff_beg = 1
     925            iff_end = nfiles
     926      END IF
     927
    919928  ! On regarde si on est dans la phase de définition ou d'écriture:
    920929  IF(.NOT.vars_defined) THEN
    921930      !Si phase de définition.... on définit
    922931!$OMP MASTER
    923       DO iff=1, nfiles
     932      DO iff=iff_beg, iff_end
    924933        IF (clef_files(iff)) THEN
    925934          CALL histdef3d(iff, var)
     
    939948
    940949! BOUCLE SUR LES FICHIERS
    941       DO iff=1, nfiles
     950     DO iff=iff_beg, iff_end
    942951            IF (var%flag(iff) <= lev_files(iff) .AND. clef_files(iff)) THEN
    943952                IF (.NOT.clef_stations(iff)) THEN
  • LMDZ5/trunk/libf/phylmd/phys_local_var_mod.F90

    r1797 r1828  
    253253      REAL,ALLOCATABLE,SAVE,DIMENSION(:,:,:) :: uwriteSTD, vwriteSTD, wwriteSTD
    254254!$OMP THREADPRIVATE(uwriteSTD, vwriteSTD, wwriteSTD)
    255       REAL,ALLOCATABLE,SAVE,DIMENSION(:,:,:) :: phiwriteSTD, qwriteSTD, twriteSTD
    256 !$OMP THREADPRIVATE(phiwriteSTD, qwriteSTD, twriteSTD)
     255      REAL,ALLOCATABLE,SAVE,DIMENSION(:,:,:) :: phiwriteSTD, qwriteSTD, twriteSTD, rhwriteSTD
     256!$OMP THREADPRIVATE(phiwriteSTD, qwriteSTD, twriteSTD, rhwriteSTD)
    257257
    258258! ug et d'autres encore:
     
    406406      ALLOCATE(wwriteSTD(klon,nlevSTD,nfiles), phiwriteSTD(klon,nlevSTD,nfiles))
    407407      ALLOCATE(qwriteSTD(klon,nlevSTD,nfiles), twriteSTD(klon,nlevSTD,nfiles))
     408      ALLOCATE(rhwriteSTD(klon,nlevSTD,nfiles))
    408409
    409410! ug et d'autres encore:
     
    547548      DEALLOCATE(uwriteSTD, vwriteSTD)
    548549      DEALLOCATE(wwriteSTD, phiwriteSTD)
    549       DEALLOCATE(qwriteSTD, twriteSTD)
     550      DEALLOCATE(qwriteSTD, twriteSTD, rhwriteSTD)
    550551
    551552! ug et d'autres encore:
  • LMDZ5/trunk/libf/phylmd/phys_output_ctrlout_mod.F90

    r1816 r1828  
    1919!!! Comosantes de la coordonnee sigma-hybride
    2020!!! Ap et Bp
    21   TYPE(ctrl_out), SAVE :: o_Ahyb = ctrl_out((/ 1, 1, 1, 1, 1, 1 /), &
    22         'Ap', '', '', (/ ('', i=1, 6) /))
    23   TYPE(ctrl_out), SAVE :: o_Bhyb = ctrl_out((/ 1, 1, 1, 1, 1, 1 /), &
    24         'Bp', '', '', (/ ('', i=1, 6) /))
    25   TYPE(ctrl_out), SAVE :: o_Alt = ctrl_out((/ 1, 1, 1, 1, 1, 1 /), &
    26         'Alt', '', '', (/ ('', i=1, 6) /))
     21  TYPE(ctrl_out), SAVE :: o_Ahyb = ctrl_out((/ 1, 1, 1, 1, 1, 1, 11, 11, 11 /), &
     22        'Ap', '', '', (/ ('', i=1, 9) /))
     23  TYPE(ctrl_out), SAVE :: o_Bhyb = ctrl_out((/ 1, 1, 1, 1, 1, 1, 11, 11, 11 /), &
     24        'Bp', '', '', (/ ('', i=1, 9) /))
     25  TYPE(ctrl_out), SAVE :: o_Alt = ctrl_out((/ 1, 1, 1, 1, 1, 1, 11, 11, 11 /), &
     26        'Alt', '', '', (/ ('', i=1, 9) /))
    2727
    2828!!! 1D
    29   TYPE(ctrl_out), SAVE :: o_phis = ctrl_out((/ 1, 1, 10, 5, 1, 1 /), &
    30         'phis', 'Surface geop.height', 'm2/s2', (/ ('', i=1, 6) /))
    31   TYPE(ctrl_out), SAVE :: o_aire = ctrl_out((/ 1, 1, 10,  10, 1, 1 /), &
    32         'aire', 'Grid area', '-', (/ 'once', 'once', 'once', 'once', 'once', 'once' /))
    33   TYPE(ctrl_out), SAVE :: o_contfracATM = ctrl_out((/ 10, 1,  1, 10, 10, 10 /), &
     29  TYPE(ctrl_out), SAVE :: o_phis = ctrl_out((/ 1, 1, 10, 5, 1, 1, 11, 11, 11 /), &
     30        'phis', 'Surface geop.height', 'm2/s2', (/ ('', i=1, 9) /))
     31  TYPE(ctrl_out), SAVE :: o_aire = ctrl_out((/ 1, 1, 10,  10, 1, 1, 11, 11, 11 /), &
     32        'aire', 'Grid area', '-', (/ 'once', 'once', 'once', 'once', 'once', 'once', &
     33                                     'once', 'once', 'once' /))
     34  TYPE(ctrl_out), SAVE :: o_contfracATM = ctrl_out((/ 10, 1,  1, 10, 10, 10, 11, 11, 11 /), &
    3435        'contfracATM', '% sfce ter+lic', '-', &
    35       (/ "once", "once", "once", "once", "once", "once" /))
    36   TYPE(ctrl_out), SAVE :: o_contfracOR = ctrl_out((/ 10, 1,  1, 10, 10, 10 /), &
    37         'contfracOR', '% sfce terre OR', '-', (/ ('', i=1, 6) /))
    38   TYPE(ctrl_out), SAVE :: o_aireTER = ctrl_out((/ 10, 10, 1, 10, 10, 10 /), &
    39         'aireTER', 'Grid area CONT', '-', (/ ('', i=1, 6) /))
     36       (/ 'once', 'once', 'once', 'once', 'once', 'once', 'once', 'once', 'once' /))
     37  TYPE(ctrl_out), SAVE :: o_contfracOR = ctrl_out((/ 10, 1,  1, 10, 10, 10, 11, 11, 11 /), &
     38        'contfracOR', '% sfce terre OR', '-', (/ ('', i=1, 9) /))
     39  TYPE(ctrl_out), SAVE :: o_aireTER = ctrl_out((/ 10, 10, 1, 10, 10, 10, 11, 11, 11 /), &
     40        'aireTER', 'Grid area CONT', '-', (/ ('', i=1, 9) /))
    4041
    4142!!! 2D
    42   TYPE(ctrl_out), SAVE :: o_flat = ctrl_out((/ 5, 1, 10, 10, 5, 10 /), &
    43         'flat', 'Latent heat flux', 'W/m2', (/ ('', i=1, 6) /))
    44   TYPE(ctrl_out), SAVE :: o_slp = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    45         'slp', 'Sea Level Pressure', 'Pa', (/ ('', i=1, 6) /))
    46   TYPE(ctrl_out), SAVE :: o_tsol = ctrl_out((/ 1, 1, 1, 5, 10, 10 /), &
    47         'tsol', 'Surface Temperature', 'K', (/ ('', i=1, 6) /))
    48   TYPE(ctrl_out), SAVE :: o_t2m = ctrl_out((/ 1, 1, 1, 5, 10, 10 /), &
    49         't2m', 'Temperature 2m', 'K', (/ ('', i=1, 6) /))
    50   TYPE(ctrl_out), SAVE :: o_t2m_min = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
     43  TYPE(ctrl_out), SAVE :: o_flat = ctrl_out((/ 5, 1, 10, 10, 5, 10, 11, 11, 11 /), &
     44        'flat', 'Latent heat flux', 'W/m2', (/ ('', i=1, 9) /))
     45  TYPE(ctrl_out), SAVE :: o_slp = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     46        'slp', 'Sea Level Pressure', 'Pa', (/ ('', i=1, 9) /))
     47  TYPE(ctrl_out), SAVE :: o_tsol = ctrl_out((/ 1, 1, 1, 5, 10, 10, 11, 11, 11 /), &
     48        'tsol', 'Surface Temperature', 'K', (/ ('', i=1, 9) /))
     49  TYPE(ctrl_out), SAVE :: o_t2m = ctrl_out((/ 1, 1, 1, 5, 10, 10, 11, 11, 11 /), &
     50        't2m', 'Temperature 2m', 'K', (/ ('', i=1, 9) /))
     51  TYPE(ctrl_out), SAVE :: o_t2m_min = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
    5152        't2m_min', 'Temp 2m min', 'K', &
    52       (/ "t_min(X)", "t_min(X)", "t_min(X)", "t_min(X)", "t_min(X)", "t_min(X)" /))
    53   TYPE(ctrl_out), SAVE :: o_t2m_max = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
     53      (/ "t_min(X)", "t_min(X)", "t_min(X)", "t_min(X)", "t_min(X)", "t_min(X)", "t_min(X)", "t_min(X)", "t_min(X)" /))
     54  TYPE(ctrl_out), SAVE :: o_t2m_max = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
    5455        't2m_max', 'Temp 2m max', 'K', &
    55       (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /))
     56      (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", &
     57         "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /))
    5658
    5759  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_t2m_srf = (/ &
    58       ctrl_out((/ 10, 6, 10, 10, 10, 10 /), &
    59         't2m_ter', "Temp 2m "//clnsurf(1), "K", (/ ('', i=1, 6) /)), &
    60       ctrl_out((/ 10, 6, 10, 10, 10, 10 /), &
    61         't2m_lic', "Temp 2m "//clnsurf(2), "K", (/ ('', i=1, 6) /)), &
    62       ctrl_out((/ 10, 6, 10, 10, 10, 10 /), &
    63         't2m_oce', "Temp 2m "//clnsurf(3), "K", (/ ('', i=1, 6) /)), &
    64       ctrl_out((/ 10, 6, 10, 10, 10, 10 /), &
    65         't2m_sic', "Temp 2m "//clnsurf(4), "K", (/ ('', i=1, 6) /)) /)
    66 
    67   TYPE(ctrl_out), SAVE :: o_wind10m = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    68         'wind10m', '10-m wind speed', 'm/s', (/ ('', i=1, 6) /))
    69   TYPE(ctrl_out), SAVE :: o_wind10max = ctrl_out((/ 10, 1, 10, 10, 10, 10 /), &
    70         'wind10max', '10m wind speed max', 'm/s', (/ ('', i=1, 6) /))
    71   TYPE(ctrl_out), SAVE :: o_sicf = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    72         'sicf', 'Sea-ice fraction', '-', (/ ('', i=1, 6) /))
    73   TYPE(ctrl_out), SAVE :: o_q2m = ctrl_out((/ 1, 1, 1, 5, 10, 10 /), &
    74         'q2m', 'Specific humidity 2m', 'kg/kg', (/ ('', i=1, 6) /))
    75   TYPE(ctrl_out), SAVE :: o_ustar = ctrl_out((/ 1, 1, 1, 5, 10, 10 /), &
    76         'ustar', 'Friction velocity', 'm/s', (/ ('', i=1, 6) /))
    77   TYPE(ctrl_out), SAVE :: o_u10m = ctrl_out((/ 1, 1, 1, 5, 10, 10 /), &
    78         'u10m', 'Vent zonal 10m', 'm/s', (/ ('', i=1, 6) /))
    79   TYPE(ctrl_out), SAVE :: o_v10m = ctrl_out((/ 1, 1, 1, 5, 10, 10 /), &
    80         'v10m', 'Vent meridien 10m', 'm/s', (/ ('', i=1, 6) /))
    81   TYPE(ctrl_out), SAVE :: o_psol = ctrl_out((/ 1, 1, 1, 5, 10, 10 /), &
    82         'psol', 'Surface Pressure', 'Pa', (/ ('', i=1, 6) /))
    83   TYPE(ctrl_out), SAVE :: o_qsurf = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    84         'qsurf', 'Surface Air humidity', 'kg/kg', (/ ('', i=1, 6) /))
     60      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     61        't2m_ter', "Temp 2m "//clnsurf(1), "K", (/ ('', i=1, 9) /)), &
     62      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     63        't2m_lic', "Temp 2m "//clnsurf(2), "K", (/ ('', i=1, 9) /)), &
     64      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     65        't2m_oce', "Temp 2m "//clnsurf(3), "K", (/ ('', i=1, 9) /)), &
     66      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     67        't2m_sic', "Temp 2m "//clnsurf(4), "K", (/ ('', i=1, 9) /)) /)
     68
     69  TYPE(ctrl_out), SAVE :: o_wind10m = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     70        'wind10m', '10-m wind speed', 'm/s', (/ ('', i=1, 9) /))
     71  TYPE(ctrl_out), SAVE :: o_wind10max = ctrl_out((/ 10, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     72        'wind10max', '10m wind speed max', 'm/s', (/ ('', i=1, 9) /))
     73  TYPE(ctrl_out), SAVE :: o_sicf = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     74        'sicf', 'Sea-ice fraction', '-', (/ ('', i=1, 9) /))
     75  TYPE(ctrl_out), SAVE :: o_q2m = ctrl_out((/ 1, 1, 1, 5, 10, 10, 11, 11, 11 /), &
     76        'q2m', 'Specific humidity 2m', 'kg/kg', (/ ('', i=1, 9) /))
     77  TYPE(ctrl_out), SAVE :: o_ustar = ctrl_out((/ 1, 1, 1, 5, 10, 10, 11, 11, 11 /), &
     78        'ustar', 'Friction velocity', 'm/s', (/ ('', i=1, 9) /))
     79  TYPE(ctrl_out), SAVE :: o_u10m = ctrl_out((/ 1, 1, 1, 5, 10, 10, 11, 11, 11 /), &
     80        'u10m', 'Vent zonal 10m', 'm/s', (/ ('', i=1, 9) /))
     81  TYPE(ctrl_out), SAVE :: o_v10m = ctrl_out((/ 1, 1, 1, 5, 10, 10, 11, 11, 11 /), &
     82        'v10m', 'Vent meridien 10m', 'm/s', (/ ('', i=1, 9) /))
     83  TYPE(ctrl_out), SAVE :: o_psol = ctrl_out((/ 1, 1, 1, 5, 10, 10, 11, 11, 11 /), &
     84        'psol', 'Surface Pressure', 'Pa', (/ ('', i=1, 9) /))
     85  TYPE(ctrl_out), SAVE :: o_qsurf = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     86        'qsurf', 'Surface Air humidity', 'kg/kg', (/ ('', i=1, 9) /))
    8587
    8688  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_ustar_srf     = (/ &
    87       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'ustar_ter', &
    88       "Friction velocity "//clnsurf(1),"m/s", (/ ('', i=1, 6) /)), &
    89       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'ustar_lic', &
    90       "Friction velocity "//clnsurf(2),"m/s", (/ ('', i=1, 6) /)), &
    91       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'ustar_oce', &
    92       "Friction velocity "//clnsurf(3),"m/s", (/ ('', i=1, 6) /)), &
    93       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'ustar_sic', &
    94       "Friction velocity "//clnsurf(4),"m/s", (/ ('', i=1, 6) /)) /)
     89      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'ustar_ter', &
     90      "Friction velocity "//clnsurf(1),"m/s", (/ ('', i=1, 9) /)), &
     91      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'ustar_lic', &
     92      "Friction velocity "//clnsurf(2),"m/s", (/ ('', i=1, 9) /)), &
     93      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'ustar_oce', &
     94      "Friction velocity "//clnsurf(3),"m/s", (/ ('', i=1, 9) /)), &
     95      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'ustar_sic', &
     96      "Friction velocity "//clnsurf(4),"m/s", (/ ('', i=1, 9) /)) /)
    9597
    9698  TYPE(ctrl_out), SAVE, DIMENSION(5) :: o_wstar         = (/ &
    97       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'wstar_ter', &
    98       "Friction velocity "//clnsurf(1),"m/s", (/ ('', i=1, 6) /)), &
    99       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'wstar_lic', &
    100       "Friction velocity "//clnsurf(2),"m/s", (/ ('', i=1, 6) /)), &
    101       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'wstar_oce', &
    102       "Friction velocity "//clnsurf(3),"m/s", (/ ('', i=1, 6) /)), &
    103       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'wstar_sic', &
    104       "Friction velocity "//clnsurf(4),"m/s", (/ ('', i=1, 6) /)), &
    105       ctrl_out((/ 5, 5, 10, 10, 10, 10 /),'wstar', &
    106       "w* convective velocity "//clnsurf(4),"m/s", (/ ('', i=1, 6) /)) /)
     99      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'wstar_ter', &
     100      "Friction velocity "//clnsurf(1),"m/s", (/ ('', i=1, 9) /)), &
     101      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'wstar_lic', &
     102      "Friction velocity "//clnsurf(2),"m/s", (/ ('', i=1, 9) /)), &
     103      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'wstar_oce', &
     104      "Friction velocity "//clnsurf(3),"m/s", (/ ('', i=1, 9) /)), &
     105      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'wstar_sic', &
     106      "Friction velocity "//clnsurf(4),"m/s", (/ ('', i=1, 9) /)), &
     107      ctrl_out((/ 5, 5, 10, 10, 10, 10, 11, 11, 11 /),'wstar', &
     108      "w* convective velocity "//clnsurf(4),"m/s", (/ ('', i=1, 9) /)) /)
    107109
    108110  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_u10m_srf     = (/ &
    109       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'u10m_ter', &
    110       "Vent Zonal 10m "//clnsurf(1),"m/s", (/ ('', i=1, 6) /)), &
    111       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'u10m_lic', &
    112       "Vent Zonal 10m "//clnsurf(2),"m/s", (/ ('', i=1, 6) /)), &
    113       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'u10m_oce', &
    114       "Vent Zonal 10m "//clnsurf(3),"m/s", (/ ('', i=1, 6) /)), &
    115       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'u10m_sic', &
    116       "Vent Zonal 10m "//clnsurf(4),"m/s", (/ ('', i=1, 6) /)) /)
     111      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'u10m_ter', &
     112      "Vent Zonal 10m "//clnsurf(1),"m/s", (/ ('', i=1, 9) /)), &
     113      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'u10m_lic', &
     114      "Vent Zonal 10m "//clnsurf(2),"m/s", (/ ('', i=1, 9) /)), &
     115      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'u10m_oce', &
     116      "Vent Zonal 10m "//clnsurf(3),"m/s", (/ ('', i=1, 9) /)), &
     117      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'u10m_sic', &
     118      "Vent Zonal 10m "//clnsurf(4),"m/s", (/ ('', i=1, 9) /)) /)
    117119
    118120  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_v10m_srf     = (/ &
    119       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'v10m_ter', &
    120       "Vent meredien 10m "//clnsurf(1),"m/s", (/ ('', i=1, 6) /)), &
    121       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'v10m_lic', &
    122       "Vent meredien 10m "//clnsurf(2),"m/s", (/ ('', i=1, 6) /)), &
    123       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'v10m_oce', &
    124       "Vent meredien 10m "//clnsurf(3),"m/s", (/ ('', i=1, 6) /)), &
    125       ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'v10m_sic', &
    126       "Vent meredien 10m "//clnsurf(4),"m/s", (/ ('', i=1, 6) /)) /)
    127 
    128   TYPE(ctrl_out), SAVE :: o_qsol = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    129         'qsol', 'Soil watter content', 'mm', (/ ('', i=1, 6) /))
    130   TYPE(ctrl_out), SAVE :: o_ndayrain = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
     121      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'v10m_ter', &
     122      "Vent meredien 10m "//clnsurf(1),"m/s", (/ ('', i=1, 9) /)), &
     123      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'v10m_lic', &
     124      "Vent meredien 10m "//clnsurf(2),"m/s", (/ ('', i=1, 9) /)), &
     125      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'v10m_oce', &
     126      "Vent meredien 10m "//clnsurf(3),"m/s", (/ ('', i=1, 9) /)), &
     127      ctrl_out((/ 10, 6, 10, 10, 10, 10, 11, 11, 11 /),'v10m_sic', &
     128      "Vent meredien 10m "//clnsurf(4),"m/s", (/ ('', i=1, 9) /)) /)
     129
     130  TYPE(ctrl_out), SAVE :: o_qsol = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     131        'qsol', 'Soil watter content', 'mm', (/ ('', i=1, 9) /))
     132  TYPE(ctrl_out), SAVE :: o_ndayrain = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
    131133        'ndayrain', 'Number of dayrain(liq+sol)', '-', &
    132       (/ "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)" /))
    133   TYPE(ctrl_out), SAVE :: o_precip = ctrl_out((/ 1, 1, 1, 10, 5, 10 /), &
    134         'precip', 'Precip Totale liq+sol', 'kg/(s*m2)', (/ ('', i=1, 6) /))
    135   TYPE(ctrl_out), SAVE :: o_plul = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    136         'plul', 'Large-scale Precip.', 'kg/(s*m2)', (/ ('', i=1, 6) /))
    137   TYPE(ctrl_out), SAVE :: o_pluc = ctrl_out((/ 1, 1, 1, 10, 5, 10 /), &
    138         'pluc', 'Convective Precip.', 'kg/(s*m2)', (/ ('', i=1, 6) /))
    139   TYPE(ctrl_out), SAVE :: o_snow = ctrl_out((/ 1, 1, 10, 10, 5, 10 /), &
    140         'snow', 'Snow fall', 'kg/(s*m2)', (/ ('', i=1, 6) /))
    141   TYPE(ctrl_out), SAVE :: o_evap = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    142         'evap', 'Evaporat', 'kg/(s*m2)', (/ ('', i=1, 6) /))
     134      (/ "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)" /))
     135  TYPE(ctrl_out), SAVE :: o_precip = ctrl_out((/ 1, 1, 1, 10, 5, 10, 11, 11, 11 /), &
     136        'precip', 'Precip Totale liq+sol', 'kg/(s*m2)', (/ ('', i=1, 9) /))
     137  TYPE(ctrl_out), SAVE :: o_plul = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     138        'plul', 'Large-scale Precip.', 'kg/(s*m2)', (/ ('', i=1, 9) /))
     139  TYPE(ctrl_out), SAVE :: o_pluc = ctrl_out((/ 1, 1, 1, 10, 5, 10, 11, 11, 11 /), &
     140        'pluc', 'Convective Precip.', 'kg/(s*m2)', (/ ('', i=1, 9) /))
     141  TYPE(ctrl_out), SAVE :: o_snow = ctrl_out((/ 1, 1, 10, 10, 5, 10, 11, 11, 11 /), &
     142        'snow', 'Snow fall', 'kg/(s*m2)', (/ ('', i=1, 9) /))
     143  TYPE(ctrl_out), SAVE :: o_evap = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     144        'evap', 'Evaporat', 'kg/(s*m2)', (/ ('', i=1, 9) /))
    143145
    144146  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_evap_srf     = (/ &
    145       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'evap_ter', &
    146       "evaporation at surface "//clnsurf(1),"kg/(s*m2)", (/ ('', i=1, 6) /)), &
    147       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'evap_lic', &
    148       "evaporation at surface "//clnsurf(2),"kg/(s*m2)", (/ ('', i=1, 6) /)), &
    149       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'evap_oce', &
    150       "evaporation at surface "//clnsurf(3),"kg/(s*m2)", (/ ('', i=1, 6) /)), &
    151       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'evap_sic', &
    152       "evaporation at surface "//clnsurf(4),"kg/(s*m2)", (/ ('', i=1, 6) /)) /)
    153 
    154   TYPE(ctrl_out), SAVE :: o_msnow = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    155         'msnow', 'Surface snow amount', 'kg/m2', (/ ('', i=1, 6) /))
    156   TYPE(ctrl_out), SAVE :: o_fsnow = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    157         'fsnow', 'Surface snow area fraction', '-', (/ ('', i=1, 6) /))
    158   TYPE(ctrl_out), SAVE :: o_tops = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    159         'tops', 'Solar rad. at TOA', 'W/m2', (/ ('', i=1, 6) /))
    160   TYPE(ctrl_out), SAVE :: o_tops0 = ctrl_out((/ 1, 5, 10, 10, 10, 10 /), &
    161         'tops0', 'CS Solar rad. at TOA', 'W/m2', (/ ('', i=1, 6) /))
    162   TYPE(ctrl_out), SAVE :: o_topl = ctrl_out((/ 1, 1, 10, 5, 10, 10 /), &
    163         'topl', 'IR rad. at TOA', 'W/m2', (/ ('', i=1, 6) /))
    164   TYPE(ctrl_out), SAVE :: o_topl0 = ctrl_out((/ 1, 5, 10, 10, 10, 10 /), &
    165         'topl0', 'IR rad. at TOA', 'W/m2', (/ ('', i=1, 6) /))
    166   TYPE(ctrl_out), SAVE :: o_SWupTOA = ctrl_out((/ 1, 4, 10, 10, 10, 10 /), &
    167         'SWupTOA', 'SWup at TOA', 'W/m2', (/ ('', i=1, 6) /))
    168   TYPE(ctrl_out), SAVE :: o_SWupTOAclr = ctrl_out((/ 1, 4, 10, 10, 10, 10 /), &
    169         'SWupTOAclr', 'SWup clear sky at TOA', 'W/m2', (/ ('', i=1, 6) /))
    170   TYPE(ctrl_out), SAVE :: o_SWdnTOA = ctrl_out((/ 1, 4, 10, 10, 10, 10 /), &
    171         'SWdnTOA', 'SWdn at TOA', 'W/m2', (/ ('', i=1, 6) /))
    172   TYPE(ctrl_out), SAVE :: o_SWdnTOAclr = ctrl_out((/ 1, 4, 10, 10, 10, 10 /), &
    173         'SWdnTOAclr', 'SWdn clear sky at TOA', 'W/m2', (/ ('', i=1, 6) /))
    174   TYPE(ctrl_out), SAVE :: o_nettop = ctrl_out((/ 1, 4, 10, 10, 10, 10 /), &
    175         'nettop', 'Net dn radiatif flux at TOA', 'W/m2', (/ ('', i=1, 6) /))
    176   TYPE(ctrl_out), SAVE :: o_SWup200 = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    177         'SWup200', 'SWup at 200mb', 'W/m2', (/ ('', i=1, 6) /))
    178   TYPE(ctrl_out), SAVE :: o_SWup200clr = ctrl_out((/ 10, 1, 10, 10, 10, 10 /), &
    179         'SWup200clr', 'SWup clear sky at 200mb', 'W/m2', (/ ('', i=1, 6) /))
    180   TYPE(ctrl_out), SAVE :: o_SWdn200 = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    181         'SWdn200', 'SWdn at 200mb', 'W/m2', (/ ('', i=1, 6) /))
    182   TYPE(ctrl_out), SAVE :: o_SWdn200clr = ctrl_out((/ 10, 1, 10, 10, 10, 10 /), &
    183         'SWdn200clr', 'SWdn clear sky at 200mb', 'W/m2', (/ ('', i=1, 6) /))
     147      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'evap_ter', &
     148      "evaporation at surface "//clnsurf(1),"kg/(s*m2)", (/ ('', i=1, 9) /)), &
     149      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'evap_lic', &
     150      "evaporation at surface "//clnsurf(2),"kg/(s*m2)", (/ ('', i=1, 9) /)), &
     151      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'evap_oce', &
     152      "evaporation at surface "//clnsurf(3),"kg/(s*m2)", (/ ('', i=1, 9) /)), &
     153      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'evap_sic', &
     154      "evaporation at surface "//clnsurf(4),"kg/(s*m2)", (/ ('', i=1, 9) /)) /)
     155
     156  TYPE(ctrl_out), SAVE :: o_msnow = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     157        'msnow', 'Surface snow amount', 'kg/m2', (/ ('', i=1, 9) /))
     158  TYPE(ctrl_out), SAVE :: o_fsnow = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     159        'fsnow', 'Surface snow area fraction', '-', (/ ('', i=1, 9) /))
     160  TYPE(ctrl_out), SAVE :: o_tops = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     161        'tops', 'Solar rad. at TOA', 'W/m2', (/ ('', i=1, 9) /))
     162  TYPE(ctrl_out), SAVE :: o_tops0 = ctrl_out((/ 1, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     163        'tops0', 'CS Solar rad. at TOA', 'W/m2', (/ ('', i=1, 9) /))
     164  TYPE(ctrl_out), SAVE :: o_topl = ctrl_out((/ 1, 1, 10, 5, 10, 10, 11, 11, 11 /), &
     165        'topl', 'IR rad. at TOA', 'W/m2', (/ ('', i=1, 9) /))
     166  TYPE(ctrl_out), SAVE :: o_topl0 = ctrl_out((/ 1, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     167        'topl0', 'IR rad. at TOA', 'W/m2', (/ ('', i=1, 9) /))
     168  TYPE(ctrl_out), SAVE :: o_SWupTOA = ctrl_out((/ 1, 4, 10, 10, 10, 10, 11, 11, 11 /), &
     169        'SWupTOA', 'SWup at TOA', 'W/m2', (/ ('', i=1, 9) /))
     170  TYPE(ctrl_out), SAVE :: o_SWupTOAclr = ctrl_out((/ 1, 4, 10, 10, 10, 10, 11, 11, 11 /), &
     171        'SWupTOAclr', 'SWup clear sky at TOA', 'W/m2', (/ ('', i=1, 9) /))
     172  TYPE(ctrl_out), SAVE :: o_SWdnTOA = ctrl_out((/ 1, 4, 10, 10, 10, 10, 11, 11, 11 /), &
     173        'SWdnTOA', 'SWdn at TOA', 'W/m2', (/ ('', i=1, 9) /))
     174  TYPE(ctrl_out), SAVE :: o_SWdnTOAclr = ctrl_out((/ 1, 4, 10, 10, 10, 10, 11, 11, 11 /), &
     175        'SWdnTOAclr', 'SWdn clear sky at TOA', 'W/m2', (/ ('', i=1, 9) /))
     176  TYPE(ctrl_out), SAVE :: o_nettop = ctrl_out((/ 1, 4, 10, 10, 10, 10, 11, 11, 11 /), &
     177        'nettop', 'Net dn radiatif flux at TOA', 'W/m2', (/ ('', i=1, 9) /))
     178  TYPE(ctrl_out), SAVE :: o_SWup200 = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     179        'SWup200', 'SWup at 200mb', 'W/m2', (/ ('', i=1, 9) /))
     180  TYPE(ctrl_out), SAVE :: o_SWup200clr = ctrl_out((/ 10, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     181        'SWup200clr', 'SWup clear sky at 200mb', 'W/m2', (/ ('', i=1, 9) /))
     182  TYPE(ctrl_out), SAVE :: o_SWdn200 = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     183        'SWdn200', 'SWdn at 200mb', 'W/m2', (/ ('', i=1, 9) /))
     184  TYPE(ctrl_out), SAVE :: o_SWdn200clr = ctrl_out((/ 10, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     185        'SWdn200clr', 'SWdn clear sky at 200mb', 'W/m2', (/ ('', i=1, 9) /))
    184186
    185187  ! arajouter
    186   !  type(ctrl_out),save :: o_LWupTOA     = ctrl_out((/ 1, 4, 10, 10, 10, 10 /),'LWupTOA', &
    187   !     (/ ('', i=1, 6) /))
    188   !  type(ctrl_out),save :: o_LWupTOAclr  = ctrl_out((/ 1, 4, 10, 10, 10, 10 /),'LWupTOAclr', &
    189   !     (/ ('', i=1, 6) /))
    190   !  type(ctrl_out),save :: o_LWdnTOA     = ctrl_out((/ 1, 4, 10, 10, 10, 10 /),'LWdnTOA', &
    191   !     (/ ('', i=1, 6) /))
    192   !  type(ctrl_out),save :: o_LWdnTOAclr  = ctrl_out((/ 1, 4, 10, 10, 10, 10 /),'LWdnTOAclr', &
    193   !     (/ ('', i=1, 6) /))
    194   TYPE(ctrl_out), SAVE :: o_LWup200 = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    195         'LWup200', 'LWup at 200mb', 'W/m2', (/ ('', i=1, 6) /))
    196   TYPE(ctrl_out), SAVE :: o_LWup200clr = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    197         'LWup200clr', 'LWup clear sky at 200mb', 'W/m2', (/ ('', i=1, 6) /))
    198   TYPE(ctrl_out), SAVE :: o_LWdn200 = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    199         'LWdn200', 'LWdn at 200mb', 'W/m2', (/ ('', i=1, 6) /))
    200   TYPE(ctrl_out), SAVE :: o_LWdn200clr = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    201         'LWdn200clr', 'LWdn clear sky at 200mb', 'W/m2', (/ ('', i=1, 6) /))
    202   TYPE(ctrl_out), SAVE :: o_sols = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    203         'sols', 'Solar rad. at surf.', 'W/m2', (/ ('', i=1, 6) /))
    204   TYPE(ctrl_out), SAVE :: o_sols0 = ctrl_out((/ 1, 5, 10, 10, 10, 10 /), &
    205         'sols0', 'Solar rad. at surf.', 'W/m2', (/ ('', i=1, 6) /))
    206   TYPE(ctrl_out), SAVE :: o_soll = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    207         'soll', 'IR rad. at surface', 'W/m2', (/ ('', i=1, 6) /))
    208   TYPE(ctrl_out), SAVE :: o_soll0 = ctrl_out((/ 1, 5, 10, 10, 10, 10 /), &
    209         'soll0', 'IR rad. at surface', 'W/m2', (/ ('', i=1, 6) /))
    210   TYPE(ctrl_out), SAVE :: o_radsol = ctrl_out((/ 1, 7, 10, 10, 10, 10 /), &
    211         'radsol', 'Rayonnement au sol', 'W/m2', (/ ('', i=1, 6) /))
    212   TYPE(ctrl_out), SAVE :: o_SWupSFC = ctrl_out((/ 1, 4, 10, 10, 5, 10 /), &
    213         'SWupSFC', 'SWup at surface', 'W/m2', (/ ('', i=1, 6) /))
    214   TYPE(ctrl_out), SAVE :: o_SWupSFCclr = ctrl_out((/ 1, 4, 10, 10, 5, 10 /), &
    215         'SWupSFCclr', 'SWup clear sky at surface', 'W/m2', (/ ('', i=1, 6) /))
    216   TYPE(ctrl_out), SAVE :: o_SWdnSFC = ctrl_out((/ 1, 1, 10, 10, 5, 10 /), &
    217         'SWdnSFC', 'SWdn at surface', 'W/m2', (/ ('', i=1, 6) /))
    218   TYPE(ctrl_out), SAVE :: o_SWdnSFCclr = ctrl_out((/ 1, 4, 10, 10, 5, 10 /), &
    219         'SWdnSFCclr', 'SWdn clear sky at surface', 'W/m2', (/ ('', i=1, 6) /))
    220   TYPE(ctrl_out), SAVE :: o_LWupSFC = ctrl_out((/ 1, 4, 10, 10, 5, 10 /), &
    221         'LWupSFC', 'Upwd. IR rad. at surface', 'W/m2', (/ ('', i=1, 6) /))
    222   TYPE(ctrl_out), SAVE :: o_LWupSFCclr = ctrl_out((/ 1, 4, 10, 10, 5, 10 /), &
    223         'LWupSFCclr', 'CS Upwd. IR rad. at surface', 'W/m2', (/ ('', i=1, 6) /))
    224   TYPE(ctrl_out), SAVE :: o_LWdnSFC = ctrl_out((/ 1, 4, 10, 10, 5, 10 /), &
    225         'LWdnSFC', 'Down. IR rad. at surface', 'W/m2', (/ ('', i=1, 6) /))
    226   TYPE(ctrl_out), SAVE :: o_LWdnSFCclr = ctrl_out((/ 1, 4, 10, 10, 5, 10 /), &
    227         'LWdnSFCclr', 'Down. CS IR rad. at surface', 'W/m2', (/ ('', i=1, 6) /))
    228   TYPE(ctrl_out), SAVE :: o_bils = ctrl_out((/ 1, 2, 10, 5, 10, 10 /), &
    229         'bils', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 6) /))
    230   TYPE(ctrl_out), SAVE :: o_bils_tke = ctrl_out((/ 1, 2, 10, 5, 10, 10 /), &
    231         'bils_tke', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 6) /))
    232   TYPE(ctrl_out), SAVE :: o_bils_diss = ctrl_out((/ 1, 2, 10, 5, 10, 10 /), &
    233         'bils_diss', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 6) /))
    234   TYPE(ctrl_out), SAVE :: o_bils_ec = ctrl_out((/ 1, 2, 10, 5, 10, 10 /), &
    235         'bils_ec', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 6) /))
    236   TYPE(ctrl_out), SAVE :: o_bils_kinetic = ctrl_out((/ 1, 2, 10, 5, 10, 10 /), &
    237         'bils_kinetic', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 6) /))
    238   TYPE(ctrl_out), SAVE :: o_bils_enthalp = ctrl_out((/ 1, 2, 10, 5, 10, 10 /), &
    239         'bils_enthalp', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 6) /))
    240   TYPE(ctrl_out), SAVE :: o_bils_latent = ctrl_out((/ 1, 2, 10, 5, 10, 10 /), &
    241         'bils_latent', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 6) /))
    242   TYPE(ctrl_out), SAVE :: o_sens = ctrl_out((/ 1, 1, 10, 10, 5, 10 /), &
    243         'sens', 'Sensible heat flux', 'W/m2', (/ ('', i=1, 6) /))
    244   TYPE(ctrl_out), SAVE :: o_fder = ctrl_out((/ 1, 2, 10, 10, 10, 10 /), &
    245         'fder', 'Heat flux derivation', 'W/m2', (/ ('', i=1, 6) /))
    246   TYPE(ctrl_out), SAVE :: o_ffonte = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    247         'ffonte', 'Thermal flux for snow melting', 'W/m2', (/ ('', i=1, 6) /))
    248   TYPE(ctrl_out), SAVE :: o_fqcalving = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    249         'fqcalving', 'Ice Calving', 'kg/m2/s', (/ ('', i=1, 6) /))
    250   TYPE(ctrl_out), SAVE :: o_fqfonte = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    251         'fqfonte', 'Land ice melt', 'kg/m2/s', (/ ('', i=1, 6) /))
    252   TYPE(ctrl_out), SAVE :: o_taux = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    253         'taux', 'Zonal wind stress', 'Pa', (/ ('', i=1, 6) /))
    254   TYPE(ctrl_out), SAVE :: o_tauy = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    255         'tauy', 'Meridional wind stress', 'Pa', (/ ('', i=1, 6) /))
     188  !  type(ctrl_out),save :: o_LWupTOA     = ctrl_out((/ 1, 4, 10, 10, 10, 10, 11, 11, 11 /),'LWupTOA', &
     189  !     (/ ('', i=1, 9) /))
     190  !  type(ctrl_out),save :: o_LWupTOAclr  = ctrl_out((/ 1, 4, 10, 10, 10, 10, 11, 11, 11 /),'LWupTOAclr', &
     191  !     (/ ('', i=1, 9) /))
     192  !  type(ctrl_out),save :: o_LWdnTOA     = ctrl_out((/ 1, 4, 10, 10, 10, 10, 11, 11, 11 /),'LWdnTOA', &
     193  !     (/ ('', i=1, 9) /))
     194  !  type(ctrl_out),save :: o_LWdnTOAclr  = ctrl_out((/ 1, 4, 10, 10, 10, 10, 11, 11, 11 /),'LWdnTOAclr', &
     195  !     (/ ('', i=1, 9) /))
     196  TYPE(ctrl_out), SAVE :: o_LWup200 = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     197        'LWup200', 'LWup at 200mb', 'W/m2', (/ ('', i=1, 9) /))
     198  TYPE(ctrl_out), SAVE :: o_LWup200clr = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     199        'LWup200clr', 'LWup clear sky at 200mb', 'W/m2', (/ ('', i=1, 9) /))
     200  TYPE(ctrl_out), SAVE :: o_LWdn200 = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     201        'LWdn200', 'LWdn at 200mb', 'W/m2', (/ ('', i=1, 9) /))
     202  TYPE(ctrl_out), SAVE :: o_LWdn200clr = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     203        'LWdn200clr', 'LWdn clear sky at 200mb', 'W/m2', (/ ('', i=1, 9) /))
     204  TYPE(ctrl_out), SAVE :: o_sols = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     205        'sols', 'Solar rad. at surf.', 'W/m2', (/ ('', i=1, 9) /))
     206  TYPE(ctrl_out), SAVE :: o_sols0 = ctrl_out((/ 1, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     207        'sols0', 'Solar rad. at surf.', 'W/m2', (/ ('', i=1, 9) /))
     208  TYPE(ctrl_out), SAVE :: o_soll = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     209        'soll', 'IR rad. at surface', 'W/m2', (/ ('', i=1, 9) /))
     210  TYPE(ctrl_out), SAVE :: o_soll0 = ctrl_out((/ 1, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     211        'soll0', 'IR rad. at surface', 'W/m2', (/ ('', i=1, 9) /))
     212  TYPE(ctrl_out), SAVE :: o_radsol = ctrl_out((/ 1, 7, 10, 10, 10, 10, 11, 11, 11 /), &
     213        'radsol', 'Rayonnement au sol', 'W/m2', (/ ('', i=1, 9) /))
     214  TYPE(ctrl_out), SAVE :: o_SWupSFC = ctrl_out((/ 1, 4, 10, 10, 5, 10, 11, 11, 11 /), &
     215        'SWupSFC', 'SWup at surface', 'W/m2', (/ ('', i=1, 9) /))
     216  TYPE(ctrl_out), SAVE :: o_SWupSFCclr = ctrl_out((/ 1, 4, 10, 10, 5, 10, 11, 11, 11 /), &
     217        'SWupSFCclr', 'SWup clear sky at surface', 'W/m2', (/ ('', i=1, 9) /))
     218  TYPE(ctrl_out), SAVE :: o_SWdnSFC = ctrl_out((/ 1, 1, 10, 10, 5, 10, 11, 11, 11 /), &
     219        'SWdnSFC', 'SWdn at surface', 'W/m2', (/ ('', i=1, 9) /))
     220  TYPE(ctrl_out), SAVE :: o_SWdnSFCclr = ctrl_out((/ 1, 4, 10, 10, 5, 10, 11, 11, 11 /), &
     221        'SWdnSFCclr', 'SWdn clear sky at surface', 'W/m2', (/ ('', i=1, 9) /))
     222  TYPE(ctrl_out), SAVE :: o_LWupSFC = ctrl_out((/ 1, 4, 10, 10, 5, 10, 11, 11, 11 /), &
     223        'LWupSFC', 'Upwd. IR rad. at surface', 'W/m2', (/ ('', i=1, 9) /))
     224  TYPE(ctrl_out), SAVE :: o_LWupSFCclr = ctrl_out((/ 1, 4, 10, 10, 5, 10, 11, 11, 11 /), &
     225        'LWupSFCclr', 'CS Upwd. IR rad. at surface', 'W/m2', (/ ('', i=1, 9) /))
     226  TYPE(ctrl_out), SAVE :: o_LWdnSFC = ctrl_out((/ 1, 4, 10, 10, 5, 10, 11, 11, 11 /), &
     227        'LWdnSFC', 'Down. IR rad. at surface', 'W/m2', (/ ('', i=1, 9) /))
     228  TYPE(ctrl_out), SAVE :: o_LWdnSFCclr = ctrl_out((/ 1, 4, 10, 10, 5, 10, 11, 11, 11 /), &
     229        'LWdnSFCclr', 'Down. CS IR rad. at surface', 'W/m2', (/ ('', i=1, 9) /))
     230  TYPE(ctrl_out), SAVE :: o_bils = ctrl_out((/ 1, 2, 10, 5, 10, 10, 11, 11, 11 /), &
     231        'bils', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 9) /))
     232  TYPE(ctrl_out), SAVE :: o_bils_tke = ctrl_out((/ 1, 2, 10, 5, 10, 10, 11, 11, 11 /), &
     233        'bils_tke', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 9) /))
     234  TYPE(ctrl_out), SAVE :: o_bils_diss = ctrl_out((/ 1, 2, 10, 5, 10, 10, 11, 11, 11 /), &
     235        'bils_diss', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 9) /))
     236  TYPE(ctrl_out), SAVE :: o_bils_ec = ctrl_out((/ 1, 2, 10, 5, 10, 10, 11, 11, 11 /), &
     237        'bils_ec', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 9) /))
     238  TYPE(ctrl_out), SAVE :: o_bils_kinetic = ctrl_out((/ 1, 2, 10, 5, 10, 10, 11, 11, 11 /), &
     239        'bils_kinetic', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 9) /))
     240  TYPE(ctrl_out), SAVE :: o_bils_enthalp = ctrl_out((/ 1, 2, 10, 5, 10, 10, 11, 11, 11 /), &
     241        'bils_enthalp', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 9) /))
     242  TYPE(ctrl_out), SAVE :: o_bils_latent = ctrl_out((/ 1, 2, 10, 5, 10, 10, 11, 11, 11 /), &
     243        'bils_latent', 'Surf. total heat flux', 'W/m2', (/ ('', i=1, 9) /))
     244  TYPE(ctrl_out), SAVE :: o_sens = ctrl_out((/ 1, 1, 10, 10, 5, 10, 11, 11, 11 /), &
     245        'sens', 'Sensible heat flux', 'W/m2', (/ ('', i=1, 9) /))
     246  TYPE(ctrl_out), SAVE :: o_fder = ctrl_out((/ 1, 2, 10, 10, 10, 10, 11, 11, 11 /), &
     247        'fder', 'Heat flux derivation', 'W/m2', (/ ('', i=1, 9) /))
     248  TYPE(ctrl_out), SAVE :: o_ffonte = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     249        'ffonte', 'Thermal flux for snow melting', 'W/m2', (/ ('', i=1, 9) /))
     250  TYPE(ctrl_out), SAVE :: o_fqcalving = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     251        'fqcalving', 'Ice Calving', 'kg/m2/s', (/ ('', i=1, 9) /))
     252  TYPE(ctrl_out), SAVE :: o_fqfonte = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     253        'fqfonte', 'Land ice melt', 'kg/m2/s', (/ ('', i=1, 9) /))
     254  TYPE(ctrl_out), SAVE :: o_taux = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     255        'taux', 'Zonal wind stress', 'Pa', (/ ('', i=1, 9) /))
     256  TYPE(ctrl_out), SAVE :: o_tauy = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     257        'tauy', 'Meridional wind stress', 'Pa', (/ ('', i=1, 9) /))
    256258
    257259  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_taux_srf = (/           &
    258       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'taux_ter',             &
    259       "Zonal wind stress"//clnsurf(1), "Pa", (/ ('', i=1, 6) /)), &
    260       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'taux_lic',             &
    261       "Zonal wind stress"//clnsurf(2), "Pa", (/ ('', i=1, 6) /)), &
    262       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'taux_oce',             &
    263       "Zonal wind stress"//clnsurf(3), "Pa", (/ ('', i=1, 6) /)), &
    264       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'taux_sic',             &
    265       "Zonal wind stress"//clnsurf(4), "Pa", (/ ('', i=1, 6) /)) /)
     260      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'taux_ter',             &
     261      "Zonal wind stress"//clnsurf(1), "Pa", (/ ('', i=1, 9) /)), &
     262      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'taux_lic',             &
     263      "Zonal wind stress"//clnsurf(2), "Pa", (/ ('', i=1, 9) /)), &
     264      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'taux_oce',             &
     265      "Zonal wind stress"//clnsurf(3), "Pa", (/ ('', i=1, 9) /)), &
     266      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'taux_sic',             &
     267      "Zonal wind stress"//clnsurf(4), "Pa", (/ ('', i=1, 9) /)) /)
    266268
    267269  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_tauy_srf     = (/             &
    268       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'tauy_ter',                   &
    269       "Meridional wind stress "//clnsurf(1),"Pa", (/ ('', i=1, 6) /)),  &
    270       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'tauy_lic',                   &
    271       "Meridional wind stress "//clnsurf(2),"Pa", (/ ('', i=1, 6) /)),  &
    272       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'tauy_oce',                   &
    273       "Meridional wind stress "//clnsurf(3),"Pa", (/ ('', i=1, 6) /)),  &
    274       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'tauy_sic',                   &
    275       "Meridional wind stress "//clnsurf(4),"Pa", (/ ('', i=1, 6) /)) /)
     270      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'tauy_ter',                   &
     271      "Meridional wind stress "//clnsurf(1),"Pa", (/ ('', i=1, 9) /)),  &
     272      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'tauy_lic',                   &
     273      "Meridional wind stress "//clnsurf(2),"Pa", (/ ('', i=1, 9) /)),  &
     274      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'tauy_oce',                   &
     275      "Meridional wind stress "//clnsurf(3),"Pa", (/ ('', i=1, 9) /)),  &
     276      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'tauy_sic',                   &
     277      "Meridional wind stress "//clnsurf(4),"Pa", (/ ('', i=1, 9) /)) /)
    276278
    277279  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_pourc_srf    = (/ &
    278       ctrl_out((/ 1, 7, 10, 10, 10, 10 /),'pourc_ter',      &
    279       "% "//clnsurf(1),"%", (/ ('', i=1, 6) /)),            &
    280       ctrl_out((/ 1, 7, 10, 10, 10, 10 /),'pourc_lic',      &
    281       "% "//clnsurf(2),"%", (/ ('', i=1, 6) /)),            &
    282       ctrl_out((/ 1, 7, 10, 10, 10, 10 /),'pourc_oce',      &
    283       "% "//clnsurf(3),"%", (/ ('', i=1, 6) /)),            &
    284       ctrl_out((/ 1, 7, 10, 10, 10, 10 /),'pourc_sic',      &
    285       "% "//clnsurf(4),"%", (/ ('', i=1, 6) /)) /)
     280      ctrl_out((/ 1, 7, 10, 10, 10, 10, 11, 11, 11 /),'pourc_ter',      &
     281      "% "//clnsurf(1),"%", (/ ('', i=1, 9) /)),            &
     282      ctrl_out((/ 1, 7, 10, 10, 10, 10, 11, 11, 11 /),'pourc_lic',      &
     283      "% "//clnsurf(2),"%", (/ ('', i=1, 9) /)),            &
     284      ctrl_out((/ 1, 7, 10, 10, 10, 10, 11, 11, 11 /),'pourc_oce',      &
     285      "% "//clnsurf(3),"%", (/ ('', i=1, 9) /)),            &
     286      ctrl_out((/ 1, 7, 10, 10, 10, 10, 11, 11, 11 /),'pourc_sic',      &
     287      "% "//clnsurf(4),"%", (/ ('', i=1, 9) /)) /)
    286288
    287289  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_fract_srf    = (/ &
    288       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'fract_ter',      &
    289       "Fraction "//clnsurf(1),"1", (/ ('', i=1, 6) /)),     &
    290       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'fract_lic',      &
    291       "Fraction "//clnsurf(2),"1", (/ ('', i=1, 6) /)),     &
    292       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'fract_oce',      &
    293       "Fraction "//clnsurf(3),"1", (/ ('', i=1, 6) /)),     &
    294       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'fract_sic',      &
    295       "Fraction "//clnsurf(4),"1", (/ ('', i=1, 6) /)) /)
     290      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'fract_ter',      &
     291      "Fraction "//clnsurf(1),"1", (/ ('', i=1, 9) /)),     &
     292      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'fract_lic',      &
     293      "Fraction "//clnsurf(2),"1", (/ ('', i=1, 9) /)),     &
     294      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'fract_oce',      &
     295      "Fraction "//clnsurf(3),"1", (/ ('', i=1, 9) /)),     &
     296      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'fract_sic',      &
     297      "Fraction "//clnsurf(4),"1", (/ ('', i=1, 9) /)) /)
    296298
    297299  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_tsol_srf     = (/ &
    298       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'tsol_ter',       &
    299       "Temperature "//clnsurf(1),"K", (/ ('', i=1, 6) /)),  &
    300       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'tsol_lic',       &
    301       "Temperature "//clnsurf(2),"K", (/ ('', i=1, 6) /)),  &
    302       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'tsol_oce',       &
    303       "Temperature "//clnsurf(3),"K", (/ ('', i=1, 6) /)),  &
    304       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'tsol_sic',       &
    305       "Temperature "//clnsurf(4),"K", (/ ('', i=1, 6) /)) /)
     300      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'tsol_ter',       &
     301      "Temperature "//clnsurf(1),"K", (/ ('', i=1, 9) /)),  &
     302      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'tsol_lic',       &
     303      "Temperature "//clnsurf(2),"K", (/ ('', i=1, 9) /)),  &
     304      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'tsol_oce',       &
     305      "Temperature "//clnsurf(3),"K", (/ ('', i=1, 9) /)),  &
     306      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'tsol_sic',       &
     307      "Temperature "//clnsurf(4),"K", (/ ('', i=1, 9) /)) /)
    306308
    307309  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_evappot_srf  = (/ &
    308       ctrl_out((/ 1, 6, 10, 10, 10, 10 /),'evappot_ter',    &
    309       "Temperature"//clnsurf(1),"K", (/ ('', i=1, 6) /)),   &
    310       ctrl_out((/ 4, 6, 10, 10, 10, 10 /),'evappot_lic',    &
    311       "Temperature"//clnsurf(2),"K", (/ ('', i=1, 6) /)),   &
    312       ctrl_out((/ 4, 6, 10, 10, 10, 10 /),'evappot_oce',    &
    313       "Temperature"//clnsurf(3),"K", (/ ('', i=1, 6) /)),   &
    314       ctrl_out((/ 4, 6, 10, 10, 10, 10 /),'evappot_sic',    &
    315       "Temperature"//clnsurf(4),"K", (/ ('', i=1, 6) /)) /)
     310      ctrl_out((/ 1, 6, 10, 10, 10, 10, 11, 11, 11 /),'evappot_ter',    &
     311      "Temperature"//clnsurf(1),"K", (/ ('', i=1, 9) /)),   &
     312      ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /),'evappot_lic',    &
     313      "Temperature"//clnsurf(2),"K", (/ ('', i=1, 9) /)),   &
     314      ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /),'evappot_oce',    &
     315      "Temperature"//clnsurf(3),"K", (/ ('', i=1, 9) /)),   &
     316      ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /),'evappot_sic',    &
     317      "Temperature"//clnsurf(4),"K", (/ ('', i=1, 9) /)) /)
    316318
    317319  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_sens_srf     = (/          &
    318       ctrl_out((/ 1, 6, 10, 7, 10, 10 /),'sens_ter',                 &
    319       "Sensible heat flux "//clnsurf(1),"W/m2", (/ ('', i=1, 6) /)), &
    320       ctrl_out((/ 1, 6, 10, 7, 10, 10 /),'sens_lic',                 &
    321       "Sensible heat flux "//clnsurf(2),"W/m2", (/ ('', i=1, 6) /)), &
    322       ctrl_out((/ 1, 6, 10, 7, 10, 10 /),'sens_oce',                 &
    323       "Sensible heat flux "//clnsurf(3),"W/m2", (/ ('', i=1, 6) /)), &
    324       ctrl_out((/ 1, 6, 10, 7, 10, 10 /),'sens_sic',                 &
    325       "Sensible heat flux "//clnsurf(4),"W/m2", (/ ('', i=1, 6) /)) /)
     320      ctrl_out((/ 1, 6, 10, 7, 10, 10, 11, 11, 11 /),'sens_ter',                 &
     321      "Sensible heat flux "//clnsurf(1),"W/m2", (/ ('', i=1, 9) /)), &
     322      ctrl_out((/ 1, 6, 10, 7, 10, 10, 11, 11, 11 /),'sens_lic',                 &
     323      "Sensible heat flux "//clnsurf(2),"W/m2", (/ ('', i=1, 9) /)), &
     324      ctrl_out((/ 1, 6, 10, 7, 10, 10, 11, 11, 11 /),'sens_oce',                 &
     325      "Sensible heat flux "//clnsurf(3),"W/m2", (/ ('', i=1, 9) /)), &
     326      ctrl_out((/ 1, 6, 10, 7, 10, 10, 11, 11, 11 /),'sens_sic',                 &
     327      "Sensible heat flux "//clnsurf(4),"W/m2", (/ ('', i=1, 9) /)) /)
    326328
    327329  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_lat_srf      = (/        &
    328       ctrl_out((/ 1, 6, 10, 7, 10, 10 /),'lat_ter',                &
    329       "Latent heat flux "//clnsurf(1),"W/m2", (/ ('', i=1, 6) /)), &
    330       ctrl_out((/ 1, 6, 10, 7, 10, 10 /),'lat_lic',                &
    331       "Latent heat flux "//clnsurf(2),"W/m2", (/ ('', i=1, 6) /)), &
    332       ctrl_out((/ 1, 6, 10, 7, 10, 10 /),'lat_oce',                &
    333       "Latent heat flux "//clnsurf(3),"W/m2", (/ ('', i=1, 6) /)), &
    334       ctrl_out((/ 1, 6, 10, 7, 10, 10 /),'lat_sic',                &
    335       "Latent heat flux "//clnsurf(4),"W/m2", (/ ('', i=1, 6) /)) /)
     330      ctrl_out((/ 1, 6, 10, 7, 10, 10, 11, 11, 11 /),'lat_ter',                &
     331      "Latent heat flux "//clnsurf(1),"W/m2", (/ ('', i=1, 9) /)), &
     332      ctrl_out((/ 1, 6, 10, 7, 10, 10, 11, 11, 11 /),'lat_lic',                &
     333      "Latent heat flux "//clnsurf(2),"W/m2", (/ ('', i=1, 9) /)), &
     334      ctrl_out((/ 1, 6, 10, 7, 10, 10, 11, 11, 11 /),'lat_oce',                &
     335      "Latent heat flux "//clnsurf(3),"W/m2", (/ ('', i=1, 9) /)), &
     336      ctrl_out((/ 1, 6, 10, 7, 10, 10, 11, 11, 11 /),'lat_sic',                &
     337      "Latent heat flux "//clnsurf(4),"W/m2", (/ ('', i=1, 9) /)) /)
    336338
    337339  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_flw_srf      = (/ &
    338       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'flw_ter',       &
    339       "LW "//clnsurf(1),"W/m2", (/ ('', i=1, 6) /)),        &
    340       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'flw_lic',       &
    341       "LW "//clnsurf(2),"W/m2", (/ ('', i=1, 6) /)),        &
    342       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'flw_oce',       &
    343       "LW "//clnsurf(3),"W/m2", (/ ('', i=1, 6) /)),        &
    344       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'flw_sic',       &
    345       "LW "//clnsurf(4),"W/m2", (/ ('', i=1, 6) /)) /)
     340      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'flw_ter',       &
     341      "LW "//clnsurf(1),"W/m2", (/ ('', i=1, 9) /)),        &
     342      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'flw_lic',       &
     343      "LW "//clnsurf(2),"W/m2", (/ ('', i=1, 9) /)),        &
     344      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'flw_oce',       &
     345      "LW "//clnsurf(3),"W/m2", (/ ('', i=1, 9) /)),        &
     346      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'flw_sic',       &
     347      "LW "//clnsurf(4),"W/m2", (/ ('', i=1, 9) /)) /)
    346348
    347349  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_fsw_srf      = (/ &
    348       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'fsw_ter',       &
    349       "SW "//clnsurf(1),"W/m2", (/ ('', i=1, 6) /)),        &
    350       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'fsw_lic',       &
    351       "SW "//clnsurf(2),"W/m2", (/ ('', i=1, 6) /)),        &
    352       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'fsw_oce',       &
    353       "SW "//clnsurf(3),"W/m2", (/ ('', i=1, 6) /)),        &
    354       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'fsw_sic',       &
    355       "SW "//clnsurf(4),"W/m2", (/ ('', i=1, 6) /)) /)
     350      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'fsw_ter',       &
     351      "SW "//clnsurf(1),"W/m2", (/ ('', i=1, 9) /)),        &
     352      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'fsw_lic',       &
     353      "SW "//clnsurf(2),"W/m2", (/ ('', i=1, 9) /)),        &
     354      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'fsw_oce',       &
     355      "SW "//clnsurf(3),"W/m2", (/ ('', i=1, 9) /)),        &
     356      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'fsw_sic',       &
     357      "SW "//clnsurf(4),"W/m2", (/ ('', i=1, 9) /)) /)
    356358
    357359  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_wbils_srf    = (/ &
    358       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'wbils_ter',     &
    359       "Bilan sol "//clnsurf(1),"W/m2", (/ ('', i=1, 6) /)), &
    360       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'wbils_lic',     &
    361       "Bilan sol "//clnsurf(2),"W/m2", (/ ('', i=1, 6) /)), &
    362       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'wbils_oce',     &
    363       "Bilan sol "//clnsurf(3),"W/m2", (/ ('', i=1, 6) /)), &
    364       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'wbils_sic',     &
    365       "Bilan sol "//clnsurf(4),"W/m2", (/ ('', i=1, 6) /)) /)
     360      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'wbils_ter',     &
     361      "Bilan sol "//clnsurf(1),"W/m2", (/ ('', i=1, 9) /)), &
     362      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'wbils_lic',     &
     363      "Bilan sol "//clnsurf(2),"W/m2", (/ ('', i=1, 9) /)), &
     364      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'wbils_oce',     &
     365      "Bilan sol "//clnsurf(3),"W/m2", (/ ('', i=1, 9) /)), &
     366      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'wbils_sic',     &
     367      "Bilan sol "//clnsurf(4),"W/m2", (/ ('', i=1, 9) /)) /)
    366368
    367369  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_wbilo_srf    = (/      &
    368       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'wbilo_ter',          &
    369       "Bilan eau "//clnsurf(1),"kg/(m2*s)", (/ ('', i=1, 6) /)), &
    370       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'wbilo_lic',          &
    371       "Bilan eau "//clnsurf(2),"kg/(m2*s)", (/ ('', i=1, 6) /)), &
    372       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'wbilo_oce',          &
    373       "Bilan eau "//clnsurf(3),"kg/(m2*s)", (/ ('', i=1, 6) /)), &
    374       ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'wbilo_sic',          &
    375       "Bilan eau "//clnsurf(4),"kg/(m2*s)", (/ ('', i=1, 6) /)) /)
    376 
    377   TYPE(ctrl_out), SAVE :: o_cdrm = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    378         'cdrm', 'Momentum drag coef.', '-', (/ ('', i=1, 6) /))
    379   TYPE(ctrl_out), SAVE :: o_cdrh = ctrl_out((/ 1, 10, 10, 7, 10, 10 /), &
    380         'cdrh', 'Heat drag coef.', '-', (/ ('', i=1, 6) /))
    381   TYPE(ctrl_out), SAVE :: o_cldl = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    382         'cldl', 'Low-level cloudiness', '-', (/ ('', i=1, 6) /))
    383   TYPE(ctrl_out), SAVE :: o_cldm = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    384         'cldm', 'Mid-level cloudiness', '-', (/ ('', i=1, 6) /))
    385   TYPE(ctrl_out), SAVE :: o_cldh = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    386         'cldh', 'High-level cloudiness', '-', (/ ('', i=1, 6) /))
    387   TYPE(ctrl_out), SAVE :: o_cldt = ctrl_out((/ 1, 1, 2, 10, 5, 10 /), &
    388         'cldt', 'Total cloudiness', '-', (/ ('', i=1, 6) /))
    389   TYPE(ctrl_out), SAVE :: o_cldq = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    390         'cldq', 'Cloud liquid water path', 'kg/m2', (/ ('', i=1, 6) /))
    391   TYPE(ctrl_out), SAVE :: o_lwp = ctrl_out((/ 1, 5, 10, 10, 10, 10 /), &
    392         'lwp', 'Cloud water path', 'kg/m2', (/ ('', i=1, 6) /))
    393   TYPE(ctrl_out), SAVE :: o_iwp = ctrl_out((/ 1, 5, 10, 10, 10, 10 /), &
    394         'iwp', 'Cloud ice water path', 'kg/m2', (/ ('', i=1, 6) /))
    395   TYPE(ctrl_out), SAVE :: o_ue = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    396         'ue', 'Zonal energy transport', '-', (/ ('', i=1, 6) /))
    397   TYPE(ctrl_out), SAVE :: o_ve = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    398         've', 'Merid energy transport', '-', (/ ('', i=1, 6) /))
    399   TYPE(ctrl_out), SAVE :: o_uq = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    400         'uq', 'Zonal humidity transport', '-', (/ ('', i=1, 6) /))
    401   TYPE(ctrl_out), SAVE :: o_vq = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    402         'vq', 'Merid humidity transport', '-', (/ ('', i=1, 6) /))
    403   TYPE(ctrl_out), SAVE :: o_cape = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    404         'cape', 'Conv avlbl pot ener', 'J/kg', (/ ('', i=1, 6) /))
    405   TYPE(ctrl_out), SAVE :: o_pbase = ctrl_out((/ 1, 5, 10, 10, 10, 10 /), &
    406         'pbase', 'Cld base pressure', 'Pa', (/ ('', i=1, 6) /))
    407   TYPE(ctrl_out), SAVE :: o_ptop = ctrl_out((/ 1, 5, 10, 10, 10, 10 /), &
    408         'ptop', 'Cld top pressure', 'Pa', (/ ('', i=1, 6) /))
    409   TYPE(ctrl_out), SAVE :: o_fbase = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    410         'fbase', 'Cld base mass flux', 'kg/m2/s', (/ ('', i=1, 6) /))
    411   TYPE(ctrl_out), SAVE :: o_plcl = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    412         'plcl', 'Lifting Condensation Level', 'hPa', (/ ('', i=1, 6) /))
    413   TYPE(ctrl_out), SAVE :: o_plfc = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    414         'plfc', 'Level of Free Convection', 'hPa', (/ ('', i=1, 6) /))
    415   TYPE(ctrl_out), SAVE :: o_wbeff = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    416         'wbeff', 'Conv. updraft velocity at LFC (<100)', 'm/s', (/ ('', i=1, 6) /))
    417   TYPE(ctrl_out), SAVE :: o_prw = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    418         'prw', 'Precipitable water', 'kg/m2', (/ ('', i=1, 6) /))
    419   TYPE(ctrl_out), SAVE :: o_s_pblh = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    420         's_pblh', 'Boundary Layer Height', 'm', (/ ('', i=1, 6) /))
    421   TYPE(ctrl_out), SAVE :: o_s_pblt = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    422         's_pblt', 't at Boundary Layer Height', 'K', (/ ('', i=1, 6) /))
    423   TYPE(ctrl_out), SAVE :: o_s_lcl = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    424         's_lcl', 'Condensation level', 'm', (/ ('', i=1, 6) /))
    425   TYPE(ctrl_out), SAVE :: o_s_therm = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    426         's_therm', 'Exces du thermique', 'K', (/ ('', i=1, 6) /))
     370      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'wbilo_ter',          &
     371      "Bilan eau "//clnsurf(1),"kg/(m2*s)", (/ ('', i=1, 9) /)), &
     372      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'wbilo_lic',          &
     373      "Bilan eau "//clnsurf(2),"kg/(m2*s)", (/ ('', i=1, 9) /)), &
     374      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'wbilo_oce',          &
     375      "Bilan eau "//clnsurf(3),"kg/(m2*s)", (/ ('', i=1, 9) /)), &
     376      ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'wbilo_sic',          &
     377      "Bilan eau "//clnsurf(4),"kg/(m2*s)", (/ ('', i=1, 9) /)) /)
     378
     379  TYPE(ctrl_out), SAVE :: o_cdrm = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     380        'cdrm', 'Momentum drag coef.', '-', (/ ('', i=1, 9) /))
     381  TYPE(ctrl_out), SAVE :: o_cdrh = ctrl_out((/ 1, 10, 10, 7, 10, 10, 11, 11, 11 /), &
     382        'cdrh', 'Heat drag coef.', '-', (/ ('', i=1, 9) /))
     383  TYPE(ctrl_out), SAVE :: o_cldl = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     384        'cldl', 'Low-level cloudiness', '-', (/ ('', i=1, 9) /))
     385  TYPE(ctrl_out), SAVE :: o_cldm = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     386        'cldm', 'Mid-level cloudiness', '-', (/ ('', i=1, 9) /))
     387  TYPE(ctrl_out), SAVE :: o_cldh = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     388        'cldh', 'High-level cloudiness', '-', (/ ('', i=1, 9) /))
     389  TYPE(ctrl_out), SAVE :: o_cldt = ctrl_out((/ 1, 1, 2, 10, 5, 10, 11, 11, 11 /), &
     390        'cldt', 'Total cloudiness', '-', (/ ('', i=1, 9) /))
     391  TYPE(ctrl_out), SAVE :: o_cldq = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     392        'cldq', 'Cloud liquid water path', 'kg/m2', (/ ('', i=1, 9) /))
     393  TYPE(ctrl_out), SAVE :: o_lwp = ctrl_out((/ 1, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     394        'lwp', 'Cloud water path', 'kg/m2', (/ ('', i=1, 9) /))
     395  TYPE(ctrl_out), SAVE :: o_iwp = ctrl_out((/ 1, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     396        'iwp', 'Cloud ice water path', 'kg/m2', (/ ('', i=1, 9) /))
     397  TYPE(ctrl_out), SAVE :: o_ue = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     398        'ue', 'Zonal energy transport', '-', (/ ('', i=1, 9) /))
     399  TYPE(ctrl_out), SAVE :: o_ve = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     400        've', 'Merid energy transport', '-', (/ ('', i=1, 9) /))
     401  TYPE(ctrl_out), SAVE :: o_uq = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     402        'uq', 'Zonal humidity transport', '-', (/ ('', i=1, 9) /))
     403  TYPE(ctrl_out), SAVE :: o_vq = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     404        'vq', 'Merid humidity transport', '-', (/ ('', i=1, 9) /))
     405  TYPE(ctrl_out), SAVE :: o_cape = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     406        'cape', 'Conv avlbl pot ener', 'J/kg', (/ ('', i=1, 9) /))
     407  TYPE(ctrl_out), SAVE :: o_pbase = ctrl_out((/ 1, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     408        'pbase', 'Cld base pressure', 'Pa', (/ ('', i=1, 9) /))
     409  TYPE(ctrl_out), SAVE :: o_ptop = ctrl_out((/ 1, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     410        'ptop', 'Cld top pressure', 'Pa', (/ ('', i=1, 9) /))
     411  TYPE(ctrl_out), SAVE :: o_fbase = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     412        'fbase', 'Cld base mass flux', 'kg/m2/s', (/ ('', i=1, 9) /))
     413  TYPE(ctrl_out), SAVE :: o_plcl = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     414        'plcl', 'Lifting Condensation Level', 'hPa', (/ ('', i=1, 9) /))
     415  TYPE(ctrl_out), SAVE :: o_plfc = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     416        'plfc', 'Level of Free Convection', 'hPa', (/ ('', i=1, 9) /))
     417  TYPE(ctrl_out), SAVE :: o_wbeff = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     418        'wbeff', 'Conv. updraft velocity at LFC (<100)', 'm/s', (/ ('', i=1, 9) /))
     419  TYPE(ctrl_out), SAVE :: o_prw = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     420        'prw', 'Precipitable water', 'kg/m2', (/ ('', i=1, 9) /))
     421  TYPE(ctrl_out), SAVE :: o_s_pblh = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     422        's_pblh', 'Boundary Layer Height', 'm', (/ ('', i=1, 9) /))
     423  TYPE(ctrl_out), SAVE :: o_s_pblt = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     424        's_pblt', 't at Boundary Layer Height', 'K', (/ ('', i=1, 9) /))
     425  TYPE(ctrl_out), SAVE :: o_s_lcl = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     426        's_lcl', 'Condensation level', 'm', (/ ('', i=1, 9) /))
     427  TYPE(ctrl_out), SAVE :: o_s_therm = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     428        's_therm', 'Exces du thermique', 'K', (/ ('', i=1, 9) /))
    427429  !IM : Les champs suivants (s_capCL, s_oliqCL, s_cteiCL, s_trmb1, s_trmb2, s_trmb3) ne sont pas definis dans HBTM.F
    428   ! type(ctrl_out),save :: o_s_capCL      = ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'s_capCL', &
    429 !       (/ ('', i=1, 6) /))
    430   ! type(ctrl_out),save :: o_s_oliqCL     = ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'s_oliqCL', &
    431 !       (/ ('', i=1, 6) /))
    432   ! type(ctrl_out),save :: o_s_cteiCL     = ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'s_cteiCL', &
    433 !       (/ ('', i=1, 6) /))
    434   ! type(ctrl_out),save :: o_s_trmb1      = ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'s_trmb1', &
    435 !       (/ ('', i=1, 6) /))
    436   ! type(ctrl_out),save :: o_s_trmb2      = ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'s_trmb2', &
    437 !       (/ ('', i=1, 6) /))
    438   ! type(ctrl_out),save :: o_s_trmb3      = ctrl_out((/ 1, 10, 10, 10, 10, 10 /),'s_trmb3', &
    439         !(/ ('', i=1, 6) /))
    440   TYPE(ctrl_out), SAVE :: o_slab_bils = ctrl_out((/ 1, 1, 10, 10, 10, 10 /), &
    441         'slab_bils_oce', 'Bilan au sol sur ocean slab', 'W/m2', (/ ('', i=1, 6) /))
    442   TYPE(ctrl_out), SAVE :: o_ale_bl = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    443         'ale_bl', 'ALE BL', 'm2/s2', (/ ('', i=1, 6) /))
    444   TYPE(ctrl_out), SAVE :: o_alp_bl = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    445         'alp_bl', 'ALP BL', 'm2/s2', (/ ('', i=1, 6) /))
    446   TYPE(ctrl_out), SAVE :: o_ale_wk = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    447         'ale_wk', 'ALE WK', 'm2/s2', (/ ('', i=1, 6) /))
    448   TYPE(ctrl_out), SAVE :: o_alp_wk = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    449         'alp_wk', 'ALP WK', 'm2/s2', (/ ('', i=1, 6) /))
    450   TYPE(ctrl_out), SAVE :: o_ale = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    451         'ale', 'ALE', 'm2/s2', (/ ('', i=1, 6) /))
    452   TYPE(ctrl_out), SAVE :: o_alp = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    453         'alp', 'ALP', 'W/m2', (/ ('', i=1, 6) /))
    454   TYPE(ctrl_out), SAVE :: o_cin = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    455         'cin', 'Convective INhibition', 'm2/s2', (/ ('', i=1, 6) /))
    456   TYPE(ctrl_out), SAVE :: o_wape = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    457         'wape', '', '', (/ ('', i=1, 6) /))
     430  ! type(ctrl_out),save :: o_s_capCL      = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'s_capCL', &
     431!       (/ ('', i=1, 9) /))
     432  ! type(ctrl_out),save :: o_s_oliqCL     = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'s_oliqCL', &
     433!       (/ ('', i=1, 9) /))
     434  ! type(ctrl_out),save :: o_s_cteiCL     = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'s_cteiCL', &
     435!       (/ ('', i=1, 9) /))
     436  ! type(ctrl_out),save :: o_s_trmb1      = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'s_trmb1', &
     437!       (/ ('', i=1, 9) /))
     438  ! type(ctrl_out),save :: o_s_trmb2      = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'s_trmb2', &
     439!       (/ ('', i=1, 9) /))
     440  ! type(ctrl_out),save :: o_s_trmb3      = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /),'s_trmb3', &
     441        !(/ ('', i=1, 9) /))
     442  TYPE(ctrl_out), SAVE :: o_slab_bils = ctrl_out((/ 1, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     443        'slab_bils_oce', 'Bilan au sol sur ocean slab', 'W/m2', (/ ('', i=1, 9) /))
     444  TYPE(ctrl_out), SAVE :: o_ale_bl = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     445        'ale_bl', 'ALE BL', 'm2/s2', (/ ('', i=1, 9) /))
     446  TYPE(ctrl_out), SAVE :: o_alp_bl = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     447        'alp_bl', 'ALP BL', 'm2/s2', (/ ('', i=1, 9) /))
     448  TYPE(ctrl_out), SAVE :: o_ale_wk = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     449        'ale_wk', 'ALE WK', 'm2/s2', (/ ('', i=1, 9) /))
     450  TYPE(ctrl_out), SAVE :: o_alp_wk = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     451        'alp_wk', 'ALP WK', 'm2/s2', (/ ('', i=1, 9) /))
     452  TYPE(ctrl_out), SAVE :: o_ale = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     453        'ale', 'ALE', 'm2/s2', (/ ('', i=1, 9) /))
     454  TYPE(ctrl_out), SAVE :: o_alp = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     455        'alp', 'ALP', 'W/m2', (/ ('', i=1, 9) /))
     456  TYPE(ctrl_out), SAVE :: o_cin = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     457        'cin', 'Convective INhibition', 'm2/s2', (/ ('', i=1, 9) /))
     458  TYPE(ctrl_out), SAVE :: o_wape = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     459        'wape', '', '', (/ ('', i=1, 9) /))
    458460
    459461!!! nrlmd le 10/04/2012
    460462
    461463!-------Spectre de thermiques de type 2 au LCL
    462   TYPE(ctrl_out), SAVE :: o_n2 = ctrl_out((/ 1, 1, 1, 6, 10, 10 /), &
    463         'n2', 'Nombre de panaches de type 2', ' ', (/ ('', i=1, 6) /))
    464   TYPE(ctrl_out), SAVE :: o_s2 = ctrl_out((/ 1, 1, 1, 6, 10, 10 /), &
    465         's2', 'Surface moyenne des panaches de type 2', 'm2', (/ ('', i=1, 6) /))
     464  TYPE(ctrl_out), SAVE :: o_n2 = ctrl_out((/ 1, 1, 1, 6, 10, 10, 11, 11, 11 /), &
     465        'n2', 'Nombre de panaches de type 2', ' ', (/ ('', i=1, 9) /))
     466  TYPE(ctrl_out), SAVE :: o_s2 = ctrl_out((/ 1, 1, 1, 6, 10, 10, 11, 11, 11 /), &
     467        's2', 'Surface moyenne des panaches de type 2', 'm2', (/ ('', i=1, 9) /))
    466468                                                                             
    467469!-------Déclenchement stochastique                                           
    468   TYPE(ctrl_out), SAVE :: o_proba_notrig = ctrl_out((/ 1, 1, 1, 6, 10, 10 /), &
     470  TYPE(ctrl_out), SAVE :: o_proba_notrig = ctrl_out((/ 1, 1, 1, 6, 10, 10, 11, 11, 11 /), &
    469471        'proba_notrig', &
    470                          'Probabilité de non-déclenchement', ' ', (/ ('', i=1, 6) /))
    471   TYPE(ctrl_out), SAVE :: o_random_notrig = ctrl_out((/ 1, 1, 1, 6, 10, 10 /), &
     472                         'Probabilité de non-déclenchement', ' ', (/ ('', i=1, 9) /))
     473  TYPE(ctrl_out), SAVE :: o_random_notrig = ctrl_out((/ 1, 1, 1, 6, 10, 10, 11, 11, 11 /), &
    472474        'random_notrig', &
    473                          'Tirage aléatoire de non-déclenchement', ' ', (/ ('', i=1, 6) /))
    474   TYPE(ctrl_out), SAVE :: o_ale_bl_stat = ctrl_out((/ 1, 1, 1, 6, 10, 10 /), &
     475                         'Tirage aléatoire de non-déclenchement', ' ', (/ ('', i=1, 9) /))
     476  TYPE(ctrl_out), SAVE :: o_ale_bl_stat = ctrl_out((/ 1, 1, 1, 6, 10, 10, 11, 11, 11 /), &
    475477        'ale_bl_stat', &
    476        'ALE_BL_STAT', 'm2/s2', (/ ('', i=1, 6) /))
    477   TYPE(ctrl_out), SAVE :: o_ale_bl_trig = ctrl_out((/ 1, 1, 1, 6, 10, 10 /), &
     478       'ALE_BL_STAT', 'm2/s2', (/ ('', i=1, 9) /))
     479  TYPE(ctrl_out), SAVE :: o_ale_bl_trig = ctrl_out((/ 1, 1, 1, 6, 10, 10, 11, 11, 11 /), &
    478480        'ale_bl_trig', &
    479        'ALE_BL_STAT + Condition P>Pseuil', 'm2/s2', (/ ('', i=1, 6) /))
     481       'ALE_BL_STAT + Condition P>Pseuil', 'm2/s2', (/ ('', i=1, 9) /))
    480482
    481483!-------Fermeture statistique
    482   TYPE(ctrl_out), SAVE :: o_alp_bl_det = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    483         'alp_bl_det', 'ALP_BL_DET', 'W/m2', (/ ('', i=1, 6) /))
    484   TYPE(ctrl_out), SAVE :: o_alp_bl_fluct_m = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    485         'alp_bl_fluct_m', 'ALP_BL_FLUCT_M', 'W/m2', (/ ('', i=1, 6) /))
    486   TYPE(ctrl_out), SAVE :: o_alp_bl_fluct_tke = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    487         'alp_bl_fluct_tke', 'ALP_BL_FLUCT_TKE', 'W/m2', (/ ('', i=1, 6) /))
    488   TYPE(ctrl_out), SAVE :: o_alp_bl_conv = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    489         'alp_bl_conv', 'ALP_BL_CONV', 'W/m2', (/ ('', i=1, 6) /))
    490   TYPE(ctrl_out), SAVE :: o_alp_bl_stat = ctrl_out((/ 1, 1, 1, 10, 10, 10 /), &
    491         'alp_bl_stat', 'ALP_BL_STAT', 'W/m2', (/ ('', i=1, 6) /))
     484  TYPE(ctrl_out), SAVE :: o_alp_bl_det = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     485        'alp_bl_det', 'ALP_BL_DET', 'W/m2', (/ ('', i=1, 9) /))
     486  TYPE(ctrl_out), SAVE :: o_alp_bl_fluct_m = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     487        'alp_bl_fluct_m', 'ALP_BL_FLUCT_M', 'W/m2', (/ ('', i=1, 9) /))
     488  TYPE(ctrl_out), SAVE :: o_alp_bl_fluct_tke = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     489        'alp_bl_fluct_tke', 'ALP_BL_FLUCT_TKE', 'W/m2', (/ ('', i=1, 9) /))
     490  TYPE(ctrl_out), SAVE :: o_alp_bl_conv = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     491        'alp_bl_conv', 'ALP_BL_CONV', 'W/m2', (/ ('', i=1, 9) /))
     492  TYPE(ctrl_out), SAVE :: o_alp_bl_stat = ctrl_out((/ 1, 1, 1, 10, 10, 10, 11, 11, 11 /), &
     493        'alp_bl_stat', 'ALP_BL_STAT', 'W/m2', (/ ('', i=1, 9) /))
    492494
    493495!!! fin nrlmd le 10/04/2012
     
    496498
    497499  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_uSTDlevs     = (/                    &
    498       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'u850', "Zonal wind 1hPa", "m/s",     &
    499       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    500       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'u700', "Zonal wind 2hPa", "m/s",     &
    501       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    502       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'u500', "Zonal wind 3hPa", "m/s",     &
    503       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    504       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'u200', "Zonal wind 4hPa", "m/s",     &
    505       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    506       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'u100', "Zonal wind 5hPa", "m/s",     &
    507       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    508       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'u50', "Zonal wind 6hPa", "m/s",     &
    509       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    510       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'u10', "Zonal wind 7hPa", "m/s",     &
    511       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
     500      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'u850', "Zonal wind 1hPa", "m/s",     &
     501      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     502      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'u700', "Zonal wind 2hPa", "m/s",     &
     503      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     504      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'u500', "Zonal wind 3hPa", "m/s",     &
     505      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     506      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'u200', "Zonal wind 4hPa", "m/s",     &
     507      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     508      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'u100', "Zonal wind 5hPa", "m/s",     &
     509      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     510      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'u50', "Zonal wind 6hPa", "m/s",     &
     511      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     512      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'u10', "Zonal wind 7hPa", "m/s",     &
     513      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
    512514
    513515  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_vSTDlevs     = (/                     &
    514       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'v850', "Meridional wind 1hPa", "m/s", &
    515       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
    516       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'v700', "Meridional wind 2hPa", "m/s", &
    517       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
    518       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'v500', "Meridional wind 3hPa", "m/s", &
    519       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
    520       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'v200', "Meridional wind 4hPa", "m/s", &
    521       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
    522       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'v100', "Meridional wind 5hPa", "m/s", &
    523       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
    524       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'v50', "Meridional wind 6hPa", "m/s",  &
    525       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
    526       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'v10', "Meridional wind 7hPa", "m/s",  &
    527       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
     516      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'v850', "Meridional wind 1hPa", "m/s", &
     517      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
     518      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'v700', "Meridional wind 2hPa", "m/s", &
     519      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
     520      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'v500', "Meridional wind 3hPa", "m/s", &
     521      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
     522      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'v200', "Meridional wind 4hPa", "m/s", &
     523      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
     524      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'v100', "Meridional wind 5hPa", "m/s", &
     525      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
     526      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'v50', "Meridional wind 6hPa", "m/s",  &
     527      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)),  &
     528      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'v10', "Meridional wind 7hPa", "m/s",  &
     529      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
    528530
    529531  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_wSTDlevs     = (/                    &
    530       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'w850', "Vertical wind 1hPa", "Pa/s", &
    531       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    532       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'w700', "Vertical wind 2hPa", "Pa/s", &
    533       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    534       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'w500', "Vertical wind 3hPa", "Pa/s", &
    535       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    536       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'w200', "Vertical wind 4hPa", "Pa/s", &
    537       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    538       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'w100', "Vertical wind 5hPa", "Pa/s", &
    539       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    540       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'w50', "Vertical wind 6hPa", "Pa/s",  &
    541       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    542       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'w10', "Vertical wind 7hPa", "Pa/s",  &
    543       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
     532      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w850', "Vertical wind 1hPa", "Pa/s", &
     533      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     534      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w700', "Vertical wind 2hPa", "Pa/s", &
     535      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     536      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w500', "Vertical wind 3hPa", "Pa/s", &
     537      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     538      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w200', "Vertical wind 4hPa", "Pa/s", &
     539      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     540      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w100', "Vertical wind 5hPa", "Pa/s", &
     541      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     542      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w50', "Vertical wind 6hPa", "Pa/s",  &
     543      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     544      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w10', "Vertical wind 7hPa", "Pa/s",  &
     545      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
    544546
    545547  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_tSTDlevs     = (/                    &
    546       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'t850', "Temperature 1hPa", "K",      &
    547       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    548       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'t700', "Temperature 2hPa", "K",      &
    549       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    550       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'t500', "Temperature 3hPa", "K",      &
    551       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    552       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'t200', "Temperature 4hPa", "K",      &
    553       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    554       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'t100', "Temperature 5hPa", "K",      &
    555       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    556       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'t50',  "Temperature 6hPa", "K",      &
    557       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    558       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'t10',  "Temperature 7hPa", "K",      &
    559       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
     548      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t850', "Temperature 1hPa", "K",      &
     549      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     550      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t700', "Temperature 2hPa", "K",      &
     551      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     552      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t500', "Temperature 3hPa", "K",      &
     553      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     554      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t200', "Temperature 4hPa", "K",      &
     555      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     556      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t100', "Temperature 5hPa", "K",      &
     557      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     558      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t50',  "Temperature 6hPa", "K",      &
     559      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     560      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t10',  "Temperature 7hPa", "K",      &
     561      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
    560562
    561563  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_qSTDlevs     = (/                             &
    562       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'q850', "Specific humidity 1hPa",              &
    563       "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    564       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'q700', "Specific humidity 2hPa",              &
    565       "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    566       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'q500', "Specific humidity 3hPa",              &
    567       "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    568       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'q200', "Specific humidity 4hPa",              &
    569       "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    570       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'q100', "Specific humidity 5hPa",              &
    571       "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    572       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'q50', "Specific humidity 6hPa",               &
    573       "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    574       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'q10', "Specific humidity 7hPa",              &
    575       "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
     564      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q850', "Specific humidity 1hPa", &
     565      "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     566      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q700', "Specific humidity 2hPa", &
     567      "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     568      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q500', "Specific humidity 3hPa", &
     569      "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     570      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q200', "Specific humidity 4hPa", &
     571      "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     572      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q100', "Specific humidity 5hPa", &
     573      "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     574      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q50', "Specific humidity 6hPa",  &
     575      "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     576      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q10', "Specific humidity 7hPa", &
     577      "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
    576578
    577579  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_zSTDlevs   = (/                           &
    578       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'z850', "Geopotential height 1hPa",        &
    579       "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    580       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'z700', "Geopotential height 2hPa",        &
    581       "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    582       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'z500', "Geopotential height 3hPa",        &
    583       "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    584       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'z200', "Geopotential height 4hPa",        &
    585       "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    586       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'z100', "Geopotential height 5hPa",        &
    587       "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    588       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'z50', "Geopotential height 6hPa",         &
    589       "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    590       ctrl_out((/ 1, 7, 7, 10, 10, 10 /),'z10', "Geopotential height 7hPa",         &
    591       "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
    592 
    593   TYPE(ctrl_out), SAVE :: o_t_oce_sic = ctrl_out((/ 1, 10, 10, 10, 10, 10 /), &
    594         't_oce_sic', 'Temp mixte oce-sic', 'K', (/ ('', i=1, 6) /))
    595   TYPE(ctrl_out), SAVE :: o_weakinv = ctrl_out((/ 10, 1, 10, 10, 10, 10 /), &
    596         'weakinv', 'Weak inversion', '-', (/ ('', i=1, 6) /))
    597   TYPE(ctrl_out), SAVE :: o_dthmin = ctrl_out((/ 10, 1, 10, 10, 10, 10 /), &
    598         'dthmin', 'dTheta mini', 'K/m', (/ ('', i=1, 6) /))
     580      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z850', "Geopotential height 1hPa",        &
     581      "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     582      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z700', "Geopotential height 2hPa",        &
     583      "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     584      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z500', "Geopotential height 3hPa",        &
     585      "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     586      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z200', "Geopotential height 4hPa",        &
     587      "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     588      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z100', "Geopotential height 5hPa",        &
     589      "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     590      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z50', "Geopotential height 6hPa",         &
     591      "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
     592      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z10', "Geopotential height 7hPa",         &
     593      "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)) /)
     594
     595  TYPE(ctrl_out), SAVE :: o_t_oce_sic = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     596        't_oce_sic', 'Temp mixte oce-sic', 'K', (/ ('', i=1, 9) /))
     597  TYPE(ctrl_out), SAVE :: o_weakinv = ctrl_out((/ 10, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     598        'weakinv', 'Weak inversion', '-', (/ ('', i=1, 9) /))
     599  TYPE(ctrl_out), SAVE :: o_dthmin = ctrl_out((/ 10, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     600        'dthmin', 'dTheta mini', 'K/m', (/ ('', i=1, 9) /))
    599601
    600602  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_u10_srf      = (/ &
    601       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'u10_ter', "", "", (/ ('', i=1, 6) /)), &
    602       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'u10_lic', "", "", (/ ('', i=1, 6) /)), &
    603       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'u10_oce', "", "", (/ ('', i=1, 6) /)), &
    604       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'u10_sic', "", "", (/ ('', i=1, 6) /)) /)
     603      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'u10_ter', "", "", (/ ('', i=1, 9) /)), &
     604      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'u10_lic', "", "", (/ ('', i=1, 9) /)), &
     605      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'u10_oce', "", "", (/ ('', i=1, 9) /)), &
     606      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'u10_sic', "", "", (/ ('', i=1, 9) /)) /)
    605607
    606608  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_v10_srf      = (/ &
    607       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'v10_ter', "", "", (/ ('', i=1, 6) /)), &
    608       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'v10_lic', "", "", (/ ('', i=1, 6) /)), &
    609       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'v10_oce', "", "", (/ ('', i=1, 6) /)), &
    610       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'v10_sic', "", "", (/ ('', i=1, 6) /)) /)
    611 
    612   TYPE(ctrl_out), SAVE :: o_cldtau = ctrl_out((/ 10, 5, 10, 10, 10, 10 /), &
    613         'cldtau', 'Cloud optical thickness', '1', (/ ('', i=1, 6) /))
    614   TYPE(ctrl_out), SAVE :: o_cldemi = ctrl_out((/ 10, 5, 10, 10, 10, 10 /), &
    615         'cldemi', 'Cloud optical emissivity', '1', (/ ('', i=1, 6) /))
    616   TYPE(ctrl_out), SAVE :: o_rh2m = ctrl_out((/ 5, 5, 10, 10, 10, 10 /), &
    617         'rh2m', 'Relative humidity at 2m', '%', (/ ('', i=1, 6) /))
    618   TYPE(ctrl_out), SAVE :: o_rh2m_min = ctrl_out((/ 10, 5, 10, 10, 10, 10 /), &
     609      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'v10_ter', "", "", (/ ('', i=1, 9) /)), &
     610      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'v10_lic', "", "", (/ ('', i=1, 9) /)), &
     611      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'v10_oce', "", "", (/ ('', i=1, 9) /)), &
     612      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'v10_sic', "", "", (/ ('', i=1, 9) /)) /)
     613
     614  TYPE(ctrl_out), SAVE :: o_cldtau = ctrl_out((/ 10, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     615        'cldtau', 'Cloud optical thickness', '1', (/ ('', i=1, 9) /))
     616  TYPE(ctrl_out), SAVE :: o_cldemi = ctrl_out((/ 10, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     617        'cldemi', 'Cloud optical emissivity', '1', (/ ('', i=1, 9) /))
     618  TYPE(ctrl_out), SAVE :: o_rh2m = ctrl_out((/ 5, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     619        'rh2m', 'Relative humidity at 2m', '%', (/ ('', i=1, 9) /))
     620  TYPE(ctrl_out), SAVE :: o_rh2m_min = ctrl_out((/ 10, 5, 10, 10, 10, 10, 11, 11, 11 /), &
    619621        'rh2m_min', 'Min Relative humidity at 2m', '%',                        &
    620       (/ 't_min(X)', 't_min(X)', 't_min(X)', 't_min(X)', 't_min(X)', 't_min(X)' /))
    621   TYPE(ctrl_out), SAVE :: o_rh2m_max = ctrl_out((/ 10, 5, 10, 10, 10, 10 /), &
     622      (/ 't_min(X)', 't_min(X)', 't_min(X)', 't_min(X)', 't_min(X)', 't_min(X)', 't_min(X)', 't_min(X)', 't_min(X)' /))
     623  TYPE(ctrl_out), SAVE :: o_rh2m_max = ctrl_out((/ 10, 5, 10, 10, 10, 10, 11, 11, 11 /), &
    622624        'rh2m_max', 'Max Relative humidity at 2m', '%',                        &
    623       (/ 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)' /))
    624   TYPE(ctrl_out), SAVE :: o_qsat2m = ctrl_out((/ 10, 5, 10, 10, 10, 10 /), &
    625         'qsat2m', 'Saturant humidity at 2m', '%', (/ ('', i=1, 6) /))
    626   TYPE(ctrl_out), SAVE :: o_tpot = ctrl_out((/ 10, 5, 10, 10, 10, 10 /), &
    627         'tpot', 'Surface air potential temperature', 'K', (/ ('', i=1, 6) /))
    628   TYPE(ctrl_out), SAVE :: o_tpote = ctrl_out((/ 10, 5, 10, 10, 10, 10 /), &
     625      (/ 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', &
     626         't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)' /))
     627  TYPE(ctrl_out), SAVE :: o_qsat2m = ctrl_out((/ 10, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     628        'qsat2m', 'Saturant humidity at 2m', '%', (/ ('', i=1, 9) /))
     629  TYPE(ctrl_out), SAVE :: o_tpot = ctrl_out((/ 10, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     630        'tpot', 'Surface air potential temperature', 'K', (/ ('', i=1, 9) /))
     631  TYPE(ctrl_out), SAVE :: o_tpote = ctrl_out((/ 10, 5, 10, 10, 10, 10, 11, 11, 11 /), &
    629632        'tpote', &
    630       'Surface air equivalent potential temperature', 'K', (/ ('', i=1, 6) /))
    631   TYPE(ctrl_out), SAVE :: o_tke = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    632         'tke ', 'TKE', 'm2/s2', (/ ('', i=1, 6) /))
    633   TYPE(ctrl_out), SAVE :: o_tke_max = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
     633      'Surface air equivalent potential temperature', 'K', (/ ('', i=1, 9) /))
     634  TYPE(ctrl_out), SAVE :: o_tke = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     635        'tke ', 'TKE', 'm2/s2', (/ ('', i=1, 9) /))
     636  TYPE(ctrl_out), SAVE :: o_tke_max = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
    634637        'tke_max', 'TKE max', 'm2/s2',                                        &
    635       (/ 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)' /))
     638      (/ 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', &
     639         't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)' /))
    636640
    637641  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_tke_srf      = (/             &
    638       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'tke_ter',                   &
    639       "Max Turb. Kinetic Energy "//clnsurf(1),"-", (/ ('', i=1, 6) /)), &
    640       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'tke_lic',                   &
    641       "Max Turb. Kinetic Energy "//clnsurf(2),"-", (/ ('', i=1, 6) /)), &
    642       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'tke_oce',                   &
    643       "Max Turb. Kinetic Energy "//clnsurf(3),"-", (/ ('', i=1, 6) /)), &
    644       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'tke_sic',                   &
    645       "Max Turb. Kinetic Energy "//clnsurf(4),"-", (/ ('', i=1, 6) /)) /)
    646 
    647   TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_tke_max_srf  = (/                                  &
    648       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'tke_max_ter',                                    &
    649       "Max Turb. Kinetic Energy "//clnsurf(1),"-",                                           &
    650       (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /)), &
    651       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'tke_max_lic',                                    &
    652       "Max Turb. Kinetic Energy "//clnsurf(2),"-",                                           &
    653       (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /)), &
    654       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'tke_max_oce',                                    &
    655       "Max Turb. Kinetic Energy "//clnsurf(3),"-",                                           &
    656       (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /)), &
    657       ctrl_out((/ 10, 4, 10, 10, 10, 10 /),'tke_max_sic',                                    &
    658       "Max Turb. Kinetic Energy "//clnsurf(4),"-",                                           &
    659       (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /)) /)
    660 
    661   TYPE(ctrl_out), SAVE :: o_kz = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    662         'kz', 'Kz melange', 'm2/s', (/ ('', i=1, 6) /))
    663   TYPE(ctrl_out), SAVE :: o_kz_max = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
     642      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'tke_ter',       &
     643      "Max Turb. Kinetic Energy "//clnsurf(1),"-", (/ ('', i=1, 9) /)), &
     644      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'tke_lic',       &
     645      "Max Turb. Kinetic Energy "//clnsurf(2),"-", (/ ('', i=1, 9) /)), &
     646      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'tke_oce',       &
     647      "Max Turb. Kinetic Energy "//clnsurf(3),"-", (/ ('', i=1, 9) /)), &
     648      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'tke_sic',       &
     649      "Max Turb. Kinetic Energy "//clnsurf(4),"-", (/ ('', i=1, 9) /)) /)
     650
     651  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_tke_max_srf  = (/                          &
     652      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'tke_max_ter',                &
     653      "Max Turb. Kinetic Energy "//clnsurf(1),"-",                                   &
     654      (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", &
     655         "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /)), &
     656      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'tke_max_lic',                &
     657      "Max Turb. Kinetic Energy "//clnsurf(2),"-",                                   &
     658      (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", &
     659         "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /)), &
     660      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'tke_max_oce',                &
     661      "Max Turb. Kinetic Energy "//clnsurf(3),"-",                                   &
     662      (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", &
     663         "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /)), &
     664      ctrl_out((/ 10, 4, 10, 10, 10, 10, 11, 11, 11 /),'tke_max_sic',                &
     665      "Max Turb. Kinetic Energy "//clnsurf(4),"-",                                   &
     666      (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", &
     667         "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /)) /)
     668
     669  TYPE(ctrl_out), SAVE :: o_kz = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     670        'kz', 'Kz melange', 'm2/s', (/ ('', i=1, 9) /))
     671  TYPE(ctrl_out), SAVE :: o_kz_max = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
    664672        'kz_max', 'Kz melange max', 'm2/s',                                  &
    665       (/ 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)' /))
    666   TYPE(ctrl_out), SAVE :: o_SWnetOR = ctrl_out((/ 10, 10, 2, 10, 10, 10 /), &
    667         'SWnetOR', 'Sfce net SW radiation OR', 'W/m2', (/ ('', i=1, 6) /))
    668   TYPE(ctrl_out), SAVE :: o_SWdownOR = ctrl_out((/ 10, 10, 2, 10, 10, 10 /), &
    669         'SWdownOR', 'Sfce incident SW radiation OR', 'W/m2', (/ ('', i=1, 6) /))
    670   TYPE(ctrl_out), SAVE :: o_LWdownOR = ctrl_out((/ 10, 10, 2, 10, 10, 10 /), &
    671         'LWdownOR', 'Sfce incident LW radiation OR', 'W/m2', (/ ('', i=1, 6) /))
    672   TYPE(ctrl_out), SAVE :: o_snowl = ctrl_out((/ 10, 1, 10, 10, 10, 10 /), &
    673         'snowl', 'Solid Large-scale Precip.', 'kg/(m2*s)', (/ ('', i=1, 6) /))
    674   TYPE(ctrl_out), SAVE :: o_cape_max = ctrl_out((/ 10, 1, 10, 10, 10, 10 /), &
     673      (/ 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', 't_max(X)', &
     674         't_max(X)', "t_max(X)", "t_max(X)", "t_max(X)" /))
     675  TYPE(ctrl_out), SAVE :: o_SWnetOR = ctrl_out((/ 10, 10, 2, 10, 10, 10, 11, 11, 11 /), &
     676        'SWnetOR', 'Sfce net SW radiation OR', 'W/m2', (/ ('', i=1, 9) /))
     677  TYPE(ctrl_out), SAVE :: o_SWdownOR = ctrl_out((/ 10, 10, 2, 10, 10, 10, 11, 11, 11 /), &
     678        'SWdownOR', 'Sfce incident SW radiation OR', 'W/m2', (/ ('', i=1, 9) /))
     679  TYPE(ctrl_out), SAVE :: o_LWdownOR = ctrl_out((/ 10, 10, 2, 10, 10, 10, 11, 11, 11 /), &
     680        'LWdownOR', 'Sfce incident LW radiation OR', 'W/m2', (/ ('', i=1, 9) /))
     681  TYPE(ctrl_out), SAVE :: o_snowl = ctrl_out((/ 10, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     682        'snowl', 'Solid Large-scale Precip.', 'kg/(m2*s)', (/ ('', i=1, 9) /))
     683  TYPE(ctrl_out), SAVE :: o_cape_max = ctrl_out((/ 10, 1, 10, 10, 10, 10, 11, 11, 11 /), &
    675684        'cape_max', 'CAPE max.', 'J/kg',                                       &
    676       (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /))
    677   TYPE(ctrl_out), SAVE :: o_solldown = ctrl_out((/ 10, 1, 10, 10, 10, 10 /), &
    678         'solldown', 'Down. IR rad. at surface', 'W/m2', (/ ('', i=1, 6) /))
    679   TYPE(ctrl_out), SAVE :: o_dtsvdfo = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    680         'dtsvdfo', 'Boundary-layer dTs(o)', 'K/s', (/ ('', i=1, 6) /))
    681   TYPE(ctrl_out), SAVE :: o_dtsvdft = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    682         'dtsvdft', 'Boundary-layer dTs(t)', 'K/s', (/ ('', i=1, 6) /))
    683   TYPE(ctrl_out), SAVE :: o_dtsvdfg = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    684         'dtsvdfg', 'Boundary-layer dTs(g)', 'K/s', (/ ('', i=1, 6) /))
    685   TYPE(ctrl_out), SAVE :: o_dtsvdfi = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    686         'dtsvdfi', 'Boundary-layer dTs(g)', 'K/s', (/ ('', i=1, 6) /))
    687   TYPE(ctrl_out), SAVE :: o_rugs = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    688         'rugs', 'rugosity', '-', (/ ('', i=1, 6) /))
    689   TYPE(ctrl_out), SAVE :: o_topswad = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    690         'topswad', 'ADE at TOA', 'W/m2', (/ ('', i=1, 6) /))
    691   TYPE(ctrl_out), SAVE :: o_topswad0 = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    692         'topswad0', 'ADE clear-sky at TOA', 'W/m2', (/ ('', i=1, 6) /))
    693   TYPE(ctrl_out), SAVE :: o_topswai = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    694         'topswai', 'AIE at TOA', 'W/m2', (/ ('', i=1, 6) /))
    695   TYPE(ctrl_out), SAVE :: o_solswad = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    696         'solswad', 'ADE at SRF', 'W/m2', (/ ('', i=1, 6) /))
    697   TYPE(ctrl_out), SAVE :: o_solswad0 = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    698         'solswad0', 'ADE clear-sky at SRF', 'W/m2', (/ ('', i=1, 6) /))
    699   TYPE(ctrl_out), SAVE :: o_solswai = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    700         'solswai', 'AIE at SFR', 'W/m2', (/ ('', i=1, 6) /))
    701 
    702 !  type(ctrl_out),save,dimension(10) :: o_tausumaero  = (/ ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_ASBCM', &
    703 !       (/ ('', i=1, 6) /)), &
     685      (/ "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)", &
     686         "t_max(X)", "t_max(X)", "t_max(X)", "t_max(X)" /))
     687  TYPE(ctrl_out), SAVE :: o_solldown = ctrl_out((/ 10, 1, 10, 10, 10, 10, 11, 11, 11 /), &
     688        'solldown', 'Down. IR rad. at surface', 'W/m2', (/ ('', i=1, 9) /))
     689  TYPE(ctrl_out), SAVE :: o_dtsvdfo = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     690        'dtsvdfo', 'Boundary-layer dTs(o)', 'K/s', (/ ('', i=1, 9) /))
     691  TYPE(ctrl_out), SAVE :: o_dtsvdft = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     692        'dtsvdft', 'Boundary-layer dTs(t)', 'K/s', (/ ('', i=1, 9) /))
     693  TYPE(ctrl_out), SAVE :: o_dtsvdfg = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     694        'dtsvdfg', 'Boundary-layer dTs(g)', 'K/s', (/ ('', i=1, 9) /))
     695  TYPE(ctrl_out), SAVE :: o_dtsvdfi = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     696        'dtsvdfi', 'Boundary-layer dTs(g)', 'K/s', (/ ('', i=1, 9) /))
     697  TYPE(ctrl_out), SAVE :: o_rugs = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     698        'rugs', 'rugosity', '-', (/ ('', i=1, 9) /))
     699  TYPE(ctrl_out), SAVE :: o_topswad = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     700        'topswad', 'ADE at TOA', 'W/m2', (/ ('', i=1, 9) /))
     701  TYPE(ctrl_out), SAVE :: o_topswad0 = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     702        'topswad0', 'ADE clear-sky at TOA', 'W/m2', (/ ('', i=1, 9) /))
     703  TYPE(ctrl_out), SAVE :: o_topswai = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     704        'topswai', 'AIE at TOA', 'W/m2', (/ ('', i=1, 9) /))
     705  TYPE(ctrl_out), SAVE :: o_solswad = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     706        'solswad', 'ADE at SRF', 'W/m2', (/ ('', i=1, 9) /))
     707  TYPE(ctrl_out), SAVE :: o_solswad0 = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     708        'solswad0', 'ADE clear-sky at SRF', 'W/m2', (/ ('', i=1, 9) /))
     709  TYPE(ctrl_out), SAVE :: o_solswai = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     710        'solswai', 'AIE at SFR', 'W/m2', (/ ('', i=1, 9) /))
     711
     712!  type(ctrl_out),save,dimension(10) :: o_tausumaero  = (/ ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_ASBCM', &
     713!       (/ ('', i=1, 9) /)), &
    704714  type(ctrl_out),save,dimension(11) :: o_tausumaero  =                           &
    705     (/ ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_ASBCM',                        &
    706       "Aerosol Optical depth at 550 nm "//name_aero(1),"1", (/ ('', i=1, 6) /)), &
    707        ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_ASPOMM',                       &
    708       "Aerosol Optical depth at 550 nm "//name_aero(2),"1", (/ ('', i=1, 6) /)), &
    709        ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_ASSO4M',                       &
    710       "Aerosol Optical depth at 550 nm "//name_aero(3),"1", (/ ('', i=1, 6) /)), &
    711        ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_CSSO4M',                       &
    712       "Aerosol Optical depth at 550 nm "//name_aero(4),"1", (/ ('', i=1, 6) /)), &
    713        ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_SSSSM',                        &
    714       "Aerosol Optical depth at 550 nm "//name_aero(5),"1", (/ ('', i=1, 6) /)), &
    715        ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_ASSSM',                        &
    716       "Aerosol Optical depth at 550 nm "//name_aero(6),"1", (/ ('', i=1, 6) /)), &
    717        ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_CSSSM',                        &
    718       "Aerosol Optical depth at 550 nm "//name_aero(7),"1", (/ ('', i=1, 6) /)), &
    719        ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_CIDUSTM',                      &
    720       "Aerosol Optical depth at 550 nm "//name_aero(8),"1", (/ ('', i=1, 6) /)), &
    721        ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_AIBCM',                        &
    722       "Aerosol Optical depth at 550 nm "//name_aero(9),"1", (/ ('', i=1, 6) /)), &
    723        ctrl_out((/ 2, 6, 10, 10, 10, 10 /),'OD550_AIPOMM',                       &
    724       "Aerosol Optical depth at 550 nm "//name_aero(10),"1", (/ ('', i=1, 6) /)),&
    725        ctrl_out((/ 2, 2, 10, 10, 10, 10 /),'OD550_STRAT',                        &
    726       "Aerosol Optical depth at 550 nm "//name_aero(11),"1", (/ ('', i=1, 6) /)) /)
    727   TYPE(ctrl_out), SAVE :: o_od550aer = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    728         'od550aer', 'Total aerosol optical depth at 550nm', '-', (/ ('', i=1, 6) /))
    729   TYPE(ctrl_out), SAVE :: o_od865aer = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    730         'od865aer', 'Total aerosol optical depth at 870nm', '-', (/ ('', i=1, 6) /))
    731   TYPE(ctrl_out), SAVE :: o_absvisaer = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    732         'absvisaer', 'Absorption aerosol visible optical depth', '-', (/ ('', i=1, 6) /))
    733   TYPE(ctrl_out), SAVE :: o_od550lt1aer = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    734         'od550lt1aer', 'Fine mode optical depth', '-', (/ ('', i=1, 6) /))
    735   TYPE(ctrl_out), SAVE :: o_sconcso4 = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    736         'sconcso4', 'Surface Concentration of Sulfate ', 'kg/m3', (/ ('', i=1, 6) /))
    737   TYPE(ctrl_out), SAVE :: o_sconcoa = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    738         'sconcoa', 'Surface Concentration of Organic Aerosol ', 'kg/m3', (/ ('', i=1, 6) /))
    739   TYPE(ctrl_out), SAVE :: o_sconcbc = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    740         'sconcbc', 'Surface Concentration of Black Carbon ', 'kg/m3', (/ ('', i=1, 6) /))
    741   TYPE(ctrl_out), SAVE :: o_sconcss = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    742         'sconcss', 'Surface Concentration of Sea Salt ', 'kg/m3', (/ ('', i=1, 6) /))
    743   TYPE(ctrl_out), SAVE :: o_sconcdust = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    744         'sconcdust', 'Surface Concentration of Dust ', 'kg/m3', (/ ('', i=1, 6) /))
    745   TYPE(ctrl_out), SAVE :: o_concso4 = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    746         'concso4', 'Concentration of Sulfate ', 'kg/m3', (/ ('', i=1, 6) /))
    747   TYPE(ctrl_out), SAVE :: o_concoa = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    748         'concoa', 'Concentration of Organic Aerosol ', 'kg/m3', (/ ('', i=1, 6) /))
    749   TYPE(ctrl_out), SAVE :: o_concbc = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    750         'concbc', 'Concentration of Black Carbon ', 'kg/m3', (/ ('', i=1, 6) /))
    751   TYPE(ctrl_out), SAVE :: o_concss = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    752         'concss', 'Concentration of Sea Salt ', 'kg/m3', (/ ('', i=1, 6) /))
    753   TYPE(ctrl_out), SAVE :: o_concdust = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    754         'concdust', 'Concentration of Dust ', 'kg/m3', (/ ('', i=1, 6) /))
    755   TYPE(ctrl_out), SAVE :: o_loadso4 = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    756         'loadso4', 'Column Load of Sulfate ', 'kg/m2', (/ ('', i=1, 6) /))
    757   TYPE(ctrl_out), SAVE :: o_loadoa = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    758         'loadoa', 'Column Load of Organic Aerosol ', 'kg/m2', (/ ('', i=1, 6) /))
    759   TYPE(ctrl_out), SAVE :: o_loadbc = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    760         'loadbc', 'Column Load of Black Carbon ', 'kg/m2', (/ ('', i=1, 6) /))
    761   TYPE(ctrl_out), SAVE :: o_loadss = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    762         'loadss', 'Column Load of Sea Salt ', 'kg/m2', (/ ('', i=1, 6) /))
    763   TYPE(ctrl_out), SAVE :: o_loaddust = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    764         'loaddust', 'Column Load of Dust ', 'kg/m2', (/ ('', i=1, 6) /))
    765   TYPE(ctrl_out), SAVE :: o_swtoaas_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    766         'swtoaas_nat', 'Natural aerosol radiative forcing all-sky at TOA', 'W/m2', (/ ('', i=1, 6) /))
    767   TYPE(ctrl_out), SAVE :: o_swsrfas_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    768         'swsrfas_nat', 'Natural aerosol radiative forcing all-sky at SRF', 'W/m2', (/ ('', i=1, 6) /))
    769   TYPE(ctrl_out), SAVE :: o_swtoacs_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    770         'swtoacs_nat', 'Natural aerosol radiative forcing clear-sky at TOA', 'W/m2', (/ ('', i=1, 6) /))
    771   TYPE(ctrl_out), SAVE :: o_swsrfcs_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    772         'swsrfcs_nat', 'Natural aerosol radiative forcing clear-sky at SRF', 'W/m2', (/ ('', i=1, 6) /))
    773   TYPE(ctrl_out), SAVE :: o_swtoaas_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    774         'swtoaas_ant', 'Anthropogenic aerosol radiative forcing all-sky at TOA', 'W/m2', (/ ('', i=1, 6) /))
    775   TYPE(ctrl_out), SAVE :: o_swsrfas_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    776         'swsrfas_ant', 'Anthropogenic aerosol radiative forcing all-sky at SRF', 'W/m2', (/ ('', i=1, 6) /))
    777   TYPE(ctrl_out), SAVE :: o_swtoacs_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    778         'swtoacs_ant', 'Anthropogenic aerosol radiative forcing clear-sky at TOA', 'W/m2', (/ ('', i=1, 6) /))
    779   TYPE(ctrl_out), SAVE :: o_swsrfcs_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    780         'swsrfcs_ant', 'Anthropogenic aerosol radiative forcing clear-sky at SRF', 'W/m2', (/ ('', i=1, 6) /))
    781   TYPE(ctrl_out), SAVE :: o_swtoacf_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    782         'swtoacf_nat', 'Natural aerosol impact on cloud radiative forcing at TOA', 'W/m2', (/ ('', i=1, 6) /))
    783   TYPE(ctrl_out), SAVE :: o_swsrfcf_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    784         'swsrfcf_nat', 'Natural aerosol impact on cloud radiative forcing  at SRF', 'W/m2', (/ ('', i=1, 6) /))
    785   TYPE(ctrl_out), SAVE :: o_swtoacf_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    786         'swtoacf_ant', 'Anthropogenic aerosol impact on cloud radiative forcing at TOA', 'W/m2', (/ ('', i=1, 6) /))
    787   TYPE(ctrl_out), SAVE :: o_swsrfcf_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    788         'swsrfcf_ant', 'Anthropogenic aerosol impact on cloud radiative forcing at SRF', 'W/m2', (/ ('', i=1, 6) /))
    789   TYPE(ctrl_out), SAVE :: o_swtoacf_zero = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    790         'swtoacf_zero', 'Cloud radiative forcing (allsky-clearsky fluxes) at TOA', 'W/m2', (/ ('', i=1, 6) /))
    791   TYPE(ctrl_out), SAVE :: o_swsrfcf_zero = ctrl_out((/ 4, 6, 10, 10, 10, 10 /), &
    792         'swsrfcf_zero', 'Cloud radiative forcing (allsky-clearsky fluxes) at SRF', 'W/m2', (/ ('', i=1, 6) /))
    793   TYPE(ctrl_out), SAVE :: o_cldncl = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    794         'cldncl', 'CDNC at top of liquid water cloud', 'm-3', (/ ('', i=1, 6) /))
    795   TYPE(ctrl_out), SAVE :: o_reffclwtop = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    796         'reffclwtop', 'Droplet effective radius at top of liquid water cloud', 'm', (/ ('', i=1, 6) /))
    797   TYPE(ctrl_out), SAVE :: o_cldnvi = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    798         'cldnvi', 'Column Integrated Cloud Droplet Number', 'm-2', (/ ('', i=1, 6) /))
    799   TYPE(ctrl_out), SAVE :: o_lcc = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    800         'lcc', 'Cloud liquid fraction at top of cloud', '1', (/ ('', i=1, 6) /))
     715    (/ ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_ASBCM',                        &
     716      "Aerosol Optical depth at 550 nm "//name_aero(1),"1", (/ ('', i=1, 9) /)), &
     717       ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_ASPOMM',                       &
     718      "Aerosol Optical depth at 550 nm "//name_aero(2),"1", (/ ('', i=1, 9) /)), &
     719       ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_ASSO4M',                       &
     720      "Aerosol Optical depth at 550 nm "//name_aero(3),"1", (/ ('', i=1, 9) /)), &
     721       ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_CSSO4M',                       &
     722      "Aerosol Optical depth at 550 nm "//name_aero(4),"1", (/ ('', i=1, 9) /)), &
     723       ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_SSSSM',                        &
     724      "Aerosol Optical depth at 550 nm "//name_aero(5),"1", (/ ('', i=1, 9) /)), &
     725       ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_ASSSM',                        &
     726      "Aerosol Optical depth at 550 nm "//name_aero(6),"1", (/ ('', i=1, 9) /)), &
     727       ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_CSSSM',                        &
     728      "Aerosol Optical depth at 550 nm "//name_aero(7),"1", (/ ('', i=1, 9) /)), &
     729       ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_CIDUSTM',                      &
     730      "Aerosol Optical depth at 550 nm "//name_aero(8),"1", (/ ('', i=1, 9) /)), &
     731       ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_AIBCM',                        &
     732      "Aerosol Optical depth at 550 nm "//name_aero(9),"1", (/ ('', i=1, 9) /)), &
     733       ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /),'OD550_AIPOMM',                       &
     734      "Aerosol Optical depth at 550 nm "//name_aero(10),"1", (/ ('', i=1, 9) /)),&
     735       ctrl_out((/ 2, 2, 10, 10, 10, 10, 11, 11, 11 /),'OD550_STRAT',                        &
     736      "Aerosol Optical depth at 550 nm "//name_aero(11),"1", (/ ('', i=1, 9) /)) /)
     737  TYPE(ctrl_out), SAVE :: o_od550aer = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     738        'od550aer', 'Total aerosol optical depth at 550nm', '-', (/ ('', i=1, 9) /))
     739  TYPE(ctrl_out), SAVE :: o_od865aer = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     740        'od865aer', 'Total aerosol optical depth at 870nm', '-', (/ ('', i=1, 9) /))
     741  TYPE(ctrl_out), SAVE :: o_absvisaer = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     742        'absvisaer', 'Absorption aerosol visible optical depth', '-', (/ ('', i=1, 9) /))
     743  TYPE(ctrl_out), SAVE :: o_od550lt1aer = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     744        'od550lt1aer', 'Fine mode optical depth', '-', (/ ('', i=1, 9) /))
     745  TYPE(ctrl_out), SAVE :: o_sconcso4 = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     746        'sconcso4', 'Surface Concentration of Sulfate ', 'kg/m3', (/ ('', i=1, 9) /))
     747  TYPE(ctrl_out), SAVE :: o_sconcoa = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     748        'sconcoa', 'Surface Concentration of Organic Aerosol ', 'kg/m3', (/ ('', i=1, 9) /))
     749  TYPE(ctrl_out), SAVE :: o_sconcbc = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     750        'sconcbc', 'Surface Concentration of Black Carbon ', 'kg/m3', (/ ('', i=1, 9) /))
     751  TYPE(ctrl_out), SAVE :: o_sconcss = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     752        'sconcss', 'Surface Concentration of Sea Salt ', 'kg/m3', (/ ('', i=1, 9) /))
     753  TYPE(ctrl_out), SAVE :: o_sconcdust = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     754        'sconcdust', 'Surface Concentration of Dust ', 'kg/m3', (/ ('', i=1, 9) /))
     755  TYPE(ctrl_out), SAVE :: o_concso4 = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     756        'concso4', 'Concentration of Sulfate ', 'kg/m3', (/ ('', i=1, 9) /))
     757  TYPE(ctrl_out), SAVE :: o_concoa = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     758        'concoa', 'Concentration of Organic Aerosol ', 'kg/m3', (/ ('', i=1, 9) /))
     759  TYPE(ctrl_out), SAVE :: o_concbc = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     760        'concbc', 'Concentration of Black Carbon ', 'kg/m3', (/ ('', i=1, 9) /))
     761  TYPE(ctrl_out), SAVE :: o_concss = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     762        'concss', 'Concentration of Sea Salt ', 'kg/m3', (/ ('', i=1, 9) /))
     763  TYPE(ctrl_out), SAVE :: o_concdust = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     764        'concdust', 'Concentration of Dust ', 'kg/m3', (/ ('', i=1, 9) /))
     765  TYPE(ctrl_out), SAVE :: o_loadso4 = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     766        'loadso4', 'Column Load of Sulfate ', 'kg/m2', (/ ('', i=1, 9) /))
     767  TYPE(ctrl_out), SAVE :: o_loadoa = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     768        'loadoa', 'Column Load of Organic Aerosol ', 'kg/m2', (/ ('', i=1, 9) /))
     769  TYPE(ctrl_out), SAVE :: o_loadbc = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     770        'loadbc', 'Column Load of Black Carbon ', 'kg/m2', (/ ('', i=1, 9) /))
     771  TYPE(ctrl_out), SAVE :: o_loadss = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     772        'loadss', 'Column Load of Sea Salt ', 'kg/m2', (/ ('', i=1, 9) /))
     773  TYPE(ctrl_out), SAVE :: o_loaddust = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     774        'loaddust', 'Column Load of Dust ', 'kg/m2', (/ ('', i=1, 9) /))
     775  TYPE(ctrl_out), SAVE :: o_swtoaas_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     776        'swtoaas_nat', 'Natural aerosol radiative forcing all-sky at TOA', 'W/m2', (/ ('', i=1, 9) /))
     777  TYPE(ctrl_out), SAVE :: o_swsrfas_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     778        'swsrfas_nat', 'Natural aerosol radiative forcing all-sky at SRF', 'W/m2', (/ ('', i=1, 9) /))
     779  TYPE(ctrl_out), SAVE :: o_swtoacs_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     780        'swtoacs_nat', 'Natural aerosol radiative forcing clear-sky at TOA', 'W/m2', (/ ('', i=1, 9) /))
     781  TYPE(ctrl_out), SAVE :: o_swsrfcs_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     782        'swsrfcs_nat', 'Natural aerosol radiative forcing clear-sky at SRF', 'W/m2', (/ ('', i=1, 9) /))
     783  TYPE(ctrl_out), SAVE :: o_swtoaas_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     784        'swtoaas_ant', 'Anthropogenic aerosol radiative forcing all-sky at TOA', 'W/m2', (/ ('', i=1, 9) /))
     785  TYPE(ctrl_out), SAVE :: o_swsrfas_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     786        'swsrfas_ant', 'Anthropogenic aerosol radiative forcing all-sky at SRF', 'W/m2', (/ ('', i=1, 9) /))
     787  TYPE(ctrl_out), SAVE :: o_swtoacs_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     788        'swtoacs_ant', 'Anthropogenic aerosol radiative forcing clear-sky at TOA', 'W/m2', (/ ('', i=1, 9) /))
     789  TYPE(ctrl_out), SAVE :: o_swsrfcs_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     790        'swsrfcs_ant', 'Anthropogenic aerosol radiative forcing clear-sky at SRF', 'W/m2', (/ ('', i=1, 9) /))
     791  TYPE(ctrl_out), SAVE :: o_swtoacf_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     792        'swtoacf_nat', 'Natural aerosol impact on cloud radiative forcing at TOA', 'W/m2', (/ ('', i=1, 9) /))
     793  TYPE(ctrl_out), SAVE :: o_swsrfcf_nat = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     794        'swsrfcf_nat', 'Natural aerosol impact on cloud radiative forcing  at SRF', 'W/m2', (/ ('', i=1, 9) /))
     795  TYPE(ctrl_out), SAVE :: o_swtoacf_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     796        'swtoacf_ant', 'Anthropogenic aerosol impact on cloud radiative forcing at TOA', 'W/m2', (/ ('', i=1, 9) /))
     797  TYPE(ctrl_out), SAVE :: o_swsrfcf_ant = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     798        'swsrfcf_ant', 'Anthropogenic aerosol impact on cloud radiative forcing at SRF', 'W/m2', (/ ('', i=1, 9) /))
     799  TYPE(ctrl_out), SAVE :: o_swtoacf_zero = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     800        'swtoacf_zero', 'Cloud radiative forcing (allsky-clearsky fluxes) at TOA', 'W/m2', (/ ('', i=1, 9) /))
     801  TYPE(ctrl_out), SAVE :: o_swsrfcf_zero = ctrl_out((/ 4, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     802        'swsrfcf_zero', 'Cloud radiative forcing (allsky-clearsky fluxes) at SRF', 'W/m2', (/ ('', i=1, 9) /))
     803  TYPE(ctrl_out), SAVE :: o_cldncl = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     804        'cldncl', 'CDNC at top of liquid water cloud', 'm-3', (/ ('', i=1, 9) /))
     805  TYPE(ctrl_out), SAVE :: o_reffclwtop = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     806        'reffclwtop', 'Droplet effective radius at top of liquid water cloud', 'm', (/ ('', i=1, 9) /))
     807  TYPE(ctrl_out), SAVE :: o_cldnvi = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     808        'cldnvi', 'Column Integrated Cloud Droplet Number', 'm-2', (/ ('', i=1, 9) /))
     809  TYPE(ctrl_out), SAVE :: o_lcc = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     810        'lcc', 'Cloud liquid fraction at top of cloud', '1', (/ ('', i=1, 9) /))
    801811
    802812
    803813!!!!!!!!!!!!!!!!!!!!!! 3D !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    804   TYPE(ctrl_out), SAVE :: o_ec550aer = ctrl_out((/ 2, 6, 10, 10, 10, 10 /), &
    805         'ec550aer', 'Extinction at 550nm', 'm^-1', (/ ('', i=1, 6) /))
    806   TYPE(ctrl_out), SAVE :: o_lwcon = ctrl_out((/ 2, 5, 10, 10, 10, 10 /), &
    807         'lwcon', 'Cloud liquid water content', 'kg/kg', (/ ('', i=1, 6) /))
    808   TYPE(ctrl_out), SAVE :: o_iwcon = ctrl_out((/ 2, 5, 10, 10, 10, 10 /), &
    809         'iwcon', 'Cloud ice water content', 'kg/kg', (/ ('', i=1, 6) /))
    810   TYPE(ctrl_out), SAVE :: o_temp = ctrl_out((/ 2, 3, 4, 10, 10, 10 /), &
    811         'temp', 'Air temperature', 'K', (/ ('', i=1, 6) /))
    812   TYPE(ctrl_out), SAVE :: o_theta = ctrl_out((/ 2, 3, 4, 10, 10, 10 /), &
    813         'theta', 'Potential air temperature', 'K', (/ ('', i=1, 6) /))
    814   TYPE(ctrl_out), SAVE :: o_ovap = ctrl_out((/ 2, 3, 4, 10, 10, 10 /), &
    815         'ovap', 'Specific humidity', 'kg/kg', (/ ('', i=1, 6) /))
    816   TYPE(ctrl_out), SAVE :: o_ovapinit = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    817         'ovapinit', 'Specific humidity (begin of timestep)', 'kg/kg', (/ ('', i=1, 6) /))
    818   TYPE(ctrl_out), SAVE :: o_oliq = ctrl_out((/ 2, 3, 4, 10, 10, 10 /), &
    819         'oliq', 'Condensed water', 'kg/kg', (/ ('', i=1, 6) /))
    820   TYPE(ctrl_out), SAVE :: o_wvapp = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    821         'wvapp', '', '', (/ ('', i=1, 6) /))
    822   TYPE(ctrl_out), SAVE :: o_geop = ctrl_out((/ 2, 3, 10, 10, 10, 10 /), &
    823         'geop', 'Geopotential height', 'm2/s2', (/ ('', i=1, 6) /))
    824   TYPE(ctrl_out), SAVE :: o_vitu = ctrl_out((/ 2, 3, 4, 6, 10, 10 /), &
    825         'vitu', 'Zonal wind', 'm/s', (/ ('', i=1, 6) /))
    826   TYPE(ctrl_out), SAVE :: o_vitv = ctrl_out((/ 2, 3, 4, 6, 10, 10 /), &
    827         'vitv', 'Meridional wind', 'm/s', (/ ('', i=1, 6) /))
    828   TYPE(ctrl_out), SAVE :: o_vitw = ctrl_out((/ 2, 3, 10, 6, 10, 10 /), &
    829         'vitw', 'Vertical wind', 'Pa/s', (/ ('', i=1, 6) /))
    830   TYPE(ctrl_out), SAVE :: o_pres = ctrl_out((/ 2, 3, 10, 10, 10, 10 /), &
    831         'pres', 'Air pressure', 'Pa', (/ ('', i=1, 6) /))
    832   TYPE(ctrl_out), SAVE :: o_paprs = ctrl_out((/ 2, 3, 10, 10, 10, 10 /), &
    833         'paprs', 'Air pressure Inter-Couches', 'Pa', (/ ('', i=1, 6) /))
    834   TYPE(ctrl_out), SAVE :: o_mass = ctrl_out((/ 2, 3, 10, 10, 10, 10 /), &
    835         'mass', 'Masse Couches', 'kg/m2', (/ ('', i=1, 6) /))
    836   TYPE(ctrl_out), SAVE :: o_zfull = ctrl_out((/ 2, 3, 10, 10, 10, 10 /), &
    837         'zfull', 'Altitude of full pressure levels', 'm', (/ ('', i=1, 6) /))
    838   TYPE(ctrl_out), SAVE :: o_zhalf = ctrl_out((/ 2, 3, 10, 10, 10, 10 /), &
    839         'zhalf', 'Altitude of half pressure levels', 'm', (/ ('', i=1, 6) /))
    840   TYPE(ctrl_out), SAVE :: o_rneb = ctrl_out((/ 2, 5, 10, 10, 10, 10 /), &
    841         'rneb', 'Cloud fraction', '-', (/ ('', i=1, 6) /))
    842   TYPE(ctrl_out), SAVE :: o_rnebcon = ctrl_out((/ 2, 5, 10, 10, 10, 10 /), &
    843         'rnebcon', 'Convective Cloud Fraction', '-', (/ ('', i=1, 6) /))
    844   TYPE(ctrl_out), SAVE :: o_rnebls = ctrl_out((/ 2, 5, 10, 10, 10, 10 /), &
    845         'rnebls', 'LS Cloud fraction', '-', (/ ('', i=1, 6) /))
    846   TYPE(ctrl_out), SAVE :: o_rhum = ctrl_out((/ 2, 5, 10, 10, 10, 10 /), &
    847         'rhum', 'Relative humidity', '-', (/ ('', i=1, 6) /))
    848   TYPE(ctrl_out), SAVE :: o_ozone = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    849         'ozone', 'Ozone mole fraction', '-', (/ ('', i=1, 6) /))
    850   TYPE(ctrl_out), SAVE :: o_ozone_light = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    851         'ozone_daylight', 'Daylight ozone mole fraction', '-', (/ ('', i=1, 6) /))
    852   TYPE(ctrl_out), SAVE :: o_upwd = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    853         'upwd', 'saturated updraft', 'kg/m2/s', (/ ('', i=1, 6) /))
    854   TYPE(ctrl_out), SAVE :: o_dtphy = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    855         'dtphy', 'Physics dT', 'K/s', (/ ('', i=1, 6) /))
    856   TYPE(ctrl_out), SAVE :: o_dqphy = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    857         'dqphy', 'Physics dQ', '(kg/kg)/s', (/ ('', i=1, 6) /))
    858   TYPE(ctrl_out), SAVE :: o_pr_con_l = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    859         'pr_con_l', 'Convective precipitation lic', ' ', (/ ('', i=1, 6) /))
    860   TYPE(ctrl_out), SAVE :: o_pr_con_i = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    861         'pr_con_i', 'Convective precipitation ice', ' ', (/ ('', i=1, 6) /))
    862   TYPE(ctrl_out), SAVE :: o_pr_lsc_l = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    863         'pr_lsc_l', 'Large scale precipitation lic', ' ', (/ ('', i=1, 6) /))
    864   TYPE(ctrl_out), SAVE :: o_pr_lsc_i = ctrl_out((/ 2, 10, 10, 10, 10, 10 /), &
    865         'pr_lsc_i', 'Large scale precipitation ice', ' ', (/ ('', i=1, 6) /))
    866   TYPE(ctrl_out), SAVE :: o_re = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    867         're', 'Cloud droplet effective radius', 'um', (/ ('', i=1, 6) /))
    868   TYPE(ctrl_out), SAVE :: o_fl = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    869         'fl', 'Denominator of Cloud droplet effective radius', ' ', (/ ('', i=1, 6) /))
    870   TYPE(ctrl_out), SAVE :: o_scdnc = ctrl_out((/ 2,  6, 10, 10, 10, 10 /), &
    871         'scdnc', 'Cloud droplet number concentration', 'm-3', (/ ('', i=1, 6) /))
    872   TYPE(ctrl_out), SAVE :: o_reffclws = ctrl_out((/ 2,  6, 10, 10, 10, 10 /), &
    873         'reffclws', 'Stratiform Cloud Droplet Effective Radius (aerosol diags.)', 'm', (/ ('', i=1, 6) /))
    874   TYPE(ctrl_out), SAVE :: o_reffclwc = ctrl_out((/ 2,  6, 10, 10, 10, 10 /), &
    875         'reffclwc', 'Convective Cloud Droplet Effective Radius (aerosol diags.)', 'm', (/ ('', i=1, 6) /))
    876   TYPE(ctrl_out), SAVE :: o_lcc3d = ctrl_out((/ 2,  6, 10, 10, 10, 10 /), &
    877         'lcc3d', 'Cloud liquid fraction', '1', (/ ('', i=1, 6) /))
    878   TYPE(ctrl_out), SAVE :: o_lcc3dcon = ctrl_out((/ 2,  6, 10, 10, 10, 10 /), &
    879         'lcc3dcon', 'Convective cloud liquid fraction', '1', (/ ('', i=1, 6) /))
    880   TYPE(ctrl_out), SAVE :: o_lcc3dstra = ctrl_out((/ 2,  6, 10, 10, 10, 10 /), &
    881         'lcc3dstra', 'Stratiform cloud liquid fraction', '1', (/ ('', i=1, 6) /))
     814  TYPE(ctrl_out), SAVE :: o_ec550aer = ctrl_out((/ 2, 6, 10, 10, 10, 10, 11, 11, 11 /), &
     815        'ec550aer', 'Extinction at 550nm', 'm^-1', (/ ('', i=1, 9) /))
     816  TYPE(ctrl_out), SAVE :: o_lwcon = ctrl_out((/ 2, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     817        'lwcon', 'Cloud liquid water content', 'kg/kg', (/ ('', i=1, 9) /))
     818  TYPE(ctrl_out), SAVE :: o_iwcon = ctrl_out((/ 2, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     819        'iwcon', 'Cloud ice water content', 'kg/kg', (/ ('', i=1, 9) /))
     820  TYPE(ctrl_out), SAVE :: o_temp = ctrl_out((/ 2, 3, 4, 10, 10, 10, 11, 11, 11 /), &
     821        'temp', 'Air temperature', 'K', (/ ('', i=1, 9) /))
     822  TYPE(ctrl_out), SAVE :: o_theta = ctrl_out((/ 2, 3, 4, 10, 10, 10, 11, 11, 11 /), &
     823        'theta', 'Potential air temperature', 'K', (/ ('', i=1, 9) /))
     824  TYPE(ctrl_out), SAVE :: o_ovap = ctrl_out((/ 2, 3, 4, 10, 10, 10, 11, 11, 11 /), &
     825        'ovap', 'Specific humidity', 'kg/kg', (/ ('', i=1, 9) /))
     826  TYPE(ctrl_out), SAVE :: o_ovapinit = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     827        'ovapinit', 'Specific humidity (begin of timestep)', 'kg/kg', (/ ('', i=1, 9) /))
     828  TYPE(ctrl_out), SAVE :: o_oliq = ctrl_out((/ 2, 3, 4, 10, 10, 10, 11, 11, 11 /), &
     829        'oliq', 'Condensed water', 'kg/kg', (/ ('', i=1, 9) /))
     830  TYPE(ctrl_out), SAVE :: o_wvapp = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     831        'wvapp', '', '', (/ ('', i=1, 9) /))
     832  TYPE(ctrl_out), SAVE :: o_geop = ctrl_out((/ 2, 3, 10, 10, 10, 10, 11, 11, 11 /), &
     833        'geop', 'Geopotential height', 'm2/s2', (/ ('', i=1, 9) /))
     834  TYPE(ctrl_out), SAVE :: o_vitu = ctrl_out((/ 2, 3, 4, 6, 10, 10, 11, 11, 11 /), &
     835        'vitu', 'Zonal wind', 'm/s', (/ ('', i=1, 9) /))
     836  TYPE(ctrl_out), SAVE :: o_vitv = ctrl_out((/ 2, 3, 4, 6, 10, 10, 11, 11, 11 /), &
     837        'vitv', 'Meridional wind', 'm/s', (/ ('', i=1, 9) /))
     838  TYPE(ctrl_out), SAVE :: o_vitw = ctrl_out((/ 2, 3, 10, 6, 10, 10, 11, 11, 11 /), &
     839        'vitw', 'Vertical wind', 'Pa/s', (/ ('', i=1, 9) /))
     840  TYPE(ctrl_out), SAVE :: o_pres = ctrl_out((/ 2, 3, 10, 10, 10, 10, 11, 11, 11 /), &
     841        'pres', 'Air pressure', 'Pa', (/ ('', i=1, 9) /))
     842  TYPE(ctrl_out), SAVE :: o_paprs = ctrl_out((/ 2, 3, 10, 10, 10, 10, 11, 11, 11 /), &
     843        'paprs', 'Air pressure Inter-Couches', 'Pa', (/ ('', i=1, 9) /))
     844  TYPE(ctrl_out), SAVE :: o_mass = ctrl_out((/ 2, 3, 10, 10, 10, 10, 11, 11, 11 /), &
     845        'mass', 'Masse Couches', 'kg/m2', (/ ('', i=1, 9) /))
     846  TYPE(ctrl_out), SAVE :: o_zfull = ctrl_out((/ 2, 3, 10, 10, 10, 10, 11, 11, 11 /), &
     847        'zfull', 'Altitude of full pressure levels', 'm', (/ ('', i=1, 9) /))
     848  TYPE(ctrl_out), SAVE :: o_zhalf = ctrl_out((/ 2, 3, 10, 10, 10, 10, 11, 11, 11 /), &
     849        'zhalf', 'Altitude of half pressure levels', 'm', (/ ('', i=1, 9) /))
     850  TYPE(ctrl_out), SAVE :: o_rneb = ctrl_out((/ 2, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     851        'rneb', 'Cloud fraction', '-', (/ ('', i=1, 9) /))
     852  TYPE(ctrl_out), SAVE :: o_rnebcon = ctrl_out((/ 2, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     853        'rnebcon', 'Convective Cloud Fraction', '-', (/ ('', i=1, 9) /))
     854  TYPE(ctrl_out), SAVE :: o_rnebls = ctrl_out((/ 2, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     855        'rnebls', 'LS Cloud fraction', '-', (/ ('', i=1, 9) /))
     856  TYPE(ctrl_out), SAVE :: o_rhum = ctrl_out((/ 2, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     857        'rhum', 'Relative humidity', '-', (/ ('', i=1, 9) /))
     858  TYPE(ctrl_out), SAVE :: o_ozone = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     859        'ozone', 'Ozone mole fraction', '-', (/ ('', i=1, 9) /))
     860  TYPE(ctrl_out), SAVE :: o_ozone_light = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     861        'ozone_daylight', 'Daylight ozone mole fraction', '-', (/ ('', i=1, 9) /))
     862  TYPE(ctrl_out), SAVE :: o_upwd = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     863        'upwd', 'saturated updraft', 'kg/m2/s', (/ ('', i=1, 9) /))
     864  TYPE(ctrl_out), SAVE :: o_dtphy = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     865        'dtphy', 'Physics dT', 'K/s', (/ ('', i=1, 9) /))
     866  TYPE(ctrl_out), SAVE :: o_dqphy = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     867        'dqphy', 'Physics dQ', '(kg/kg)/s', (/ ('', i=1, 9) /))
     868  TYPE(ctrl_out), SAVE :: o_pr_con_l = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     869        'pr_con_l', 'Convective precipitation lic', ' ', (/ ('', i=1, 9) /))
     870  TYPE(ctrl_out), SAVE :: o_pr_con_i = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     871        'pr_con_i', 'Convective precipitation ice', ' ', (/ ('', i=1, 9) /))
     872  TYPE(ctrl_out), SAVE :: o_pr_lsc_l = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     873        'pr_lsc_l', 'Large scale precipitation lic', ' ', (/ ('', i=1, 9) /))
     874  TYPE(ctrl_out), SAVE :: o_pr_lsc_i = ctrl_out((/ 2, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     875        'pr_lsc_i', 'Large scale precipitation ice', ' ', (/ ('', i=1, 9) /))
     876  TYPE(ctrl_out), SAVE :: o_re = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     877        're', 'Cloud droplet effective radius', 'um', (/ ('', i=1, 9) /))
     878  TYPE(ctrl_out), SAVE :: o_fl = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     879        'fl', 'Denominator of Cloud droplet effective radius', ' ', (/ ('', i=1, 9) /))
     880  TYPE(ctrl_out), SAVE :: o_scdnc = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11 /), &
     881        'scdnc', 'Cloud droplet number concentration', 'm-3', (/ ('', i=1, 9) /))
     882  TYPE(ctrl_out), SAVE :: o_reffclws = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11 /), &
     883        'reffclws', 'Stratiform Cloud Droplet Effective Radius (aerosol diags.)', 'm', (/ ('', i=1, 9) /))
     884  TYPE(ctrl_out), SAVE :: o_reffclwc = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11 /), &
     885        'reffclwc', 'Convective Cloud Droplet Effective Radius (aerosol diags.)', 'm', (/ ('', i=1, 9) /))
     886  TYPE(ctrl_out), SAVE :: o_lcc3d = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11 /), &
     887        'lcc3d', 'Cloud liquid fraction', '1', (/ ('', i=1, 9) /))
     888  TYPE(ctrl_out), SAVE :: o_lcc3dcon = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11 /), &
     889        'lcc3dcon', 'Convective cloud liquid fraction', '1', (/ ('', i=1, 9) /))
     890  TYPE(ctrl_out), SAVE :: o_lcc3dstra = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11 /), &
     891        'lcc3dstra', 'Stratiform cloud liquid fraction', '1', (/ ('', i=1, 9) /))
    882892!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    883893
    884894  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_albe_srf     = (/ &
    885       ctrl_out((/ 3, 7, 10, 7, 10, 10 /),'albe_ter', "Albedo VIS surf. "//clnsurf(1),"-", (/ ('', i=1, 6) /)), &
    886       ctrl_out((/ 3, 7, 10, 7, 10, 10 /),'albe_lic', "Albedo VIS surf. "//clnsurf(2),"-", (/ ('', i=1, 6) /)), &
    887       ctrl_out((/ 3, 7, 10, 7, 10, 10 /),'albe_oce', "Albedo VIS surf. "//clnsurf(3),"-", (/ ('', i=1, 6) /)), &
    888       ctrl_out((/ 3, 7, 10, 7, 10, 10 /),'albe_sic', "Albedo VIS surf. "//clnsurf(4),"-", (/ ('', i=1, 6) /)) /)
     895      ctrl_out((/ 3, 7, 10, 7, 10, 10, 11, 11, 11 /),'albe_ter', "Albedo VIS surf. "//clnsurf(1),"-", (/ ('', i=1, 9) /)), &
     896      ctrl_out((/ 3, 7, 10, 7, 10, 10, 11, 11, 11 /),'albe_lic', "Albedo VIS surf. "//clnsurf(2),"-", (/ ('', i=1, 9) /)), &
     897      ctrl_out((/ 3, 7, 10, 7, 10, 10, 11, 11, 11 /),'albe_oce', "Albedo VIS surf. "//clnsurf(3),"-", (/ ('', i=1, 9) /)), &
     898      ctrl_out((/ 3, 7, 10, 7, 10, 10, 11, 11, 11 /),'albe_sic', "Albedo VIS surf. "//clnsurf(4),"-", (/ ('', i=1, 9) /)) /)
    889899
    890900  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_ages_srf     = (/ &
    891       ctrl_out((/ 10, 10, 10, 10, 10, 10 /),'ages_ter', "Snow age", "day", (/ ('', i=1, 6) /)), &
    892       ctrl_out((/ 3, 10, 10, 10, 10, 10 /),'ages_lic', "Snow age", "day", (/ ('', i=1, 6) /)), &
    893       ctrl_out((/ 10, 10, 10, 10, 10, 10 /),'ages_oce',"Snow age", "day", (/ ('', i=1, 6) /)), &
    894       ctrl_out((/ 3, 10, 10, 10, 10, 10 /),'ages_sic',"Snow age", "day", (/ ('', i=1, 6) /)) /)
     901      ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /),'ages_ter', "Snow age", "day", (/ ('', i=1, 9) /)), &
     902      ctrl_out((/ 3, 10, 10, 10, 10, 10, 11, 11, 11 /),'ages_lic', "Snow age", "day", (/ ('', i=1, 9) /)), &
     903      ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /),'ages_oce',"Snow age", "day", (/ ('', i=1, 9) /)), &
     904      ctrl_out((/ 3, 10, 10, 10, 10, 10, 11, 11, 11 /),'ages_sic',"Snow age", "day", (/ ('', i=1, 9) /)) /)
    895905
    896906  TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_rugs_srf     = (/ &
    897       ctrl_out((/ 3, 6, 10, 10, 10, 10 /),'rugs_ter', "Surface roughness "//clnsurf(1),"m", (/ ('', i=1, 6) /)), &
    898       ctrl_out((/ 3, 6, 10, 10, 10, 10 /),'rugs_lic', "Surface roughness "//clnsurf(2),"m", (/ ('', i=1, 6) /)), &
    899       ctrl_out((/ 3, 6, 10, 10, 10, 10 /),'rugs_oce', "Surface roughness "//clnsurf(3),"m", (/ ('', i=1, 6) /)), &
    900       ctrl_out((/ 3, 6, 10, 10, 10, 10 /),'rugs_sic', "Surface roughness "//clnsurf(4),"m", (/ ('', i=1, 6) /)) /)
    901 
    902   TYPE(ctrl_out), SAVE :: o_alb1 = ctrl_out((/ 3, 10, 10, 10, 10, 10 /), &
    903         'alb1', 'Surface VIS albedo', '-', (/ ('', i=1, 6) /))
    904   TYPE(ctrl_out), SAVE :: o_alb2 = ctrl_out((/ 3, 10, 10, 10, 10, 10 /), &
    905         'alb2', 'Surface Near IR albedo', '-', (/ ('', i=1, 6) /))
    906   TYPE(ctrl_out), SAVE :: o_clwcon = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    907         'clwcon', 'Convective Cloud Liquid water content', 'kg/kg', (/ ('', i=1, 6) /))
    908   TYPE(ctrl_out), SAVE :: o_Ma = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    909         'Ma', 'undilute adiab updraft', 'kg/m2/s', (/ ('', i=1, 6) /))
    910   TYPE(ctrl_out), SAVE :: o_dnwd = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    911         'dnwd', 'saturated downdraft', 'kg/m2/s', (/ ('', i=1, 6) /))
    912   TYPE(ctrl_out), SAVE :: o_dnwd0 = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    913         'dnwd0', 'unsat. downdraft', 'kg/m2/s', (/ ('', i=1, 6) /))
    914   TYPE(ctrl_out), SAVE :: o_mc = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    915         'mc', 'Convective mass flux', 'kg/m2/s', (/ ('', i=1, 6) /))
    916   TYPE(ctrl_out), SAVE :: o_ftime_con = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
     907      ctrl_out((/ 3, 6, 10, 10, 10, 10, 11, 11, 11 /),'rugs_ter', "Surface roughness "//clnsurf(1),"m", (/ ('', i=1, 9) /)), &
     908      ctrl_out((/ 3, 6, 10, 10, 10, 10, 11, 11, 11 /),'rugs_lic', "Surface roughness "//clnsurf(2),"m", (/ ('', i=1, 9) /)), &
     909      ctrl_out((/ 3, 6, 10, 10, 10, 10, 11, 11, 11 /),'rugs_oce', "Surface roughness "//clnsurf(3),"m", (/ ('', i=1, 9) /)), &
     910      ctrl_out((/ 3, 6, 10, 10, 10, 10, 11, 11, 11 /),'rugs_sic', "Surface roughness "//clnsurf(4),"m", (/ ('', i=1, 9) /)) /)
     911
     912  TYPE(ctrl_out), SAVE :: o_alb1 = ctrl_out((/ 3, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     913        'alb1', 'Surface VIS albedo', '-', (/ ('', i=1, 9) /))
     914  TYPE(ctrl_out), SAVE :: o_alb2 = ctrl_out((/ 3, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     915        'alb2', 'Surface Near IR albedo', '-', (/ ('', i=1, 9) /))
     916  TYPE(ctrl_out), SAVE :: o_clwcon = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     917        'clwcon', 'Convective Cloud Liquid water content', 'kg/kg', (/ ('', i=1, 9) /))
     918  TYPE(ctrl_out), SAVE :: o_Ma = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     919        'Ma', 'undilute adiab updraft', 'kg/m2/s', (/ ('', i=1, 9) /))
     920  TYPE(ctrl_out), SAVE :: o_dnwd = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     921        'dnwd', 'saturated downdraft', 'kg/m2/s', (/ ('', i=1, 9) /))
     922  TYPE(ctrl_out), SAVE :: o_dnwd0 = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     923        'dnwd0', 'unsat. downdraft', 'kg/m2/s', (/ ('', i=1, 9) /))
     924  TYPE(ctrl_out), SAVE :: o_mc = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     925        'mc', 'Convective mass flux', 'kg/m2/s', (/ ('', i=1, 9) /))
     926  TYPE(ctrl_out), SAVE :: o_ftime_con = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
    917927        'ftime_con', 'Fraction of time convection Occurs', ' ',                 &
    918       (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /))
    919   TYPE(ctrl_out), SAVE :: o_dtdyn = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    920         'dtdyn', 'Dynamics dT', 'K/s', (/ ('', i=1, 6) /))
    921   TYPE(ctrl_out), SAVE :: o_dqdyn = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    922         'dqdyn', 'Dynamics dQ', '(kg/kg)/s', (/ ('', i=1, 6) /))
    923   TYPE(ctrl_out), SAVE :: o_dudyn = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    924         'dudyn', 'Dynamics dU', 'm/s2', (/ ('', i=1, 6) /))
    925   TYPE(ctrl_out), SAVE :: o_dvdyn = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    926         'dvdyn', 'Dynamics dV', 'm/s2', (/ ('', i=1, 6) /))
    927   TYPE(ctrl_out), SAVE :: o_dtcon = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    928         'dtcon', 'Convection dT', 'K/s', (/ ('', i=1, 6) /))
    929   TYPE(ctrl_out), SAVE :: o_ducon = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    930         'ducon', 'Convection du', 'm/s2', (/ ('', i=1, 6) /))
    931   TYPE(ctrl_out), SAVE :: o_dvcon = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    932         'dvcon', 'Convection dv', 'm/s2', (/ ('', i=1, 6) /))
    933   TYPE(ctrl_out), SAVE :: o_dqcon = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    934         'dqcon', 'Convection dQ', '(kg/kg)/s', (/ ('', i=1, 6) /))
    935   TYPE(ctrl_out), SAVE :: o_dtwak = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    936         'dtwak', 'Wake dT', 'K/s', (/ ('', i=1, 6) /))
    937   TYPE(ctrl_out), SAVE :: o_dqwak = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    938         'dqwak', 'Wake dQ', '(kg/kg)/s', (/ ('', i=1, 6) /))
    939   TYPE(ctrl_out), SAVE :: o_wake_h = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    940         'wake_h', 'wake_h', '-', (/ ('', i=1, 6) /))
    941   TYPE(ctrl_out), SAVE :: o_wake_s = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    942         'wake_s', 'wake_s', '-', (/ ('', i=1, 6) /))
    943   TYPE(ctrl_out), SAVE :: o_wake_deltat = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    944         'wake_deltat', 'wake_deltat', ' ', (/ ('', i=1, 6) /))
    945   TYPE(ctrl_out), SAVE :: o_wake_deltaq = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    946         'wake_deltaq', 'wake_deltaq', ' ', (/ ('', i=1, 6) /))
    947   TYPE(ctrl_out), SAVE :: o_wake_omg = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    948         'wake_omg', 'wake_omg', ' ', (/ ('', i=1, 6) /))
    949   TYPE(ctrl_out), SAVE :: o_wdtrainA = ctrl_out((/ 4, 1, 10,  4,  1, 10 /), &
    950         'wdtrainA', 'precipitation from AA', '-', (/ ('', i=1, 6) /))
    951   TYPE(ctrl_out), SAVE :: o_wdtrainM = ctrl_out((/ 4, 1, 10,  4,  1, 10 /), &
    952         'wdtrainM', 'precipitation from mixture', '-', (/ ('', i=1, 6) /))
    953   TYPE(ctrl_out), SAVE :: o_Vprecip = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    954         'Vprecip', 'precipitation vertical profile', '-', (/ ('', i=1, 6) /))
    955   TYPE(ctrl_out), SAVE :: o_ftd = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    956         'ftd', 'tend temp due aux descentes precip', '-', (/ ('', i=1, 6) /))
    957   TYPE(ctrl_out), SAVE :: o_fqd = ctrl_out((/ 4, 5, 10, 10, 10, 10 /), &
    958         'fqd', 'tend vap eau due aux descentes precip', '-', (/ ('', i=1, 6) /))
    959   TYPE(ctrl_out), SAVE :: o_dtlsc = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    960         'dtlsc', 'Condensation dT', 'K/s', (/ ('', i=1, 6) /))
    961   TYPE(ctrl_out), SAVE :: o_dtlschr = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    962         'dtlschr', 'Large-scale condensational heating rate', 'K/s', (/ ('', i=1, 6) /))
    963   TYPE(ctrl_out), SAVE :: o_dqlsc = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    964         'dqlsc', 'Condensation dQ', '(kg/kg)/s', (/ ('', i=1, 6) /))
    965   TYPE(ctrl_out), SAVE :: o_beta_prec = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    966         'beta_prec', 'LS Conversion rate to prec', '(kg/kg)/s', (/ ('', i=1, 6) /))
    967   TYPE(ctrl_out), SAVE :: o_dtvdf = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    968         'dtvdf', 'Boundary-layer dT', 'K/s', (/ ('', i=1, 6) /))
    969   TYPE(ctrl_out), SAVE :: o_dtdis = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    970         'dtdis', 'TKE dissipation dT', 'K/s', (/ ('', i=1, 6) /))
    971   TYPE(ctrl_out), SAVE :: o_dqvdf = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    972         'dqvdf', 'Boundary-layer dQ', '(kg/kg)/s', (/ ('', i=1, 6) /))
    973   TYPE(ctrl_out), SAVE :: o_dteva = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    974         'dteva', 'Reevaporation dT', 'K/s', (/ ('', i=1, 6) /))
    975   TYPE(ctrl_out), SAVE :: o_dqeva = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    976         'dqeva', 'Reevaporation dQ', '(kg/kg)/s', (/ ('', i=1, 6) /))
     928      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /))
     929  TYPE(ctrl_out), SAVE :: o_dtdyn = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     930        'dtdyn', 'Dynamics dT', 'K/s', (/ ('', i=1, 9) /))
     931  TYPE(ctrl_out), SAVE :: o_dqdyn = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     932        'dqdyn', 'Dynamics dQ', '(kg/kg)/s', (/ ('', i=1, 9) /))
     933  TYPE(ctrl_out), SAVE :: o_dudyn = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     934        'dudyn', 'Dynamics dU', 'm/s2', (/ ('', i=1, 9) /))
     935  TYPE(ctrl_out), SAVE :: o_dvdyn = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     936        'dvdyn', 'Dynamics dV', 'm/s2', (/ ('', i=1, 9) /))
     937  TYPE(ctrl_out), SAVE :: o_dtcon = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     938        'dtcon', 'Convection dT', 'K/s', (/ ('', i=1, 9) /))
     939  TYPE(ctrl_out), SAVE :: o_ducon = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     940        'ducon', 'Convection du', 'm/s2', (/ ('', i=1, 9) /))
     941  TYPE(ctrl_out), SAVE :: o_dvcon = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     942        'dvcon', 'Convection dv', 'm/s2', (/ ('', i=1, 9) /))
     943  TYPE(ctrl_out), SAVE :: o_dqcon = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     944        'dqcon', 'Convection dQ', '(kg/kg)/s', (/ ('', i=1, 9) /))
     945  TYPE(ctrl_out), SAVE :: o_dtwak = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     946        'dtwak', 'Wake dT', 'K/s', (/ ('', i=1, 9) /))
     947  TYPE(ctrl_out), SAVE :: o_dqwak = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     948        'dqwak', 'Wake dQ', '(kg/kg)/s', (/ ('', i=1, 9) /))
     949  TYPE(ctrl_out), SAVE :: o_wake_h = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     950        'wake_h', 'wake_h', '-', (/ ('', i=1, 9) /))
     951  TYPE(ctrl_out), SAVE :: o_wake_s = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     952        'wake_s', 'wake_s', '-', (/ ('', i=1, 9) /))
     953  TYPE(ctrl_out), SAVE :: o_wake_deltat = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     954        'wake_deltat', 'wake_deltat', ' ', (/ ('', i=1, 9) /))
     955  TYPE(ctrl_out), SAVE :: o_wake_deltaq = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     956        'wake_deltaq', 'wake_deltaq', ' ', (/ ('', i=1, 9) /))
     957  TYPE(ctrl_out), SAVE :: o_wake_omg = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     958        'wake_omg', 'wake_omg', ' ', (/ ('', i=1, 9) /))
     959  TYPE(ctrl_out), SAVE :: o_wdtrainA = ctrl_out((/ 4, 1, 10,  4,  1, 10, 11, 11, 110 /), &
     960        'wdtrainA', 'precipitation from AA', '-', (/ ('', i=1, 9) /))
     961  TYPE(ctrl_out), SAVE :: o_wdtrainM = ctrl_out((/ 4, 1, 10,  4,  1, 10, 11, 11, 110 /), &
     962        'wdtrainM', 'precipitation from mixture', '-', (/ ('', i=1, 9) /))
     963  TYPE(ctrl_out), SAVE :: o_Vprecip = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     964        'Vprecip', 'precipitation vertical profile', '-', (/ ('', i=1, 9) /))
     965  TYPE(ctrl_out), SAVE :: o_ftd = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     966        'ftd', 'tend temp due aux descentes precip', '-', (/ ('', i=1, 9) /))
     967  TYPE(ctrl_out), SAVE :: o_fqd = ctrl_out((/ 4, 5, 10, 10, 10, 10, 11, 11, 11 /), &
     968        'fqd', 'tend vap eau due aux descentes precip', '-', (/ ('', i=1, 9) /))
     969  TYPE(ctrl_out), SAVE :: o_dtlsc = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     970        'dtlsc', 'Condensation dT', 'K/s', (/ ('', i=1, 9) /))
     971  TYPE(ctrl_out), SAVE :: o_dtlschr = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     972        'dtlschr', 'Large-scale condensational heating rate', 'K/s', (/ ('', i=1, 9) /))
     973  TYPE(ctrl_out), SAVE :: o_dqlsc = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     974        'dqlsc', 'Condensation dQ', '(kg/kg)/s', (/ ('', i=1, 9) /))
     975  TYPE(ctrl_out), SAVE :: o_beta_prec = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     976        'beta_prec', 'LS Conversion rate to prec', '(kg/kg)/s', (/ ('', i=1, 9) /))
     977  TYPE(ctrl_out), SAVE :: o_dtvdf = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     978        'dtvdf', 'Boundary-layer dT', 'K/s', (/ ('', i=1, 9) /))
     979  TYPE(ctrl_out), SAVE :: o_dtdis = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     980        'dtdis', 'TKE dissipation dT', 'K/s', (/ ('', i=1, 9) /))
     981  TYPE(ctrl_out), SAVE :: o_dqvdf = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     982        'dqvdf', 'Boundary-layer dQ', '(kg/kg)/s', (/ ('', i=1, 9) /))
     983  TYPE(ctrl_out), SAVE :: o_dteva = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     984        'dteva', 'Reevaporation dT', 'K/s', (/ ('', i=1, 9) /))
     985  TYPE(ctrl_out), SAVE :: o_dqeva = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     986        'dqeva', 'Reevaporation dQ', '(kg/kg)/s', (/ ('', i=1, 9) /))
    977987
    978988!!!!!!!!!!!!!!!! Specifique thermiques
    979   TYPE(ctrl_out), SAVE :: o_dqlscth = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    980         'dqlscth', 'dQ therm.', '(kg/kg)/s', (/ ('', i=1, 6) /))
    981   TYPE(ctrl_out), SAVE :: o_dqlscst = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    982         'dqlscst', 'dQ strat.', '(kg/kg)/s', (/ ('', i=1, 6) /))
    983   TYPE(ctrl_out), SAVE :: o_dtlscth = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    984         'dtlscth', 'dQ therm.', 'K/s', (/ ('', i=1, 6) /))
    985   TYPE(ctrl_out), SAVE :: o_dtlscst = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    986         'dtlscst', 'dQ strat.', 'K/s', (/ ('', i=1, 6) /))
    987   TYPE(ctrl_out), SAVE :: o_plulth = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    988         'plulth', 'Rainfall therm.', 'K/s', (/ ('', i=1, 6) /))
    989   TYPE(ctrl_out), SAVE :: o_plulst = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    990         'plulst', 'Rainfall strat.', 'K/s', (/ ('', i=1, 6) /))
    991   TYPE(ctrl_out), SAVE :: o_lmaxth = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    992         'lmaxth', "Upper level thermals", "", (/ ('', i=1, 6) /))
    993   TYPE(ctrl_out), SAVE :: o_ptconvth = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    994         'ptconvth', 'POINTS CONVECTIFS therm.', ' ', (/ ('', i=1, 6) /))
     989  TYPE(ctrl_out), SAVE :: o_dqlscth = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     990        'dqlscth', 'dQ therm.', '(kg/kg)/s', (/ ('', i=1, 9) /))
     991  TYPE(ctrl_out), SAVE :: o_dqlscst = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     992        'dqlscst', 'dQ strat.', '(kg/kg)/s', (/ ('', i=1, 9) /))
     993  TYPE(ctrl_out), SAVE :: o_dtlscth = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     994        'dtlscth', 'dQ therm.', 'K/s', (/ ('', i=1, 9) /))
     995  TYPE(ctrl_out), SAVE :: o_dtlscst = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     996        'dtlscst', 'dQ strat.', 'K/s', (/ ('', i=1, 9) /))
     997  TYPE(ctrl_out), SAVE :: o_plulth = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     998        'plulth', 'Rainfall therm.', 'K/s', (/ ('', i=1, 9) /))
     999  TYPE(ctrl_out), SAVE :: o_plulst = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1000        'plulst', 'Rainfall strat.', 'K/s', (/ ('', i=1, 9) /))
     1001  TYPE(ctrl_out), SAVE :: o_lmaxth = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1002        'lmaxth', "Upper level thermals", "", (/ ('', i=1, 9) /))
     1003  TYPE(ctrl_out), SAVE :: o_ptconvth = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1004        'ptconvth', 'POINTS CONVECTIFS therm.', ' ', (/ ('', i=1, 9) /))
    9951005!!!!!!!!!!!!!!!!!!!!!!!!
    996   TYPE(ctrl_out), SAVE :: o_ptconv = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    997         'ptconv', 'POINTS CONVECTIFS', ' ', (/ ('', i=1, 6) /))
    998   TYPE(ctrl_out), SAVE :: o_ratqs = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    999         'ratqs', 'RATQS', ' ', (/ ('', i=1, 6) /))
    1000   TYPE(ctrl_out), SAVE :: o_dtthe = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1001         'dtthe', 'Thermal dT', 'K/s', (/ ('', i=1, 6) /))
    1002   TYPE(ctrl_out), SAVE :: o_f_th = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1003         'f_th', 'Thermal plume mass flux', 'kg/(m2*s)', (/ ('', i=1, 6) /))
    1004   TYPE(ctrl_out), SAVE :: o_e_th = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1005         'e_th', 'Thermal plume entrainment', 'K/s', (/ ('', i=1, 6) /))
    1006   TYPE(ctrl_out), SAVE :: o_w_th = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1007         'w_th', 'Thermal plume vertical velocity', 'm/s', (/ ('', i=1, 6) /))
    1008   TYPE(ctrl_out), SAVE :: o_lambda_th = ctrl_out((/ 10, 10, 10, 10, 10, 10 /), &
    1009         'lambda_th', 'Thermal plume vertical velocity', 'm/s', (/ ('', i=1, 6) /))
    1010   TYPE(ctrl_out), SAVE :: o_ftime_th = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1011         'ftime_th', 'Fraction of time Shallow convection occurs', ' ', (/ ('', i=1, 6) /))
    1012   TYPE(ctrl_out), SAVE :: o_q_th = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1013         'q_th', 'Thermal plume total humidity', 'kg/kg', (/ ('', i=1, 6) /))
    1014   TYPE(ctrl_out), SAVE :: o_a_th = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1015         'a_th', "Thermal plume fraction", "", (/ ('', i=1, 6) /))
    1016   TYPE(ctrl_out), SAVE :: o_d_th = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1017         'd_th', 'Thermal plume detrainment', 'K/s', (/ ('', i=1, 6) /))
    1018   TYPE(ctrl_out), SAVE :: o_f0_th = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1019         'f0_th', 'Thermal closure mass flux', 'K/s', (/ ('', i=1, 6) /))
    1020   TYPE(ctrl_out), SAVE :: o_zmax_th = ctrl_out((/ 4,  4,  4,  5, 10, 10 /), &
    1021         'zmax_th', 'Thermal plume height', 'K/s', (/ ('', i=1, 6) /))
    1022   TYPE(ctrl_out), SAVE :: o_dqthe = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1023         'dqthe', 'Thermal dQ', '(kg/kg)/s', (/ ('', i=1, 6) /))
    1024   TYPE(ctrl_out), SAVE :: o_dtajs = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1025         'dtajs', 'Dry adjust. dT', 'K/s', (/ ('', i=1, 6) /))
    1026   TYPE(ctrl_out), SAVE :: o_dqajs = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1027         'dqajs', 'Dry adjust. dQ', '(kg/kg)/s', (/ ('', i=1, 6) /))
    1028   TYPE(ctrl_out), SAVE :: o_dtswr = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1029         'dtswr', 'SW radiation dT', 'K/s', (/ ('', i=1, 6) /))
    1030   TYPE(ctrl_out), SAVE :: o_dtsw0 = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1031         'dtsw0', 'CS SW radiation dT', 'K/s', (/ ('', i=1, 6) /))
    1032   TYPE(ctrl_out), SAVE :: o_dtlwr = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1033         'dtlwr', 'LW radiation dT', 'K/s', (/ ('', i=1, 6) /))
    1034   TYPE(ctrl_out), SAVE :: o_dtlw0 = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1035         'dtlw0', 'CS LW radiation dT', 'K/s', (/ ('', i=1, 6) /))
    1036   TYPE(ctrl_out), SAVE :: o_dtec = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1037         'dtec', 'Cinetic dissip dT', 'K/s', (/ ('', i=1, 6) /))
    1038   TYPE(ctrl_out), SAVE :: o_duvdf = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1039         'duvdf', 'Boundary-layer dU', 'm/s2', (/ ('', i=1, 6) /))
    1040   TYPE(ctrl_out), SAVE :: o_dvvdf = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1041         'dvvdf', 'Boundary-layer dV', 'm/s2', (/ ('', i=1, 6) /))
    1042   TYPE(ctrl_out), SAVE :: o_duoro = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1043         'duoro', 'Orography dU', 'm/s2', (/ ('', i=1, 6) /))
    1044   TYPE(ctrl_out), SAVE :: o_dvoro = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1045         'dvoro', 'Orography dV', 'm/s2', (/ ('', i=1, 6) /))
    1046   TYPE(ctrl_out), SAVE :: o_dulif = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1047         'dulif', 'Orography dU', 'm/s2', (/ ('', i=1, 6) /))
    1048   TYPE(ctrl_out), SAVE :: o_dvlif = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1049         'dvlif', 'Orography dV', 'm/s2', (/ ('', i=1, 6) /))
    1050   TYPE(ctrl_out), SAVE :: o_duhin = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1051         'duhin', 'Hines GWD dU', 'm/s2', (/ ('', i=1, 6) /))
    1052   TYPE(ctrl_out), SAVE :: o_dvhin = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1053         'dvhin', 'Hines GWD dV', 'm/s2', (/ ('', i=1, 6) /))
    1054   TYPE(ctrl_out), SAVE :: o_dtoro = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1055         'dtoro', 'Orography dT', 'K/s', (/ ('', i=1, 6) /))
    1056   TYPE(ctrl_out), SAVE :: o_dtlif = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1057         'dtlif', 'Orography dT', 'K/s', (/ ('', i=1, 6) /))
    1058   TYPE(ctrl_out), SAVE :: o_dthin = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1059         'dthin', 'Hines GWD dT', 'K/s', (/ ('', i=1, 6) /))
     1006  TYPE(ctrl_out), SAVE :: o_ptconv = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1007        'ptconv', 'POINTS CONVECTIFS', ' ', (/ ('', i=1, 9) /))
     1008  TYPE(ctrl_out), SAVE :: o_ratqs = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1009        'ratqs', 'RATQS', ' ', (/ ('', i=1, 9) /))
     1010  TYPE(ctrl_out), SAVE :: o_dtthe = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1011        'dtthe', 'Thermal dT', 'K/s', (/ ('', i=1, 9) /))
     1012  TYPE(ctrl_out), SAVE :: o_f_th = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1013        'f_th', 'Thermal plume mass flux', 'kg/(m2*s)', (/ ('', i=1, 9) /))
     1014  TYPE(ctrl_out), SAVE :: o_e_th = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1015        'e_th', 'Thermal plume entrainment', 'K/s', (/ ('', i=1, 9) /))
     1016  TYPE(ctrl_out), SAVE :: o_w_th = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1017        'w_th', 'Thermal plume vertical velocity', 'm/s', (/ ('', i=1, 9) /))
     1018  TYPE(ctrl_out), SAVE :: o_lambda_th = ctrl_out((/ 10, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1019        'lambda_th', 'Thermal plume vertical velocity', 'm/s', (/ ('', i=1, 9) /))
     1020  TYPE(ctrl_out), SAVE :: o_ftime_th = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1021        'ftime_th', 'Fraction of time Shallow convection occurs', ' ', (/ ('', i=1, 9) /))
     1022  TYPE(ctrl_out), SAVE :: o_q_th = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1023        'q_th', 'Thermal plume total humidity', 'kg/kg', (/ ('', i=1, 9) /))
     1024  TYPE(ctrl_out), SAVE :: o_a_th = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1025        'a_th', "Thermal plume fraction", "", (/ ('', i=1, 9) /))
     1026  TYPE(ctrl_out), SAVE :: o_d_th = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1027        'd_th', 'Thermal plume detrainment', 'K/s', (/ ('', i=1, 9) /))
     1028  TYPE(ctrl_out), SAVE :: o_f0_th = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1029        'f0_th', 'Thermal closure mass flux', 'K/s', (/ ('', i=1, 9) /))
     1030  TYPE(ctrl_out), SAVE :: o_zmax_th = ctrl_out((/ 4,  4,  4,  5, 10, 10, 11, 11, 11 /), &
     1031        'zmax_th', 'Thermal plume height', 'K/s', (/ ('', i=1, 9) /))
     1032  TYPE(ctrl_out), SAVE :: o_dqthe = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1033        'dqthe', 'Thermal dQ', '(kg/kg)/s', (/ ('', i=1, 9) /))
     1034  TYPE(ctrl_out), SAVE :: o_dtajs = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1035        'dtajs', 'Dry adjust. dT', 'K/s', (/ ('', i=1, 9) /))
     1036  TYPE(ctrl_out), SAVE :: o_dqajs = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1037        'dqajs', 'Dry adjust. dQ', '(kg/kg)/s', (/ ('', i=1, 9) /))
     1038  TYPE(ctrl_out), SAVE :: o_dtswr = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1039        'dtswr', 'SW radiation dT', 'K/s', (/ ('', i=1, 9) /))
     1040  TYPE(ctrl_out), SAVE :: o_dtsw0 = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1041        'dtsw0', 'CS SW radiation dT', 'K/s', (/ ('', i=1, 9) /))
     1042  TYPE(ctrl_out), SAVE :: o_dtlwr = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1043        'dtlwr', 'LW radiation dT', 'K/s', (/ ('', i=1, 9) /))
     1044  TYPE(ctrl_out), SAVE :: o_dtlw0 = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1045        'dtlw0', 'CS LW radiation dT', 'K/s', (/ ('', i=1, 9) /))
     1046  TYPE(ctrl_out), SAVE :: o_dtec = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1047        'dtec', 'Cinetic dissip dT', 'K/s', (/ ('', i=1, 9) /))
     1048  TYPE(ctrl_out), SAVE :: o_duvdf = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1049        'duvdf', 'Boundary-layer dU', 'm/s2', (/ ('', i=1, 9) /))
     1050  TYPE(ctrl_out), SAVE :: o_dvvdf = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1051        'dvvdf', 'Boundary-layer dV', 'm/s2', (/ ('', i=1, 9) /))
     1052  TYPE(ctrl_out), SAVE :: o_duoro = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1053        'duoro', 'Orography dU', 'm/s2', (/ ('', i=1, 9) /))
     1054  TYPE(ctrl_out), SAVE :: o_dvoro = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1055        'dvoro', 'Orography dV', 'm/s2', (/ ('', i=1, 9) /))
     1056  TYPE(ctrl_out), SAVE :: o_dulif = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1057        'dulif', 'Orography dU', 'm/s2', (/ ('', i=1, 9) /))
     1058  TYPE(ctrl_out), SAVE :: o_dvlif = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1059        'dvlif', 'Orography dV', 'm/s2', (/ ('', i=1, 9) /))
     1060  TYPE(ctrl_out), SAVE :: o_duhin = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1061        'duhin', 'Hines GWD dU', 'm/s2', (/ ('', i=1, 9) /))
     1062  TYPE(ctrl_out), SAVE :: o_dvhin = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1063        'dvhin', 'Hines GWD dV', 'm/s2', (/ ('', i=1, 9) /))
     1064  TYPE(ctrl_out), SAVE :: o_dtoro = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1065        'dtoro', 'Orography dT', 'K/s', (/ ('', i=1, 9) /))
     1066  TYPE(ctrl_out), SAVE :: o_dtlif = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1067        'dtlif', 'Orography dT', 'K/s', (/ ('', i=1, 9) /))
     1068  TYPE(ctrl_out), SAVE :: o_dthin = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1069        'dthin', 'Hines GWD dT', 'K/s', (/ ('', i=1, 9) /))
    10601070
    10611071  TYPE(ctrl_out), SAVE, ALLOCATABLE :: o_trac(:)
     
    10761086  TYPE(ctrl_out), SAVE, ALLOCATABLE :: o_dtr_dry(:)
    10771087
    1078   TYPE(ctrl_out), SAVE :: o_rsu = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1079         'rsu', 'SW upward radiation', 'W m-2', (/ ('', i=1, 6) /))
    1080   TYPE(ctrl_out), SAVE :: o_rsd = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1081         'rsd', 'SW downward radiation', 'W m-2', (/ ('', i=1, 6) /))
    1082   TYPE(ctrl_out), SAVE :: o_rlu = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1083         'rlu', 'LW upward radiation', 'W m-2', (/ ('', i=1, 6) /))
    1084   TYPE(ctrl_out), SAVE :: o_rld = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1085         'rld', 'LW downward radiation', 'W m-2', (/ ('', i=1, 6) /))
    1086   TYPE(ctrl_out), SAVE :: o_rsucs = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1087         'rsucs', 'SW CS upward radiation', 'W m-2', (/ ('', i=1, 6) /))
    1088   TYPE(ctrl_out), SAVE :: o_rsdcs = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1089         'rsdcs', 'SW CS downward radiation', 'W m-2', (/ ('', i=1, 6) /))
    1090   TYPE(ctrl_out), SAVE :: o_rlucs = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1091         'rlucs', 'LW CS upward radiation', 'W m-2', (/ ('', i=1, 6) /))
    1092   TYPE(ctrl_out), SAVE :: o_rldcs = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1093         'rldcs', 'LW CS downward radiation', 'W m-2', (/ ('', i=1, 6) /))
    1094   TYPE(ctrl_out), SAVE :: o_tnt = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1095         'tnt', 'Tendency of air temperature', 'K s-1', (/ ('', i=1, 6) /))
    1096   TYPE(ctrl_out), SAVE :: o_tntc = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1097         'tntc', 'Tendency of air temperature due to Moist Convection', 'K s-1', (/ ('', i=1, 6) /))
    1098   TYPE(ctrl_out), SAVE :: o_tntr = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1099         'tntr', 'Air temperature tendency due to Radiative heating', 'K s-1', (/ ('', i=1, 6) /))
    1100   TYPE(ctrl_out), SAVE :: o_tntscpbl = ctrl_out((/ 4, 10, 10, 10, 10, 10 /),                  &
     1088  TYPE(ctrl_out), SAVE :: o_rsu = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1089        'rsu', 'SW upward radiation', 'W m-2', (/ ('', i=1, 9) /))
     1090  TYPE(ctrl_out), SAVE :: o_rsd = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1091        'rsd', 'SW downward radiation', 'W m-2', (/ ('', i=1, 9) /))
     1092  TYPE(ctrl_out), SAVE :: o_rlu = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1093        'rlu', 'LW upward radiation', 'W m-2', (/ ('', i=1, 9) /))
     1094  TYPE(ctrl_out), SAVE :: o_rld = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1095        'rld', 'LW downward radiation', 'W m-2', (/ ('', i=1, 9) /))
     1096  TYPE(ctrl_out), SAVE :: o_rsucs = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1097        'rsucs', 'SW CS upward radiation', 'W m-2', (/ ('', i=1, 9) /))
     1098  TYPE(ctrl_out), SAVE :: o_rsdcs = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1099        'rsdcs', 'SW CS downward radiation', 'W m-2', (/ ('', i=1, 9) /))
     1100  TYPE(ctrl_out), SAVE :: o_rlucs = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1101        'rlucs', 'LW CS upward radiation', 'W m-2', (/ ('', i=1, 9) /))
     1102  TYPE(ctrl_out), SAVE :: o_rldcs = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1103        'rldcs', 'LW CS downward radiation', 'W m-2', (/ ('', i=1, 9) /))
     1104  TYPE(ctrl_out), SAVE :: o_tnt = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1105        'tnt', 'Tendency of air temperature', 'K s-1', (/ ('', i=1, 9) /))
     1106  TYPE(ctrl_out), SAVE :: o_tntc = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1107        'tntc', 'Tendency of air temperature due to Moist Convection', 'K s-1', (/ ('', i=1, 9) /))
     1108  TYPE(ctrl_out), SAVE :: o_tntr = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1109        'tntr', 'Air temperature tendency due to Radiative heating', 'K s-1', (/ ('', i=1, 9) /))
     1110  TYPE(ctrl_out), SAVE :: o_tntscpbl = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /),                  &
    11011111        'tntscpbl', 'Air temperature tendency due to St cloud and precipitation and BL mixing', &
    1102       'K s-1', (/ ('', i=1, 6) /))
    1103   TYPE(ctrl_out), SAVE :: o_tnhus = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1104         'tnhus', 'Tendency of specific humidity', 's-1', (/ ('', i=1, 6) /))
    1105   TYPE(ctrl_out), SAVE :: o_tnhusc = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1106         'tnhusc', 'Tendency of specific humidity due to convection', 's-1', (/ ('', i=1, 6) /))
    1107   TYPE(ctrl_out), SAVE :: o_tnhusscpbl = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1108         'tnhusscpbl', 'Tendency of Specific humidity due to ST cl, precip and BL mixing', 's-1', (/ ('', i=1, 6) /))
    1109   TYPE(ctrl_out), SAVE :: o_evu = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1110         'evu', 'Eddy viscosity coefficient for Momentum Variables', 'm2 s-1', (/ ('', i=1, 6) /))
    1111   TYPE(ctrl_out), SAVE :: o_h2o = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1112         'h2o', 'Mass Fraction of Water', '1', (/ ('', i=1, 6) /))
    1113   TYPE(ctrl_out), SAVE :: o_mcd = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1114         'mcd', 'Downdraft COnvective Mass Flux', 'kg/(m2*s)', (/ ('', i=1, 6) /))
    1115   TYPE(ctrl_out), SAVE :: o_dmc = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1116         'dmc', 'Deep COnvective Mass Flux', 'kg/(m2*s)', (/ ('', i=1, 6) /))
    1117   TYPE(ctrl_out), SAVE :: o_ref_liq = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1118         'ref_liq', 'Effective radius of convective cloud liquid water particle', 'm', (/ ('', i=1, 6) /))
    1119   TYPE(ctrl_out), SAVE :: o_ref_ice = ctrl_out((/ 4, 10, 10, 10, 10, 10 /), &
    1120         'ref_ice', 'Effective radius of startiform cloud ice particle', 'm', (/ ('', i=1, 6) /))
    1121   TYPE(ctrl_out), SAVE :: o_rsut4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1122         'rsut4co2', 'TOA Out SW in 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1123   TYPE(ctrl_out), SAVE :: o_rlut4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1124         'rlut4co2', 'TOA Out LW in 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1125   TYPE(ctrl_out), SAVE :: o_rsutcs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1126         'rsutcs4co2', 'TOA Out CS SW in 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1127   TYPE(ctrl_out), SAVE :: o_rlutcs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1128         'rlutcs4co2', 'TOA Out CS LW in 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1129   TYPE(ctrl_out), SAVE :: o_rsu4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1130         'rsu4co2', 'Upwelling SW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1131   TYPE(ctrl_out), SAVE :: o_rlu4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1132         'rlu4co2', 'Upwelling LW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1133   TYPE(ctrl_out), SAVE :: o_rsucs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1134         'rsucs4co2', 'Upwelling CS SW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1135   TYPE(ctrl_out), SAVE :: o_rlucs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1136         'rlucs4co2', 'Upwelling CS LW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1137   TYPE(ctrl_out), SAVE :: o_rsd4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1138         'rsd4co2', 'Downwelling SW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1139   TYPE(ctrl_out), SAVE :: o_rld4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1140         'rld4co2', 'Downwelling LW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1141   TYPE(ctrl_out), SAVE :: o_rsdcs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1142         'rsdcs4co2', 'Downwelling CS SW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
    1143   TYPE(ctrl_out), SAVE :: o_rldcs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10 /), &
    1144         'rldcs4co2', 'Downwelling CS LW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 6) /))
     1112      'K s-1', (/ ('', i=1, 9) /))
     1113  TYPE(ctrl_out), SAVE :: o_tnhus = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1114        'tnhus', 'Tendency of specific humidity', 's-1', (/ ('', i=1, 9) /))
     1115  TYPE(ctrl_out), SAVE :: o_tnhusc = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1116        'tnhusc', 'Tendency of specific humidity due to convection', 's-1', (/ ('', i=1, 9) /))
     1117  TYPE(ctrl_out), SAVE :: o_tnhusscpbl = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1118        'tnhusscpbl', 'Tendency of Specific humidity due to ST cl, precip and BL mixing', 's-1', (/ ('', i=1, 9) /))
     1119  TYPE(ctrl_out), SAVE :: o_evu = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1120        'evu', 'Eddy viscosity coefficient for Momentum Variables', 'm2 s-1', (/ ('', i=1, 9) /))
     1121  TYPE(ctrl_out), SAVE :: o_h2o = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1122        'h2o', 'Mass Fraction of Water', '1', (/ ('', i=1, 9) /))
     1123  TYPE(ctrl_out), SAVE :: o_mcd = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1124        'mcd', 'Downdraft COnvective Mass Flux', 'kg/(m2*s)', (/ ('', i=1, 9) /))
     1125  TYPE(ctrl_out), SAVE :: o_dmc = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1126        'dmc', 'Deep COnvective Mass Flux', 'kg/(m2*s)', (/ ('', i=1, 9) /))
     1127  TYPE(ctrl_out), SAVE :: o_ref_liq = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1128        'ref_liq', 'Effective radius of convective cloud liquid water particle', 'm', (/ ('', i=1, 9) /))
     1129  TYPE(ctrl_out), SAVE :: o_ref_ice = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1130        'ref_ice', 'Effective radius of startiform cloud ice particle', 'm', (/ ('', i=1, 9) /))
     1131  TYPE(ctrl_out), SAVE :: o_rsut4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1132        'rsut4co2', 'TOA Out SW in 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1133  TYPE(ctrl_out), SAVE :: o_rlut4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1134        'rlut4co2', 'TOA Out LW in 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1135  TYPE(ctrl_out), SAVE :: o_rsutcs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1136        'rsutcs4co2', 'TOA Out CS SW in 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1137  TYPE(ctrl_out), SAVE :: o_rlutcs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1138        'rlutcs4co2', 'TOA Out CS LW in 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1139  TYPE(ctrl_out), SAVE :: o_rsu4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1140        'rsu4co2', 'Upwelling SW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1141  TYPE(ctrl_out), SAVE :: o_rlu4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1142        'rlu4co2', 'Upwelling LW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1143  TYPE(ctrl_out), SAVE :: o_rsucs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1144        'rsucs4co2', 'Upwelling CS SW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1145  TYPE(ctrl_out), SAVE :: o_rlucs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1146        'rlucs4co2', 'Upwelling CS LW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1147  TYPE(ctrl_out), SAVE :: o_rsd4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1148        'rsd4co2', 'Downwelling SW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1149  TYPE(ctrl_out), SAVE :: o_rld4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1150        'rld4co2', 'Downwelling LW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1151  TYPE(ctrl_out), SAVE :: o_rsdcs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1152        'rsdcs4co2', 'Downwelling CS SW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1153  TYPE(ctrl_out), SAVE :: o_rldcs4co2 = ctrl_out((/ 5, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1154        'rldcs4co2', 'Downwelling CS LW 4xCO2 atmosphere', 'W/m2', (/ ('', i=1, 9) /))
     1155
     1156!!!!!!!!!!!!! Sorties niveaux standards de pression NMC
     1157  TYPE(ctrl_out), SAVE :: o_tnondef = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1158       'tnondef', 'Undefined value of T', 'K', (/ "inst(X)", "inst(X)", "inst(X)", "inst(X)", &
     1159       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1160  TYPE(ctrl_out), SAVE :: o_ta = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1161       'ta', 'Air temperature', 'K', (/ "inst(X)", "inst(X)", "inst(X)", "inst(X)", &
     1162       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1163  TYPE(ctrl_out), SAVE :: o_zg  = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1164       'zg', 'Geopotential height', 'm', (/ "inst(X)", "inst(X)", "inst(X)", "inst(X)", &
     1165       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1166  TYPE(ctrl_out), SAVE :: o_hus = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1167       'hus', 'Specific humidity', '1', (/ "inst(X)", "inst(X)", "inst(X)", "inst(X)", &
     1168       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))                                                                                   
     1169  TYPE(ctrl_out), SAVE :: o_hur = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1170       'hur', 'Relative humidity', '%', (/ "inst(X)", "inst(X)", "inst(X)", "inst(X)", &
     1171       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1172  TYPE(ctrl_out), SAVE :: o_ua = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1173       'ua', 'Eastward wind', 'm s-1', (/ "inst(X)", "inst(X)", "inst(X)", "inst(X)", &
     1174       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1175  TYPE(ctrl_out), SAVE :: o_va = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1176       'va', 'Northward wind', 'm s-1', (/ ('', i=1, 9)/))
     1177  TYPE(ctrl_out), SAVE :: o_wap = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1178       'wap', 'Lagrangian tendency of air pressure', 'Pa s-1', (/ "inst(X)", "inst(X)", "inst(X)", &
     1179       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1180  TYPE(ctrl_out), SAVE :: o_psbg = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1181       'psbg', 'Lagrangian tendency of air pressure', 'Pa s-1', (/ "inst(X)", "inst(X)", "inst(X)", &
     1182       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1183  TYPE(ctrl_out), SAVE :: o_tro3 = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1184       'tro3', 'Ozone mole fraction', '1e-9', (/ "inst(X)", "inst(X)", "inst(X)", &
     1185       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1186  TYPE(ctrl_out), SAVE :: o_tro3_daylight = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
     1187       'tro3_daylight', 'Daylight ozone mole fraction', '1e-9', (/ "inst(X)", "inst(X)", "inst(X)", &
     1188       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1189  TYPE(ctrl_out), SAVE :: o_uxv = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
     1190       'uv', 'uv', 'm2/s2', (/ "inst(X)", "inst(X)", "inst(X)", &
     1191       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
     1192  TYPE(ctrl_out), SAVE :: o_vxq = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
     1193       'vq', 'vq', 'm/s * (kg/kg)', (/ "inst(X)", "inst(X)", "inst(X)", &
     1194       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))                                                                                                   
     1195  TYPE(ctrl_out), SAVE :: o_vxT = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
     1196       'vT', 'vT', 'mK/s', (/ "inst(X)", "inst(X)", "inst(X)", &
     1197       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))                                                                                     
     1198  TYPE(ctrl_out), SAVE :: o_wxq = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
     1199       'wq', 'wq', '(Pa/s)*(kg/kg)', (/ "inst(X)", "inst(X)", "inst(X)", &
     1200       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))                                                                               
     1201  TYPE(ctrl_out), SAVE :: o_vxphi = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
     1202       'vphi', 'vphi', 'm2/s', (/ "inst(X)", "inst(X)", "inst(X)", &
     1203       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))                                                                                 
     1204  TYPE(ctrl_out), SAVE :: o_wxT = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
     1205       'wT', 'wT', '"K*Pa/s', (/ "inst(X)", "inst(X)", "inst(X)", &
     1206       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))                                                                                     
     1207  TYPE(ctrl_out), SAVE :: o_uxu = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
     1208       'u2', 'u2', 'm2/s2', (/ "inst(X)", "inst(X)", "inst(X)", &
     1209       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))                                                                                                                                         
     1210  TYPE(ctrl_out), SAVE :: o_vxv = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
     1211       'v2', 'v2', 'm2/s2', (/ "inst(X)", "inst(X)", "inst(X)", &
     1212       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))                                                                               
     1213   TYPE(ctrl_out), SAVE :: o_TxT = ctrl_out((/ 11, 11, 11, 11, 11, 11, 6, 6, 6 /), &
     1214       'T2', 'T2', 'K2', (/ "inst(X)", "inst(X)", "inst(X)", &
     1215       "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))                                                                                 
    11451216
    11461217END MODULE phys_output_ctrlout_mod
  • LMDZ5/trunk/libf/phylmd/phys_output_mod.F90

    r1825 r1828  
    2525
    2626  SUBROUTINE phys_output_open(rlon,rlat,pim,tabij,ipt,jpt,plon,plat, &
    27        jjmp1,nlevSTD,clevSTD,nbteta, &
     27       jjmp1,nlevSTD,clevSTD,rlevSTD,nbteta, &
    2828       ctetaSTD, dtime, ok_veget, &
    2929       type_ocean, iflag_pbl,ok_mensuel,ok_journe, &
     
    9494    REAL, DIMENSION(klev)                 :: Ahyb, Bhyb, Alt
    9595    CHARACTER(LEN=4), DIMENSION(nlevSTD)  :: clevSTD
     96    REAL, DIMENSION(nlevSTD)              :: rlevSTD
    9697    INTEGER                               :: nsrf, k, iq, iiq, iff, i, j, ilev
    9798    INTEGER                               :: naero
     
    109110    INTEGER, DIMENSION(nfiles)            :: phys_out_levmin, phys_out_levmax
    110111    INTEGER, DIMENSION(nfiles)            :: phys_out_filelevels
    111     CHARACTER(LEN=20), DIMENSION(nfiles)  :: chtimestep   = (/ 'DefFreq', 'DefFreq','DefFreq', 'DefFreq', 'DefFreq', 'DefFreq' /)
     112    CHARACTER(LEN=20), DIMENSION(nfiles)  :: chtimestep   = (/ 'DefFreq', 'DefFreq','DefFreq', 'DefFreq', &
     113                                                        'DefFreq', 'DefFreq', 'DefFreq','DefFreq', 'DefFreq' /)
    112114    LOGICAL, DIMENSION(nfiles)            :: phys_out_filekeys
    113115    LOGICAL, DIMENSION(nfiles)            :: phys_out_filestations
     
    116118    !                 entre [phys_out_lonmin,phys_out_lonmax] et [phys_out_latmin,phys_out_latmax]
    117119
    118     LOGICAL, DIMENSION(nfiles), SAVE  :: phys_out_regfkey       = (/ .FALSE., .FALSE., .FALSE.,  .FALSE., .FALSE., .FALSE. /)
    119     REAL, DIMENSION(nfiles), SAVE     :: phys_out_lonmin        = (/   -180.,   -180.,   -180.,    -180.,   -180.,   -180. /)
    120     REAL, DIMENSION(nfiles), SAVE     :: phys_out_lonmax        = (/    180.,    180.,    180.,     180.,    180.,    180. /)
    121     REAL, DIMENSION(nfiles), SAVE     :: phys_out_latmin        = (/    -90.,    -90.,    -90.,     -90.,    -90.,    -90. /)
    122     REAL, DIMENSION(nfiles), SAVE     :: phys_out_latmax        = (/     90.,     90.,     90.,     90.,     90.,     90. /)
    123 
     120    LOGICAL, DIMENSION(nfiles), SAVE  :: phys_out_regfkey       = (/ .FALSE., .FALSE., .FALSE.,  .FALSE., &
     121                                                                    .FALSE., .FALSE., .FALSE., .FALSE.,  .FALSE. /)
     122    REAL, DIMENSION(nfiles), SAVE     :: phys_out_lonmin        = (/   -180.,   -180.,   -180.,    -180., &
     123                                                                     -180.,   -180., -180.,   -180.,    -180. /)
     124    REAL, DIMENSION(nfiles), SAVE     :: phys_out_lonmax        = (/    180.,    180.,    180.,     180., &
     125                                                                      180.,    180., 180.,    180.,     180. /)
     126    REAL, DIMENSION(nfiles), SAVE     :: phys_out_latmin        = (/    -90.,    -90.,    -90.,     -90., &
     127                                                                    -90., -90., -90.,    -90.,     -90. /)
     128    REAL, DIMENSION(nfiles), SAVE     :: phys_out_latmax        = (/  90.,     90.,     90.,     90., &
     129                                                                    90., 90., 90., 90., 90. /)                       
    124130#ifdef CPP_XIOS
    125131    ! ug Variables utilisées pour récupérer le calendrier pour xios
     
    140146
    141147
    142     levmax = (/ klev, klev, klev, klev, klev, klev /)
     148    levmax = (/ klev, klev, klev, klev, klev, klev, nlevSTD, nlevSTD, nlevSTD /)
    143149
    144150    phys_out_filenames(1) = 'histmth'
     
    148154    phys_out_filenames(5) = 'histLES'
    149155    phys_out_filenames(6) = 'histstn'
     156    phys_out_filenames(7) = 'histmthNMC'
     157    phys_out_filenames(8) = 'histdayNMC'
     158    phys_out_filenames(9) = 'histhfNMC.nc'
    150159
    151160    type_ecri(1) = 'ave(X)'
     
    155164    type_ecri(5) = 'ave(X)'
    156165    type_ecri(6) = 'inst(X)'
     166    type_ecri(7) = 'inst(X)'
     167    type_ecri(8) = 'inst(X)'
     168    type_ecri(9) = 'inst(X)'
    157169
    158170    clef_files(1) = ok_mensuel
     
    162174    clef_files(5) = ok_LES
    163175    clef_files(6) = ok_instan
     176    clef_files(7) = ok_histNMC(1)
     177    clef_files(8) = ok_histNMC(2)
     178    clef_files(9) = ok_histNMC(3)
    164179
    165180    !sortir des fichiers "stations" si clef_stations(:)=.TRUE.
     
    170185    clef_stations(5) = .FALSE.
    171186    clef_stations(6) = .FALSE.
     187    clef_stations(7) = .FALSE.
     188    clef_stations(8) = .FALSE.
     189    clef_stations(9) = .FALSE.
    172190
    173191    lev_files(1) = lev_histmth
     
    177195    lev_files(5) = lev_histLES
    178196    lev_files(6) = lev_histins
     197    lev_files(7) = levout_histNMC(1)
     198    lev_files(8) = levout_histNMC(2)
     199    lev_files(9) = levout_histNMC(3)
    179200
    180201    ecrit_files(1) = ecrit_mth
     
    184205    ecrit_files(5) = ecrit_LES
    185206    ecrit_files(6) = ecrit_ins
     207    ecrit_files(7) = freq_outNMC(1)
     208    ecrit_files(8) = freq_outNMC(2)
     209    ecrit_files(9) = freq_outNMC(3)
    186210
    187211    !! Lectures des parametres de sorties dans physiq.def
     
    275299!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    276300          IF (phys_out_regfkey(iff)) then
     301
    277302             imin_ins=1
    278303             imax_ins=iim
     
    318343          endif
    319344
    320           CALL histvert(nid_files(iff), "presnivs", "Vertical levels", "Pa", &
     345          if (iff.le.6) then
     346             CALL histvert(nid_files(iff), "presnivs", "Vertical levels", "Pa", & 
    321347               levmax(iff) - levmin(iff) + 1, &
    322348               presnivs(levmin(iff):levmax(iff)), nvertm(iff),"down")
    323 
    324 !!!!!!!!!!!!! Traitement des champs 3D pour histhf !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    325 !!!!!!!!!!!!!!! A Revoir plus tard !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    326           !          IF (iff.eq.3.and.lev_files(iff).ge.4) THEN
    327           !          CALL histbeg_phy("histhf3d",itau_phy, &
    328           !     &                     zjulian, dtime, &
    329           !     &                     nhorim, nid_hf3d)
    330 
    331           !         CALL histvert(nid_hf3d, "presnivs", &
    332           !     &                 "Vertical levels", "mb", &
    333           !     &                 klev, presnivs/100., nvertm)
    334           !          ENDIF
    335           !
    336349!!!! Composantes de la coordonnee sigma-hybride
    337350          CALL histvert(nid_files(iff), "Ahyb","Ahyb comp of Hyb Cord ", "Pa", &
     
    341354               levmax(iff) - levmin(iff) + 1,Bhyb,nvertbp(iff))
    342355
    343           CALL histvert(nid_files(iff), "Alt","Height approx for scale heigh of 8km at levels", "Km", &
     356          CALL histvert(nid_files(iff), "Alt","Height approx for scale heigh of 8km at levels", "Km", &                       
    344357               levmax(iff) - levmin(iff) + 1,Alt,nvertAlt(iff))
    345358
    346           !   CALL histvert(nid_files(iff), "preff","Reference pressure", "Pa", &
    347           !                 1,preff,nvertp0(iff))
    348 
     359
     360          else
     361             CALL histvert(nid_files(iff), "plev", "pressure", "Pa", &
     362               levmax(iff) - levmin(iff) + 1, &
     363              rlevSTD(levmin(iff):levmax(iff)), nvertm(iff), "down")
     364          endif
    349365#ifdef CPP_XIOS
    350366    ! ug déclaration des axes verticaux de chaque fichier:
    351     CALL wxios_add_vaxis("presnivs", nid_files(iff), levmax(iff) - levmin(iff) + 1, presnivs(levmin(iff):levmax(iff)))
    352     CALL wxios_add_vaxis("Ahyb", nid_files(iff), levmax(iff) - levmin(iff) + 1, Ahyb)
    353     CALL wxios_add_vaxis("Bhyb", nid_files(iff), levmax(iff) - levmin(iff) + 1, Bhyb)
    354     CALL wxios_add_vaxis("Ahyb", nid_files(iff), levmax(iff) - levmin(iff) + 1, Alt)
    355 #endif 
     367    CALL wxios_add_vaxis("presnivs", nid_files(iff), levmax(iff) - levmin(iff) + 1, presnivs(levmin(iff):levmax(iff)))                                         
     368    CALL wxios_add_vaxis("Ahyb", nid_files(iff), levmax(iff) - levmin(iff) + 1, Ahyb)                             
     369    CALL wxios_add_vaxis("Bhyb", nid_files(iff), levmax(iff) - levmin(iff) + 1, Bhyb)         
     370    CALL wxios_add_vaxis("Ahyb", nid_files(iff), levmax(iff) - levmin(iff) + 1, Alt)             
     371#endif
    356372
    357373      IF (nqtot>=3) THEN
    358374            DO iq=3,nqtot 
    359375            iiq=niadv(iq)
    360             o_trac(iq-2) = ctrl_out((/ 4, 5, 1, 1, 1, 10 /),tname(iiq),'Tracer '//ttext(iiq), "-",&
    361                   (/ '', '', '', '', '', '' /))
    362 
    363             o_dtr_vdf(iq-2) = ctrl_out((/ 5, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_vdf' &
    364                ,'Tendance tracer '//ttext(iiq), "-" , (/ '', '', '', '', '', '' /))
    365 
    366             o_dtr_the(iq-2) = ctrl_out((/ 5, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_the' &
    367                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    368 
    369             o_dtr_con(iq-2) = ctrl_out((/ 5, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_con' &
    370                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    371 
    372             o_dtr_lessi_impa(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_lessi_impa' &
    373                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    374 
    375             o_dtr_lessi_nucl(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_lessi_nucl' &
    376                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    377 
    378             o_dtr_insc(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_insc' &
    379                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    380 
    381             o_dtr_bcscav(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_bcscav' &
    382                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    383 
    384             o_dtr_evapls(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_evapls' &
    385                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    386 
    387             o_dtr_ls(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_ls' &
    388                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    389 
    390             o_dtr_trsp(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_trsp' &
    391                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    392 
    393             o_dtr_sscav(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_sscav' &
    394                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    395 
    396             o_dtr_sat(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_sat' &
    397                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    398 
    399             o_dtr_uscav(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'d'//trim(tname(iq))//'_uscav' &
    400                ,'Tendance tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    401 
    402             o_dtr_dry(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10 /),'cum'//'d'//trim(tname(iq))//'_dry' &
    403                ,'tracer tendency dry deposition'//ttext(iiq), "-", (/ '', '', '', '', '', '' /) )
    404 
    405             o_trac_cum(iq-2) = ctrl_out((/ 3, 4, 10, 10, 10, 10 /),'cum'//tname(iiq),&
    406                   'Cumulated tracer '//ttext(iiq), "-", (/ '', '', '', '', '', '' /))
     376            o_trac(iq-2) = ctrl_out((/ 4, 5, 1, 1, 1, 10, 11, 11, 11 /), &
     377                           tname(iiq),'Tracer '//ttext(iiq), "-",  &
     378                           (/ '', '', '', '', '', '', '', '', '' /))
     379
     380            o_dtr_vdf(iq-2) = ctrl_out((/ 5, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     381                              'd'//trim(tname(iq))//'_vdf',  &
     382                              'Tendance tracer '//ttext(iiq), "-" , &
     383                              (/ '', '', '', '', '', '', '', '', '' /))
     384
     385            o_dtr_the(iq-2) = ctrl_out((/ 5, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     386                              'd'//trim(tname(iq))//'_the', &
     387                              'Tendance tracer '//ttext(iiq), "-", &
     388                              (/ '', '', '', '', '', '', '', '', '' /))
     389
     390            o_dtr_con(iq-2) = ctrl_out((/ 5, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     391                              'd'//trim(tname(iq))//'_con', &
     392                              'Tendance tracer '//ttext(iiq), "-", &
     393                              (/ '', '', '', '', '', '', '', '', '' /))
     394
     395            o_dtr_lessi_impa(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     396                                     'd'//trim(tname(iq))//'_lessi_impa', &
     397                                     'Tendance tracer '//ttext(iiq), "-", &
     398                                     (/ '', '', '', '', '', '', '', '', '' /))
     399
     400            o_dtr_lessi_nucl(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     401                                     'd'//trim(tname(iq))//'_lessi_nucl', &
     402                                     'Tendance tracer '//ttext(iiq), "-", &
     403                                     (/ '', '', '', '', '', '', '', '', '' /))
     404
     405            o_dtr_insc(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     406                               'd'//trim(tname(iq))//'_insc', &
     407                               'Tendance tracer '//ttext(iiq), "-", &
     408                               (/ '', '', '', '', '', '', '', '', '' /))
     409
     410            o_dtr_bcscav(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     411                                 'd'//trim(tname(iq))//'_bcscav', &
     412                                 'Tendance tracer '//ttext(iiq), "-", &
     413                                 (/ '', '', '', '', '', '', '', '', '' /))
     414
     415            o_dtr_evapls(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     416                                 'd'//trim(tname(iq))//'_evapls', &
     417                                 'Tendance tracer '//ttext(iiq), "-", &
     418                                 (/ '', '', '', '', '', '', '', '', '' /))
     419
     420            o_dtr_ls(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     421                             'd'//trim(tname(iq))//'_ls', &
     422                             'Tendance tracer '//ttext(iiq), "-", &
     423                             (/ '', '', '', '', '', '', '', '', '' /))
     424
     425            o_dtr_trsp(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     426                               'd'//trim(tname(iq))//'_trsp', &
     427                               'Tendance tracer '//ttext(iiq), "-", &
     428                               (/ '', '', '', '', '', '', '', '', '' /))
     429
     430            o_dtr_sscav(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     431                                'd'//trim(tname(iq))//'_sscav', &
     432                                'Tendance tracer '//ttext(iiq), "-", &
     433                                (/ '', '', '', '', '', '', '', '', '' /))
     434
     435            o_dtr_sat(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     436                               'd'//trim(tname(iq))//'_sat', &
     437                               'Tendance tracer '//ttext(iiq), "-", &
     438                               (/ '', '', '', '', '', '', '', '', '' /))
     439
     440            o_dtr_uscav(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     441                                'd'//trim(tname(iq))//'_uscav', &
     442                                'Tendance tracer '//ttext(iiq), "-", &
     443                                 (/ '', '', '', '', '', '', '', '', '' /))
     444
     445            o_dtr_dry(iq-2) = ctrl_out((/ 7, 7, 7, 7, 10, 10, 11, 11, 11 /), &
     446                              'cum'//'d'//trim(tname(iq))//'_dry', &
     447                              'tracer tendency dry deposition'//ttext(iiq), "-", &
     448                              (/ '', '', '', '', '', '', '', '', '' /))
     449
     450            o_trac_cum(iq-2) = ctrl_out((/ 3, 4, 10, 10, 10, 10, 11, 11, 11 /), &
     451                               'cum'//tname(iiq),&
     452                               'Cumulated tracer '//ttext(iiq), "-", &
     453                               (/ '', '', '', '', '', '', '', '', '' /))
    407454            ENDDO
    408455      ENDIF
     
    411458
    412459    ENDDO !  iff
    413 
    414460
    415461    ! Updated write frequencies due to phys_out_filetimesteps.
     
    421467    ecrit_LES = ecrit_files(5)
    422468    ecrit_ins = ecrit_files(6)
     469    freq_outNMC(1) = ecrit_files(7)
     470    freq_outNMC(2) = ecrit_files(8)
     471    freq_outNMC(3) = ecrit_files(9)
    423472
    424473    WRITE(lunout,*)'swaero_diag=',swaero_diag
  • LMDZ5/trunk/libf/phylmd/phys_output_var_mod.F90

    r1825 r1828  
    2525
    2626! ug Plein de variables venues de phys_output_mod
    27       INTEGER, PARAMETER                           :: nfiles = 6
     27      INTEGER, PARAMETER                           :: nfiles = 9
    2828      LOGICAL, DIMENSION(nfiles), SAVE             :: clef_files
    2929      LOGICAL, DIMENSION(nfiles), SAVE             :: clef_stations
  • LMDZ5/trunk/libf/phylmd/phys_output_write_mod.F90

    r1825 r1828  
    2020   &                  pplay, lmax_th, aerosol_couple,         &
    2121   &                  ok_ade, ok_aie, ivap, new_aod, ok_sync, &
    22    &                  ptconv, read_climoz, clevSTD, ptconvth, &
     22   &                  ptconv, read_climoz, clevSTD, freq_moyNMC, ptconvth, &
    2323   &                  d_t, qx, d_qx, zmasse, flag_aerosol_strat)
    2424
     
    4040    USE iophy
    4141    USE mod_phys_lmdz_para
     42    USE netcdf,  ONLY : nf90_fill_real
    4243
    4344#ifdef CPP_XIOS
     
    7071    REAL, DIMENSION(klon, llm) :: zmasse
    7172    LOGICAL :: flag_aerosol_strat
     73    REAL, DIMENSION(3) :: freq_moyNMC
    7274
    7375! Local
     
    8284    INTEGER, DIMENSION(iim*jjmp1*klev) :: ndex3d
    8385    REAL, PARAMETER :: dobson_u = 2.1415e-05 ! Dobson unit, in kg m-2
     86    REAL, PARAMETER :: missing_val=nf90_fill_real
    8487
    8588     ! On calcul le nouveau tau:
     
    974977      CALL histwrite_phy(o_rldcs4co2, lwdn0p)
    975978      ENDIF
     979!!!!!!!!!!!! Sorties niveaux de pression NMC !!!!!!!!!!!!!!!!!!!!
     980DO iff=7, nfiles
     981
     982      CALL histwrite_phy(o_tnondef,tnondef(:,:,iff-6),iff)
     983      CALL histwrite_phy(o_ta,twriteSTD(:,:,iff-6),iff)
     984      CALL histwrite_phy(o_zg,phiwriteSTD(:,:,iff-6),iff)
     985      CALL histwrite_phy(o_hus,qwriteSTD(:,:,iff-6),iff)
     986      CALL histwrite_phy(o_hur,rhwriteSTD(:,:,iff-6),iff)
     987      CALL histwrite_phy(o_ua,uwriteSTD(:,:,iff-6),iff)
     988      CALL histwrite_phy(o_va,vwriteSTD(:,:,iff-6),iff)
     989      CALL histwrite_phy(o_wap,wwriteSTD(:,:,iff-6),iff)
     990IF(vars_defined) THEN
     991       DO k=1, nlevSTD
     992        DO i=1, klon
     993         IF(tnondef(i,k,iff-6).NE.missing_val) THEN
     994          zx_tmp_fi3d(i,k) = (100.*tnondef(i,k,iff-6))/freq_moyNMC(iff-6)
     995         ELSE
     996          zx_tmp_fi3d(i,k) = missing_val
     997         ENDIF
     998        ENDDO
     999      ENDDO
     1000ENDIF
     1001      CALL histwrite_phy(o_psbg,zx_tmp_fi3d,iff)
     1002IF(vars_defined) THEN
     1003       DO k=1, nlevSTD
     1004        DO i=1, klon
     1005         IF(O3sumSTD(i,k,iff-6).NE.missing_val) THEN
     1006          zx_tmp_fi3d(i,k) = O3sumSTD(i,k,iff-6) * 1.e+9
     1007         ELSE
     1008          zx_tmp_fi3d(i,k) = missing_val
     1009         ENDIF
     1010        ENDDO
     1011       ENDDO !k=1, nlevSTD
     1012ENDIF
     1013      CALL histwrite_phy(o_tro3,zx_tmp_fi3d,iff)
     1014       if (read_climoz == 2) THEN
     1015IF(vars_defined) THEN
     1016       DO k=1, nlevSTD
     1017        DO i=1, klon
     1018         IF(O3daysumSTD(i,k,iff-6).NE.missing_val) THEN
     1019          zx_tmp_fi3d(i,k) = O3daysumSTD(i,k,iff-6) * 1.e+9
     1020         ELSE
     1021          zx_tmp_fi3d(i,k) = missing_val
     1022         ENDIF
     1023        ENDDO
     1024       ENDDO !k=1, nlevSTD
     1025ENDIF
     1026      CALL histwrite_phy(o_tro3_daylight,zx_tmp_fi3d,iff)
     1027      endif
     1028      CALL histwrite_phy(o_uxv,uvsumSTD(:,:,iff-6),iff)
     1029      CALL histwrite_phy(o_vxq,vqsumSTD(:,:,iff-6),iff)
     1030      CALL histwrite_phy(o_vxT,vTsumSTD(:,:,iff-6),iff)
     1031      CALL histwrite_phy(o_wxq,wqsumSTD(:,:,iff-6),iff)
     1032      CALL histwrite_phy(o_vxphi,vphisumSTD(:,:,iff-6),iff)
     1033      CALL histwrite_phy(o_wxT,wTsumSTD(:,:,iff-6),iff)
     1034      CALL histwrite_phy(o_uxu,u2sumSTD(:,:,iff-6),iff)
     1035      CALL histwrite_phy(o_vxv,v2sumSTD(:,:,iff-6),iff)
     1036      CALL histwrite_phy(o_TxT,T2sumSTD(:,:,iff-6),iff)
     1037ENDDO !nfiles
     1038!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    9761039        IF (nqtot.GE.3) THEN
    9771040         DO iq=3,nqtot
  • LMDZ5/trunk/libf/phylmd/physiq.F

    r1827 r1828  
    15121512       call phys_output_open(rlon,rlat,nCFMIP,tabijGCM,
    15131513     &                       iGCM,jGCM,lonGCM,latGCM,
    1514      &                       jjmp1,nlevSTD,clevSTD,
     1514     &                       jjmp1,nlevSTD,clevSTD,rlevSTD,
    15151515     &                       nbteta, ctetaSTD, dtime,ok_veget,
    15161516     &                       type_ocean,iflag_pbl,ok_mensuel,ok_journe,
     
    15271527#ifdef histISCCP
    15281528#include "ini_histISCCP.h"
    1529 #endif
    1530 
    1531 #undef histNMC
    1532 #ifdef histNMC
    1533 #include "ini_histhfNMC.h"
    1534 #include "ini_histdayNMC.h"
    1535 #include "ini_histmthNMC.h"
    15361529#endif
    15371530
     
    39543947     &                  pplay, lmax_th, aerosol_couple,                 &
    39553948     &                  ok_ade, ok_aie, ivap, new_aod, ok_sync,         &
    3956      &                  ptconv, read_climoz, clevSTD, ptconvth,         &
    3957      &                  d_t, qx, d_qx, zmasse, flag_aerosol_strat)
     3949     &                  ptconv, read_climoz, clevSTD, freq_moyNMC,      &
     3950     &                  ptconvth, d_t, qx, d_qx, zmasse,                &
     3951     &                  flag_aerosol_strat)
    39583952
    39593953
     
    39623956#ifdef histISCCP
    39633957#include "write_histISCCP.h"
    3964 #endif
    3965 
    3966 #ifdef histNMC
    3967 #include "write_histhfNMC.h"
    3968 #include "write_histdayNMC.h"
    3969 #include "write_histmthNMC.h"
    39703958#endif
    39713959
Note: See TracChangeset for help on using the changeset viewer.