New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 15262 – NEMO

Changeset 15262


Ignore:
Timestamp:
2021-09-15T16:41:33+02:00 (3 years ago)
Author:
acc
Message:

Fix restartability issue for ORCA2_ICE_PISCES with GEOMETRIC parameterisation and ln_adv_wave=.true.. Also remove redundant restart variable (zc1). SETTE restartability is now ok for an ORCA2_ICE_PISCES-based test. Still an issue with reproducibility. #2722

Location:
NEMO/branches/NERC/dev_r4.0.6_GEOMETRIC
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/NERC/dev_r4.0.6_GEOMETRIC/cfgs/ORCA2_ICE_PISCES/EXPREF/namelist_cfg

    r13284 r15262  
    288288      ln_ldfeiv_dia =.true.   ! diagnose eiv stream function and velocities 
    289289/ 
     290!---------------------------------------------------------------------------------- 
     291&namldf_eke !   GEOMETRIC param. (total EKE equation)                           (nn_aei_ijk_t = 32) 
     292!---------------------------------------------------------------------------------- 
     293/ 
    290294!----------------------------------------------------------------------- 
    291295&namtra_dmp    !   tracer: T & S newtonian damping                      (default: OFF) 
  • NEMO/branches/NERC/dev_r4.0.6_GEOMETRIC/src/OCE/LDF/ldfeke.F90

    r15260 r15262  
    258258         END DO 
    259259         ! 
     260         CALL lbc_lnk( 'ldfeke', zc_ros, 'W', 1. ) 
    260261         zwx(:,:) = 0._wp ! wipe the advective contribution from above 
    261262         ! 
     
    422423         &                zadv_ubt, 'T', 1. , zadv_wav, 'T', 1. , zdis, 'T', 1. ,   & 
    423424         &                zlap    , 'T', 1. , zeke_peS, 'T', 1. ,                   &  
    424          &                zc1     , 'W', 1. , zc_ros  , 'W', 1. )       
     425         &                zc1     , 'W', 1. )       
    425426      ! 
    426427      CALL iom_put( "eke"            , eke_n )         ! parameterized total EKE (EPE+ EKE) 
     
    477478      ! 
    478479      ! 
    479 ! note: GEOMETRIC is *** off *** by default (so no ref list)  
    480 !      REWIND( numnam_ref )              ! Namelist namldf_eke in reference namelist : Turbulent Kinetic Energy 
    481 !      READ  ( numnam_ref, namldf_eke, IOSTAT = ios, ERR = 901) 
    482 !901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namldf_eke in reference namelist' ) 
     480      REWIND( numnam_ref )              ! Namelist namldf_eke in reference namelist : GEOMETRIC parameterization 
     481      READ  ( numnam_ref, namldf_eke, IOSTAT = ios, ERR = 901) 
     482901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namldf_eke in reference namelist' ) 
    483483 
    484484      REWIND( numnam_cfg )              ! Namelist namldf_eke in configuration namelist : GEOMETRIC parameterization 
     
    557557      CALL eke_rst( nit000, 'READ' )   !* read or initialize all required files 
    558558      ! 
    559       ! tidy up the initilisation of zc1 
     559      ! initialise some optional arrays (ln_adv_wave related) 
     560      zc1(:,:)      = 0._wp 
    560561      zc_ros(:,:)   = 0._wp 
    561       zadv_wav(:,:) = 0._wp 
    562       IF ( ln_adv_wav ) THEN 
    563          DO jj = 2, jpjm1 
    564             DO ji = 1, fs_jpim1 
    565                ! set the ones that are not deep enough to be zero 
    566                IF ( ht_0(ji,jj) < 300._wp ) THEN   ! jm: should use something like ht_b really... 
    567                   zc1(ji,jj) = 0._wp 
    568                END IF 
    569             END DO 
    570          END DO 
    571       END IF 
     562      ! 
    572563      ! if using beta_plane, compute beta and f0 locally 
    573564      IF ( ln_beta_plane ) THEN 
     
    623614              aeiv(:,:,:) = 10._wp * vmask(:,:,:) 
    624615           ENDIF 
    625            ! ln_wav_adv restarts + initialisations 
    626            IF( ln_adv_wav ) THEN 
    627 !              id5 = iom_varid( numror, 'zc1' , ldstop = .FALSE. ) 
    628 !              IF( id5 > 0 ) THEN 
    629 !                 IF(lwp) write(numout,*) '    ln_adv_wav on and found zc1 variable, loading ...' 
    630 !                 CALL iom_get( numror, jpdom_autoglo, 'zc1'  , zc1 ) 
    631 !              ELSE 
    632                  IF(lwp) write(numout,*) '    ln_adv_wav on but not found zc1 variable, initialising ...' 
    633                  zc1(:,:)    =  4._wp  ! set it to something everywhere but some are set to zero in ldf_eke_init 
    634 !              END IF 
    635            END IF 
    636616        ELSE                                          !* Start from rest with a non zero value (required) 
    637617            IF(lwp) write(numout,*) ' ldfeke init restart from namelist' 
     
    640620            aeiu(:,:,:) = 10._wp * umask(:,:,:)       ! bottom eddy coeff set to zero at last level 
    641621            aeiv(:,:,:) = 10._wp * vmask(:,:,:) 
    642             zc1(:,:)    =  4._wp 
    643622            !                               
    644623        ENDIF 
     
    651630        CALL iom_rstput( kt, nitrst, numrow, 'aeiu' , aeiu ) 
    652631        CALL iom_rstput( kt, nitrst, numrow, 'aeiv' , aeiv ) 
    653         CALL iom_rstput( kt, nitrst, numrow, 'zc1'  , zc1 ) 
    654632        ! 
    655633     ENDIF 
Note: See TracChangeset for help on using the changeset viewer.