1 | MODULE par_my_trc |
---|
2 | !!====================================================================== |
---|
3 | !! *** par_my_trc *** |
---|
4 | !! TOP : set the MY_TRC 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 | USE par_lobster, ONLY : jp_lobster !: number of tracers in LOBSTER |
---|
13 | USE par_lobster, ONLY : jp_lobster_2d !: number of 2D diag in LOBSTER |
---|
14 | USE par_lobster, ONLY : jp_lobster_3d !: number of 3D diag in LOBSTER |
---|
15 | USE par_lobster, ONLY : jp_lobster_trd !: number of biological diag in LOBSTER |
---|
16 | |
---|
17 | USE par_pisces , ONLY : jp_pisces !: number of tracers in PISCES |
---|
18 | USE par_pisces , ONLY : jp_pisces_2d !: number of 2D diag in PISCES |
---|
19 | USE par_pisces , ONLY : jp_pisces_3d !: number of 3D diag in PISCES |
---|
20 | USE par_pisces , ONLY : jp_pisces_trd !: number of biological diag in PISCES |
---|
21 | |
---|
22 | USE par_cfc , ONLY : jp_cfc !: number of tracers in CFC |
---|
23 | USE par_cfc , ONLY : jp_cfc_2d !: number of tracers in CFC |
---|
24 | USE par_cfc , ONLY : jp_cfc_3d !: number of tracers in CFC |
---|
25 | USE par_cfc , ONLY : jp_cfc_trd !: number of tracers in CFC |
---|
26 | |
---|
27 | USE par_c14b , ONLY : jp_c14b !: number of tracers in C14 |
---|
28 | USE par_c14b , ONLY : jp_c14b_2d !: number of tracers in C14 |
---|
29 | USE par_c14b , ONLY : jp_c14b_3d !: number of tracers in C14 |
---|
30 | USE par_c14b , ONLY : jp_c14b_trd !: number of tracers in C14 |
---|
31 | |
---|
32 | IMPLICIT NONE |
---|
33 | |
---|
34 | INTEGER, PARAMETER :: jp_lm = jp_lobster + jp_pisces + jp_cfc + jp_c14b !: |
---|
35 | INTEGER, PARAMETER :: jp_lm_2d = jp_lobster_2d + jp_pisces_2d + jp_cfc_2d + jp_c14b_2d !: |
---|
36 | INTEGER, PARAMETER :: jp_lm_3d = jp_lobster_3d + jp_pisces_3d + jp_cfc_3d + jp_c14b_3d !: |
---|
37 | INTEGER, PARAMETER :: jp_lm_trd = jp_lobster_trd + jp_pisces_trd + jp_cfc_trd + jp_c14b_trd !: |
---|
38 | |
---|
39 | #if defined key_my_trc |
---|
40 | !!--------------------------------------------------------------------- |
---|
41 | !! 'key_my_trc' user defined tracers (MY_TRC) |
---|
42 | !!--------------------------------------------------------------------- |
---|
43 | LOGICAL, PUBLIC, PARAMETER :: lk_my_trc = .TRUE. !: PTS flag |
---|
44 | INTEGER, PUBLIC, PARAMETER :: jp_my_trc = 2 !: number of PTS tracers |
---|
45 | INTEGER, PUBLIC, PARAMETER :: jp_my_trc_2d = 0 !: additional 2d output arrays ('key_trc_diaadd') |
---|
46 | INTEGER, PUBLIC, PARAMETER :: jp_my_trc_3d = 0 !: additional 3d output arrays ('key_trc_diaadd') |
---|
47 | INTEGER, PUBLIC, PARAMETER :: jp_my_trc_trd = 0 !: number of sms trends for MY_TRC |
---|
48 | |
---|
49 | ! assign an index in trc arrays for each PTS prognostic variables |
---|
50 | INTEGER, PUBLIC, PARAMETER :: jpmyt1 = jp_lm + 1 !: 1st MY_TRC tracer |
---|
51 | INTEGER, PUBLIC, PARAMETER :: jpmyt2 = jp_lm + 2 !: 2nd MY_TRC tracer |
---|
52 | |
---|
53 | #else |
---|
54 | !!--------------------------------------------------------------------- |
---|
55 | !! Default No user defined tracers (MY_TRC) |
---|
56 | !!--------------------------------------------------------------------- |
---|
57 | LOGICAL, PUBLIC, PARAMETER :: lk_my_trc = .FALSE. !: MY_TRC flag |
---|
58 | INTEGER, PUBLIC, PARAMETER :: jp_my_trc = 0 !: No MY_TRC tracers |
---|
59 | INTEGER, PUBLIC, PARAMETER :: jp_my_trc_2d = 0 !: No MY_TRC additional 2d output arrays |
---|
60 | INTEGER, PUBLIC, PARAMETER :: jp_my_trc_3d = 0 !: No MY_TRC additional 3d output arrays |
---|
61 | INTEGER, PUBLIC, PARAMETER :: jp_my_trc_trd = 0 !: number of sms trends for MY_TRC |
---|
62 | #endif |
---|
63 | |
---|
64 | ! Starting/ending PISCES do-loop indices (N.B. no PISCES : jpl_pcs < jpf_pcs the do-loop are never done) |
---|
65 | INTEGER, PUBLIC, PARAMETER :: jp_myt0 = jp_lm + 1 !: First index of MY_TRC passive tracers |
---|
66 | INTEGER, PUBLIC, PARAMETER :: jp_myt1 = jp_lm + jp_my_trc !: Last index of MY_TRC passive tracers |
---|
67 | INTEGER, PUBLIC, PARAMETER :: jp_myt0_2d = jp_lm_2d + 1 !: First index of MY_TRC passive tracers |
---|
68 | INTEGER, PUBLIC, PARAMETER :: jp_myt1_2d = jp_lm_2d + jp_my_trc_2d !: Last index of MY_TRC passive tracers |
---|
69 | INTEGER, PUBLIC, PARAMETER :: jp_myt0_3d = jp_lm_3d + 1 !: First index of MY_TRC passive tracers |
---|
70 | INTEGER, PUBLIC, PARAMETER :: jp_myt1_3d = jp_lm_3d + jp_my_trc_3d !: Last index of MY_TRC passive tracers |
---|
71 | INTEGER, PUBLIC, PARAMETER :: jp_myt0_trd = jp_lm_trd + 1 !: First index of MY_TRC passive tracers |
---|
72 | INTEGER, PUBLIC, PARAMETER :: jp_myt1_trd = jp_lm_trd + jp_my_trc_trd !: Last index of MY_TRC passive tracers |
---|
73 | |
---|
74 | !!====================================================================== |
---|
75 | END MODULE par_my_trc |
---|