Ignore:
Timestamp:
Dec 14, 2017, 2:27:37 PM (7 years ago)
Author:
musat
Message:

Add LMDZ outputs: icc3dcon, icc3dstra corresponding to
CMIP6' clic, clis
Correct CMIP6_parasolRefl_sea diag
Add CMIP6' variables cldicemxrat, cldwatmxrat
IM

Location:
LMDZ6/branches/IPSLCM6.0.14/libf/phylmd
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/IPSLCM6.0.14/libf/phylmd/newmicro.F90

    r3117 r3127  
    1010  USE dimphy
    1111  USE phys_local_var_mod, ONLY: scdnc, cldncl, reffclwtop, lcc, reffclws, &
    12     reffclwc, cldnvi, lcc3d, lcc3dcon, lcc3dstra
     12    reffclwc, cldnvi, lcc3d, lcc3dcon, lcc3dstra, icc3dcon, icc3dstra, zfice
    1313  USE phys_state_var_mod, ONLY: rnebcon, clwcon
    1414  USE icefrac_lsc_mod ! computes ice fraction (JBM 3/14)
     
    152152  REAL zrho(klon, klev) !--rho pour la couche
    153153  REAL dh(klon, klev) !--dz pour la couche
    154   REAL zfice(klon, klev)
    155154  REAL rad_chaud(klon, klev) !--rayon pour les nuages chauds
    156155  REAL rad_chaud_pi(klon, klev) !--rayon pour les nuages chauds pre-industriels
     
    586585        lcc3dstra(i, k) = lcc3dstra(i, k) - lcc3dcon(i, k) ! eau liquide stratiforme
    587586        lcc3dstra(i, k) = max(lcc3dstra(i,k), 0.0)
     587        !FC pour la glace (CAUSES)
     588        icc3dcon(i, k) = rnebcon(i, k)*(1-phase3d(i, k))*clwcon(i, k) !  glace convective
     589        icc3dstra(i, k)= pclc(i, k)*pqlwp(i, k)*(1-phase3d(i, k))
     590        icc3dstra(i, k) = icc3dstra(i, k) - icc3dcon(i, k) ! glace stratiforme
     591        icc3dstra(i, k) = max( icc3dstra(i, k), 0.0)
     592        !FC (CAUSES)
     593
    588594        ! Compute cloud droplet radius as above in meter
    589595        radius = 1.1*((pqlwp(i,k)*pplay(i,k)/(rd*t(i,k)))/(4./3*rpi*1000.* &
     
    626632        IF (lcc3dcon(i,k)<=0.0) lcc3dcon(i, k) = 0.0
    627633        IF (lcc3dstra(i,k)<=0.0) lcc3dstra(i, k) = 0.0
     634!FC (CAUSES)
     635        IF (icc3dcon(i,k)<=0.0) icc3dcon(i, k) = 0.0
     636        IF (icc3dstra(i,k)<=0.0) icc3dstra(i, k) = 0.0
     637!FC (CAUSES)
    628638      END DO
    629639      IF (reffclwtop(i)<=0.0) reffclwtop(i) = 0.0
  • LMDZ6/branches/IPSLCM6.0.14/libf/phylmd/phys_local_var_mod.F90

    r3117 r3127  
    169169      REAL, SAVE, ALLOCATABLE :: lcc3dstra(:,:)
    170170      !$OMP THREADPRIVATE(lcc3dstra)
     171      REAL, SAVE, ALLOCATABLE :: icc3dcon(:,:)
     172      !$OMP THREADPRIVATE(icc3dcon)
     173      REAL, SAVE, ALLOCATABLE :: icc3dstra(:,:)
     174      !$OMP THREADPRIVATE(icc3dstra)
     175      REAL, SAVE, ALLOCATABLE :: zfice(:,:)
     176      !$OMP THREADPRIVATE(zfice)
    171177      REAL, SAVE, ALLOCATABLE :: od443aer(:)
    172178      !$OMP THREADPRIVATE(od443aer)
     
    593599      ALLOCATE(lcc3dcon(klon, klev))
    594600      ALLOCATE(lcc3dstra(klon, klev))
     601      ALLOCATE(icc3dcon(klon, klev))
     602      ALLOCATE(icc3dstra(klon, klev))
     603      ALLOCATE(zfice(klon, klev))
    595604      ALLOCATE(od443aer(klon))
    596605      ALLOCATE(od550aer(klon))
     
    868877      DEALLOCATE(lcc3dcon)
    869878      DEALLOCATE(lcc3dstra)
     879      DEALLOCATE(icc3dcon)
     880      DEALLOCATE(icc3dstra)
     881      DEALLOCATE(zfice)
    870882      DEALLOCATE(od443aer)
    871883      DEALLOCATE(od550aer)
  • LMDZ6/branches/IPSLCM6.0.14/libf/phylmd/phys_output_ctrlout_mod.F90

    r3117 r3127  
    809809    's2', 'Surface moyenne des panaches de type 2', 'm2', (/ ('', i=1, 10) /))
    810810             
    811 !-------Déclenchement stochastiqu
     811!-------Déclenchement stochastique
    812812  TYPE(ctrl_out), SAVE :: o_proba_notrig = ctrl_out((/ 1, 6, 6, 6, 10, 10, 11, 11, 11, 11/), &
    813813    'proba_notrig', 'Probabilite de non-declenchement', ' ', (/ ('', i=1, 10) /))
     
    14471447  TYPE(ctrl_out), SAVE :: o_lcc3dstra = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11, 11/), &
    14481448    'lcc3dstra', 'Stratiform cloud liquid fraction', '1', (/ ('', i=1, 10) /))
     1449  TYPE(ctrl_out), SAVE :: o_icc3dcon = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11, 11/), &
     1450    'icc3dcon', 'Convective cloud ice fraction', '1', (/ ('', i=1, 10) /))
     1451  TYPE(ctrl_out), SAVE :: o_icc3dstra = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11, 11/), &
     1452    'icc3dstra', 'Stratiform cloud ice fraction', '1', (/ ('', i=1, 10) /))
     1453  TYPE(ctrl_out), SAVE :: o_cldicemxrat = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11, 11/), &
     1454    'cldicemxrat', 'Cloud Ice Mixing Ratio', '1', (/ ('', i=1, 10) /))
     1455  TYPE(ctrl_out), SAVE :: o_cldwatmxrat = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11, 11/), &
     1456    'cldwatmxrat', 'Cloud Water Mixing Ratio', '1', (/ ('', i=1, 10) /))
    14491457  TYPE(ctrl_out), SAVE :: o_solbnd = ctrl_out((/ 2,  6, 10, 10, 10, 10, 11, 11, 11, 11/), &
    14501458    'solbnd', 'Top-of-Atmosphere Solar Insolation for each band', 'W m-2', (/ ('', i=1, 10) /))
  • LMDZ6/branches/IPSLCM6.0.14/libf/phylmd/phys_output_write_mod.F90

    r3117 r3127  
    1414CONTAINS
    1515
    16   ! ug Routine pour définir (los du premier passageà) ET sortir les variables
     16  ! ug Routine pour définir (lors du premier passage) ET sortir les variables
    1717  SUBROUTINE phys_output_write(itap, pdtphys, paprs, pphis, &
    1818       pplay, lmax_th, aerosol_couple,         &
     
    122122         o_cldncl, o_reffclws, o_reffclwc, o_solbnd, o_stratomask,&
    123123         o_cldnvi, o_lcc, o_lcc3d, o_lcc3dcon, &
    124          o_lcc3dstra, o_reffclwtop, o_ec550aer, &
     124         o_lcc3dstra, o_icc3dcon, o_icc3dstra, &
     125         o_cldicemxrat, o_cldwatmxrat, o_reffclwtop, o_ec550aer, &
    125126         o_lwcon, o_iwcon, o_temp, o_theta, &
    126127         o_ovapinit, o_ovap, o_oliq, o_ocond, o_geop, &
     
    278279         sollwad0_aero, toplwai_aero, sollwai_aero, &
    279280         scdnc, cldncl, reffclws, reffclwc, cldnvi, stratomask,&
    280          lcc, lcc3d, lcc3dcon, lcc3dstra, reffclwtop, &
     281         lcc, lcc3d, lcc3dcon, lcc3dstra, &
     282         icc3dcon, icc3dstra, zfice, reffclwtop, &
    281283         ec550aer, flwc, fiwc, t_seri, theta, q_seri, &
    282284         ql_seri, qs_seri, tr_seri, &
     
    14061408          CALL histwrite_phy(o_lcc3dcon, lcc3dcon)
    14071409          CALL histwrite_phy(o_lcc3dstra, lcc3dstra)
     1410          CALL histwrite_phy(o_icc3dcon, icc3dcon)
     1411          CALL histwrite_phy(o_icc3dstra, icc3dstra)
     1412          CALL histwrite_phy(o_cldicemxrat, zfice)
     1413          zx_tmp_fi3d(:,:)=1-zfice(:,:)
     1414          CALL histwrite_phy(o_cldwatmxrat, zx_tmp_fi3d)
    14081415          CALL histwrite_phy(o_reffclwtop, reffclwtop)
    14091416       ENDIF
Note: See TracChangeset for help on using the changeset viewer.