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 branches/UKMO/dev_r5518_medusa_chg_trc_bio_medusa/NEMOGCM/NEMO/TOP_SRC – NEMO

source: branches/UKMO/dev_r5518_medusa_chg_trc_bio_medusa/NEMOGCM/NEMO/TOP_SRC/trcsms.F90 @ 7912

Last change on this file since 7912 was 7912, checked in by marc, 7 years ago

Moved initialisation from trcbio_medusa.F90 into bio_medusa_init.F90

File size: 4.6 KB
RevLine 
[268]1MODULE trcsms
[945]2   !!======================================================================
3   !!                         ***  MODULE trcsms  ***
4   !! TOP :   Time loop of passive tracers sms
5   !!======================================================================
6   !! History :   1.0  !  2005-03 (O. Aumont, A. El Moussaoui) F90
7   !!             2.0  !  2007-12  (C. Ethe, G. Madec)  revised architecture
[274]8   !!----------------------------------------------------------------------
[945]9#if defined key_top
10   !!----------------------------------------------------------------------
11   !!   'key_top'                                                TOP models
12   !!----------------------------------------------------------------------
13   !!   trc_sms        :  Time loop of passive tracers sms
14   !!----------------------------------------------------------------------
15   USE oce_trc            !
16   USE trc                !
17   USE trcsms_pisces      ! PISCES biogeo-model
[5726]18   USE trcsms_medusa      ! MEDUSA tracers
19   USE trcsms_idtra       ! Idealize Tracer
[1254]20   USE trcsms_cfc         ! CFC 11 & 12
21   USE trcsms_c14b        ! C14b tracer
[6715]22   USE trcsms_age         ! AGE tracer
[945]23   USE trcsms_my_trc      ! MY_TRC  tracers
24   USE prtctl_trc         ! Print control for debbuging
[268]25
[335]26   IMPLICIT NONE
27   PRIVATE
[268]28
[945]29   PUBLIC   trc_sms    ! called in trcstp.F90
[268]30
[945]31   !!----------------------------------------------------------------------
[2528]32   !! NEMO/TOP 3.3 , NEMO Consortium (2010)
[5726]33   !! $Id$
[2715]34   !! Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
[945]35   !!----------------------------------------------------------------------
[268]36CONTAINS
37
[335]38   SUBROUTINE trc_sms( kt )
[945]39      !!---------------------------------------------------------------------
[1011]40      !!                     ***  ROUTINE trc_sms  ***
[335]41      !!
[945]42      !! ** Purpose :   Managment of the time loop of passive tracers sms
[335]43      !!
[945]44      !! ** Method  : -  call the main routine of of each defined tracer model
[335]45      !! -------------------------------------------------------------------------------------
[268]46      INTEGER, INTENT( in ) ::   kt      ! ocean time-step index     
[945]47      !!
[6261]48      INTEGER            ::  jn
[433]49      CHARACTER (len=25) :: charout
[945]50      !!---------------------------------------------------------------------
[3294]51      !
52      IF( nn_timing == 1 )   CALL timing_start('trc_sms')
53      !
[945]54      IF( lk_pisces  )   CALL trc_sms_pisces ( kt )    ! main program of PISCES
[7912]55! tmp - marc
56      write(numout,*) 'bbb32. before call to trc_bio_medusa'
57      flush(numout)
58!
[6164]59      IF( lk_medusa  )   CALL trc_sms_medusa ( kt )    ! MEDUSA  tracers
[7912]60! tmp - marc
61      write(numout,*) 'bbb33. after call to trc_bio_medusa'
62      flush(numout)
63!
[6201]64# if defined key_debug_medusa
65         IF(lwp) WRITE(numout,*) '--trcsms : MEDUSA OK --  next IDTRA -- '
66      CALL flush(numout)
67# endif
[6164]68      IF( lk_idtra   )   CALL trc_sms_idtra  ( kt )    ! radioactive decay of Id. tracer
[6201]69# if defined key_debug_medusa
70         IF(lwp) WRITE(numout,*) '--trcsms : IDTRA OK --  next CFC -- '
71      CALL flush(numout)
72# endif
[945]73      IF( lk_cfc     )   CALL trc_sms_cfc    ( kt )    ! surface fluxes of CFC
[6201]74# if defined key_debug_medusa
[6715]75         IF(lwp) WRITE(numout,*) '--trcsms : CFC OK --  next C14 -- '
[6201]76      CALL flush(numout)
77# endif
[1254]78      IF( lk_c14b    )   CALL trc_sms_c14b   ( kt )    ! surface fluxes of C14
[6715]79# if defined key_debug_medusa
80         IF(lwp) WRITE(numout,*) '--trcsms : C14 OK --  next C14 -- '
81      CALL flush(numout)
82# endif
83      IF( lk_age     )   CALL trc_sms_age    ( kt )    ! AGE tracer
84# if defined key_debug_medusa
85         IF(lwp) WRITE(numout,*) '--trcsms : Age OK --  Continue  -- '
86      CALL flush(numout)
87# endif
[945]88      IF( lk_my_trc  )   CALL trc_sms_my_trc ( kt )    ! MY_TRC  tracers
[268]89
[945]90      IF(ln_ctl) THEN      ! print mean trends (used for debugging)
91         WRITE(charout, FMT="('sms ')")
92         CALL prt_ctl_trc_info( charout )
93         CALL prt_ctl_trc( tab4d=trn, mask=tmask, clinfo=ctrcnm )
[433]94      ENDIF
[945]95      !
[3294]96      IF( nn_timing == 1 )   CALL timing_stop('trc_sms')
97      !
[335]98   END SUBROUTINE trc_sms
[268]99
100#else
[335]101   !!======================================================================
[945]102   !!  Dummy module :                                     No passive tracer
[335]103   !!======================================================================
104CONTAINS
[945]105   SUBROUTINE trc_sms( kt )                   ! Empty routine
[268]106      INTEGER, INTENT( in ) ::   kt
107      WRITE(*,*) 'trc_sms: You should not have seen this print! error?', kt
[335]108   END SUBROUTINE trc_sms
[268]109#endif 
110
[945]111   !!======================================================================
[268]112END MODULE  trcsms
Note: See TracBrowser for help on using the repository browser.