From df0254250d4c4b562ffe033455a7693d88dc280c Mon Sep 17 00:00:00 2001 From: Michael Levy Date: Thu, 30 May 2024 07:19:20 -0600 Subject: [PATCH] Remove Qn_fixed from autotroph_settings_type After discussion with Keith L, it looks like Qn_fixed and Qn_zoo were added to the code base so the fixed N:C configuration looked more like the fixed P:C configuration... but it isn't necessary since we want to use the same fixed N:C throughout the code (as opposed to fixed P:C, which really does vary from among the different functional types even when fixed spatially / temporally) --- defaults/json/settings_cesm2.0.json | 15 ++---- defaults/json/settings_cesm2.1+cocco.json | 17 ++---- defaults/json/settings_cesm2.1.json | 15 ++---- defaults/json/settings_latest+4p2z.json | 21 +++----- defaults/json/settings_latest+cocco.json | 21 +++----- defaults/json/settings_latest.json | 14 +---- defaults/settings_cesm2.0.yaml | 13 ++--- defaults/settings_cesm2.1+cocco.yaml | 15 ++---- defaults/settings_cesm2.1.yaml | 13 ++--- defaults/settings_latest+4p2z.yaml | 19 +++---- defaults/settings_latest+cocco.yaml | 19 +++---- defaults/settings_latest.yaml | 12 +---- src/marbl_diagnostics_mod.F90 | 6 +-- src/marbl_interior_tendency_mod.F90 | 15 +++--- src/marbl_pft_mod.F90 | 6 --- src/marbl_settings_mod.F90 | 52 +++++++------------ .../settings/marbl_with_4p2z_cgs.settings | 4 -- .../settings/marbl_with_4p2z_mks.settings | 4 -- .../settings/marbl_with_spectra.settings | 43 +++++---------- 19 files changed, 100 insertions(+), 224 deletions(-) diff --git a/defaults/json/settings_cesm2.0.json b/defaults/json/settings_cesm2.0.json index b0bd956f..6fb321c1 100644 --- a/defaults/json/settings_cesm2.0.json +++ b/defaults/json/settings_cesm2.0.json @@ -73,6 +73,7 @@ "((autotroph_sname)) == \"sp\"": 0.4, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "N threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" @@ -107,22 +108,11 @@ "((autotroph_sname)) == \"sp\"": 0.8, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "PO4 threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" }, - "Qn_fixed": { - "datatype": "real", - "default_value": { - "((autotroph_sname)) == \"diat\"": "16.0/117", - "((autotroph_sname)) == \"diaz\"": "0.32*(16.0/117)", - "((autotroph_sname)) == \"sp\"": "16.0/117", - "default": "1e34" - }, - "longname": "N/C ratio when using fixed N/C ratios", - "subcategory": "10. autotrophs", - "units": "unitless" - }, "Qp_fixed": { "datatype": "real", "default_value": { @@ -1261,6 +1251,7 @@ "units": "unitless" }, "lvariable_NtoC": { + "_append_to_config_keywords": true, "datatype": "logical", "default_value": ".false.", "dependencies": "base_bio_on", diff --git a/defaults/json/settings_cesm2.1+cocco.json b/defaults/json/settings_cesm2.1+cocco.json index ed2d6aa4..5b1b6b34 100644 --- a/defaults/json/settings_cesm2.1+cocco.json +++ b/defaults/json/settings_cesm2.1+cocco.json @@ -76,6 +76,7 @@ "((autotroph_sname)) == \"sp\"": 0.4, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "N threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" @@ -112,22 +113,11 @@ "((autotroph_sname)) == \"sp\"": 0.8, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "PO4 threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" }, - "Qn_fixed": { - "datatype": "real", - "default_value": { - "((autotroph_sname)) == \"diat\"": "16.0/117", - "((autotroph_sname)) == \"diaz\"": "0.32*(16.0/117)", - "((autotroph_sname)) == \"sp\"": "16.0/117", - "default": "1e34" - }, - "longname": "N/C ratio when using fixed N/C ratios", - "subcategory": "10. autotrophs", - "units": "unitless" - }, "Qp_fixed": { "datatype": "real", "default_value": { @@ -238,6 +228,7 @@ "((autotroph_sname)) == \"sp\"": 0.011, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "Initial P/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -251,6 +242,7 @@ "((autotroph_sname)) == \"sp\"": 0.0075, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "Minimum P/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -1309,6 +1301,7 @@ "units": "unitless" }, "lvariable_NtoC": { + "_append_to_config_keywords": true, "datatype": "logical", "default_value": ".false.", "dependencies": "base_bio_on", diff --git a/defaults/json/settings_cesm2.1.json b/defaults/json/settings_cesm2.1.json index 7421a33b..daeb4abc 100644 --- a/defaults/json/settings_cesm2.1.json +++ b/defaults/json/settings_cesm2.1.json @@ -73,6 +73,7 @@ "((autotroph_sname)) == \"sp\"": 0.4, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "N threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" @@ -107,22 +108,11 @@ "((autotroph_sname)) == \"sp\"": 0.8, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "PO4 threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" }, - "Qn_fixed": { - "datatype": "real", - "default_value": { - "((autotroph_sname)) == \"diat\"": "16.0/117", - "((autotroph_sname)) == \"diaz\"": "0.32*(16.0/117)", - "((autotroph_sname)) == \"sp\"": "16.0/117", - "default": "1e34" - }, - "longname": "N/C ratio when using fixed N/C ratios", - "subcategory": "10. autotrophs", - "units": "unitless" - }, "Qp_fixed": { "datatype": "real", "default_value": { @@ -1264,6 +1254,7 @@ "units": "unitless" }, "lvariable_NtoC": { + "_append_to_config_keywords": true, "datatype": "logical", "default_value": ".false.", "dependencies": "base_bio_on", diff --git a/defaults/json/settings_latest+4p2z.json b/defaults/json/settings_latest+4p2z.json index 28a20ff2..2c01528e 100644 --- a/defaults/json/settings_latest+4p2z.json +++ b/defaults/json/settings_latest+4p2z.json @@ -76,6 +76,7 @@ "((autotroph_sname)) == \"sp\"": 0.4, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "N threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" @@ -112,23 +113,11 @@ "((autotroph_sname)) == \"sp\"": 0.8, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "PO4 threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" }, - "Qn_fixed": { - "datatype": "real", - "default_value": { - "((autotroph_sname)) == \"cocco\"": "16.0/117", - "((autotroph_sname)) == \"diat\"": "16.0/117", - "((autotroph_sname)) == \"diaz\"": "0.32*(16.0/117)", - "((autotroph_sname)) == \"sp\"": "16.0/117", - "default": "1e34" - }, - "longname": "N/C ratio when using fixed N/C ratios", - "subcategory": "10. autotrophs", - "units": "unitless" - }, "Qp_fixed": { "datatype": "real", "default_value": { @@ -240,6 +229,7 @@ "((autotroph_sname)) == \"sp\"": 0.17, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "Initial N/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -253,6 +243,7 @@ "((autotroph_sname)) == \"sp\"": 0.11, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "Minimum N/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -266,6 +257,7 @@ "((autotroph_sname)) == \"sp\"": 0.011, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "Initial P/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -279,6 +271,7 @@ "((autotroph_sname)) == \"sp\"": 0.0075, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "Minimum P/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -1398,6 +1391,7 @@ "units": "unitless" }, "lvariable_NtoC": { + "_append_to_config_keywords": true, "datatype": "logical", "default_value": ".true.", "dependencies": "base_bio_on", @@ -1406,6 +1400,7 @@ "units": "unitless" }, "lvariable_PtoC": { + "_append_to_config_keywords": true, "datatype": "logical", "default_value": ".true.", "dependencies": "base_bio_on", diff --git a/defaults/json/settings_latest+cocco.json b/defaults/json/settings_latest+cocco.json index 0de120b7..4279ec17 100644 --- a/defaults/json/settings_latest+cocco.json +++ b/defaults/json/settings_latest+cocco.json @@ -76,6 +76,7 @@ "((autotroph_sname)) == \"sp\"": 0.4, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "N threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" @@ -112,23 +113,11 @@ "((autotroph_sname)) == \"sp\"": 0.8, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "PO4 threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" }, - "Qn_fixed": { - "datatype": "real", - "default_value": { - "((autotroph_sname)) == \"cocco\"": "16.0/117", - "((autotroph_sname)) == \"diat\"": "16.0/117", - "((autotroph_sname)) == \"diaz\"": "0.32*(16.0/117)", - "((autotroph_sname)) == \"sp\"": "16.0/117", - "default": "1e34" - }, - "longname": "N/C ratio when using fixed N/C ratios", - "subcategory": "10. autotrophs", - "units": "unitless" - }, "Qp_fixed": { "datatype": "real", "default_value": { @@ -240,6 +229,7 @@ "((autotroph_sname)) == \"sp\"": 0.17, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "Initial N/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -253,6 +243,7 @@ "((autotroph_sname)) == \"sp\"": 0.11, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "Minimum N/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -266,6 +257,7 @@ "((autotroph_sname)) == \"sp\"": 0.011, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "Initial P/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -279,6 +271,7 @@ "((autotroph_sname)) == \"sp\"": 0.0075, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "Minimum P/C ratio for growth", "subcategory": "10. autotrophs", "units": "unitless" @@ -1345,6 +1338,7 @@ "units": "unitless" }, "lvariable_NtoC": { + "_append_to_config_keywords": true, "datatype": "logical", "default_value": ".true.", "dependencies": "base_bio_on", @@ -1353,6 +1347,7 @@ "units": "unitless" }, "lvariable_PtoC": { + "_append_to_config_keywords": true, "datatype": "logical", "default_value": ".true.", "dependencies": "base_bio_on", diff --git a/defaults/json/settings_latest.json b/defaults/json/settings_latest.json index 945c081a..9dd65c6b 100644 --- a/defaults/json/settings_latest.json +++ b/defaults/json/settings_latest.json @@ -76,6 +76,7 @@ "((autotroph_sname)) == \"sp\"": 0.4, "default": "1e34" }, + "dependencies": "lvariable_NtoC", "longname": "N threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" @@ -110,22 +111,11 @@ "((autotroph_sname)) == \"sp\"": 0.8, "default": "1e34" }, + "dependencies": "lvariable_PtoC", "longname": "PO4 threshold in uptake ratio computations", "subcategory": "10. autotrophs", "units": "unitless" }, - "Qn_fixed": { - "datatype": "real", - "default_value": { - "((autotroph_sname)) == \"diat\"": "16.0/117", - "((autotroph_sname)) == \"diaz\"": "0.32*(16.0/117)", - "((autotroph_sname)) == \"sp\"": "16.0/117", - "default": "1e34" - }, - "longname": "N/C ratio when using fixed N/C ratios", - "subcategory": "10. autotrophs", - "units": "unitless" - }, "Qp_fixed": { "datatype": "real", "default_value": { diff --git a/defaults/settings_cesm2.0.yaml b/defaults/settings_cesm2.0.yaml index 0d6045fe..98274fee 100644 --- a/defaults/settings_cesm2.0.yaml +++ b/defaults/settings_cesm2.0.yaml @@ -363,6 +363,7 @@ general_parms : units : unitless datatype : logical default_value : .false. + _append_to_config_keywords : true ladjust_bury_coeff : dependencies : base_bio_on longname : Control if bury coefficients are adjusted (rather than constant) @@ -985,16 +986,6 @@ PFT_derived_types : ((autotroph_sname)) == "sp" : 1.0/117 ((autotroph_sname)) == "diat" : 1.0/117 ((autotroph_sname)) == "diaz" : 0.32*(1.0/117) - Qn_fixed : - longname : N/C ratio when using fixed N/C ratios - subcategory : 10. autotrophs - units : unitless - datatype : real - default_value : - default : 1e34 - ((autotroph_sname)) == "sp" : 16.0/117 - ((autotroph_sname)) == "diat" : 16.0/117 - ((autotroph_sname)) == "diaz" : 0.32*(16.0/117) SiOpt : longname : Si threshold in uptake ratio computations subcategory : 10. autotrophs @@ -1058,6 +1049,7 @@ PFT_derived_types : ((autotroph_sname)) == "diat" : 8.3e-3 ((autotroph_sname)) == "diaz" : 3.7e-3 POpt : + dependencies : lvariable_PtoC longname : PO4 threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless @@ -1068,6 +1060,7 @@ PFT_derived_types : ((autotroph_sname)) == "diat" : 0.8 ((autotroph_sname)) == "diaz" : 0.8 NOpt : + dependencies : lvariable_NtoC longname : N threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless diff --git a/defaults/settings_cesm2.1+cocco.yaml b/defaults/settings_cesm2.1+cocco.yaml index 585cdd42..e1d5a81c 100644 --- a/defaults/settings_cesm2.1+cocco.yaml +++ b/defaults/settings_cesm2.1+cocco.yaml @@ -365,6 +365,7 @@ general_parms : units : unitless datatype : logical default_value : .false. + _append_to_config_keywords : true ladjust_bury_coeff : dependencies : base_bio_on longname : Control if bury coefficients are adjusted (rather than constant) @@ -1002,16 +1003,6 @@ PFT_derived_types : ((autotroph_sname)) == "diat" : 1.0/117 ((autotroph_sname)) == "diaz" : 0.32*(1.0/117) ((autotroph_sname)) == "cocco" : 1.0/117 - Qn_fixed : - longname : N/C ratio when using fixed N/C ratios - subcategory : 10. autotrophs - units : unitless - datatype : real - default_value : - default : 1e34 - ((autotroph_sname)) == "sp" : 16.0/117 - ((autotroph_sname)) == "diat" : 16.0/117 - ((autotroph_sname)) == "diaz" : 0.32*(16.0/117) SiOpt : longname : Si threshold in uptake ratio computations subcategory : 10. autotrophs @@ -1056,6 +1047,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 2.0e-3 ((autotroph_sname)) == "cocco" : 1.8e-3 gQp_max : + dependencies : lvariable_PtoC longname : Initial P/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1067,6 +1059,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 8.3e-3 ((autotroph_sname)) == "cocco" : 1.1e-2 gQp_min : + dependencies : lvariable_PtoC longname : Minimum P/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1078,6 +1071,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 3.7e-3 ((autotroph_sname)) == "cocco" : 8.3e-3 POpt : + dependencies : lvariable_PtoC longname : PO4 threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless @@ -1089,6 +1083,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 0.8 ((autotroph_sname)) == "cocco" : 0.8 NOpt : + dependencies : lvariable_NtoC longname : N threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless diff --git a/defaults/settings_cesm2.1.yaml b/defaults/settings_cesm2.1.yaml index 86233cad..3a8e76b2 100644 --- a/defaults/settings_cesm2.1.yaml +++ b/defaults/settings_cesm2.1.yaml @@ -363,6 +363,7 @@ general_parms : units : unitless datatype : logical default_value : .false. + _append_to_config_keywords : true ladjust_bury_coeff : dependencies : base_bio_on longname : Control if bury coefficients are adjusted (rather than constant) @@ -987,16 +988,6 @@ PFT_derived_types : ((autotroph_sname)) == "sp" : 1.0/117 ((autotroph_sname)) == "diat" : 1.0/117 ((autotroph_sname)) == "diaz" : 0.32*(1.0/117) - Qn_fixed : - longname : N/C ratio when using fixed N/C ratios - subcategory : 10. autotrophs - units : unitless - datatype : real - default_value : - default : 1e34 - ((autotroph_sname)) == "sp" : 16.0/117 - ((autotroph_sname)) == "diat" : 16.0/117 - ((autotroph_sname)) == "diaz" : 0.32*(16.0/117) SiOpt : longname : Si threshold in uptake ratio computations subcategory : 10. autotrophs @@ -1060,6 +1051,7 @@ PFT_derived_types : ((autotroph_sname)) == "diat" : 8.3e-3 ((autotroph_sname)) == "diaz" : 3.7e-3 POpt : + dependencies : lvariable_PtoC longname : PO4 threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless @@ -1070,6 +1062,7 @@ PFT_derived_types : ((autotroph_sname)) == "diat" : 0.8 ((autotroph_sname)) == "diaz" : 0.8 NOpt : + dependencies : lvariable_NtoC longname : N threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless diff --git a/defaults/settings_latest+4p2z.yaml b/defaults/settings_latest+4p2z.yaml index 78b2b371..3ea01c35 100644 --- a/defaults/settings_latest+4p2z.yaml +++ b/defaults/settings_latest+4p2z.yaml @@ -379,6 +379,7 @@ general_parms : units : unitless datatype : logical default_value : .true. + _append_to_config_keywords : true lvariable_NtoC : dependencies : base_bio_on longname : Control if NtoC ratios in autotrophs vary @@ -386,6 +387,7 @@ general_parms : units : unitless datatype : logical default_value : .true. + _append_to_config_keywords : true ladjust_bury_coeff : dependencies : base_bio_on longname : Control if bury coefficients are adjusted (rather than constant) @@ -1023,17 +1025,6 @@ PFT_derived_types : ((autotroph_sname)) == "diat" : 1.0/117 ((autotroph_sname)) == "diaz" : 0.32*(1.0/117) ((autotroph_sname)) == "cocco" : 1.0/117 - Qn_fixed : - longname : N/C ratio when using fixed N/C ratios - subcategory : 10. autotrophs - units : unitless - datatype : real - default_value : - default : 1e34 - ((autotroph_sname)) == "sp" : 16.0/117 - ((autotroph_sname)) == "diat" : 16.0/117 - ((autotroph_sname)) == "diaz" : 0.32*(16.0/117) - ((autotroph_sname)) == "cocco" : 16.0/117 SiOpt : longname : Si threshold in uptake ratio computations subcategory : 10. autotrophs @@ -1079,6 +1070,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 2.0e-3 ((autotroph_sname)) == "cocco" : 1.8e-3 gQp_max : + dependencies : lvariable_PtoC longname : Initial P/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1090,6 +1082,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 8.3e-3 ((autotroph_sname)) == "cocco" : 1.1e-2 gQp_min : + dependencies : lvariable_PtoC longname : Minimum P/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1101,6 +1094,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 3.7e-3 ((autotroph_sname)) == "cocco" : 8.3e-3 POpt : + dependencies : lvariable_PtoC longname : PO4 threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless @@ -1112,6 +1106,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 0.8 ((autotroph_sname)) == "cocco" : 0.8 gQn_max : + dependencies : lvariable_NtoC longname : Initial N/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1123,6 +1118,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 1.7e-1 ((autotroph_sname)) == "cocco" : 1.7e-1 gQn_min : + dependencies : lvariable_NtoC longname : Minimum N/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1134,6 +1130,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 1.4e-1 ((autotroph_sname)) == "cocco" : 1.1e-1 NOpt : + dependencies : lvariable_NtoC longname : N threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless diff --git a/defaults/settings_latest+cocco.yaml b/defaults/settings_latest+cocco.yaml index c88f0acf..2638f275 100644 --- a/defaults/settings_latest+cocco.yaml +++ b/defaults/settings_latest+cocco.yaml @@ -363,6 +363,7 @@ general_parms : units : unitless datatype : logical default_value : .true. + _append_to_config_keywords : true lvariable_NtoC : dependencies : base_bio_on longname : Control if NtoC ratios in autotrophs vary @@ -370,6 +371,7 @@ general_parms : units : unitless datatype : logical default_value : .true. + _append_to_config_keywords : true ladjust_bury_coeff : dependencies : base_bio_on longname : Control if bury coefficients are adjusted (rather than constant) @@ -1007,17 +1009,6 @@ PFT_derived_types : ((autotroph_sname)) == "diat" : 1.0/117 ((autotroph_sname)) == "diaz" : 0.32*(1.0/117) ((autotroph_sname)) == "cocco" : 1.0/117 - Qn_fixed : - longname : N/C ratio when using fixed N/C ratios - subcategory : 10. autotrophs - units : unitless - datatype : real - default_value : - default : 1e34 - ((autotroph_sname)) == "sp" : 16.0/117 - ((autotroph_sname)) == "diat" : 16.0/117 - ((autotroph_sname)) == "diaz" : 0.32*(16.0/117) - ((autotroph_sname)) == "cocco" : 16.0/117 SiOpt : longname : Si threshold in uptake ratio computations subcategory : 10. autotrophs @@ -1063,6 +1054,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 2.0e-3 ((autotroph_sname)) == "cocco" : 1.8e-3 gQp_max : + dependencies : lvariable_PtoC longname : Initial P/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1074,6 +1066,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 8.3e-3 ((autotroph_sname)) == "cocco" : 1.1e-2 gQp_min : + dependencies : lvariable_PtoC longname : Minimum P/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1085,6 +1078,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 3.7e-3 ((autotroph_sname)) == "cocco" : 8.3e-3 POpt : + dependencies : lvariable_PtoC longname : PO4 threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless @@ -1096,6 +1090,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 0.8 ((autotroph_sname)) == "cocco" : 0.8 gQn_max : + dependencies : lvariable_NtoC longname : Initial N/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1107,6 +1102,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 1.7e-1 ((autotroph_sname)) == "cocco" : 1.7e-1 gQn_min : + dependencies : lvariable_NtoC longname : Minimum N/C ratio for growth subcategory : 10. autotrophs units : unitless @@ -1118,6 +1114,7 @@ PFT_derived_types : ((autotroph_sname)) == "diaz" : 1.4e-1 ((autotroph_sname)) == "cocco" : 1.1e-1 NOpt : + dependencies : lvariable_NtoC longname : N threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless diff --git a/defaults/settings_latest.yaml b/defaults/settings_latest.yaml index 252287f3..a21df3fe 100644 --- a/defaults/settings_latest.yaml +++ b/defaults/settings_latest.yaml @@ -999,16 +999,6 @@ PFT_derived_types : ((autotroph_sname)) == "sp" : 1.0/117 ((autotroph_sname)) == "diat" : 1.0/117 ((autotroph_sname)) == "diaz" : 0.32*(1.0/117) - Qn_fixed : - longname : N/C ratio when using fixed N/C ratios - subcategory : 10. autotrophs - units : unitless - datatype : real - default_value : - default : 1e34 - ((autotroph_sname)) == "sp" : 16.0/117 - ((autotroph_sname)) == "diat" : 16.0/117 - ((autotroph_sname)) == "diaz" : 0.32*(16.0/117) SiOpt : longname : Si threshold in uptake ratio computations subcategory : 10. autotrophs @@ -1072,6 +1062,7 @@ PFT_derived_types : ((autotroph_sname)) == "diat" : 8.3e-3 ((autotroph_sname)) == "diaz" : 3.7e-3 POpt : + dependencies : lvariable_PtoC longname : PO4 threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless @@ -1104,6 +1095,7 @@ PFT_derived_types : ((autotroph_sname)) == "diat" : 1.1e-1 ((autotroph_sname)) == "diaz" : 1.4e-1 NOpt : + dependencies : lvariable_NtoC longname : N threshold in uptake ratio computations subcategory : 10. autotrophs units : unitless diff --git a/src/marbl_diagnostics_mod.F90 b/src/marbl_diagnostics_mod.F90 index 2d305987..f56ee64b 100644 --- a/src/marbl_diagnostics_mod.F90 +++ b/src/marbl_diagnostics_mod.F90 @@ -4381,7 +4381,7 @@ subroutine store_diagnostics_nitrogen_fluxes(marbl_domain, PON, & denitrif, sed_denitrif, autotroph_derived_terms, interior_tendencies, & marbl_tracer_indices, unit_system, marbl_diags, marbl_status_log) - use marbl_pft_mod, only : Qn_zoo + use marbl_settings_mod, only : Q use marbl_settings_mod, only : lvariable_NtoC use marbl_settings_mod, only : Jint_Ntot_thres @@ -4421,7 +4421,7 @@ subroutine store_diagnostics_nitrogen_fluxes(marbl_domain, PON, & ! vertical integrals work = interior_tendencies(no3_ind,:) + interior_tendencies(nh4_ind,:) + & interior_tendencies(don_ind,:) + interior_tendencies(donr_ind,:) + & - Qn_zoo * sum(interior_tendencies(marbl_tracer_indices%zoo_inds(:)%C_ind,:), dim=1) + & + Q * sum(interior_tendencies(marbl_tracer_indices%zoo_inds(:)%C_ind,:), dim=1) + & denitrif(:) + sed_denitrif(:) if (lvariable_NtoC) then @@ -4472,7 +4472,7 @@ subroutine store_diagnostics_nitrogen_fluxes(marbl_domain, PON, & call marbl_status_log%log_error(log_message, subname, ElemInd=1) ! zooN call marbl_diagnostics_share_compute_vertical_integrals( & - Qn_zoo * sum(interior_tendencies(marbl_tracer_indices%zoo_inds(:)%C_ind,:), dim=1), & + Q * sum(interior_tendencies(marbl_tracer_indices%zoo_inds(:)%C_ind,:), dim=1), & delta_z, kmt, unit_system, full_depth_integral=work(1)) write(log_message,"(A,E11.3e3)") 'integral(zooN) = ', work(1) call marbl_status_log%log_error(log_message, subname, ElemInd=1) diff --git a/src/marbl_interior_tendency_mod.F90 b/src/marbl_interior_tendency_mod.F90 index abe8a414..0f7cc017 100644 --- a/src/marbl_interior_tendency_mod.F90 +++ b/src/marbl_interior_tendency_mod.F90 @@ -84,7 +84,6 @@ module marbl_interior_tendency_mod use marbl_settings_mod, only : unit_system_type use marbl_pft_mod, only : Qp_zoo - use marbl_pft_mod, only : Qn_zoo implicit none private @@ -836,7 +835,7 @@ subroutine setup_local_tracers(column_kmt, marbl_tracer_indices, tracers, & if (n > 0) then autotroph_local%N(auto_ind,:) = tracer_local(n,:) else - autotroph_local%N(auto_ind,:) = autotroph_settings(auto_ind)%Qn_fixed * autotroph_local%C(auto_ind,:) + autotroph_local%N(auto_ind,:) = Q * autotroph_local%C(auto_ind,:) end if n = marbl_tracer_indices%auto_inds(auto_ind)%Fe_ind @@ -1305,8 +1304,8 @@ subroutine compute_autotroph_elemental_ratios(km, autotroph_local, marbl_tracer_ max((gQn(auto_ind,:) * WORK1/autotroph_settings(auto_ind)%NOpt), autotroph_settings(auto_ind)%gQn_min) endwhere else - Qn(auto_ind,:) = autotroph_settings(auto_ind)%Qn_fixed - gQn(auto_ind,:) = autotroph_settings(auto_ind)%Qn_fixed + Qn(auto_ind,:) = Q + gQn(auto_ind,:) = Q endif !------------------------------------------------------------------------ @@ -2292,7 +2291,7 @@ subroutine compute_routing(km, zooplankton_derived_terms, autotroph_derived_term * Qn(auto_ind,k) remaining_N = (auto_graze(auto_ind,k) + auto_loss(auto_ind,k) + auto_agg(auto_ind,k)) * Qn(auto_ind,k) & - - auto_graze_zootot(auto_ind,k) * Qn_zoo - remaining_N_pon(auto_ind,k) + - auto_graze_zootot(auto_ind,k) * Q - remaining_N_pon(auto_ind,k) !----------------------------------------------------------------------- ! reduce sinking pon if remaining_N is negative @@ -2398,7 +2397,7 @@ subroutine compute_dissolved_organic_matter (km, marbl_tracer_indices, & DOC_prod(:) = sum(zoo_loss_doc(:,:), dim=1) + sum(auto_loss_doc(:,:), dim=1) & + sum(auto_graze_doc(:,:), dim=1) + sum(zoo_graze_doc(:,:), dim=1) - DON_prod(:) = Qn_zoo * (sum(zoo_loss_doc(:,:), dim=1) + sum(zoo_graze_doc(:,:), dim=1)) & + DON_prod(:) = Q * (sum(zoo_loss_doc(:,:), dim=1) + sum(zoo_graze_doc(:,:), dim=1)) & + sum(remaining_N_don(:,:), dim=1) DOP_prod(:) = Qp_zoo * (sum(zoo_loss_doc(:,:), dim=1) + sum(zoo_graze_doc(:,:), dim=1)) & + sum(remaining_P_dop(:,:), dim=1) @@ -2776,7 +2775,7 @@ subroutine compute_large_detritus_prod(k, domain, marbl_tracer_indices, & ! large detritus N !----------------------------------------------------------------------- - PON%prod(k) = Qn_zoo * (sum(zoo_loss_poc(:)) + sum(zoo_graze_poc(:))) + sum(remaining_N_pon(:)) + PON%prod(k) = Q * (sum(zoo_loss_poc(:)) + sum(zoo_graze_poc(:))) + sum(remaining_N_pon(:)) if (PON%prod(k) < c0) then DON_loss_N_bal = -PON%prod(k) @@ -3887,7 +3886,7 @@ subroutine compute_local_tendencies(km, marbl_tracer_indices, autotroph_derived_ interior_tendencies(nh4_ind,k) = DON_remin(k) + DONr_remin(k) - sum(NH4_V(:,k)) - nitrif(k) & + ((c1 - PONremin_refract) * PON_remin(k)) + sum(remaining_N_din(:,k)) & - + Qn_zoo * (sum(zoo_loss_dic(:,k)) + sum(zoo_graze_dic(:,k))) + + Q * (sum(zoo_loss_dic(:,k)) + sum(zoo_graze_dic(:,k))) do auto_ind = 1, autotroph_cnt if (autotroph_settings(auto_ind)%Nfixer) then diff --git a/src/marbl_pft_mod.F90 b/src/marbl_pft_mod.F90 index 6b5c3582..71058360 100644 --- a/src/marbl_pft_mod.F90 +++ b/src/marbl_pft_mod.F90 @@ -29,7 +29,6 @@ module marbl_pft_mod real(r8) :: kFe, kCO2, kPO4, kDOP, kNO3, kNH4, kSiO3 ! nutrient uptake half-sat constants real(r8) :: Qp_fixed ! P/C ratio for fixed P/C ratios - real(r8) :: Qn_fixed ! N/C ratio for fixed N/C ratios real(r8) :: gQfe_max, gQfe_min ! initial and minimum Fe/C ratio for growth real(r8) :: gQp_max, gQp_min ! initial and minimum P/C ratio for growth real(r8) :: gQn_max, gQn_min ! initial and minimum N/C ratio for growth @@ -101,7 +100,6 @@ module marbl_pft_mod ! Public parameters real(r8), public, parameter :: Qp_zoo = c1 / 117.0_r8 ! P/C ratio (mmol/mmol) zoo - real(r8), public, parameter :: Qn_zoo = 16.0_r8 / 117.0_r8 ! N/C ratio (mmol/mmol) zoo ! grazing functions integer(int_kind), public, parameter :: grz_fnc_michaelis_menten = 1 @@ -138,7 +136,6 @@ subroutine autotroph_set_to_default(self, autotroph_id, marbl_status_log) self%kNH4 = 0.01_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%kSiO3 = 0.0_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%Qp_fixed = Qp_zoo ! only used for lvariable_PtoC=.false. - self%Qn_fixed = Qn_zoo ! only used for lvariable_NtoC=.false. self%SiOpt = 0.0_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%gQfe_max = 30.0e-6_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%gQfe_min = 2.5e-6_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod @@ -179,7 +176,6 @@ subroutine autotroph_set_to_default(self, autotroph_id, marbl_status_log) self%kNH4 = 0.05_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%kSiO3 = 0.7_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%Qp_fixed = Qp_zoo ! only used for lvariable_PtoC=.false. - self%Qn_fixed = Qn_zoo ! only used for lvariable_NtoC=.false. self%SiOpt = 10.0_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%gQfe_max = 30.0e-6_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%gQfe_min = 2.5e-6_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod @@ -219,7 +215,6 @@ subroutine autotroph_set_to_default(self, autotroph_id, marbl_status_log) self%kNH4 = 0.2_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%kSiO3 = 0.0_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%Qp_fixed = 0.32_r8 * Qp_zoo ! only used for lvariable_PtoC=.false. - self%Qn_fixed = Qn_zoo ! only used for lvariable_ntoC=.false. self%SiOpt = 0.0_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%gQfe_max = 60.0e-6_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod self%gQfe_min = 2.5e-6_r8 ! CESM USERS - DO NOT CHANGE HERE! POP calls put_setting() for this var, see CESM NOTE in marbl_settings_mod @@ -259,7 +254,6 @@ subroutine autotroph_set_to_default(self, autotroph_id, marbl_status_log) self%kNH4 = UnsetValue self%kSiO3 = UnsetValue self%Qp_fixed = UnsetValue - self%Qn_fixed = UnsetValue self%SiOpt = UnsetValue self%gQfe_max = UnsetValue self%gQfe_min = UnsetValue diff --git a/src/marbl_settings_mod.F90 b/src/marbl_settings_mod.F90 index d9445ce3..141f5c62 100644 --- a/src/marbl_settings_mod.F90 +++ b/src/marbl_settings_mod.F90 @@ -1608,6 +1608,16 @@ subroutine marbl_settings_define_PFT_derived_types(this, marbl_status_log) marbl_status_log, rptr=rptr, & nondefault_required=(PFT_defaults .eq. 'user-specified')) call check_and_log_add_var_error(marbl_status_log, sname, subname, labort_marbl_loc) + + write(sname, "(2A)") trim(prefix), 'POpt' + lname = 'PO4 threshold in uptake ratio computations' + units = 'nM' + datatype = 'real' + rptr => autotroph_settings(n)%POpt + call this%add_var(sname, lname, units, datatype, category, & + marbl_status_log, rptr=rptr, & + nondefault_required=(PFT_defaults .eq. 'user-specified')) + call check_and_log_add_var_error(marbl_status_log, sname, subname, labort_marbl_loc) endif ! This is only used when lvariable_PtoC = .false., but settings_file_class always includes it @@ -1622,16 +1632,6 @@ subroutine marbl_settings_define_PFT_derived_types(this, marbl_status_log) nondefault_required=(PFT_defaults .eq. 'user-specified')) call check_and_log_add_var_error(marbl_status_log, sname, subname, labort_marbl_loc) - write(sname, "(2A)") trim(prefix), 'POpt' - lname = 'PO4 threshold in uptake ratio computations' - units = 'nM' - datatype = 'real' - rptr => autotroph_settings(n)%POpt - call this%add_var(sname, lname, units, datatype, category, & - marbl_status_log, rptr=rptr, & - nondefault_required=(PFT_defaults .eq. 'user-specified')) - call check_and_log_add_var_error(marbl_status_log, sname, subname, labort_marbl_loc) - if (lvariable_NtoC) then write(sname, "(2A)") trim(prefix), 'gQn_max' lname = 'initial N/C ratio for growth' @@ -1652,29 +1652,17 @@ subroutine marbl_settings_define_PFT_derived_types(this, marbl_status_log) marbl_status_log, rptr=rptr, & nondefault_required=(PFT_defaults .eq. 'user-specified')) call check_and_log_add_var_error(marbl_status_log, sname, subname, labort_marbl_loc) - endif - - ! This is only used when lvariable_NtoC = .false., but settings_file_class always includes it - ! in the setting file because it doesn't (yet) have logic to check for false logical vars - write(sname, "(2A)") trim(prefix), 'Qn_fixed' - lname = 'P/C ratio when using fixed N/C ratios' - units = 'unitless' - datatype = 'real' - rptr => autotroph_settings(n)%Qn_fixed - call this%add_var(sname, lname, units, datatype, category, & - marbl_status_log, rptr=rptr, & - nondefault_required=(PFT_defaults .eq. 'user-specified')) - call check_and_log_add_var_error(marbl_status_log, sname, subname, labort_marbl_loc) - write(sname, "(2A)") trim(prefix), 'NOpt' - lname = 'N threshold in uptake ratio computations' - units = 'nM' - datatype = 'real' - rptr => autotroph_settings(n)%NOpt - call this%add_var(sname, lname, units, datatype, category, & - marbl_status_log, rptr=rptr, & - nondefault_required=(PFT_defaults .eq. 'user-specified')) - call check_and_log_add_var_error(marbl_status_log, sname, subname, labort_marbl_loc) + write(sname, "(2A)") trim(prefix), 'NOpt' + lname = 'N threshold in uptake ratio computations' + units = 'nM' + datatype = 'real' + rptr => autotroph_settings(n)%NOpt + call this%add_var(sname, lname, units, datatype, category, & + marbl_status_log, rptr=rptr, & + nondefault_required=(PFT_defaults .eq. 'user-specified')) + call check_and_log_add_var_error(marbl_status_log, sname, subname, labort_marbl_loc) + endif write(sname, "(2A)") trim(prefix), 'alphaPI_per_day' lname = 'Initial slope of P_I curve (GD98)' diff --git a/tests/input_files/settings/marbl_with_4p2z_cgs.settings b/tests/input_files/settings/marbl_with_4p2z_cgs.settings index 3d30da6b..39bfeef5 100644 --- a/tests/input_files/settings/marbl_with_4p2z_cgs.settings +++ b/tests/input_files/settings/marbl_with_4p2z_cgs.settings @@ -98,7 +98,6 @@ autotroph_settings(1)%NOpt = 0.4 autotroph_settings(1)%Nfixer = .false. autotroph_settings(1)%PCref_per_day = 4.8 autotroph_settings(1)%POpt = 0.8 -autotroph_settings(1)%Qn_fixed = 1.3675213675213677e-01 autotroph_settings(1)%Qp_fixed = 8.5470085470085479e-03 autotroph_settings(1)%SiOpt = 0.0 autotroph_settings(1)%agg_rate_max = 0.5 @@ -137,7 +136,6 @@ autotroph_settings(2)%NOpt = 0.4 autotroph_settings(2)%Nfixer = .false. autotroph_settings(2)%PCref_per_day = 5.3 autotroph_settings(2)%POpt = 0.8 -autotroph_settings(2)%Qn_fixed = 1.3675213675213677e-01 autotroph_settings(2)%Qp_fixed = 8.5470085470085479e-03 autotroph_settings(2)%SiOpt = 10.0 autotroph_settings(2)%agg_rate_max = 0.5 @@ -176,7 +174,6 @@ autotroph_settings(3)%NOpt = 0.4 autotroph_settings(3)%Nfixer = .true. autotroph_settings(3)%PCref_per_day = 1.6 autotroph_settings(3)%POpt = 0.8 -autotroph_settings(3)%Qn_fixed = 4.3760683760683768e-02 autotroph_settings(3)%Qp_fixed = 2.7350427350427355e-03 autotroph_settings(3)%SiOpt = 0.0 autotroph_settings(3)%agg_rate_max = 0.5 @@ -215,7 +212,6 @@ autotroph_settings(4)%NOpt = 0.4 autotroph_settings(4)%Nfixer = .false. autotroph_settings(4)%PCref_per_day = 4.7 autotroph_settings(4)%POpt = 0.8 -autotroph_settings(4)%Qn_fixed = 1.3675213675213677e-01 autotroph_settings(4)%Qp_fixed = 8.5470085470085479e-03 autotroph_settings(4)%SiOpt = 0.0 autotroph_settings(4)%agg_rate_max = 0.5 diff --git a/tests/input_files/settings/marbl_with_4p2z_mks.settings b/tests/input_files/settings/marbl_with_4p2z_mks.settings index 70a9d05e..38560d75 100644 --- a/tests/input_files/settings/marbl_with_4p2z_mks.settings +++ b/tests/input_files/settings/marbl_with_4p2z_mks.settings @@ -98,7 +98,6 @@ autotroph_settings(1)%NOpt = 0.4 autotroph_settings(1)%Nfixer = .false. autotroph_settings(1)%PCref_per_day = 4.8 autotroph_settings(1)%POpt = 0.8 -autotroph_settings(1)%Qn_fixed = 1.3675213675213677e-01 autotroph_settings(1)%Qp_fixed = 8.5470085470085479e-03 autotroph_settings(1)%SiOpt = 0.0 autotroph_settings(1)%agg_rate_max = 0.5 @@ -137,7 +136,6 @@ autotroph_settings(2)%NOpt = 0.4 autotroph_settings(2)%Nfixer = .false. autotroph_settings(2)%PCref_per_day = 5.3 autotroph_settings(2)%POpt = 0.8 -autotroph_settings(2)%Qn_fixed = 1.3675213675213677e-01 autotroph_settings(2)%Qp_fixed = 8.5470085470085479e-03 autotroph_settings(2)%SiOpt = 10.0 autotroph_settings(2)%agg_rate_max = 0.5 @@ -176,7 +174,6 @@ autotroph_settings(3)%NOpt = 0.4 autotroph_settings(3)%Nfixer = .true. autotroph_settings(3)%PCref_per_day = 1.6 autotroph_settings(3)%POpt = 0.8 -autotroph_settings(3)%Qn_fixed = 4.3760683760683768e-02 autotroph_settings(3)%Qp_fixed = 2.7350427350427355e-03 autotroph_settings(3)%SiOpt = 0.0 autotroph_settings(3)%agg_rate_max = 0.5 @@ -215,7 +212,6 @@ autotroph_settings(4)%NOpt = 0.4 autotroph_settings(4)%Nfixer = .false. autotroph_settings(4)%PCref_per_day = 4.7 autotroph_settings(4)%POpt = 0.8 -autotroph_settings(4)%Qn_fixed = 1.3675213675213677e-01 autotroph_settings(4)%Qp_fixed = 8.5470085470085479e-03 autotroph_settings(4)%SiOpt = 0.0 autotroph_settings(4)%agg_rate_max = 0.5 diff --git a/tests/input_files/settings/marbl_with_spectra.settings b/tests/input_files/settings/marbl_with_spectra.settings index 497329c7..1db34aad 100644 --- a/tests/input_files/settings/marbl_with_spectra.settings +++ b/tests/input_files/settings/marbl_with_spectra.settings @@ -39,10 +39,8 @@ autotroph_settings(1)%agg_rate_min = 0.01 autotroph_settings(1)%loss_poc = 0 autotroph_settings(1)%temp_func_form_opt = 'arrhenius' autotroph_settings(1)%Ea = 0.32 -autotroph_settings(1)%POpt = 0.8 -autotroph_settings(1)%NOpt = 0.4 autotroph_settings(1)%SiOpt = 0.0 -autotroph_settings(1)%FeOpt = 0.002 +autotroph_settings(1)%FeOpt = 3.81055060669279e-04 autotroph_settings(2)%sname = 'pp' autotroph_settings(2)%lname = 'Picoplankton' @@ -74,10 +72,8 @@ autotroph_settings(2)%agg_rate_min = 0.01 autotroph_settings(2)%loss_poc = 0 autotroph_settings(2)%temp_func_form_opt = 'arrhenius' autotroph_settings(2)%Ea = 0.42 -autotroph_settings(2)%POpt = 0.8 -autotroph_settings(2)%NOpt = 0.4 autotroph_settings(2)%SiOpt = 0.0 -autotroph_settings(2)%FeOpt = 0.002 +autotroph_settings(2)%FeOpt = 4.45503209441209e-05 autotroph_settings(3)%sname = 'mp1' autotroph_settings(3)%lname = 'Mixed Phytoplankton 1' @@ -109,10 +105,8 @@ autotroph_settings(3)%agg_rate_min = 0.01 autotroph_settings(3)%loss_poc = 0 autotroph_settings(3)%temp_func_form_opt = 'arrhenius' autotroph_settings(3)%Ea = 0.32 -autotroph_settings(3)%POpt = 0.8 -autotroph_settings(3)%NOpt = 0.4 autotroph_settings(3)%SiOpt = 0.0 -autotroph_settings(3)%FeOpt = 0.002 +autotroph_settings(3)%FeOpt = 1.42922576613112e-04 autotroph_settings(4)%sname = 'mp2' autotroph_settings(4)%lname = 'Mixed Phytoplankton 2' @@ -144,10 +138,8 @@ autotroph_settings(4)%agg_rate_min = 0.01 autotroph_settings(4)%loss_poc = 0 autotroph_settings(4)%temp_func_form_opt = 'arrhenius' autotroph_settings(4)%Ea = 0.32 -autotroph_settings(4)%POpt = 0.8 -autotroph_settings(4)%NOpt = 0.4 autotroph_settings(4)%SiOpt = 0.0 -autotroph_settings(4)%FeOpt = 0.002 +autotroph_settings(4)%FeOpt = 4.58512138023701e-04 autotroph_settings(5)%sname = 'mp3' autotroph_settings(5)%lname = 'Mixed Phytoplankton 3' @@ -179,10 +171,8 @@ autotroph_settings(5)%agg_rate_min = 0.01 autotroph_settings(5)%loss_poc = 0 autotroph_settings(5)%temp_func_form_opt = 'arrhenius' autotroph_settings(5)%Ea = 0.32 -autotroph_settings(5)%POpt = 0.8 -autotroph_settings(5)%NOpt = 0.4 autotroph_settings(5)%SiOpt = 0.0 -autotroph_settings(5)%FeOpt = 0.002 +autotroph_settings(5)%FeOpt = 0.00147095991198201 autotroph_settings(6)%sname = 'mp4' autotroph_settings(6)%lname = 'Mixed Phytoplankton 4' @@ -214,10 +204,8 @@ autotroph_settings(6)%agg_rate_min = 0.01 autotroph_settings(6)%loss_poc = 0 autotroph_settings(6)%temp_func_form_opt = 'arrhenius' autotroph_settings(6)%Ea = 0.32 -autotroph_settings(6)%POpt = 0.8 -autotroph_settings(6)%NOpt = 0.4 autotroph_settings(6)%SiOpt = 0.0 -autotroph_settings(6)%FeOpt = 0.002 +autotroph_settings(6)%FeOpt =0.00471900934179038 autotroph_settings(7)%sname = 'diat1' autotroph_settings(7)%lname = 'Diatoms 1' @@ -249,10 +237,8 @@ autotroph_settings(7)%agg_rate_min = 0.01 autotroph_settings(7)%loss_poc = 0 autotroph_settings(7)%temp_func_form_opt = 'arrhenius' autotroph_settings(7)%Ea = 0.32 -autotroph_settings(7)%POpt = 0.8 -autotroph_settings(7)%NOpt = 0.4 -autotroph_settings(7)%SiOpt = 10.0 -autotroph_settings(7)%FeOpt = 0.002 +autotroph_settings(7)%SiOpt = 3.623421704324106 +autotroph_settings(7)%FeOpt = 0.0010352633440926 autotroph_settings(8)%sname = 'diat2' autotroph_settings(8)%lname = 'Diatoms 2' @@ -284,10 +270,8 @@ autotroph_settings(8)%agg_rate_min = 0.01 autotroph_settings(8)%loss_poc = 0 autotroph_settings(8)%temp_func_form_opt = 'arrhenius' autotroph_settings(8)%Ea = 0.32 -autotroph_settings(8)%POpt = 0.8 -autotroph_settings(8)%NOpt = 0.4 -autotroph_settings(8)%SiOpt = 10.0 -autotroph_settings(8)%FeOpt = 0.002 +autotroph_settings(8)%SiOpt = 7.228428364729741 +autotroph_settings(8)%FeOpt = 0.00206526524706565 autotroph_settings(9)%sname = 'diat3' autotroph_settings(9)%lname = 'Diatoms 3' @@ -319,11 +303,8 @@ autotroph_settings(9)%agg_rate_min = 0.01 autotroph_settings(9)%loss_poc = 0 autotroph_settings(9)%temp_func_form_opt = 'arrhenius' autotroph_settings(9)%Ea = 0.32 -autotroph_settings(9)%POpt = 0.8 -autotroph_settings(9)%NOpt = 0.4 -autotroph_settings(9)%SiOpt = 10.0 -autotroph_settings(9)%FeOpt = 0.002 - +autotroph_settings(9)%SiOpt = 14.420120231016899 +autotroph_settings(9)%FeOpt = 0.00412003435171912 zooplankton_settings(1)%sname = 'zoo1' zooplankton_settings(1)%lname = 'Microzooplankton 1'