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_lobster.F90 in branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/NEMO/TOP_SRC/LOBSTER – NEMO

source: branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcsms_lobster.F90 @ 2864

Last change on this file since 2864 was 2715, checked in by rblod, 13 years ago

First attempt to put dynamic allocation on the trunk

  • Property svn:keywords set to Id
File size: 3.4 KB
Line 
1MODULE trcsms_lobster
2   !!======================================================================
3   !!                         ***  MODULE trcsms_lobster  ***
4   !! TOP :   Time loop of LOBSTER model
5   !!======================================================================
6   !! History :   1.0  !            M. Levy
7   !!             2.0  !  2007-12  (C. Ethe, G. Madec)  revised architecture
8   !!----------------------------------------------------------------------
9#if defined key_lobster
10   !!----------------------------------------------------------------------
11   !!   'key_lobster'                                       LOBSTER bio-model
12   !!----------------------------------------------------------------------
13   !!   trcsms_lobster        :  Time loop of passive tracers sms
14   !!----------------------------------------------------------------------
15   USE oce_trc          !
16   USE trc
17   USE trcbio
18   USE trcopt
19   USE trcsed
20   USE trcexp
21   USE trdmod_oce
22   USE trdmod_trc_oce
23   USE trdmod_trc
24   USE trdmld_trc
25
26   IMPLICIT NONE
27   PRIVATE
28
29   PUBLIC   trc_sms_lobster    ! called in trcsms.F90
30
31   !!----------------------------------------------------------------------
32   !! NEMO/TOP 3.3 , NEMO Consortium (2010)
33   !! $Id$
34   !! Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
35   !!----------------------------------------------------------------------
36CONTAINS
37
38   SUBROUTINE trc_sms_lobster( kt )
39      !!---------------------------------------------------------------------
40      !!                     ***  ROUTINE trc_sms_lobster  ***
41      !!
42      !! ** Purpose :  Managment of the call to Biological sources and sinks
43      !!               routines of LOBSTER bio-model
44      !!
45      !! ** Method  : - ???
46      !! --------------------------------------------------------------------
47      USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released
48      USE wrk_nemo, ONLY: ztrlob => wrk_3d_1   ! used for lobster sms trends
49      !!
50      INTEGER, INTENT( in ) ::   kt      ! ocean time-step index     
51      INTEGER :: jn
52      !! --------------------------------------------------------------------
53
54      IF( wrk_in_use(3, 1) ) THEN
55         CALL ctl_stop('trc_sms_lobster : requested workspace array unavailable')   ;   RETURN
56      ENDIF
57
58      CALL trc_opt( kt )      ! optical model
59      CALL trc_bio( kt )      ! biological model
60      CALL trc_sed( kt )      ! sedimentation model
61      CALL trc_exp( kt )      ! export
62
63      IF( l_trdtrc ) THEN
64          DO jn = jp_lob0, jp_lob1
65            ztrlob(:,:,:) = tra(:,:,:,jn)
66            CALL trd_mod_trc( ztrlob, jn, jptra_trd_sms, kt )   ! save trends
67          END DO
68      END IF
69
70      IF( lk_trdmld_trc )  CALL trd_mld_bio( kt )   ! trends: Mixed-layer
71
72      IF( wrk_not_released(3, 1) )   CALL ctl_stop('trc_sms_lobster : failed to release workspace array.')
73      !
74   END SUBROUTINE trc_sms_lobster
75
76#else
77   !!======================================================================
78   !!  Dummy module :                                     No passive tracer
79   !!======================================================================
80CONTAINS
81   SUBROUTINE trc_sms_lobster( kt )                   ! Empty routine
82      INTEGER, INTENT( in ) ::   kt
83      WRITE(*,*) 'trc_sms_lobster: You should not have seen this print! error?', kt
84   END SUBROUTINE trc_sms_lobster
85#endif 
86
87   !!======================================================================
88END MODULE  trcsms_lobster
Note: See TracBrowser for help on using the repository browser.