source: trunk/NEMO/TOP_SRC/TRP/trcstp.F90 @ 941

Last change on this file since 941 was 941, checked in by cetlod, 13 years ago

phasing the passive tracer transport module to the new version of NEMO, see ticket 143

  • Property svn:executable set to *
File size: 3.2 KB
Line 
1MODULE trcstp
2   !!======================================================================
3   !!                       ***  MODULE trcstp  ***
4   !! Time-stepping    : time loop of opa for passive tracer
5   !!======================================================================
6#if defined key_top
7   !!----------------------------------------------------------------------
8   !!   trc_stp      : passive tracer system time-stepping
9   !!----------------------------------------------------------------------
10   !! * Modules used
11   USE oce_trc          ! ocean dynamics and active tracers variables
12   USE trc              ! ocean passive tracers variables
13   USE trctrp           ! passive tracers transport
14   USE trcsms           ! passive tracers sources and sinks
15   USE prtctl_trc       ! Print control for debbuging
16   USE trcdia
17   USE trcdit
18   USE trcrst
19
20   IMPLICIT NONE
21   PRIVATE
22
23   !! * Routine accessibility
24   PUBLIC trc_stp           ! called by step
25   !!----------------------------------------------------------------------
26   !!   TOP 1.0 , LOCEAN-IPSL (2005)
27   !! $Header: /home/opalod/NEMOCVSROOT/NEMO/TOP_SRC/TRP/trcstp.F90,v 1.12 2007/02/21 12:58:25 opalod Exp $
28   !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt
29   !!----------------------------------------------------------------------
30
31CONTAINS
32
33   SUBROUTINE trc_stp( kt, kindic )
34      !!-------------------------------------------------------------------
35      !!                     ***  ROUTINE trc_stp  ***
36      !!                     
37      !! ** Purpose : Time loop of opa for passive tracer
38      !!
39      !! ** Method  :
40      !!              Compute the passive tracers trends
41      !!              Update the passive tracers
42      !!
43      !! History :
44      !!   9.0  !  04-03  (C. Ethe)  Original
45      !!-------------------------------------------------------------------
46      !! * Arguments
47      INTEGER, INTENT( in ) ::  kt  ! ocean time-step index
48      INTEGER, INTENT( in ) ::  kindic
49      CHARACTER (len=25)    ::  charout
50
51      ! this ROUTINE is called only every ndttrc time step
52      IF( MOD( kt , ndttrc ) /= 0 ) RETURN
53
54      IF(ln_ctl) THEN
55         WRITE(charout,FMT="('kt =', I4,'  d/m/y =',I2,I2,I4)") kt, nday, nmonth, nyear
56         CALL prt_ctl_trc_info(charout)
57      ENDIF
58
59                       CALL trc_rst_opn( kt )       ! Open tracer restart file
60
61                       CALL trc_sms( kt )           ! tracers: sink and source
62
63                       CALL trc_trp( kt )           ! transport of passive tracers
64
65      IF( lrst_trc )   CALL trc_rst_wri( kt )       ! write tracer restart file
66
67                       CALL trc_dia( kt, kindic )   ! diagnostics
68
69
70   END SUBROUTINE trc_stp
71
72#else
73   !!----------------------------------------------------------------------
74   !!   Default key                                     NO passive tracers
75   !!----------------------------------------------------------------------
76CONTAINS
77   SUBROUTINE trc_stp( kt )        ! Empty routine
78      INTEGER, INTENT(in) :: kt
79      WRITE(*,*) 'trc_stp: You should not have seen this print! error?', kt
80   END SUBROUTINE trc_stp
81#endif
82
83   !!======================================================================
84END MODULE trcstp
Note: See TracBrowser for help on using the repository browser.