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 52 for trunk/NEMO/OPA_SRC/DYN/dynvor.F90 – NEMO

Ignore:
Timestamp:
2004-04-22T11:47:06+02:00 (20 years ago)
Author:
opalod
Message:

CT : BUGFIX026 : # Change all tests on the logical keys ln_dynvor_xxx to be able to run in mpp case

# Now the vorticity scheme control is done directly in step.F90

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/DYN/dynvor.F90

    r32 r52  
    77 
    88   !!---------------------------------------------------------------------- 
    9    !!   dyn_vor_enstrophy :  enstrophy conserving scheme (ln_dynvor_ens=T) 
    10    !!   dyn_vor_energy    :  energy conserving scheme    (ln_dynvor_ene=T) 
    11    !!   dyn_vor_mixed     : mixed enstrophy/energy conserving (ln_dynvor_mix=T) 
    12    !!   dyn_vor_ctl       : control of the different vorticity option 
     9   !!   dyn_vor_enstrophy: enstrophy conserving scheme      (ln_dynvor_ens=T) 
     10   !!   dyn_vor_energy   : energy conserving scheme          (ln_dynvor_ene=T) 
     11   !!   dyn_vor_mixed    : mixed enstrophy/energy conserving (ln_dynvor_mix=T) 
     12   !!   dyn_vor_ctl      : control of the different vorticity option 
    1313   !!---------------------------------------------------------------------- 
    1414   !! * Modules used 
    15    USE oce             ! ocean dynamics and tracers 
    16    USE dom_oce         ! ocean space and time domain 
    17    USE in_out_manager  ! I/O manager 
     15   USE oce            ! ocean dynamics and tracers 
     16   USE dom_oce        ! ocean space and time domain 
     17   USE in_out_manager ! I/O manager 
    1818   USE trddyn_oce     ! ocean momentum trends 
    1919 
     
    2525   PUBLIC dyn_vor_energy         ! routine called by step.F90 
    2626   PUBLIC dyn_vor_mixed          ! routine called by step.F90 
     27   PUBLIC dyn_vor_ctl            ! routine called by step.F90 
    2728 
    2829   !! * Shared module variables 
     
    4243   SUBROUTINE dyn_vor_energy( kt ) 
    4344      !!---------------------------------------------------------------------- 
    44       !!                  ***  ROUTINE dyn_vor  *** 
     45      !!                  ***  ROUTINE dyn_vor_energy  *** 
    4546      !! 
    4647      !! ** Purpose :   Compute the now total vorticity trend and add it to  
     
    8788      !!---------------------------------------------------------------------- 
    8889 
    89       IF( kt == nit000 )   CALL dyn_vor_ctl            ! Check options 
     90      IF( kt == nit000 ) THEN 
     91         IF(lwp) WRITE(numout,*) 
     92         IF(lwp) WRITE(numout,*) 'dyn_vor_energy : vorticity term: energy conserving scheme' 
     93         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~' 
     94      ENDIF 
    9095 
    9196      ! Local constant initialization 
     
    140145      !                                                ! =============== 
    141146 
    142       IF( l_ctl .AND. lwp ) THEN         ! print sum trends (used for debugging) 
     147      IF(l_ctl) THEN         ! print sum trends (used for debugging) 
    143148         zua = SUM( ua(2:jpim1,2:jpjm1,1:jpkm1) * umask(2:jpim1,2:jpjm1,1:jpkm1) ) 
    144149         zva = SUM( va(2:jpim1,2:jpjm1,1:jpkm1) * vmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
     
    198203      !!---------------------------------------------------------------------- 
    199204 
    200       IF( kt == nit000 )   CALL dyn_vor_ctl            ! Check options 
     205      IF( kt == nit000 ) THEN 
     206         IF(lwp) WRITE(numout,*) 
     207         IF(lwp) WRITE(numout,*) 'dyn_vor_mixed : vorticity term: mixed energy/enstrophy conserving scheme' 
     208         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~' 
     209      ENDIF 
    201210 
    202211      ! Local constant initialization 
     
    251260      !                                                ! =============== 
    252261 
    253       IF( l_ctl .AND. lwp ) THEN         ! print sum trends (used for debugging) 
     262      IF(l_ctl) THEN         ! print sum trends (used for debugging) 
    254263         zua = SUM( ua(2:jpim1,2:jpjm1,1:jpkm1) * umask(2:jpim1,2:jpjm1,1:jpkm1) ) 
    255264         zva = SUM( va(2:jpim1,2:jpjm1,1:jpkm1) * vmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
     
    263272   SUBROUTINE dyn_vor_enstrophy( kt ) 
    264273      !!---------------------------------------------------------------------- 
    265       !!                  ***  ROUTINE dyn_vor_enstrophy  *** 
     274      !!                ***  ROUTINE dyn_vor_enstrophy  *** 
    266275      !! 
    267276      !! ** Purpose :   Compute the now total vorticity trend and add it to 
     
    310319      !!---------------------------------------------------------------------- 
    311320       
    312       IF( kt == nit000 )   CALL dyn_vor_ctl            ! Check options 
     321      IF( kt == nit000 ) THEN 
     322         IF(lwp) WRITE(numout,*) 
     323         IF(lwp) WRITE(numout,*) 'dyn_vor_enstrophy : vorticity term: enstrophy conserving scheme' 
     324         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~~~~' 
     325      ENDIF 
    313326 
    314327      ! Local constant initialization 
     
    381394      !                                                ! =============== 
    382395 
    383       IF( l_ctl .AND. lwp ) THEN         ! print sum trends (used for debugging) 
     396      IF(l_ctl) THEN         ! print sum trends (used for debugging) 
    384397         zua = SUM( ua(2:jpim1,2:jpjm1,1:jpkm1) * umask(2:jpim1,2:jpjm1,1:jpkm1) ) 
    385398         zva = SUM( va(2:jpim1,2:jpjm1,1:jpkm1) * vmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
     
    414427      ! Control of vorticity scheme options 
    415428      ! ----------------------------------- 
    416       IF( ln_dynvor_ens .AND. lwp ) THEN 
     429      ! Control print 
     430      IF(lwp) THEN 
    417431         WRITE(numout,*) 
    418          WRITE(numout,*) 'dyn_vor_enstrophy : vorticity term : enstrophy conserving scheme' 
    419          WRITE(numout,*) '~~~~~~~~~~~~~~~~~~' 
     432         WRITE(numout,*) 'dyn_vor_ctl : vorticity term : read namelist and control the consistency' 
     433         WRITE(numout,*) '~~~~~~~~~~~' 
     434         WRITE(numout,*) '              Namelist nam_dynvor : oice of the vorticity term scheme' 
     435         WRITE(numout,*) '                 enstrophy conserving scheme                ln_dynvor_ens = ', ln_dynvor_ens 
     436         WRITE(numout,*) '                 energy    conserving scheme                ln_dynvor_ene = ', ln_dynvor_ene 
     437         WRITE(numout,*) '                 mixed enstrophy/energy conserving scheme   ln_dynvor_mix = ', ln_dynvor_mix 
     438      ENDIF 
     439 
     440      IF( ln_dynvor_ens ) THEN 
     441         IF(lwp) WRITE(numout,*) 
     442         IF(lwp) WRITE(numout,*) '              vorticity term : enstrophy conserving scheme' 
    420443         ioptio = ioptio + 1 
    421444      ENDIF 
    422       IF( ln_dynvor_ene .AND. lwp ) THEN 
    423          WRITE(numout,*) 
    424          WRITE(numout,*) 'dyn_vor_energy : vorticity term : energy conserving scheme' 
    425          WRITE(numout,*) '~~~~~~~~~~~~~~ ' 
     445      IF( ln_dynvor_ene ) THEN 
     446         IF(lwp) WRITE(numout,*) 
     447         IF(lwp) WRITE(numout,*) '              vorticity term : energy conserving scheme' 
    426448         ioptio = ioptio + 1 
    427449      ENDIF 
    428       IF( ln_dynvor_mix .AND. lwp ) THEN 
    429          WRITE(numout,*) 
    430          WRITE(numout,*) 'dyn_vor_mixed : vorticity term : mixed enstrophy/energy conserving scheme' 
    431          WRITE(numout,*) '~~~~~~~~~~~~~ ' 
     450      IF( ln_dynvor_mix ) THEN 
     451         IF(lwp) WRITE(numout,*) 
     452         IF(lwp) WRITE(numout,*) '              vorticity term : mixed enstrophy/energy conserving scheme' 
    432453         ioptio = ioptio + 1 
    433454      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.