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

source: trunk/NEMO/TOP_SRC/trcsms.F90 @ 404

Last change on this file since 404 was 340, checked in by opalod, 19 years ago

nemo_v1_update_028 : CT : add missing headers

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.6 KB
RevLine 
[268]1MODULE trcsms
2   !!===========================================================================================
3   !!
4   !!                       *** MODULE trcsms ***
5   !!
6   !!  Time  loop of opa for passive tracer
7   !!
8   !!===========================================================================================
[340]9   !!  TOP 1.0,  LOCEAN-IPSL (2005)
10   !! $Header$
11   !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt
[274]12   !!----------------------------------------------------------------------
[335]13#if defined key_passivetrc   
14   !! * Modules used
15   !! ==============
16   USE oce_trc
17   USE trc
18   USE trcfreons
[268]19
[335]20   IMPLICIT NONE
21   PRIVATE
[268]22
23   !! * Accessibility
24   PUBLIC trc_sms
25
26CONTAINS
27
[335]28   SUBROUTINE trc_sms( kt )
29      !!===========================================================================================
30      !!
31      !!                       ROUTINE trcsms
32      !!                     *****************
33      !!
34      !!  PURPOSE :
35      !!  ---------
36      !!          time loop of opa for passive tracer
37      !!
38      !!   METHOD :
39      !!   -------
40      !!      compute the well/spring evolution
41      !!
42      !!   INPUT :
43      !!   -----
44      !!      argument
45      !!              ktask           : task identificator
46      !!              kt              : time step
47      !!      COMMON
48      !!            all the COMMON defined in opa
49      !!
50      !!
51      !!   OUTPUT :        : no
52      !!   ------
53      !!
54      !!   WORKSPACE :
55      !!   ---------
56      !!
57      !!   EXTERNAL :
58      !!   --------
59      !!      trcbio, trcsed, trcopt for NPZD or LOBSTER1 models
60      !!
61      !!      h3cprg for HAMOC3 and P3ZD models
62      !!
63      !!
64      !!   History:
65      !!   --------
66      !!      original  : 96-11
67      !!      additions : 99-07 (M. Levy)
68      !!                  04-00 (O. Aumont, M.A. Foujols) HAMOCC3 and P3ZD
69      !!                  12-00 (O. Aumont, E. Kestenare) add trcexp for instantaneous export
70      !!   05-03 (O. Aumont and A. El Moussaoui) F90
71      !! -------------------------------------------------------------------------------------
[268]72
[335]73      !! * Arguments
74      !! -----------
[268]75      INTEGER, INTENT( in ) ::   kt      ! ocean time-step index     
76
[335]77      !! this ROUTINE is called only every ndttrc time step
78      !! --------------------------------------------------
[268]79
80      IF ( MOD(kt,ndttrc) /= 0) RETURN
81
[335]82      !! this first routines are parallelized on vertical slab
83      !! ------------------------------------------------------
[268]84
[335]85#if defined key_trc_lobster1
[268]86
[335]87      !! tracers: optical model
88      !! ----------------------
[268]89
[335]90      CALL trcopt( kt)
[268]91
[335]92      !! tracers: biological model
93      !! -------------------------
[268]94
[335]95      CALL trcbio( kt)
[268]96
[335]97      !! tracers: sedimentation model
98      !! ----------------------------
[268]99
[335]100      CALL trcsed(kt)
101      CALL trcexp(kt)
[268]102
103
104
105#elif defined key_trc_pisces
106
[335]107      !! p4zprg: main PROGRAM for PISCES
108      !! -------------------------------
109      CALL p4zprg(kt)
[268]110
[335]111      !! SMS to DO
[268]112
[335]113#elif defined key_cfc
[268]114
[335]115      !! CFC's code taken from K. Rodgers
[268]116
[335]117      !! This part is still experimental
118      !! -------------------------------
[268]119
[335]120      CALL trc_freons(kt)
[268]121
122#endif
123
124
125
[335]126   END SUBROUTINE trc_sms
[268]127
128#else
[335]129   !!======================================================================
130   !!  Empty module : No passive tracer
131   !!======================================================================
132CONTAINS
[268]133
[335]134   SUBROUTINE trc_sms( kt )
[268]135
[335]136      ! no passive tracers
[268]137      INTEGER, INTENT( in ) ::   kt
138      WRITE(*,*) 'trc_sms: You should not have seen this print! error?', kt
[335]139   END SUBROUTINE trc_sms
[268]140
141#endif
142
143
144END MODULE  trcsms
Note: See TracBrowser for help on using the repository browser.