Ignore:
Timestamp:
Sep 13, 2016, 8:40:34 AM (8 years ago)
Author:
emillour
Message:

Mars and Generic "old" dynamics: to further harmonize with LMDZ.COMMON, replace "idissip" with "dissip_period".
EM

Location:
trunk/LMDZ.GENERIC/libf/dyn3d
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.GENERIC/libf/dyn3d/control_mod.F90

    r1593 r1594  
    88  integer,save :: iperiod  ! make a Matsuno step before avery iperiod-1 LF steps
    99  integer,save :: iconser !
    10   integer,save :: idissip ! apply dissipation every idissip dynamical step
     10  integer,save :: dissip_period ! apply dissipation every dissip_period dynamical step
    1111  integer,save :: iphysiq ! call physics every iphysiq dynamical steps
    1212  integer,save :: anneeref ! reference year # ! not used
  • trunk/LMDZ.GENERIC/libf/dyn3d/defrun_new.F

    r1593 r1594  
    4040      use sponge_mod,only: callsponge,nsponge,mode_sponge,tetasponge
    4141      use control_mod,only: nday, day_step, iperiod, anneeref,
    42      &                      iconser, idissip, iphysiq
     42     &                      iconser, dissip_period, iphysiq
    4343      USE logic_mod, ONLY: hybrid,purmats,fxyhypb,ysinus,iflag_phys
    4444      USE serre_mod, ONLY: clon,clat,grossismx,grossismy,dzoomx,dzoomy,
     
    132132        WRITE(lunout,*) ""
    133133        WRITE(lunout,*) "periode de la dissipation (en pas)"
    134         idissip=5 ! default value
    135         call getin("idissip",idissip)
    136         WRITE(lunout,*)" idissip = ",idissip
     134        dissip_period=5 ! default value
     135        call getin("idissip",dissip_period)
     136        ! if there is a "dissip_period" in run.def, it overrides "idissip"
     137        call getin("dissip_period",dissip_period)
     138        WRITE(lunout,*)" dissip_period = ",dissip_period
    137139
    138140ccc  ....   P. Le Van , modif le 29/04/97 .pour la dissipation  ...
  • trunk/LMDZ.GENERIC/libf/dyn3d/gcm.F

    r1593 r1594  
    55      use sponge_mod,only: callsponge,mode_sponge,sponge
    66      use control_mod, only: nday, day_step, iperiod, iphysiq,
    7      &                       iconser, idissip
     7     &                       iconser, dissip_period
    88!      use comgeomphy, only: initcomgeomphy
    99      USE mod_const_mpi, ONLY: COMM_LMDZ
     
    366366      IF( purmats ) THEN
    367367         IF( MOD(itau,iconser) .EQ.0.AND.  forward    ) conser = .TRUE.
    368          IF( MOD(itau,idissip ).EQ.0.AND..NOT.forward ) apdiss = .TRUE.
     368         IF( MOD(itau,dissip_period ).EQ.0
     369     &                              .AND..NOT.forward ) apdiss = .TRUE.
    369370         IF( MOD(itau,iphysiq ).EQ.0.AND..NOT.forward
    370371     $                        .AND. (iflag_phys.eq.1) ) apphys = .TRUE.
    371372      ELSE
    372373         IF( MOD(itau   ,iconser) .EQ. 0              ) conser = .TRUE.
    373          IF( MOD(itau+1,idissip)  .EQ. 0              ) apdiss = .TRUE.
     374         IF( MOD(itau+1,dissip_period)  .EQ. 0        ) apdiss = .TRUE.
    374375         IF( MOD(itau+1,iphysiq).EQ.0
    375376     &                     .AND. (iflag_phys.eq.1)    ) apphys = .TRUE.
  • trunk/LMDZ.GENERIC/libf/dyn3d/iniconst.F

    r1422 r1594  
    11      SUBROUTINE iniconst
    22
    3       use control_mod, only: iphysiq, idissip
     3      use control_mod, only: iphysiq, dissip_period
    44      USE comconst_mod, ONLY: im,jm,lllm,imp1,jmp1,lllmp1,lllmm1,
    55     .                  dtdiss,dtvr,dtphys,pi,r,cpp,kappa,unsim
     
    3636c-----------------------------------------------------------------------
    3737
    38       dtdiss  = idissip * dtvr
     38      dtdiss  = dissip_period * dtvr
    3939      dtphys  = iphysiq * dtvr
    4040      unsim   = 1./iim
  • trunk/LMDZ.GENERIC/libf/dyn3d/inidissip.F

    r1422 r1594  
    88c   -------------
    99
    10       use control_mod, only: idissip, iperiod
     10      use control_mod, only: dissip_period, iperiod
    1111      USE comvert_mod, ONLY: aps,bps,pseudoalt,preff
    1212      USE comconst_mod, ONLY: dtdiss,dtvr
     
    262262      ENDDO
    263263
    264 c     Calcul automatique de idissip
     264c     Calcul automatique de dissip_period
    265265c     -----------------------------
    266266c    :::::::::::::::::::::
    267267c     A Commenter pour garder la valeur de run.def :
    268 c     idissip = INT( tetamin/( 2.*dtvr*iperiod) ) * iperiod
    269 c     idissip = MAX(iperiod,idissip)
     268c     dissip_period = INT( tetamin/( 2.*dtvr*iperiod) ) * iperiod
     269c     dissip_period = MAX(iperiod,idissip)
    270270c    :::::::::::::::::::::
    271       dtdiss  = idissip * dtvr
     271      dtdiss  = dissip_period * dtvr
    272272 
    273273      PRINT *,' INIDI tetamin dtvr ',tetamin,dtvr,iperiod
    274       PRINT *,' INIDI tetamin idissip ',tetamin,idissip
    275       PRINT *,' INIDI idissip dtdiss ',idissip,dtdiss
     274      PRINT *,' INIDI tetamin dissip_period ',tetamin,dissip_period
     275      PRINT *,' INIDI dissip_period dtdiss ',dissip_period,dtdiss
    276276
    277277      PRINT*,'pseudoZ(km)  zvert  dt(tetagdiv) dt(tetagrot) dt(divgrad)'
     
    286286          PRINT *,'in run.def, you must increase tetagdiv,'
    287287          PRINT *,'(or tetagrot and tetatemp if they are smaller than'
    288           PRINT *,'tetagdiv) OR decrease idissip OR increase day_step)'
     288          PRINT *,'tetagdiv) OR decrease dissip_period'
     289          PRINT *,'OR increase day_step)'
    289290          stop
    290291         end if
Note: See TracChangeset for help on using the changeset viewer.