MODULE par_pisces !!====================================================================== !! *** par_pisces *** !! TOP : set the PISCES parameters !!====================================================================== !! History : 2.0 ! 2007-12 (C. Ethe, G. Madec) revised architecture !!---------------------------------------------------------------------- !! NEMO/TOP 3.3 , NEMO Consortium (2010) !! $Id$ !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) !!---------------------------------------------------------------------- IMPLICIT NONE #if defined key_pisces_reduced !!--------------------------------------------------------------------- !! 'key_pisces_reduced' : LOBSTER bio-model !!--------------------------------------------------------------------- INTEGER, PUBLIC, PARAMETER :: lk_pisces = .TRUE. !: PISCES flag INTEGER, PUBLIC, PARAMETER :: nn_p4z = 1 !: p4z flag INTEGER, PUBLIC, PARAMETER :: jp_pisces = 6 !: number of passive tracers INTEGER, PUBLIC, PARAMETER :: jp_pisces_2d = 19 !: additional 2d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_3d = 3 !: additional 3d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_trd = 17 !: number of sms trends for PISCES ! assign an index in trc arrays for each LOBSTER prognostic variables INTEGER, PUBLIC, PARAMETER :: jpdet = 1 !: detritus [mmoleN/m3] INTEGER, PUBLIC, PARAMETER :: jpzoo = 2 !: zooplancton concentration [mmoleN/m3] INTEGER, PUBLIC, PARAMETER :: jpphy = 3 !: phytoplancton concentration [mmoleN/m3] INTEGER, PUBLIC, PARAMETER :: jpno3 = 4 !: nitrate concentration [mmoleN/m3] INTEGER, PUBLIC, PARAMETER :: jpnh4 = 5 !: ammonium concentration [mmoleN/m3] INTEGER, PUBLIC, PARAMETER :: jpdom = 6 !: dissolved organic matter [mmoleN/m3] ! productive layer depth INTEGER, PUBLIC, PARAMETER :: jpkb = 12 !: first vertical layers where biology is active INTEGER, PUBLIC, PARAMETER :: jpkbm1 = jpkb - 1 !: first vertical layers where biology is active #elif defined key_pisces && defined key_kriest !!--------------------------------------------------------------------- !! 'key_pisces' & 'key_kriest' PISCES bio-model + ??? !!--------------------------------------------------------------------- LOGICAL, PUBLIC, PARAMETER :: lk_pisces = .TRUE. !: PISCES flag INTEGER, PUBLIC, PARAMETER :: nn_p4z = 2 !: p4z flag LOGICAL, PUBLIC, PARAMETER :: lk_kriest = .TRUE. !: Kriest flag INTEGER, PUBLIC, PARAMETER :: jp_pisces = 23 !: number of passive tracers INTEGER, PUBLIC, PARAMETER :: jp_pisces_2d = 13 !: additional 2d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_3d = 18 !: additional 3d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_trd = 1 !: number of sms trends for PISCES ! assign an index in trc arrays for each LOBSTER prognostic variables ! WARNING: be carefull about the order when reading the restart ! !!gm this warning should be obsolet with IOM INTEGER, PUBLIC, PARAMETER :: jpdic = 1 !: dissolved inoganic carbon concentration INTEGER, PUBLIC, PARAMETER :: jptal = 2 !: total alkalinity INTEGER, PUBLIC, PARAMETER :: jpoxy = 3 !: oxygen carbon concentration INTEGER, PUBLIC, PARAMETER :: jpcal = 4 !: calcite concentration INTEGER, PUBLIC, PARAMETER :: jppo4 = 5 !: phosphate concentration INTEGER, PUBLIC, PARAMETER :: jppoc = 6 !: small particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpsil = 7 !: silicate concentration INTEGER, PUBLIC, PARAMETER :: jpphy = 8 !: phytoplancton concentration INTEGER, PUBLIC, PARAMETER :: jpzoo = 9 !: zooplancton concentration INTEGER, PUBLIC, PARAMETER :: jpdoc = 10 !: dissolved organic carbon concentration INTEGER, PUBLIC, PARAMETER :: jpdia = 11 !: Diatoms Concentration INTEGER, PUBLIC, PARAMETER :: jpmes = 12 !: Mesozooplankton Concentration INTEGER, PUBLIC, PARAMETER :: jpdsi = 13 !: (big) Silicate Concentration INTEGER, PUBLIC, PARAMETER :: jpfer = 14 !: Iron Concentration INTEGER, PUBLIC, PARAMETER :: jpnum = 15 !: Big iron particles Concentration INTEGER, PUBLIC, PARAMETER :: jpsfe = 16 !: number of particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpdfe = 17 !: Diatoms iron Concentration INTEGER, PUBLIC, PARAMETER :: jpgsi = 18 !: Diatoms Silicate Concentration INTEGER, PUBLIC, PARAMETER :: jpnfe = 19 !: Nano iron Concentration INTEGER, PUBLIC, PARAMETER :: jpnch = 20 !: Nano Chlorophyll Concentration INTEGER, PUBLIC, PARAMETER :: jpdch = 21 !: Diatoms Chlorophyll Concentration INTEGER, PUBLIC, PARAMETER :: jpno3 = 22 !: Nitrates Concentration INTEGER, PUBLIC, PARAMETER :: jpnh4 = 23 !: Ammonium Concentration #elif defined key_pisces !!--------------------------------------------------------------------- !! 'key_pisces' : standard PISCES bio-model !!--------------------------------------------------------------------- LOGICAL, PUBLIC, PARAMETER :: lk_pisces = .TRUE. !: PISCES flag INTEGER, PUBLIC, PARAMETER :: nn_p4z = 2 !: p4z flag LOGICAL, PUBLIC, PARAMETER :: lk_kriest = .FALSE. !: Kriest flag INTEGER, PUBLIC, PARAMETER :: jp_pisces = 24 !: number of PISCES passive tracers INTEGER, PUBLIC, PARAMETER :: jp_pisces_2d = 13 !: additional 2d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_3d = 11 !: additional 3d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_trd = 1 !: number of sms trends for PISCES ! assign an index in trc arrays for each LOBSTER prognostic variables ! WARNING: be carefull about the order when reading the restart ! !!gm this warning should be obsolet with IOM INTEGER, PUBLIC, PARAMETER :: jpdic = 1 !: dissolved inoganic carbon concentration INTEGER, PUBLIC, PARAMETER :: jptal = 2 !: total alkalinity INTEGER, PUBLIC, PARAMETER :: jpoxy = 3 !: oxygen carbon concentration INTEGER, PUBLIC, PARAMETER :: jpcal = 4 !: calcite concentration INTEGER, PUBLIC, PARAMETER :: jppo4 = 5 !: phosphate concentration INTEGER, PUBLIC, PARAMETER :: jppoc = 6 !: small particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpsil = 7 !: silicate concentration INTEGER, PUBLIC, PARAMETER :: jpphy = 8 !: phytoplancton concentration INTEGER, PUBLIC, PARAMETER :: jpzoo = 9 !: zooplancton concentration INTEGER, PUBLIC, PARAMETER :: jpdoc = 10 !: dissolved organic carbon concentration INTEGER, PUBLIC, PARAMETER :: jpdia = 11 !: Diatoms Concentration INTEGER, PUBLIC, PARAMETER :: jpmes = 12 !: Mesozooplankton Concentration INTEGER, PUBLIC, PARAMETER :: jpdsi = 13 !: (big) Silicate Concentration INTEGER, PUBLIC, PARAMETER :: jpfer = 14 !: Iron Concentration INTEGER, PUBLIC, PARAMETER :: jpbfe = 15 !: Big iron particles Concentration INTEGER, PUBLIC, PARAMETER :: jpgoc = 16 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpsfe = 17 !: Small iron particles Concentration INTEGER, PUBLIC, PARAMETER :: jpdfe = 18 !: Diatoms iron Concentration INTEGER, PUBLIC, PARAMETER :: jpgsi = 19 !: Diatoms Silicate Concentration INTEGER, PUBLIC, PARAMETER :: jpnfe = 20 !: Nano iron Concentration INTEGER, PUBLIC, PARAMETER :: jpnch = 21 !: Nano Chlorophyll Concentration INTEGER, PUBLIC, PARAMETER :: jpdch = 22 !: Diatoms Chlorophyll Concentration INTEGER, PUBLIC, PARAMETER :: jpno3 = 23 !: Nitrates Concentration INTEGER, PUBLIC, PARAMETER :: jpnh4 = 24 !: Ammonium Concentration #elif defined key_pisces_quota && defined key_kriest !!--------------------------------------------------------------------- !! 'key_pisces' & 'key_kriest' PISCES bio-model + ??? !!--------------------------------------------------------------------- LOGICAL, PUBLIC, PARAMETER :: lk_pisces = .TRUE. !: PISCES flag INTEGER, PUBLIC, PARAMETER :: nn_p4z = 3 !: p4z flag LOGICAL, PUBLIC, PARAMETER :: lk_kriest = .TRUE. !: Kriest flag INTEGER, PUBLIC, PARAMETER :: jp_pisces = 36 !: number of passive tracers INTEGER, PUBLIC, PARAMETER :: jp_pisces_2d = 13 !: additional 2d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_3d = 18 !: additional 3d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_trd = 1 !: number of sms trends for PISCES ! assign an index in trc arrays for each LOBSTER prognostic variables ! WARNING: be carefull about the order when reading the restart ! !!gm this warning should be obsolet with IOM INTEGER, PUBLIC, PARAMETER :: jpdic = 1 !: dissolved inoganic carbon concentration INTEGER, PUBLIC, PARAMETER :: jptal = 2 !: total alkalinity INTEGER, PUBLIC, PARAMETER :: jpoxy = 3 !: oxygen carbon concentration INTEGER, PUBLIC, PARAMETER :: jpcal = 4 !: calcite concentration INTEGER, PUBLIC, PARAMETER :: jppo4 = 5 !: phosphate concentration INTEGER, PUBLIC, PARAMETER :: jppoc = 6 !: small particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpsil = 7 !: silicate concentration INTEGER, PUBLIC, PARAMETER :: jpphy = 8 !: phytoplancton concentration INTEGER, PUBLIC, PARAMETER :: jpzoo = 9 !: zooplancton concentration INTEGER, PUBLIC, PARAMETER :: jpdoc = 10 !: dissolved organic carbon concentration INTEGER, PUBLIC, PARAMETER :: jpdia = 11 !: Diatoms Concentration INTEGER, PUBLIC, PARAMETER :: jpmes = 12 !: Mesozooplankton Concentration INTEGER, PUBLIC, PARAMETER :: jpdsi = 13 !: (big) Silicate Concentration INTEGER, PUBLIC, PARAMETER :: jpfer = 14 !: Iron Concentration INTEGER, PUBLIC, PARAMETER :: jpnum = 15 !: Big iron particles Concentration INTEGER, PUBLIC, PARAMETER :: jpsfe = 16 !: number of particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpdfe = 17 !: Diatoms iron Concentration INTEGER, PUBLIC, PARAMETER :: jpgsi = 18 !: Diatoms Silicate Concentration INTEGER, PUBLIC, PARAMETER :: jpnfe = 19 !: Nano iron Concentration INTEGER, PUBLIC, PARAMETER :: jpnch = 20 !: Nano Chlorophyll Concentration INTEGER, PUBLIC, PARAMETER :: jpdch = 21 !: Diatoms Chlorophyll Concentration INTEGER, PUBLIC, PARAMETER :: jpno3 = 22 !: Nitrates Concentration INTEGER, PUBLIC, PARAMETER :: jpnh4 = 23 !: Ammonium Concentration INTEGER, PUBLIC, PARAMETER :: jpdon = 24 !: dissolved organic nitrogen concentration INTEGER, PUBLIC, PARAMETER :: jpdop = 25 !: dissolved organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jppon = 26 !: small particulate organic nitrogen concentration INTEGER, PUBLIC, PARAMETER :: jppop = 27 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jpnph = 28 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jppph = 29 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jpndi = 30 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jppdi = 31 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jppic = 32 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jpnpi = 33 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jpppi = 34 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jppfe = 35 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jppch = 36 !: small particulate organic phosphorus concentration #elif defined key_pisces_quota !!--------------------------------------------------------------------- !! 'key_pisces' : standard PISCES bio-model !!--------------------------------------------------------------------- LOGICAL, PUBLIC, PARAMETER :: lk_pisces = .TRUE. !: PISCES flag INTEGER, PUBLIC, PARAMETER :: nn_p4z = 3 !: p4z flag LOGICAL, PUBLIC, PARAMETER :: lk_kriest = .FALSE. !: Kriest flag INTEGER, PUBLIC, PARAMETER :: jp_pisces = 39 !: number of PISCES passive tracers INTEGER, PUBLIC, PARAMETER :: jp_pisces_2d = 13 !: additional 2d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_3d = 11 !: additional 3d output INTEGER, PUBLIC, PARAMETER :: jp_pisces_trd = 1 !: number of sms trends for PISCES ! assign an index in trc arrays for each LOBSTER prognostic variables ! WARNING: be carefull about the order when reading the restart ! !!gm this warning should be obsolet with IOM INTEGER, PUBLIC, PARAMETER :: jpdic = 1 !: dissolved inoganic carbon concentration INTEGER, PUBLIC, PARAMETER :: jptal = 2 !: total alkalinity INTEGER, PUBLIC, PARAMETER :: jpoxy = 3 !: oxygen carbon concentration INTEGER, PUBLIC, PARAMETER :: jpcal = 4 !: calcite concentration INTEGER, PUBLIC, PARAMETER :: jppo4 = 5 !: phosphate concentration INTEGER, PUBLIC, PARAMETER :: jppoc = 6 !: small particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpsil = 7 !: silicate concentration INTEGER, PUBLIC, PARAMETER :: jpphy = 8 !: phytoplancton concentration INTEGER, PUBLIC, PARAMETER :: jpzoo = 9 !: zooplancton concentration INTEGER, PUBLIC, PARAMETER :: jpdoc = 10 !: dissolved organic carbon concentration INTEGER, PUBLIC, PARAMETER :: jpdia = 11 !: Diatoms Concentration INTEGER, PUBLIC, PARAMETER :: jpmes = 12 !: Mesozooplankton Concentration INTEGER, PUBLIC, PARAMETER :: jpdsi = 13 !: (big) Silicate Concentration INTEGER, PUBLIC, PARAMETER :: jpfer = 14 !: Iron Concentration INTEGER, PUBLIC, PARAMETER :: jpbfe = 15 !: Big iron particles Concentration INTEGER, PUBLIC, PARAMETER :: jpgoc = 16 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpsfe = 17 !: Small iron particles Concentration INTEGER, PUBLIC, PARAMETER :: jpdfe = 18 !: Diatoms iron Concentration INTEGER, PUBLIC, PARAMETER :: jpgsi = 19 !: Diatoms Silicate Concentration INTEGER, PUBLIC, PARAMETER :: jpnfe = 20 !: Nano iron Concentration INTEGER, PUBLIC, PARAMETER :: jpnch = 21 !: Nano Chlorophyll Concentration INTEGER, PUBLIC, PARAMETER :: jpdch = 22 !: Diatoms Chlorophyll Concentration INTEGER, PUBLIC, PARAMETER :: jpno3 = 23 !: Nitrates Concentration INTEGER, PUBLIC, PARAMETER :: jpnh4 = 24 !: Ammonium Concentration INTEGER, PUBLIC, PARAMETER :: jpdon = 25 !: dissolved organic nitrogen concentration INTEGER, PUBLIC, PARAMETER :: jpdop = 26 !: dissolved organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jppon = 27 !: small particulate organic nitrogen concentration INTEGER, PUBLIC, PARAMETER :: jppop = 28 !: small particulate organic phosphorus concentration INTEGER, PUBLIC, PARAMETER :: jpgon = 29 !: big particulate organic nitrogen concentration INTEGER, PUBLIC, PARAMETER :: jpgop = 30 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpnph = 31 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jppph = 32 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpndi = 33 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jppdi = 34 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jppic = 35 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpnpi = 36 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jpppi = 37 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jppfe = 38 !: big particulate organic phosphate concentration INTEGER, PUBLIC, PARAMETER :: jppch = 39 !: big particulate organic phosphate concentration #else !!--------------------------------------------------------------------- !! Default No CFC geochemical model !!--------------------------------------------------------------------- LOGICAL, PUBLIC, PARAMETER :: lk_pisces = .FALSE. !: PISCES flag LOGICAL, PUBLIC, PARAMETER :: nn_p4z = 0 !: p4z flag INTEGER, PUBLIC, PARAMETER :: jp_pisces = 0 !: No CFC tracers INTEGER, PUBLIC, PARAMETER :: jp_pisces_2d = 0 !: No CFC additional 2d output arrays INTEGER, PUBLIC, PARAMETER :: jp_pisces_3d = 0 !: No CFC additional 3d output arrays INTEGER, PUBLIC, PARAMETER :: jp_pisces_trd = 0 !: number of sms trends for PISCES #endif ! Starting/ending PISCES do-loop indices (N.B. no PISCES : jpl_pcs < jpf_pcs the do-loop are never done) INTEGER, PUBLIC, PARAMETER :: jp_pcs0 = 1 !: First index of PISCES tracers INTEGER, PUBLIC, PARAMETER :: jp_pcs1 = jp_pisces !: Last index of PISCES tracers INTEGER, PUBLIC, PARAMETER :: jp_pcs0_2d = 1 !: First index of 2D diag INTEGER, PUBLIC, PARAMETER :: jp_pcs1_2d = jp_pisces_2d !: Last index of 2D diag INTEGER, PUBLIC, PARAMETER :: jp_pcs0_3d = 1 !: First index of 3D diag INTEGER, PUBLIC, PARAMETER :: jp_pcs1_3d = jp_pisces_3d !: Last index of 3d diag INTEGER, PUBLIC, PARAMETER :: jp_pcs0_trd = 1 !: First index of bio diag INTEGER, PUBLIC, PARAMETER :: jp_pcs1_trd = jp_pisces_trd !: Last index of bio diag !!====================================================================== END MODULE par_pisces