[933] | 1 | MODULE par_cfc |
---|
| 2 | !!====================================================================== |
---|
| 3 | !! *** par_cfc *** |
---|
| 4 | !! TOP : set the CFC parameters |
---|
| 5 | !!====================================================================== |
---|
| 6 | !! History : 2.0 ! 2007-12 (C. Ethe, G. Madec) revised architecture |
---|
[8280] | 7 | !! ! 2017-04 (A. Yool) add SF6 |
---|
[933] | 8 | !!---------------------------------------------------------------------- |
---|
[2528] | 9 | !! NEMO/TOP 3.3 , NEMO Consortium (2010) |
---|
[6486] | 10 | !! $Id$ |
---|
[2528] | 11 | !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) |
---|
[933] | 12 | !!---------------------------------------------------------------------- |
---|
[1119] | 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 | |
---|
[8280] | 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 | USE par_idtra , ONLY : jp_idtra !: number of tracers in ideal tracer |
---|
| 24 | USE par_idtra , ONLY : jp_idtra_2d !: number of tracers in ideal tracer |
---|
| 25 | USE par_idtra , ONLY : jp_idtra_3d !: number of tracers in ideal tracer |
---|
| 26 | USE par_idtra , ONLY : jp_idtra_trd !: number of tracers in ideal tracer |
---|
| 27 | |
---|
[933] | 28 | IMPLICIT NONE |
---|
| 29 | |
---|
[8280] | 30 | INTEGER, PARAMETER :: jp_lc = jp_pisces + jp_medusa + & |
---|
| 31 | jp_idtra !: cumulative number of passive tracers |
---|
| 32 | INTEGER, PARAMETER :: jp_lc_2d = jp_pisces_2d + jp_medusa_2d + & |
---|
| 33 | jp_idtra_2d !: |
---|
| 34 | INTEGER, PARAMETER :: jp_lc_3d = jp_pisces_3d + jp_medusa_3d + & |
---|
| 35 | jp_idtra_3d !: |
---|
| 36 | INTEGER, PARAMETER :: jp_lc_trd = jp_pisces_trd + jp_medusa_trd + & |
---|
| 37 | jp_idtra_trd !: |
---|
[933] | 38 | |
---|
| 39 | #if defined key_cfc |
---|
| 40 | !!--------------------------------------------------------------------- |
---|
| 41 | !! 'key_cfc' : CFC tracers |
---|
| 42 | !!--------------------------------------------------------------------- |
---|
| 43 | LOGICAL, PUBLIC, PARAMETER :: lk_cfc = .TRUE. !: CFC flag |
---|
[8280] | 44 | INTEGER, PUBLIC, PARAMETER :: jp_cfc = 3 !: number of passive tracers |
---|
| 45 | INTEGER, PUBLIC, PARAMETER :: jp_cfc_2d = 6 !: additional 2d output arrays ('key_trc_diaadd') |
---|
[1004] | 46 | INTEGER, PUBLIC, PARAMETER :: jp_cfc_3d = 0 !: additional 3d output arrays ('key_trc_diaadd') |
---|
[933] | 47 | INTEGER, PUBLIC, PARAMETER :: jp_cfc_trd = 0 !: number of sms trends for CFC |
---|
| 48 | |
---|
| 49 | ! assign an index in trc arrays for each CFC prognostic variables |
---|
[2047] | 50 | INTEGER, PUBLIC, PARAMETER :: jpc11 = jp_lc + 1 !: CFC-11 |
---|
[8280] | 51 | INTEGER, PUBLIC, PARAMETER :: jpc12 = jp_lc + 2 !: CFC-12 (priority tracer for CMIP6) |
---|
| 52 | INTEGER, PUBLIC, PARAMETER :: jpsf6 = jp_lc + 3 !: SF6 |
---|
[933] | 53 | #else |
---|
| 54 | !!--------------------------------------------------------------------- |
---|
| 55 | !! Default : No CFC tracers |
---|
| 56 | !!--------------------------------------------------------------------- |
---|
| 57 | LOGICAL, PUBLIC, PARAMETER :: lk_cfc = .FALSE. !: CFC flag |
---|
| 58 | INTEGER, PUBLIC, PARAMETER :: jp_cfc = 0 !: No CFC tracers |
---|
| 59 | INTEGER, PUBLIC, PARAMETER :: jp_cfc_2d = 0 !: No CFC additional 2d output arrays |
---|
| 60 | INTEGER, PUBLIC, PARAMETER :: jp_cfc_3d = 0 !: No CFC additional 3d output arrays |
---|
| 61 | INTEGER, PUBLIC, PARAMETER :: jp_cfc_trd = 0 !: number of sms trends for CFC |
---|
| 62 | #endif |
---|
| 63 | |
---|
| 64 | ! Starting/ending CFC do-loop indices (N.B. no CFC : jp_cfc0 > jp_cfc1 the do-loop are never done) |
---|
[8280] | 65 | INTEGER, PUBLIC, PARAMETER :: jp_cfc0 = jp_lc + 1 !: First index of CFC tracers |
---|
| 66 | INTEGER, PUBLIC, PARAMETER :: jp_cfc1 = jp_lc + jp_cfc !: Last index of CFC tracers |
---|
| 67 | INTEGER, PUBLIC, PARAMETER :: jp_cfc0_2d = jp_lc_2d + 1 !: First index of CFC tracers |
---|
[2047] | 68 | INTEGER, PUBLIC, PARAMETER :: jp_cfc1_2d = jp_lc_2d + jp_cfc_2d !: Last index of CFC tracers |
---|
[8280] | 69 | INTEGER, PUBLIC, PARAMETER :: jp_cfc0_3d = jp_lc_3d + 1 !: First index of CFC tracers |
---|
[2047] | 70 | INTEGER, PUBLIC, PARAMETER :: jp_cfc1_3d = jp_lc_3d + jp_cfc_3d !: Last index of CFC tracers |
---|
[8280] | 71 | INTEGER, PUBLIC, PARAMETER :: jp_cfc0_trd = jp_lc_trd + 1 !: First index of CFC tracers |
---|
| 72 | INTEGER, PUBLIC, PARAMETER :: jp_cfc1_trd = jp_lc_trd + jp_cfc_trd !: Last index of CFC tracers |
---|
[933] | 73 | |
---|
| 74 | !!====================================================================== |
---|
| 75 | END MODULE par_cfc |
---|