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 771 for branches/dev_001_GM/NEMO/TOP_SRC/TRP/trctrp_ctl.F90 – NEMO

Ignore:
Timestamp:
2007-12-17T11:51:41+01:00 (16 years ago)
Author:
gm
Message:

dev_001_GM - small error corrections

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/dev_001_GM/NEMO/TOP_SRC/TRP/trctrp_ctl.F90

    r719 r771  
    11MODULE trctrp_ctl 
    2    !!============================================================================== 
     2   !!====================================================================== 
    33   !!                       ***  MODULE  trctrp_ctl  *** 
    4    !! Ocean passive tracers:  transport option control 
    5    !!============================================================================== 
     4   !! TOP :   transport option control 
     5   !!====================================================================== 
     6   !! History :   1.0  !  2004-03 (C. Ethe) Original code 
     7   !!---------------------------------------------------------------------- 
    68#if defined key_passivetrc 
    79   !!---------------------------------------------------------------------- 
     10   !!   'key_passivetrc'                                         TOP models 
     11   !!---------------------------------------------------------------------- 
    812   !!   trc_trp_ctl  : control the different options of transport 
    9    !!---------------------------------------------------------------------- 
    10    !! * Modules used 
    11    USE oce_trc             ! ocean dynamics and active tracers variables 
    12    USE trc                 ! ocean passive tracers variables 
    13    USE trctrp_lec          ! passive tracers transport 
     13   !!   trc_adv_ctl  : control the different options of the advection 
     14   !!   trc_ldf_ctl  : control the different options of the lateral diffusion 
     15   !!   trc_zdf_ctl  : control the different options of the vertical diffusion 
     16   !!   trc_dmp_ctl  : control the different options of the internal damping 
     17   !!---------------------------------------------------------------------- 
     18   USE oce_trc       ! ocean dynamics and active tracers variables 
     19   USE trc           ! ocean passive tracers variables 
     20   USE trctrp_lec    ! passive tracers transport 
    1421 
    1522   IMPLICIT NONE 
    1623   PRIVATE 
    1724 
    18    !! * Accessibility 
    19    PUBLIC trc_trp_ctl    
    20  
    21    !! * Module variable 
     25   PUBLIC   trc_trp_ctl   ! called by ??? 
     26 
    2227#if defined key_trcldf_eiv 
    2328      LOGICAL, PARAMETER ::   lk_trcldf_eiv   = .TRUE.   !: eddy induced velocity flag 
     
    2530      LOGICAL, PARAMETER ::   lk_trcldf_eiv   = .FALSE.  !: eddy induced velocity flag 
    2631#endif 
    27  
    28    !!---------------------------------------------------------------------- 
    29    !!   TOP 1.0 , LOCEAN-IPSL (2005)  
    30    !! $Header$  
    31    !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt  
     32   !!---------------------------------------------------------------------- 
     33   !! NEMO/TOP 1.0 , LOCEAN-IPSL (2005)  
     34   !! $Id$  
     35   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 
    3236   !!---------------------------------------------------------------------- 
    3337 
     
    3539 
    3640   SUBROUTINE trc_trp_ctl 
    37       !!--------------------------------------------------------------------- 
     41      !!---------------------------------------------------------------------- 
    3842      !!                  ***  ROUTINE trc_trp_ctl  *** 
    3943      !!                 
    4044      !! ** Purpose :   Control the consistency between cpp options for  
    4145      !!                tracer transport 
    42       !! 
    43       !! History : 
    44       !!   9.0  !  04-0.  (C. Ethe)  
    45       !!---------------------------------------------------------------------- 
    46  
    47       !!---------------------------------------------------------------------- 
    48       !!  TOP 1.0 , LOCEAN-IPSL (2005)  
    49       !!---------------------------------------------------------------------- 
    50  
    51       !! Control of Advection scheme options 
    52       CALL trc_adv_ctl 
    53  
    54       !! Control of Lateral diffusion scheme options 
    55       CALL trc_ldf_ctl 
    56  
    57       !! Control of Vertival diffusion scheme options 
    58       CALL trc_zdf_ctl 
    59  
    60       !! Control of Newtonian damping  options 
     46      !!---------------------------------------------------------------------- 
     47      !!---------------------------------------------------------------------- 
     48 
     49      CALL trc_adv_ctl      ! Control of Advection scheme options 
     50 
     51      CALL trc_ldf_ctl      ! Control of Lateral diffusion scheme options 
     52 
     53      CALL trc_zdf_ctl      ! Control of Vertival diffusion scheme options 
     54 
     55      !                     ! Control of Newtonian damping  options 
    6156      IF(lwp) THEN 
     57         WRITE(numout,*) 
    6258         WRITE(numout,*) ' *** Tracer damping option' 
    63          WRITE(numout,*) 
    64       ENDIF 
    65  
     59      ENDIF 
    6660#if defined key_trcdmp 
    67       IF(lwp) THEN  
    68          WRITE(numout,*)' key_trcdmp is defined' 
    69          WRITE(numout,*)' Check trcdmp ROUTINE ' 
    70          WRITE(numout,*)'  ' 
    71       ENDIF  
     61      IF(lwp) WRITE(numout,*) '     key_trcdmp is defined:   Check trcdmp ROUTINE ' 
    7262      CALL trc_dmp_ctl 
    7363#else 
    74       IF (lwp) WRITE(numout,*) ' No tracer damping' 
    75 #endif 
    76  
    77  
     64      IF(lwp) WRITE(numout,*) '     No tracer damping' 
     65#endif 
     66      ! 
    7867   END SUBROUTINE trc_trp_ctl 
     68 
    7969 
    8070   SUBROUTINE trc_adv_ctl 
     
    8373      !!                 
    8474      !! ** Purpose :   Control the consistency between cpp options for  
    85       !!      tracer advection schemes 
    86       !! 
    87       !! History : 
    88       !!   8.5  !  02-11  (G. Madec)  Original code 
    89       !!   9.0  !  04-0.  (C. Ethe)  adapted for passive tracers 
    90       !!---------------------------------------------------------------------- 
    91  
    92       !! * Local declarations 
     75      !!              tracer advection schemes 
     76      !!---------------------------------------------------------------------- 
    9377      INTEGER ::   ioptio 
    94  
    95  
    96       !!---------------------------------------------------------------------- 
    97       !!  TOP 1.0 , LOCEAN-IPSL (2005)  
    9878      !!---------------------------------------------------------------------- 
    9979 
     
    127107            &    CALL ctl_stop( '    cross-land advection only with 2nd order advection scheme ' ) 
    128108      ENDIF 
    129  
     109      ! 
    130110   END SUBROUTINE trc_adv_ctl 
     111 
    131112 
    132113   SUBROUTINE trc_ldf_ctl 
     
    136117      !! ** Purpose :   Control the consistency between cpp options for  
    137118      !!      tracer lateral diffusion  
    138       !! 
    139       !! History : 
    140       !!   9.0  !  03-04  (C. Ethe)  
    141       !!---------------------------------------------------------------------- 
    142       !! * Local declarations 
     119      !!---------------------------------------------------------------------- 
    143120      INTEGER ::   ioptio               ! ??? 
    144121      LOGICAL ::   ll_print = .FALSE.   ! =T print eddy coef. in numout       
    145  
    146       !!---------------------------------------------------------------------- 
    147       !!  TOP 1.0 , LOCEAN-IPSL (2005)  
    148122      !!---------------------------------------------------------------------- 
    149123 
     
    161135         IF( ln_trcldf_lap   )   ioptio = ioptio + 1 
    162136         IF( ln_trcldf_bilap )   ioptio = ioptio + 1 
    163          IF( ioptio /= 1 )  & 
    164             &   CALL ctl_stop( '    use ONE of the 2 lap/bilap operator type on tracer' ) 
     137         IF( ioptio /= 1 )   CALL ctl_stop( '    use ONE of the 2 lap/bilap operator type on tracer' ) 
    165138          
    166139         ioptio = 0 
     
    168141         IF( ln_trcldf_hor   )   ioptio = ioptio + 1 
    169142         IF( ln_trcldf_iso   )   ioptio = ioptio + 1 
    170          IF( ioptio /= 1 ) & 
    171             &   CALL ctl_stop( '   use only ONE direction (level/hor/iso)' ) 
     143         IF( ioptio /= 1 )   CALL ctl_stop( '   use only ONE direction (level/hor/iso)' ) 
    172144          
    173145         ! ... Choice of the lateral scheme used 
     
    195167         l_trcldf_bilapg  =  ln_trcldf_bilap .AND. ln_trcldf_hor       ! geopotential bilap. (s-coord) 
    196168         l_trcldf_iso     =  ln_trcldf_lap   .AND.                  &  ! laplacian operator 
    197             &                   ( ln_trcldf_iso   .OR.  ln_trcldf_hor )  &  ! iso-neutral (z-coord) or horizontal (s-coord) 
     169            &              ( ln_trcldf_iso   .OR.  ln_trcldf_hor )  &  ! iso-neutral (z-coord) or horizontal (s-coord) 
    198170            &                                     .AND. .NOT.ln_zps 
    199          l_trcldf_iso_zps =       ln_trcldf_lap   .AND.                  &  ! laplacian operator 
    200             &                   ( ln_trcldf_iso   .OR.  ln_trcldf_hor )  &  ! iso-neutral (partial steps) 
    201             &                                     .AND. ln_zps              ! or geopotential in mixed partial steps/s-coord 
     171         l_trcldf_iso_zps =  ln_trcldf_lap   .AND.                  &  ! laplacian operator 
     172            &              ( ln_trcldf_iso   .OR.  ln_trcldf_hor )  &  ! iso-neutral (partial steps) 
     173            &                                .AND. ln_zps              ! or geopotential in mixed partial steps/s-coord 
    202174         l_trczdf_iso    = .FALSE. 
    203175         l_trczdf_iso_vo = .FALSE. 
     
    211183#endif 
    212184          
    213           
    214185         ioptio = 0 
    215186         IF( l_trcldf_lap     )   ioptio = ioptio + 1 
     
    261232         ENDIF 
    262233      ENDIF 
    263  
     234      ! 
    264235   END SUBROUTINE trc_ldf_ctl 
     236 
    265237 
    266238   SUBROUTINE trc_zdf_ctl 
     
    268240      !!                  ***  ROUTINE trc_zdf_ctl  *** 
    269241      !!  
    270       !! ** Purpose :     Control the consistency between cpp options for  
    271       !!      tracer vertical diffusion 
    272       !! 
    273       !!   9.0  !  04-03  (C. Ethe)   
    274       !!---------------------------------------------------------------------- 
    275       !! * Local declarations 
    276  
    277       !!---------------------------------------------------------------------- 
    278       !!  TOP 1.0 , LOCEAN-IPSL (2005)  
     242      !! ** Purpose :   Control the consistency between cpp options for  
     243      !!              tracer vertical diffusion 
     244      !!---------------------------------------------------------------------- 
    279245      !!---------------------------------------------------------------------- 
    280246 
     
    305271      l_trczdf_imp = .TRUE. 
    306272#endif 
    307  
    308  
     273      ! 
    309274   END SUBROUTINE trc_zdf_ctl 
     275 
    310276 
    311277   SUBROUTINE trc_dmp_ctl 
     
    314280      !!  
    315281      !! ** Purpose :    Control the consistency between cpp options for  
    316       !!      tracer newtonian damping  
    317       !! 
    318       !! 
    319       !! History : 
    320       !!   9.0  !  04-03  (C. Ethe)  
     282      !!              tracer newtonian damping  
    321283      !!---------------------------------------------------------------------- 
    322284#if defined key_trcdmp 
    323285 
    324286      SELECT CASE ( ndmptr ) 
    325  
     287      ! 
    326288      CASE ( -1 )               ! ORCA: damping in Red & Med Seas only 
    327289         IF(lwp) WRITE(numout,*) '          tracer damping in the Med & Red seas only' 
    328  
     290         ! 
    329291      CASE ( 1:90 )             ! Damping poleward of 'ndmptr' degrees 
    330292         IF(lwp) WRITE(numout,*) '          tracer damping poleward of', ndmptr, ' degrees' 
    331  
     293         ! 
    332294      CASE DEFAULT 
    333  
    334295         WRITE(ctmp1,*) '          bad flag value for nmldmp = ', ndmptr 
    335296         CALL ctl_stop(ctmp1) 
    336  
     297         ! 
    337298      END SELECT 
    338299 
    339  
    340300      SELECT CASE ( nmldmptr ) 
    341  
     301      ! 
    342302      CASE ( 0 )                ! newtonian damping throughout the water column 
    343303         IF(lwp) WRITE(numout,*) '          tracer damping throughout the water column' 
    344  
     304         ! 
    345305      CASE ( 1 )                ! no damping in the turbocline (avt > 5 cm2/s) 
    346306         IF(lwp) WRITE(numout,*) '          no tracer damping in the turbocline' 
    347  
     307         ! 
    348308      CASE ( 2 )                ! no damping in the mixed layer  
    349309         IF(lwp) WRITE(numout,*) '          no tracer damping in the mixed layer' 
    350  
     310         ! 
    351311      CASE DEFAULT 
    352312         WRITE(ctmp1,*) '          bad flag value for nmldmp = ', nmldmptr 
    353313         CALL ctl_stop(ctmp1) 
    354  
     314         ! 
    355315      END SELECT 
    356316#endif 
    357   
     317      ! 
    358318   END SUBROUTINE trc_dmp_ctl 
    359319 
    360320#else 
    361321   !!---------------------------------------------------------------------- 
    362    !!   Dummy module :                      NO passive tracer 
     322   !!   Dummy module :                                        No TOP models 
    363323   !!---------------------------------------------------------------------- 
    364324CONTAINS 
Note: See TracChangeset for help on using the changeset viewer.