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

Ignore:
Timestamp:
2005-11-14T13:08:42+01:00 (19 years ago)
Author:
opalod
Message:

nemo_v1_update_023 : CE + RB + CT : new evolution of modules

File:
1 edited

Legend:

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

    r274 r335  
    88   !!=========================================================================================== 
    99   !!  TOP 1.0,  LOCEAN-IPSL (2005) 
    10    !! $Header$ 
    11    !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt 
    1210   !!---------------------------------------------------------------------- 
     11#if defined key_passivetrc    
     12   !! * Modules used 
     13   !! ============== 
     14   USE oce_trc 
     15   USE trc 
     16   USE trcfreons 
    1317 
    14       !! * Modules used 
    15       !! ============== 
    16       USE oce_trc 
    17       USE trc 
    18  
    19       IMPLICIT NONE 
    20       PRIVATE 
     18   IMPLICIT NONE 
     19   PRIVATE 
    2120 
    2221   !! * Accessibility 
    2322   PUBLIC trc_sms 
    2423 
    25 #if defined key_passivetrc 
    26  
    2724CONTAINS 
    2825 
    29 SUBROUTINE trc_sms( kt ) 
    30    !!=========================================================================================== 
    31    !! 
    32    !!                       ROUTINE trcsms 
    33    !!                     ***************** 
    34    !! 
    35    !!  PURPOSE : 
    36    !!  --------- 
    37    !!          time loop of opa for passive tracer 
    38    !! 
    39    !!   METHOD : 
    40    !!   ------- 
    41    !!      compute the well/spring evolution 
    42    !! 
    43    !!   INPUT : 
    44    !!   ----- 
    45    !!      argument 
    46    !!              ktask           : task identificator 
    47    !!              kt              : time step 
    48    !!      COMMON 
    49    !!            all the COMMON defined in opa 
    50    !! 
    51    !! 
    52    !!   OUTPUT :        : no 
    53    !!   ------ 
    54    !! 
    55    !!   WORKSPACE : 
    56    !!   --------- 
    57    !! 
    58    !!   EXTERNAL : 
    59    !!   -------- 
    60    !!      trcbio, trcsed, trcopt for NPZD or LOBSTER1 models 
    61    !! 
    62    !!      h3cprg for HAMOC3 and P3ZD models 
    63    !! 
    64    !! 
    65    !!   History: 
    66    !!   -------- 
    67    !!      original  : 96-11 
    68    !!      additions : 99-07 (M. Levy) 
    69    !!                  04-00 (O. Aumont, M.A. Foujols) HAMOCC3 and P3ZD 
    70    !!                  12-00 (O. Aumont, E. Kestenare) add trcexp for instantaneous export  
    71    !!   05-03 (O. Aumont and A. El Moussaoui) F90 
    72    !! ------------------------------------------------------------------------------------- 
     26   SUBROUTINE trc_sms( kt ) 
     27      !!=========================================================================================== 
     28      !! 
     29      !!                       ROUTINE trcsms 
     30      !!                     ***************** 
     31      !! 
     32      !!  PURPOSE : 
     33      !!  --------- 
     34      !!          time loop of opa for passive tracer 
     35      !! 
     36      !!   METHOD : 
     37      !!   ------- 
     38      !!      compute the well/spring evolution 
     39      !! 
     40      !!   INPUT : 
     41      !!   ----- 
     42      !!      argument 
     43      !!              ktask           : task identificator 
     44      !!              kt              : time step 
     45      !!      COMMON 
     46      !!            all the COMMON defined in opa 
     47      !! 
     48      !! 
     49      !!   OUTPUT :        : no 
     50      !!   ------ 
     51      !! 
     52      !!   WORKSPACE : 
     53      !!   --------- 
     54      !! 
     55      !!   EXTERNAL : 
     56      !!   -------- 
     57      !!      trcbio, trcsed, trcopt for NPZD or LOBSTER1 models 
     58      !! 
     59      !!      h3cprg for HAMOC3 and P3ZD models 
     60      !! 
     61      !! 
     62      !!   History: 
     63      !!   -------- 
     64      !!      original  : 96-11 
     65      !!      additions : 99-07 (M. Levy) 
     66      !!                  04-00 (O. Aumont, M.A. Foujols) HAMOCC3 and P3ZD 
     67      !!                  12-00 (O. Aumont, E. Kestenare) add trcexp for instantaneous export  
     68      !!   05-03 (O. Aumont and A. El Moussaoui) F90 
     69      !! ------------------------------------------------------------------------------------- 
    7370 
    74    !! * Arguments 
    75    !! ----------- 
     71      !! * Arguments 
     72      !! ----------- 
    7673      INTEGER, INTENT( in ) ::   kt      ! ocean time-step index       
    7774 
    78    !! this ROUTINE is called only every ndttrc time step 
    79    !! -------------------------------------------------- 
     75      !! this ROUTINE is called only every ndttrc time step 
     76      !! -------------------------------------------------- 
    8077 
    8178      IF ( MOD(kt,ndttrc) /= 0) RETURN 
    8279 
    83    !! this first routines are parallelized on vertical slab 
    84    !! ------------------------------------------------------ 
     80      !! this first routines are parallelized on vertical slab 
     81      !! ------------------------------------------------------ 
    8582 
    86 #if defined key_trc_npzd || defined key_trc_lobster1 
     83#if defined key_trc_lobster1 
    8784 
    88    !! tracers: optical model 
    89    !! ---------------------- 
     85      !! tracers: optical model 
     86      !! ---------------------- 
    9087 
    91        CALL trcopt( kt) 
     88      CALL trcopt( kt) 
    9289 
    93    !! tracers: biological model 
    94    !! ------------------------- 
     90      !! tracers: biological model 
     91      !! ------------------------- 
    9592 
    96        CALL trcbio( kt) 
     93      CALL trcbio( kt) 
    9794 
    98    !! tracers: sedimentation model 
    99    !! ---------------------------- 
     95      !! tracers: sedimentation model 
     96      !! ---------------------------- 
    10097 
    101        CALL trcsed(kt) 
    102        CALL trcexp 
     98      CALL trcsed(kt) 
     99      CALL trcexp(kt) 
    103100 
    104 #elif defined key_trc_hamocc3 
    105101 
    106    !! h3cprg: main PROGRAM for HAMOCC3 or P3ZD models 
    107    !! ----------------------------------------------- 
    108        CALL h3cprg(kt) 
    109102 
    110103#elif defined key_trc_pisces 
    111104 
    112    !! p4zprg: main PROGRAM for PISCES  
    113    !! ------------------------------- 
    114        CALL p4zprg(kt) 
    115 #else 
     105      !! p4zprg: main PROGRAM for PISCES  
     106      !! ------------------------------- 
     107      CALL p4zprg(kt) 
    116108 
    117     !! SMS to DO 
     109      !! SMS to DO 
    118110 
    119 #if defined key_cfc 
     111#elif defined key_cfc 
    120112 
    121    !! CFC's code taken from K. Rodgers 
     113      !! CFC's code taken from K. Rodgers 
    122114 
    123    !! This part is still experimental 
    124    !! ------------------------------- 
     115      !! This part is still experimental 
     116      !! ------------------------------- 
    125117 
    126        CALL trcfreons(kt) 
    127  
    128 #elif defined key_gosac 
    129  
    130    !! C14 tracer modeled according to the OCMIP protocol 
    131    !! This part has not been really tested in this configuration 
    132  
    133    !! Compute the alkalinity 
    134  
    135           CALL alkal(kt) 
    136  
    137    !! Compute the radioactive decay 
    138  
    139           CALL decay 
    140  
    141    !! Tracers: surface flux 
    142  
    143           CALL dicgasflux(kt) 
     118      CALL trc_freons(kt) 
    144119 
    145120#endif 
    146121 
    147 #endif 
    148122 
    149 #if defined key_trc_age 
    150123 
    151    !! Age Tracer  
    152     
    153           CALL trcage(kt) 
    154 #endif 
    155  
    156 END SUBROUTINE trc_sms 
     124   END SUBROUTINE trc_sms 
    157125 
    158126#else 
     127   !!====================================================================== 
     128   !!  Empty module : No passive tracer 
     129   !!====================================================================== 
     130CONTAINS 
    159131 
    160 SUBROUTINE trc_sms( kt ) 
     132   SUBROUTINE trc_sms( kt ) 
    161133 
    162 ! no passive tracers 
     134      ! no passive tracers 
    163135      INTEGER, INTENT( in ) ::   kt 
    164136      WRITE(*,*) 'trc_sms: You should not have seen this print! error?', kt 
    165 END SUBROUTINE trc_sms 
     137   END SUBROUTINE trc_sms 
    166138 
    167139#endif  
Note: See TracChangeset for help on using the changeset viewer.