1 | MODULE 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 | !!====================================================================== |
---|
64 | END MODULE par_idtra |
---|
65 | |
---|
66 | |
---|
67 | |
---|