source: branches/NERC/dev_r5518_GO6_conserv_check_up/NEMOGCM/NEMO/TOP_SRC/IDTRA/par_idtra.F90 @ 9260

Last change on this file since 9260 was 6164, checked in by jpalmier, 5 years ago

JPALM — 23-12-2015 — 1_ adapt CFC in MEDUSA branch - now Working properly 2_ add diagnostics to Ideal tracer

File size: 4.3 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$
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   IMPLICIT NONE
24
25   INTEGER, PARAMETER ::   jp_lp      =  jp_pisces     +  jp_medusa     !: cumulative number of passive tracers
26   INTEGER, PARAMETER ::   jp_lp_2d   =  jp_pisces_2d  +  jp_medusa_2d  !:
27   INTEGER, PARAMETER ::   jp_lp_3d   =  jp_pisces_3d  +  jp_medusa_3d  !:
28   INTEGER, PARAMETER ::   jp_lp_trd  =  jp_pisces_trd +  jp_medusa_trd !:
29
30#if defined key_idtra
31   !!---------------------------------------------------------------------
32   !!   'key_idtra'   :                                          Ideal tracers
33   !!---------------------------------------------------------------------
34   LOGICAL, PUBLIC, PARAMETER ::   lk_idtra     = .TRUE.      !: IDEAL-TRACER flag
35   INTEGER, PUBLIC, PARAMETER ::   jp_idtra     =  1          !: number of passive tracers
36   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_2d  =  3          !: additional 2d output arrays ('key_trc_diaadd')
37   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_3d  =  0          !: additional 3d output arrays ('key_trc_diaadd')
38   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_trd =  0          !: number of sms trends for IDEAL-TRACER
39
40   ! assign an index in trc arrays for each IDEAL-TRACER prognostic variables
41   INTEGER, PUBLIC, PARAMETER ::   jpidtra       = jp_lp + 1   !: IDEAL-TRACER
42#else
43   !!---------------------------------------------------------------------
44   !!   Default     :                                       No IDEAL-TRACER tracers
45   !!---------------------------------------------------------------------
46   LOGICAL, PUBLIC, PARAMETER ::   lk_idtra     = .FALSE.     !: IDEAL-TRACER flag
47   INTEGER, PUBLIC, PARAMETER ::   jp_idtra     =  0          !: No IDEAL-TRACER tracers
48   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_2d  =  0          !: No IDEAL-TRACER additional 2d output arrays
49   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_3d  =  0          !: No IDEAL-TRACER additional 3d output arrays
50   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_trd =  0          !: number of sms trends for IDEAL-TRACER
51#endif
52
53   ! Starting/ending IDEAL-TRACER do-loop indices (N.B. no IDEAL-TRACER : jp_idtra0 > jp_idtra1 the do-loop are never done)
54   INTEGER, PUBLIC, PARAMETER ::   jp_idtra0     = jp_lp + 1                !: First index of IDEAL-TRACER tracers
55   INTEGER, PUBLIC, PARAMETER ::   jp_idtra1     = jp_lp + jp_idtra         !: Last  index of IDEAL-TRACER tracers
56   INTEGER, PUBLIC, PARAMETER ::   jp_idtra0_2d  = jp_lp_2d  + 1            !: First index of IDEAL-TRACER tracers
57   INTEGER, PUBLIC, PARAMETER ::   jp_idtra1_2d  = jp_lp_2d  + jp_idtra_2d  !: Last  index of IDEAL-TRACER tracers
58   INTEGER, PUBLIC, PARAMETER ::   jp_idtra0_3d  = jp_lp_3d  + 1            !: First index of IDEAL-TRACER tracers
59   INTEGER, PUBLIC, PARAMETER ::   jp_idtra1_3d  = jp_lp_3d  + jp_idtra_3d  !: Last  index of IDEAL-TRACER tracers
60   INTEGER, PUBLIC, PARAMETER ::   jp_idtra0_trd = jp_lp_trd + 0            !: First index of IDEAL-TRACER tracers
61   INTEGER, PUBLIC, PARAMETER ::   jp_idtra1_trd = jp_lp_trd + jp_idtra_trd !: Last  index of IDEAL-TRACER tracers
62
63   !!======================================================================
64END MODULE par_idtra
65
66
67
Note: See TracBrowser for help on using the repository browser.