1 | MODULE par_medusa |
---|
2 | !!====================================================================== |
---|
3 | !! *** par_medusa *** |
---|
4 | !! TOP : set the MEDUSA parameters |
---|
5 | !!====================================================================== |
---|
6 | !! History : 2.0 ! 2007-12 (C. Ethe, G. Madec) revised architecture |
---|
7 | !! - ! 2008-08 (K. Popova) adaptation for MEDUSA |
---|
8 | !! - ! 2008-11 (A. Yool) continuing adaptation for MEDUSA |
---|
9 | !! - ! 2010-03 (A. Yool) updated for branch inclusion |
---|
10 | !! - ! 2011-04 (A. Yool) updated for ROAM project |
---|
11 | !! - ! 2013-03 (A. Yool) updated for v3.5 NEMO |
---|
12 | !!---------------------------------------------------------------------- |
---|
13 | !! NEMO/TOP 2.0 , LOCEAN-IPSL (2007) |
---|
14 | !! $Id$ |
---|
15 | !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) |
---|
16 | !!---------------------------------------------------------------------- |
---|
17 | |
---|
18 | IMPLICIT NONE |
---|
19 | |
---|
20 | #if defined key_medusa |
---|
21 | !!--------------------------------------------------------------------- |
---|
22 | !! 'key_medusa' user defined tracers (MEDUSA) |
---|
23 | !!--------------------------------------------------------------------- |
---|
24 | LOGICAL, PUBLIC, PARAMETER :: lk_medusa = .TRUE. !: PTS flag |
---|
25 | # if defined key_roam |
---|
26 | INTEGER, PUBLIC, PARAMETER :: jp_medusa = 15 !: number of PTS tracers |
---|
27 | INTEGER, PUBLIC, PARAMETER :: jp_medusa_2d = 225 !: additional 2d output arrays (used if ln_diatrc=T) |
---|
28 | INTEGER, PUBLIC, PARAMETER :: jp_medusa_3d = 5 !: additional 3d output arrays (used if ln_diatrc=T) |
---|
29 | INTEGER, PUBLIC, PARAMETER :: jp_medusa_trd = 0 !: number of sms trends for MEDUSA |
---|
30 | # else |
---|
31 | INTEGER, PUBLIC, PARAMETER :: jp_medusa = 11 !: number of PTS tracers |
---|
32 | INTEGER, PUBLIC, PARAMETER :: jp_medusa_2d = 90 !: additional 2d output arrays (used if ln_diatrc=T) |
---|
33 | INTEGER, PUBLIC, PARAMETER :: jp_medusa_3d = 4 !: additional 3d output arrays (used if ln_diatrc=T) |
---|
34 | INTEGER, PUBLIC, PARAMETER :: jp_medusa_trd = 0 !: number of sms trends for MEDUSA |
---|
35 | # endif |
---|
36 | |
---|
37 | ! assign an index in trc arrays for each PTS prognostic variables |
---|
38 | INTEGER, PUBLIC, PARAMETER :: jpchn = 1 !: non-diatom chlorophyll concentration |
---|
39 | INTEGER, PUBLIC, PARAMETER :: jpchd = 2 !: diatom chlorophyll concentration |
---|
40 | INTEGER, PUBLIC, PARAMETER :: jpphn = 3 !: non-diatom concentration |
---|
41 | INTEGER, PUBLIC, PARAMETER :: jpphd = 4 !: diatom concentration |
---|
42 | INTEGER, PUBLIC, PARAMETER :: jpzmi = 5 !: microzooplankton concentration |
---|
43 | INTEGER, PUBLIC, PARAMETER :: jpzme = 6 !: mesozooplankton concentration |
---|
44 | INTEGER, PUBLIC, PARAMETER :: jpdin = 7 !: dissolved inorganic nitrogen concentration |
---|
45 | INTEGER, PUBLIC, PARAMETER :: jpsil = 8 !: silicic acid concentration |
---|
46 | INTEGER, PUBLIC, PARAMETER :: jpfer = 9 !: total iron concentration |
---|
47 | INTEGER, PUBLIC, PARAMETER :: jpdet = 10 !: slow-sinking detritus concentration |
---|
48 | INTEGER, PUBLIC, PARAMETER :: jppds = 11 !: diatom silicon concentration |
---|
49 | # if defined key_roam |
---|
50 | INTEGER, PUBLIC, PARAMETER :: jpdtc = 12 !: slow-sinking detritus carbon concentration |
---|
51 | INTEGER, PUBLIC, PARAMETER :: jpdic = 13 !: dissolved inorganic carbon concentration |
---|
52 | INTEGER, PUBLIC, PARAMETER :: jpalk = 14 !: alkalinity |
---|
53 | INTEGER, PUBLIC, PARAMETER :: jpoxy = 15 !: dissolved oxygen concentration |
---|
54 | # endif |
---|
55 | |
---|
56 | #else |
---|
57 | !!--------------------------------------------------------------------- |
---|
58 | !! Default No user defined tracers (MEDUSA) |
---|
59 | !!--------------------------------------------------------------------- |
---|
60 | LOGICAL, PUBLIC, PARAMETER :: lk_medusa = .FALSE. !: MEDUSA flag |
---|
61 | INTEGER, PUBLIC, PARAMETER :: jp_medusa = 0 !: No MEDUSA tracers |
---|
62 | INTEGER, PUBLIC, PARAMETER :: jp_medusa_2d = 0 !: No MEDUSA additional 2d output arrays |
---|
63 | INTEGER, PUBLIC, PARAMETER :: jp_medusa_3d = 0 !: No MEDUSA additional 3d output arrays |
---|
64 | INTEGER, PUBLIC, PARAMETER :: jp_medusa_trd = 0 !: number of sms trends for MEDUSA |
---|
65 | #endif |
---|
66 | |
---|
67 | ! Starting/ending PISCES do-loop indices (N.B. no PISCES : jpl_pcs < jpf_pcs the do-loop are never done) |
---|
68 | INTEGER, PUBLIC, PARAMETER :: jp_msa0 = 1 !: First index of MEDUSA passive tracers |
---|
69 | INTEGER, PUBLIC, PARAMETER :: jp_msa1 = jp_medusa !: Last index of MEDUSA passive tracers |
---|
70 | INTEGER, PUBLIC, PARAMETER :: jp_msa0_2d = 1 !: First index of MEDUSA passive tracers |
---|
71 | INTEGER, PUBLIC, PARAMETER :: jp_msa1_2d = jp_medusa_2d !: Last index of MEDUSA passive tracers |
---|
72 | INTEGER, PUBLIC, PARAMETER :: jp_msa0_3d = 1 !: First index of MEDUSA passive tracers |
---|
73 | INTEGER, PUBLIC, PARAMETER :: jp_msa1_3d = jp_medusa_3d !: Last index of MEDUSA passive tracers |
---|
74 | INTEGER, PUBLIC, PARAMETER :: jp_msa0_trd = 1 !: First index of MEDUSA passive tracers |
---|
75 | INTEGER, PUBLIC, PARAMETER :: jp_msa1_trd = jp_medusa_trd !: Last index of MEDUSA passive tracers |
---|
76 | |
---|
77 | !!====================================================================== |
---|
78 | END MODULE par_medusa |
---|