Ignore:
Timestamp:
Jan 22, 2019, 4:21:59 PM (5 years ago)
Author:
Laurent Fairhead
Message:

"Historic" :-) commit merging the physics branch used for DYNAMICO with the LMDZ trunk.
The same physics branch can now be used seamlessly with the traditional lon-lat LMDZ
dynamical core and DYNAMICO.
Testing consisted in running a lon-lat LMDZ bucket simulation with the NPv6.1 physics package
with the original trunk sources and the merged sources. Tests were succesful in the sense that
numeric continuity was preserved in the restart files from both simulation. Further tests
included running both versions of the physics codes for one year in a LMDZOR setting in which
the restart files also came out identical.

Caution:

  • as the physics package now manages unstructured grids, grid information needs to be transmitted

to the surface scheme ORCHIDEE. This means that the interface defined in surf_land_orchidee_mod.F90
is only compatible with ORCHIDEE version orchidee2.1 and later versions. If previous versions of
ORCHIDEE need to be used, the CPP key ORCHIDEE_NOUNSTRUCT needs to be set at compilation time.
This is done automatically if makelmdz/makelmdz_fcm are called with the veget orchidee2.0 switch

  • due to a limitation in XIOS, the time at which limit conditions will be read in by DYNAMICO will be

delayed by one physic timestep with respect to the time it is read in by the lon-lat model. This is caused
by the line

IF (MOD(itime-1, lmt_pas) == 0 .OR. (jour_lu /= jour .AND. grid_type /= unstructured)) THEN ! time to read

in limit_read_mod.F90

Work still needed on COSP integration and XML files for DYNAMICO

EM, YM, LF

File:
1 edited

Legend:

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

    r3402 r3435  
    5959    USE print_control_mod, ONLY: lunout
    6060    USE ioipsl_getin_p_mod, ONLY : getin_p
     61    IMPLICIT NONE
    6162
    6263    INCLUDE "dimsoil.h"
     
    287288    USE indice_sol_mod
    288289    USE time_phylmdz_mod,   ONLY : day_ini,annee_ref,itau_phy
    289     USE mod_grid_phy_lmdz,  ONLY : nbp_lon, nbp_lat
     290    USE mod_grid_phy_lmdz,  ONLY : nbp_lon, nbp_lat, grid1dto2d_glo
    290291    USE print_control_mod,  ONLY : prt_level,lunout
    291292    USE ioipsl_getin_p_mod, ONLY : getin_p
     
    852853          idayref = day_ini
    853854          CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian)
    854           CALL gr_fi_ecrit(1,klon,nbp_lon,nbp_lat,rlon,zx_lon)
     855          CALL grid1dTo2d_glo(rlon,zx_lon)
    855856          DO i = 1, nbp_lon
    856857             zx_lon(i,1) = rlon(i+1)
    857858             zx_lon(i,nbp_lat) = rlon(i+1)
    858859          ENDDO
    859           CALL gr_fi_ecrit(1,klon,nbp_lon,nbp_lat,rlat,zx_lat)
     860          CALL grid1dTo2d_glo(rlat,zx_lat)
    860861          CALL histbeg("sous_index",nbp_lon,zx_lon(:,1),nbp_lat,zx_lat(1,:), &
    861862               1,nbp_lon,1,nbp_lat, &
     
    19271928               itap, dtime, jour, knon, ni, &
    19281929!!jyg               ypplay(:,1), zgeo1/RG, ycdragh, ycdragm, yrain_f, ysnow_f, yt(:,1), yq(:,1),&
    1929                ypplay(:,1), zgeo1/RG, ycdragh, ycdragm, yrain_f, ysnow_f, yt1, yq1,&
     1930               ypplay(:,1), zgeo1(1:knon)/RG, ycdragh, ycdragm, yrain_f, ysnow_f, yt(:,1), yq(:,1),&    ! ym missing init
    19301931               AcoefH, AcoefQ, BcoefH, BcoefQ, &
    19311932               AcoefU, AcoefV, BcoefU, BcoefV, &
Note: See TracChangeset for help on using the changeset viewer.