Changeset 3901


Ignore:
Timestamp:
May 17, 2021, 4:05:36 PM (4 years ago)
Author:
evignon
Message:

Commission LMDZ-sisvat, deuxieme phase:

  • suppression du repertoire sisvat
  • nettoyage de certains scripts de la physique et des makefile
Location:
LMDZ6/trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/bld.cfg

    r3815 r3901  
    111111bld::outfile_ext::mod .mod
    112112bld::tool::SHELL   /bin/bash
     113bld::tool::SHELL   /bin/ksh
  • LMDZ6/trunk/libf/phylmd/conf_phys_m.F90

    r3900 r3901  
    330330    ! Martin et Etienne
    331331    !Config Key  = landice_opt
    332     !Config Desc = which landice snow model (BULK, SISVAT or INLANDSIS)
     332    !Config Desc = which landice snow model (BULK, or INLANDSIS)
    333333    !Config Def  = 0
    334334    landice_opt_omp = 0
  • LMDZ6/trunk/libf/phylmd/pbl_surface_mod.F90

    r3900 r3901  
    519519
    520520! Martin
    521 ! sisvat
     521! inlandsis
    522522    REAL, DIMENSION(klon),       INTENT(OUT)        :: qsnow      ! snow water content
    523523    REAL, DIMENSION(klon),       INTENT(OUT)        :: snowhgt    ! snow height
  • LMDZ6/trunk/libf/phylmd/surf_landice_mod.F90

    r3900 r3901  
    3333    USE ioipsl_getin_p_mod, ONLY : getin_p
    3434
    35 #ifdef CPP_SISVAT
    36     USE surf_sisvat_mod,  ONLY : surf_sisvat
    37 #endif
    3835
    3936#ifdef CPP_INLANDSIS
     
    179176!****************************************************************************************
    180177!  landice_opt = 0 : soil_model, calcul_flux, fonte_neige, ... 
    181 !  landice_opt = 1  : prepare and call SISVAT snow model
    182 !  landice_opt = 2  : prepare and call INLANDSIS snow model
     178!  landice_opt = 1  : prepare and call INterace Lmdz SISvat (INLANDSIS)
    183179!****************************************************************************************
    184180
    185181
    186182    IF (landice_opt .EQ. 1) THEN
    187    
    188 !****************************************************************************************
    189 ! CALL to SISVAT interface
    190 !****************************************************************************************
    191 
    192 #ifdef CPP_SISVAT
    193        ! Prepare for calling SISVAT
    194        
    195        ! Calculate incoming flux for SW and LW interval: swdown, lwdown
    196        swdown(:)        = 0.0
    197        lwdown(:)        = 0.0
    198        DO i = 1, knon
    199           swdown(i)        = swnet(i)/(1-albedo(i))
    200           lwdown(i)        = lwdownm(i)
    201        END DO
    202        
    203        ! Set constants and compute some input for SISVAT
    204        snow_adv(:)      = 0.                          ! no snow blown in for now
    205        snow_cont_air(:) = 0.       
    206        alb_soil(:)      = albedo(:)
    207        pref             = 100000.                     ! = 1000 hPa
    208        DO i = 1, knon
    209           wind_velo(i)     = u1(i)**2 + v1(i)**2
    210           wind_velo(i)     = wind_velo(i)**0.5
    211           pexner(i)        = (p1lay(i)/pref)**(RD/RCPD)
    212           dens_air(i)      = p1lay(i)/RD/temp_air(i)  ! dry air density
    213           zsl_height(i)     = pphi1(i)/RG             
    214        END DO
    215 
    216 
    217        ! config: compute everything with SV but temperatures afterwards with soil/calculfluxs
    218        DO i = 1, knon
    219           tsoil0(i,:)=tsoil(i,:)
    220        END DO
    221            ! Martin
    222            PRINT*, 'on appelle surf_sisvat'
    223            ! Martin
    224        CALL surf_sisvat(knon, rlon, rlat, knindex, itime, dtime, debut, lafin, &
    225             rmu0, swdown, lwdown, pexner, ps, p1lay, &
    226             precip_rain, precip_snow, precip_snow_adv, snow_adv, &
    227             zsl_height, wind_velo, temp_air, dens_air, spechum, tsurf, &
    228             rugoro, snow_cont_air, alb_soil, slope, cloudf, &
    229             radsol, qsol, tsoil0, snow, snowhgt, qsnow, to_ice,sissnow, agesno, &
    230             AcoefH, AcoefQ, BcoefH, BcoefQ, cdragh, &
    231             run_off_lic, evap, fluxsens, fluxlat, dflux_s, dflux_l, &       
    232             tsurf_new, alb1, alb2, alb3, emis_new, z0m, qsurf)
    233        z0h(1:knon)=z0m(1:knon) ! en attendant mieux
    234        
    235        ! Suppose zero surface speed
    236        u0(:)            = 0.0
    237        v0(:)            = 0.0
    238        ! The calculation of heat/water fluxes, otherwise done by "CALL calcul_fluxs" is
    239        ! integrated in SISVAT, using the same method. It can be found in "sisvat.f", in the
    240        ! subroutine "SISVAT_TS2".
    241        ! u0, v0=0., dif_grnd=0. and beta=1 are assumed there!
    242        
    243        CALL calcul_flux_wind(knon, dtime, &
    244             u0, v0, u1, v1, gustiness, cdragm, &
    245             AcoefU, AcoefV, BcoefU, BcoefV, &
    246             p1lay, temp_air, &
    247             flux_u1, flux_v1)
    248 #else
    249        abort_message='Pb de coherence: landice_opt = 1 mais CPP_SISVAT = .false.'
    250        CALL abort_physic(modname,abort_message,1)
    251 #endif
    252 
    253 !****************************************************************************************
     183
     184!****************************************************************************************   
    254185! CALL to INLANDSIS interface
    255186!****************************************************************************************
    256 
    257     ELSE IF (landice_opt .EQ. 2) THEN
    258187#ifdef CPP_INLANDSIS
    259188
     
    330259
    331260#else
    332        abort_message='Pb de coherence: landice_opt = 2 mais CPP_INLANDSIS = .false.'
     261       abort_message='Pb de coherence: landice_opt = 1 mais CPP_INLANDSIS = .false.'
    333262       CALL abort_physic(modname,abort_message,1)
    334263#endif
     
    480409       alb_dir(1:knon,6)=alb2(1:knon)
    481410
    482        IF ((landice_opt .EQ.2) .AND. (iflag_albcalc .EQ. 2)) THEN
     411       IF ((landice_opt .EQ. 1) .AND. (iflag_albcalc .EQ. 2)) THEN
    483412       alb_dir(1:knon,1)=alb6(1:knon,1)
    484413       alb_dir(1:knon,2)=alb6(1:knon,2)
  • LMDZ6/trunk/libf/phylmd/surface_data.F90

    r3900 r3901  
    3030  !===============
    3131 
    32    ! 1 for coupling with SISVAT, 2 for coupling with INLANDSIS and number of subtimesteps for INLANDSIS
    33    INTEGER, SAVE          :: landice_opt      ! 1 for coupling with SISVAT, 2 for coupling with INLANDSIS
     32   ! 1 for coupling with INLANDSIS
     33   INTEGER, SAVE          :: landice_opt   ! 1 for coupling with INLANDSIS
    3434  !$OMP THREADPRIVATE(landice_opt)
    3535
  • LMDZ6/trunk/makegcm

    r3793 r3901  
    4141set cosp2=false
    4242set cospv2=false
    43 set sisvat=false
    4443set inlandsis=false
    4544
     
    517516     case -cospv2
    518517        set cospv2="$2"; shift ; shift ; goto top
    519      case -sisvat
    520         set sisvat="$2" ; shift ; shift ; goto top
    521518     case -inlandsis
    522519        set inlandsis="$2" ; shift ; shift ; goto top
     
    621618
    622619
    623 if ( "$sisvat" == 'true' ) then
    624     set cppflags="$cppflags -DCPP_SISVAT"
    625 endif
    626 
    627620if ( "$inlandsis" == 'true' ) then
    628621    set cppflags="$cppflags -DCPP_INLANDSIS"
  • LMDZ6/trunk/makelmdz

    r3835 r3901  
    2727cosp2=false
    2828cospv2=false
    29 sisvat=false
    3029inlandsis=false
    3130rrtm=false
     
    122121[-cosp2 true/false]    : compile with/without cosp2 package (default: false)
    123122[-cospv2 true/false]    : compile with/without cospv2 package (default: false)
    124 [-sisvat true/false]  : compile with/without sisvat package (default: false)
    125123[-inlandsis true/false]  : compile with/without inlandsis package (default: false)
    126124[-rrtm true/false]    : compile with/without rrtm package (default: false)
     
    192190          cospv2="$2" ; shift ; shift ;;
    193191     
    194       "-sisvat")
    195           sisvat="$2" ; shift ; shift ;;
    196 
    197192      "-inlandsis")
    198193          inlandsis="$2" ; shift ; shift ;; 
     
    515510   src_dirs="$src_dirs phy${physique}/cospv2"
    516511   INCLUDE="$INCLUDE"' -I$(LIBF)/'phy${physique}'/cospv2'
    517 fi
    518 
    519 
    520 if [[ "$sisvat" == "true" ]]
    521 then
    522    CPP_KEY="$CPP_KEY CPP_SISVAT"
    523    src_dirs="$src_dirs phy${physique}/sisvat"
    524512fi
    525513
  • LMDZ6/trunk/makelmdz_fcm

    r3815 r3901  
    2323couple=false
    2424veget=false
    25 sisvat=false
    2625inlandsis=false
    2726rrtm=false
     
    5554PHY_COMMON_PATH=$LMDGCM/.void_dir
    5655RRTM_PATH=$LMDGCM/.void_dir
     56INLANDSIS_PATH=$LMDGCM/.void_dir
    5757DUST_PATH=$LMDGCM/.void_dir
    5858STRATAER_PATH=$LMDGCM/.void_dir
    59 SISVAT_PATH=$LMDGCM/.void_dir
    6059COSP_PATH=$LMDGCM/.void_dir
    6160fcm_path=$LMDGCM/tools/fcm/bin
     
    9998[-cosp2 true/false]    : compile with/without cosp2 package (default: false)
    10099[-cospv2 true/false]    : compile with/without cospv2 package (default: false)
    101 [-sisvat true/false]  : compile with/without sisvat package (default: false)
    102100[-inlandsis true/false]  : compile with/without inlandsis package (default: false)
    103101[-rrtm true/false]    : compile with/without rrtm package (default: false)
     
    150148      "-v")
    151149          veget="$2" ; shift ; shift ;;
    152 
    153       "-sisvat")
    154           sisvat="$2" ; shift ; shift ;;
    155150
    156151      "-inlandsis")
     
    414409fi
    415410
    416 if [[ "$sisvat" == "true" ]]
    417 then
    418    CPP_KEY="$CPP_KEY CPP_SISVAT"
    419    SISVAT_PATH="$LIBFGCM/%PHYS/sisvat"
    420 fi
    421 
    422411if [[ "$inlandsis" == "true" ]]
    423412then
     
    697686echo "%DUST          $DUST_PATH"     >> $config_fcm
    698687echo "%STRATAER      $STRATAER_PATH" >> $config_fcm
    699 echo "%SISVAT        $SISVAT_PATH"   >> $config_fcm
    700688echo "%INLANDSIS     $INLANDSIS_PATH" >> $config_fcm
    701689echo "%COSP          $COSP_PATH"     >> $config_fcm
Note: See TracChangeset for help on using the changeset viewer.