Ignore:
Timestamp:
Feb 3, 2018, 9:52:04 AM (6 years ago)
Author:
jyg
Message:

New structure for the representation of vdf
splitting in pbl_surface. Computations are
gathered in two subroutines included in the module
wx_pbl_mod: wx_pbl0_fuse, called before the
sub-surfaces, determines the single column
equivalent to the (w) and (x) columns.
wx_pbl0_split, called after the subsurfaces,
determines the distinct (w) and (x) surface
fluxes.

This is a first version with no surface
temperature difference between (w) and (x) (hence
the index 0).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/phys_local_var_mod.F90

    r3148 r3179  
    347347!!!$OMP THREADPRIVATE(q_x, q_w)
    348348!>jyg
    349 !!! Sorties ferret
    350       REAL,ALLOCATABLE,SAVE,DIMENSION(:,:) :: dtvdf_x, dtvdf_w
    351 !$OMP THREADPRIVATE(dtvdf_x, dtvdf_w)
    352       REAL,ALLOCATABLE,SAVE,DIMENSION(:,:) :: dqvdf_x, dqvdf_w
    353 !$OMP THREADPRIVATE(dqvdf_x, dqvdf_w)
    354349! Variables suppl\E9mentaires dans physiq.F relative au splitting de la surface
    355350      REAL,ALLOCATABLE,SAVE,DIMENSION(:,:,:) :: pbl_tke_input
     
    579574      ALLOCATE(plul_st(klon),plul_th(klon))
    580575      ALLOCATE(d_t_vdf(klon,klev),d_q_vdf(klon,klev),d_t_diss(klon,klev))
    581 !nrlmd+jyg<
    582       ALLOCATE(d_t_vdf_w(klon,klev),d_q_vdf_w(klon,klev))
    583       ALLOCATE(d_t_vdf_x(klon,klev),d_q_vdf_x(klon,klev))
    584 !>nrlmd+jyg
    585576      ALLOCATE(d_u_vdf(klon,klev),d_v_vdf(klon,klev))
    586577      ALLOCATE(d_t_oli(klon,klev),d_t_oro(klon,klev))
     
    724715!!      ALLOCATE(q_x(klon,klev), q_w(klon,klev))
    725716!>jyg
    726       ALLOCATE(dtvdf_x(klon,klev), dtvdf_w(klon,klev))
    727       ALLOCATE(dqvdf_x(klon,klev), dqvdf_w(klon,klev))
     717      ALLOCATE(d_t_vdf_x(klon,klev), d_t_vdf_w(klon,klev))
     718      ALLOCATE(d_q_vdf_x(klon,klev), d_q_vdf_w(klon,klev))
    728719      ALLOCATE(pbl_tke_input(klon,klev+1,nbsrf))
    729720      ALLOCATE(t_therm(klon,klev), q_therm(klon,klev),u_therm(klon,klev), v_therm(klon,klev))
     
    881872      DEALLOCATE(plul_st,plul_th)
    882873      DEALLOCATE(d_t_vdf,d_q_vdf,d_t_diss)
    883 !nrlmd+jyg<
    884       DEALLOCATE(d_t_vdf_w,d_q_vdf_w)
    885       DEALLOCATE(d_t_vdf_x,d_q_vdf_x)
    886 !>nrlmd+jyg
    887874      DEALLOCATE(d_u_vdf,d_v_vdf)
    888875      DEALLOCATE(d_t_oli,d_t_oro)
     
    10161003!!      DEALLOCATE(q_x, q_w)
    10171004!>jyg
    1018       DEALLOCATE(dtvdf_x, dtvdf_w)
    1019       DEALLOCATE(dqvdf_x, dqvdf_w)
     1005      DEALLOCATE(d_t_vdf_x, d_t_vdf_w)
     1006      DEALLOCATE(d_q_vdf_x, d_q_vdf_w)
    10201007      DEALLOCATE(pbl_tke_input)
    10211008      DEALLOCATE(t_therm, q_therm, u_therm, v_therm)
Note: See TracChangeset for help on using the changeset viewer.