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 945 for trunk/NEMO/TOP_SRC/trcctl.F90 – NEMO

Ignore:
Timestamp:
2008-05-14T18:14:53+02:00 (16 years ago)
Author:
cetlod
Message:

Update modules for new version of TOP model, see ticket 144

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/TOP_SRC/trcctl.F90

    r719 r945  
    11MODULE trcctl 
    2    !!========================================================================== 
    3    !! 
    4    !!                       *** MODULE trcctl *** 
    5    !! 
    6    !! Only for passive tracer 
    7    !! control the cpp options for the run and IF files are availables 
    8    !! control also consistancy between options and namelist values 
    9    !!  O.Aumont and A.El Moussaoui 03/05 F90  
    10    !!========================================================================= 
    11    !!  TOP 1.0,  LOCEAN-IPSL (2005)  
    12    !! $Header$  
    13    !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt  
     2   !!====================================================================== 
     3   !!                         ***  MODULE trcctl  *** 
     4   !! TOP :   control the cpp options, files and namelist values of a run 
     5   !!====================================================================== 
     6   !! History :   1.0  !  2005-03 (O. Aumont, A. El Moussaoui) original code 
    147   !!---------------------------------------------------------------------- 
    15 #if defined key_passivetrc 
     8#if defined key_top 
    169   !!---------------------------------------------------------------------- 
    17    !! * Modules used 
    18    !! ============== 
     10   !!   'key_top'                                                TOP models 
     11   !!---------------------------------------------------------------------- 
     12   !!   trc_ctl    : control the cpp options, files and namelist values 
     13   !!---------------------------------------------------------------------- 
    1914   USE oce_trc 
    2015   USE trc 
     
    2520   PRIVATE 
    2621 
    27    !! * Accessibility 
    28    PUBLIC trc_ctl 
     22   PUBLIC trc_ctl      ! called by ??? 
     23 
     24   !!---------------------------------------------------------------------- 
     25   !! NEMO/TOP 1.0 , LOCEAN-IPSL (2005)  
     26   !! $Header:$  
     27   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 
     28   !!---------------------------------------------------------------------- 
    2929 
    3030CONTAINS 
    3131 
    3232   SUBROUTINE trc_ctl 
    33       !!=========================================================================================== 
     33      !!---------------------------------------------------------------------- 
     34      !!                     ***  ROUTINE trc_ctl  *** 
    3435      !! 
    35       !! 
    36       !!                       ROUTINE trcctl 
    37       !!                     ****************** 
    38       !! 
    39       !!      we use IF/ENDIF inside #IF defined option-cpp 
    40       !!      FILE name must not exceed 21 characters 
    41       !!       
    42       !!=========================================================================================== 
    43        
     36      !! ** Purpose :   control the cpp options, namelist and files  
     37      !!              we use IF/ENDIF inside #IF defined option-cpp 
     38      !!              FILE name must not exceed 21 characters 
    4439      !!---------------------------------------------------------------------- 
    45       !! local declarations 
    46       !! ================== 
    47       INTEGER  :: istop, jn 
    48        
    49       !!--------------------------------------------------------------------- 
    50       !!  OPA.9    03/2005   
    51       !!--------------------------------------------------------------------- 
     40      INTEGER ::   istop, jn 
     41      !!---------------------------------------------------------------------- 
    5242 
    53       ! 0. Parameter 
    54       ! ------------ 
    55       istop = 0 
     43      IF(lwp) WRITE(numout,*) 
     44      IF(lwp) WRITE(numout,*) ' trc_ctl :   passive tracer option' 
     45      IF(lwp) WRITE(numout,*) ' ~~~~~~~' 
    5646 
    57       ! 1. restart for passive tracer (input) 
    58       ! ----------------------------- 
     47      istop = 0      ! initialise to zero 
    5948 
    60       IF(lwp) WRITE(numout,*) ' ' 
    61       IF(lwp) WRITE(numout,*) ' *** PASSIVE TRACER MODEL OPTIONS' 
    62       IF(lwp) WRITE(numout,*) ' *** CONTROL' 
    63       IF(lwp) WRITE(numout,*) ' ' 
    64  
    65       IF(lwp) WRITE(numout,*) ' ' 
    66       IF(lwp) WRITE(numout,*) ' *** restart option for passive tracer' 
    67       IF(lwp) WRITE(numout,*) ' ' 
    68  
    69       IF(lrsttr) THEN 
    70          IF(lwp) WRITE(numout,*) ' READ a restart FILE for passive tracer' 
     49      ! restart for passive tracer (input) 
     50      IF( lrsttr ) THEN 
     51         IF(lwp) WRITE(numout,*) '       READ a restart FILE for passive tracer' 
    7152         IF(lwp) WRITE(numout,*) ' ' 
    7253      ELSE 
    73          IF(lwp) WRITE(numout,*) ' no restart FILE' 
    74          IF(lwp) WRITE(numout,*) ' ' 
    75  
    76          ! 2. OPEN FILES for initial tracer value 
    77          ! -------------------------------------- 
    78          DO jn=1,jptra 
    79  
    80             ! OPEN input FILE only IF lutini(jn) is true 
    81             ! ------------------------------------------ 
    82             IF (lutini(jn)) THEN   
    83  
    84                ! prepare input FILE name a 
    85                ! -------------------------                         
     54         IF(lwp) WRITE(numout,*) '       no restart FILE' 
     55         IF(lwp) WRITE(numout,*) 
     56         DO jn = 1, jptra 
     57            IF( lutini(jn) ) THEN      ! OPEN input FILE only IF lutini(jn) is true 
    8658               IF(lwp) WRITE(numout,*)  & 
    87                   ' READ an initial FILE  for passive tracer number :',jn        & 
    88                   ,' traceur : ',ctrcnm(jn)  
    89                IF(lwp) WRITE(numout,*) ' ' 
     59                  '       READ an initial FILE  for passive tracer number :', jn, ' traceur : ', ctrcnm(jn)  
    9060            END IF 
    9161         END DO 
    9262      ENDIF 
    9363 
    94       ! 3. Don't USE non penetrative convective mixing option 
    95       !     it's not implemented for passive tracer 
    96       ! ----------------------------------------------------- 
    97  
    98       IF( ln_zdfnpc) THEN 
     64      ! Don't USE non penetrative convective mixing option 
     65      ! it's not implemented for passive tracer 
     66      IF( ln_zdfnpc ) THEN 
    9967         IF(lwp) WRITE (numout,*) ' ===>>>> : w a r n i n g ' 
    10068         IF(lwp) WRITE (numout,*) ' =======   ============= ' 
     
    10573      ENDIF 
    10674 
    107       ! 4. transport scheme option 
    108       ! -------------------------- 
    109  
    110       IF(lwp) WRITE(numout,*) '  ' 
     75      ! transport scheme option 
    11176      CALL trc_trp_ctl 
    11277 
    113  
    114       ! 5. SMS model 
    115       ! --------------------------------------------- 
    116  
     78      ! SMS model 
    11779      IF(lwp) WRITE(numout,*) '  ' 
    118       IF(lwp) WRITE(numout,*) ' *** Source/Sink model option' 
     80      IF(lwp) WRITE(numout,*) '       Source/Sink model option' 
    11981      IF(lwp) WRITE(numout,*) '  ' 
    12082 
     83# if defined key_lobster 
     84#   include "trcctl.lobster.h90" 
    12185 
    122 #if defined key_trc_lobster1 
    123 #   include "trcctl.lobster1.h90" 
    124 #elif defined key_trc_pisces 
     86# elif defined key_pisces 
    12587#   include "trcctl.pisces.h90" 
    126 #elif defined key_cfc 
     88 
     89# elif defined key_cfc 
    12790#   include "trcctl.cfc.h90" 
    128 #else 
    12991 
    130       IF(lwp) WRITE (numout,*) ' No Source/Sink model ' 
    131       IF(lwp) WRITE (numout,*) ' ' 
     92# else 
     93      IF(lwp) WRITE (numout,*) '       No Source/Sink ' 
     94      IF(lwp) WRITE (numout,*) 
    13295#endif 
    13396 
    13497      ! E r r o r  control 
    13598      ! ------------------ 
    136  
    137       IF ( istop > 0  ) THEN 
     99      IF( istop > 0  ) THEN 
    138100         IF(lwp)WRITE(numout,*) 
    139101         IF(lwp)WRITE(numout,*) istop,' E R R O R found : we stop' 
    140          IF(lwp)WRITE(numout,*) '**************************' 
     102         IF(lwp)WRITE(numout,*) '  **************************' 
    141103         IF(lwp)WRITE(numout,*) 
    142104         STOP 'trcctl' 
    143105      ENDIF 
    144  
     106      ! 
    145107   END SUBROUTINE trc_ctl 
    146108 
    147109#else 
    148    !!====================================================================== 
    149    !!  Empty module : No passive tracer 
    150    !!====================================================================== 
     110   !!---------------------------------------------------------------------- 
     111   !!  Empty module :                                     No passive tracer 
     112   !!---------------------------------------------------------------------- 
    151113CONTAINS 
    152    SUBROUTINE trc_ctl 
    153  
     114   SUBROUTINE trc_ctl                      ! Dummy routine 
    154115   END SUBROUTINE trc_ctl 
    155     
    156116#endif 
    157117 
     118   !!====================================================================== 
    158119END MODULE trcctl 
Note: See TracChangeset for help on using the changeset viewer.