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 637 for trunk/NEMO/OPA_SRC – NEMO

Changeset 637 for trunk/NEMO/OPA_SRC


Ignore:
Timestamp:
2007-03-07T14:30:12+01:00 (17 years ago)
Author:
opalod
Message:

nemo_v2_update_009:RB: remove useless routine traadv_ctl and add quickest scheme

Location:
trunk/NEMO/OPA_SRC/TRA
Files:
1 added
1 deleted
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/TRA/traadv.F90

    r541 r637  
    1515   USE traadv_cen2     ! 2nd order centered scheme (tra_adv_cen2   routine) 
    1616   USE traadv_cen2_jki ! 2nd order centered scheme (tra_adv_cen2   routine) 
    17    USE traadv_tvd      ! TVD    scheme             (tra_adv_tvd    routine) 
    18    USE traadv_muscl    ! MUSCL  scheme             (tra_adv_muscl  routine) 
    19    USE traadv_muscl2   ! MUSCL2 scheme             (tra_adv_muscl2 routine) 
    20    USE traadv_ubs      ! UBS    scheme             (tra_adv_ubs    routine) 
     17   USE traadv_tvd      ! TVD      scheme           (tra_adv_tvd    routine) 
     18   USE traadv_muscl    ! MUSCL    scheme           (tra_adv_muscl  routine) 
     19   USE traadv_muscl2   ! MUSCL2   scheme           (tra_adv_muscl2 routine) 
     20   USE traadv_ubs      ! UBS      scheme           (tra_adv_ubs    routine) 
     21   USE traadv_qck     !! QUICKEST scheme           (tra_adv_qck    routine) 
    2122   USE traadv_eiv      ! eddy induced velocity     (tra_adv_eiv    routine) 
    2223   USE trabbl          ! tracers: bottom boundary layer 
     
    3637   LOGICAL, PUBLIC ::   ln_traadv_muscl2 = .FALSE.      ! MUSCL2 scheme flag 
    3738   LOGICAL, PUBLIC ::   ln_traadv_ubs    = .FALSE.      ! UBS scheme flag 
     39   LOGICAL, PUBLIC ::   ln_traadv_qck    = .FALSE.      ! QUICKEST scheme flag 
    3840 
    3941   INTEGER ::   nadv   ! choice of the type of advection scheme 
     
    8890      CASE ( 0 )   ;   CALL tra_adv_cen2    ( kt, zun, zvn, zwn )    ! 2nd order centered scheme k-j-i loops 
    8991      CASE ( 1 )   ;   CALL tra_adv_cen2_jki( kt, zun, zvn, zwn )    ! 2nd order centered scheme 
    90       CASE ( 2 )   ;   CALL tra_adv_tvd     ( kt, zun, zvn, zwn )    ! TVD    scheme 
    91       CASE ( 3 )   ;   CALL tra_adv_muscl   ( kt, zun, zvn, zwn )    ! MUSCL  scheme 
    92       CASE ( 4 )   ;   CALL tra_adv_muscl2  ( kt, zun, zvn, zwn )    ! MUSCL2 scheme 
    93       CASE ( 5 )   ;   CALL tra_adv_ubs     ( kt, zun, zvn, zwn )    ! UBS    scheme 
     92      CASE ( 2 )   ;   CALL tra_adv_tvd     ( kt, zun, zvn, zwn )    ! TVD      scheme 
     93      CASE ( 3 )   ;   CALL tra_adv_muscl   ( kt, zun, zvn, zwn )    ! MUSCL    scheme 
     94      CASE ( 4 )   ;   CALL tra_adv_muscl2  ( kt, zun, zvn, zwn )    ! MUSCL2   scheme 
     95      CASE ( 5 )   ;   CALL tra_adv_ubs     ( kt, zun, zvn, zwn )    ! UBS      scheme 
     96      CASE ( 6 )   ;   CALL tra_adv_qck     ( kt, zun, zvn, zwn )    ! QUICKEST scheme 
    9497      ! 
    9598      CASE (-1 )                                                     ! esopa: test all possibility with control print 
     
    111114         ;             CALL tra_adv_ubs     ( kt, zun, zvn, zwn ) 
    112115         ;             CALL prt_ctl( tab3d_1=ta, clinfo1=' adv5 - Ta: ', mask1=tmask,               & 
     116            &                        tab3d_2=sa, clinfo2=       ' Sa: ', mask2=tmask, clinfo3='tra' ) 
     117         ;             CALL tra_adv_qck     ( kt, zun, zvn, zwn ) 
     118         ;             CALL prt_ctl( tab3d_1=ta, clinfo1=' adv6 - Ta: ', mask1=tmask,               & 
    113119            &                        tab3d_2=sa, clinfo2=       ' Sa: ', mask2=tmask, clinfo3='tra' ) 
    114120      END SELECT 
     
    129135      INTEGER ::   ioptio 
    130136 
    131       NAMELIST/nam_traadv/ ln_traadv_cen2 , ln_traadv_tvd,   & 
    132          &                 ln_traadv_muscl, ln_traadv_muscl2, ln_traadv_ubs 
     137      NAMELIST/nam_traadv/ ln_traadv_cen2 , ln_traadv_tvd,    & 
     138         &                 ln_traadv_muscl, ln_traadv_muscl2, & 
     139         &                 ln_traadv_ubs  , ln_traadv_qck 
    133140      !!---------------------------------------------------------------------- 
    134141 
     
    146153         WRITE(numout,*) '          MUSCL2 advection scheme        ln_traadv_muscl2 = ', ln_traadv_muscl2 
    147154         WRITE(numout,*) '          UBS    advection scheme        ln_traadv_ubs    = ', ln_traadv_ubs 
    148       ENDIF 
     155         WRITE(numout,*) '          QUICKEST advection scheme      ln_traadv_qck    = ', ln_traadv_qck 
     156    ENDIF 
    149157 
    150158      ioptio = 0                      ! Parameter control 
     
    154162      IF( ln_traadv_muscl2 )   ioptio = ioptio + 1 
    155163      IF( ln_traadv_ubs    )   ioptio = ioptio + 1 
     164      IF( ln_traadv_qck    )   ioptio = ioptio + 1 
    156165      IF( lk_esopa         )   ioptio =          1 
    157166 
     
    170179      IF( ln_traadv_muscl2 )   nadv =  4 
    171180      IF( ln_traadv_ubs    )   nadv =  5 
     181      IF( ln_traadv_qck    )   nadv =  6 
    172182      IF( lk_esopa         )   nadv = -1 
    173183 
     
    180190         IF( nadv ==  4 )   WRITE(numout,*) '         MUSCL2    scheme is used' 
    181191         IF( nadv ==  5 )   WRITE(numout,*) '         UBS       scheme is used' 
     192         IF( nadv ==  6 )   WRITE(numout,*) '         PPM       scheme is used' 
     193         IF( nadv ==  7 )   WRITE(numout,*) '         QUICKEST  scheme is used' 
    182194         IF( nadv == -1 )   WRITE(numout,*) '         esopa test: use all advection scheme' 
    183195      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.