source: branches/NERC/dev_r5107_NOC_MEDUSA/NEMOGCM/NEMO/TOP_SRC/IDTRA/par_idtra.F90 @ 5707

Last change on this file since 5707 was 5707, checked in by acc, 5 years ago

JPALM —25-08-2015 — add MEDUSA in the branch. MEDUSA version already up-to-date with this trunk revision

File size: 4.4 KB
Line 
1MODULE par_idtra
2   !!======================================================================
3   !!                        ***  par_idtra  ***
4   !! TOP :   set the IDEAL-TRACER parameters
5   !!======================================================================
6   !! History :   2.0  !  2007-12  (C. Ethe, G. Madec)  revised architecture
7   !!----------------------------------------------------------------------
8   !! NEMO/TOP 2.0 , LOCEAN-IPSL (2007)
9   !! $Id: par_idtra.F90 1253 2009-01-13 09:55:38Z cetlod $
10   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
11   !!----------------------------------------------------------------------
12
13   USE par_pisces , ONLY : jp_pisces       !: number of tracers in PISCES
14   USE par_pisces , ONLY : jp_pisces_2d    !: number of 2D diag in PISCES
15   USE par_pisces , ONLY : jp_pisces_3d    !: number of 3D diag in PISCES
16   USE par_pisces , ONLY : jp_pisces_trd   !: number of biological diag in PISCES
17
18   USE par_medusa , ONLY : jp_medusa       !: number of tracers in MEDUSA
19   USE par_medusa , ONLY : jp_medusa_2d    !: number of 2D diag in MEDUSA
20   USE par_medusa , ONLY : jp_medusa_3d    !: number of 3D diag in MEDUSA
21   USE par_medusa , ONLY : jp_medusa_trd   !: number of biological diag in MEDUSA
22
23
24   IMPLICIT NONE
25   PUBLIC
26
27   INTEGER, PUBLIC, PARAMETER ::   jp_lp      =  jp_pisces     + jp_medusa     !: cumulative number of passive tracers
28   INTEGER, PUBLIC, PARAMETER ::   jp_lp_2d   =  jp_pisces_2d  + jp_medusa_2d  !:
29   INTEGER, PUBLIC, PARAMETER ::   jp_lp_3d   =  jp_pisces_3d  + jp_medusa_3d  !:
30   INTEGER, PUBLIC, PARAMETER ::   jp_lp_trd  =  jp_pisces_trd + jp_medusa_trd !:
31
32#if defined key_idtra
33   !!---------------------------------------------------------------------
34   !!   'key_idtra'   :                                          Ideal tracers
35   !!---------------------------------------------------------------------
36   LOGICAL, PUBLIC, PARAMETER ::   lk_idtra     = .TRUE.      !: IDEAL-TRACER flag
37   INTEGER, PUBLIC, PARAMETER ::   jp_idtra     =  1          !: number of passive tracers
38   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_2d  =  0          !: additional 2d output arrays ('key_trc_diaadd')
39   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_3d  =  0          !: additional 3d output arrays ('key_trc_diaadd')
40   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_trd =  0          !: number of sms trends for IDEAL-TRACER
41
42   ! assign an index in trc arrays for each IDEAL-TRACER prognostic variables
43   INTEGER, PUBLIC, PARAMETER ::   jpidtra       = jp_lp + 1   !: IDEAL-TRACER
44#else
45   !!---------------------------------------------------------------------
46   !!   Default     :                                       No IDEAL-TRACER tracers
47   !!---------------------------------------------------------------------
48   LOGICAL, PUBLIC, PARAMETER ::   lk_idtra     = .FALSE.     !: IDEAL-TRACER flag
49   INTEGER, PUBLIC, PARAMETER ::   jp_idtra     =  0          !: No IDEAL-TRACER tracers
50   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_2d  =  0          !: No IDEAL-TRACER additional 2d output arrays
51   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_3d  =  0          !: No IDEAL-TRACER additional 3d output arrays
52   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_trd =  0          !: number of sms trends for IDEAL-TRACER
53#endif
54
55   ! Starting/ending IDEAL-TRACER do-loop indices (N.B. no IDEAL-TRACER : jp_idtra0 > jp_idtra1 the do-loop are never done)
56   INTEGER, PUBLIC, PARAMETER ::   jp_idtra0     = jp_lp + 1                !: First index of IDEAL-TRACER tracers
57   INTEGER, PUBLIC, PARAMETER ::   jp_idtra1     = jp_lp + jp_idtra         !: Last  index of IDEAL-TRACER tracers
58   INTEGER, PUBLIC, PARAMETER ::   jp_idtra0_2d  = jp_lp_2d  + 1            !: First index of IDEAL-TRACER tracers
59   INTEGER, PUBLIC, PARAMETER ::   jp_idtra1_2d  = jp_lp_2d  + jp_idtra_2d  !: Last  index of IDEAL-TRACER tracers
60   INTEGER, PUBLIC, PARAMETER ::   jp_idtra0_3d  = jp_lp_3d  + 1            !: First index of IDEAL-TRACER tracers
61   INTEGER, PUBLIC, PARAMETER ::   jp_idtra1_3d  = jp_lp_3d  + jp_idtra_3d  !: Last  index of IDEAL-TRACER tracers
62   INTEGER, PUBLIC, PARAMETER ::   jp_idtra0_trd = jp_lp_trd + 0            !: First index of IDEAL-TRACER tracers
63   INTEGER, PUBLIC, PARAMETER ::   jp_idtra1_trd = jp_lp_trd + jp_idtra_trd !: Last  index of IDEAL-TRACER tracers
64
65   !!======================================================================
66END MODULE par_idtra
67
68
69
Note: See TracBrowser for help on using the repository browser.