From 81807d0478ebdca95abcd1cb2de68b31b2a76cce Mon Sep 17 00:00:00 2001 From: Maggie Hendry Date: Thu, 15 Jan 2026 15:36:05 +0000 Subject: [PATCH 1/4] - `jules_model_environment` migrated to **lfric-jules-shared/jules-model-environment** - As a result of the way lfric_coupled imports the component config files `jules_model_environment` cannot exist in two different components. - Added for now with "_lfric" appended to namelist to avoid overwiting Rivers config. - `lsm_id` has not been shared as no point until "_lfric" can be removed. - Trigger list added with "not_lfric" as a result of enumeration. - `jules_surface` migrated to **lfric-jules-shared/jules-surface**. - Switches not available to LFRic triggered off (`l_jules_parent`) and made unavailable via code. - **jules-lfric** contains related LFRic specific amendments to shared metadata. --- applications/jules/example/configuration.nml | 22 ++ .../lfric_atm/example/configuration.nml | 22 ++ .../lfric_coupled/example/configuration.nml | 22 +- .../lfric-name_transport/versions.py | 1 + dependencies.sh | 4 +- .../rose-meta/jules-lfric/HEAD/rose-meta.conf | 72 ++++++- .../rose-meta/jules-lfric/versions.py | 79 ++++++++ .../jules-surface/HEAD/rose-meta.conf | 191 ++++++++++++++++++ .../source/support/jules_control_init_mod.f90 | 76 ++++--- .../source/support/jules_physics_init_mod.f90 | 87 ++++++-- .../lfric-gungho/HEAD/rose-meta.conf | 1 + 11 files changed, 530 insertions(+), 47 deletions(-) diff --git a/applications/jules/example/configuration.nml b/applications/jules/example/configuration.nml index fd648227..203e8892 100644 --- a/applications/jules/example/configuration.nml +++ b/applications/jules/example/configuration.nml @@ -223,6 +223,9 @@ write_minmax_tseries=.false., l_hydrology=.true., l_var_rainfrac=.true., / +&jules_model_environment_lfric +l_jules_parent='lfric', +/ &jules_nvegparm albsnc_nvg_io=0.4,0.8,0.8,0.8, albsnf_nvg_io=0.18,0.12,-1.0,0.75, @@ -300,12 +303,31 @@ rho_snow_fresh=109.0, unload_rate_u=2.31e-6,2.31e-6,0.0,0.0,0.0, / &jules_surface +all_tiles='off', +beta1=0.83, +beta2=0.93, +beta_cnv_bl=0.04, cor_mo_iter='improved', +fd_hill_option='capped_lowhill', fd_stability_dep='none', formdrag='dist_drag', +fwe_c3=0.5, +fwe_c4=20000.0, +hleaf=5.7e4, +hwood=1.1e4, +i_modiscopt='on', +iscrntdiag='decoupled_trans', l_anthrop_heat_src=.false., +l_epot_corr=.true., +l_elev_land_ice=.false., +l_elev_lw_down=.false., +l_flake_model=.false., +l_land_ice_imp=.true., +l_mo_buoyancy_calc=.true., +l_point_data=.false., l_urban2t=.false., l_vary_z0m_soil=.true., +orog_drag_param=0.15, srf_ex_cnv_gust=.true., / &jules_surface_types diff --git a/applications/lfric_atm/example/configuration.nml b/applications/lfric_atm/example/configuration.nml index 5301f68e..12631de2 100644 --- a/applications/lfric_atm/example/configuration.nml +++ b/applications/lfric_atm/example/configuration.nml @@ -335,6 +335,9 @@ write_minmax_tseries=.false., l_var_rainfrac=.true., l_hydrology=.true., / +&jules_model_environment_lfric +l_jules_parent='lfric', +/ &jules_nvegparm albsnc_nvg_io=0.4,0.8,0.8,0.8, albsnf_nvg_io=0.18,0.12,-1.0,0.75, @@ -407,12 +410,31 @@ rho_snow_fresh=109.0, unload_rate_u=2.31e-6,2.31e-6,0.0,0.0,0.0, / &jules_surface +all_tiles='off', +beta1=0.83, +beta2=0.93, +beta_cnv_bl=0.04, cor_mo_iter='improved', +fd_hill_option='capped_lowhill', fd_stability_dep='none', formdrag='dist_drag', +fwe_c3=0.5, +fwe_c4=20000.0, +hleaf=5.7e4, +hwood=1.1e4, +i_modiscopt='on', +iscrntdiag='decoupled_trans', l_anthrop_heat_src=.false., +l_epot_corr=.true., +l_elev_land_ice=.false., +l_elev_lw_down=.false., +l_flake_model=.false., +l_land_ice_imp=.true., +l_mo_buoyancy_calc=.true., +l_point_data=.false., l_urban2t=.false., l_vary_z0m_soil=.true., +orog_drag_param=0.15, srf_ex_cnv_gust=.true., / &jules_soil diff --git a/applications/lfric_coupled/example/configuration.nml b/applications/lfric_coupled/example/configuration.nml index 643f9221..f54da416 100644 --- a/applications/lfric_coupled/example/configuration.nml +++ b/applications/lfric_coupled/example/configuration.nml @@ -168,6 +168,9 @@ write_minmax_tseries=.false., l_hydrology=.true., l_var_rainfrac=.false. / +&jules_model_environment_lfric +l_jules_parent='lfric', +/ &jules_nvegparm albsnc_nvg_io=0.4,0.8,0.8,0.8, albsnf_nvg_io=0.18,0.12,-1.0,0.75, @@ -239,12 +242,29 @@ l_soil_sat_down=.true., l_vg_soil=.true. / &jules_surface +all_tiles='off', +beta1=0.83, +beta2=0.93, cor_mo_iter='lim_oblen', fd_stability_dep='none', formdrag='eff_z0', +fwe_c3=0.5, +fwe_c4=20000.0, +hleaf=5.7e4, +hwood=1.1e4, +i_modiscopt='on', +iscrntdiag='decoupled_trans', l_anthrop_heat_src=.false., +l_epot_corr=.true., +l_elev_land_ice=.false., +l_elev_lw_down=.false., +l_flake_model=.false., +l_land_ice_imp=.true., +l_mo_buoyancy_calc=.true., +l_point_data=.false., l_urban2t=.false., -l_vary_z0m_soil=.false. +l_vary_z0m_soil=.false., +orog_drag_param=0.15, srf_ex_cnv_gust=.true., / &jules_surface_types diff --git a/applications/name_transport/rose-meta/lfric-name_transport/versions.py b/applications/name_transport/rose-meta/lfric-name_transport/versions.py index 264f4ab7..9fb66a7d 100644 --- a/applications/name_transport/rose-meta/lfric-name_transport/versions.py +++ b/applications/name_transport/rose-meta/lfric-name_transport/versions.py @@ -1,3 +1,4 @@ +import re import sys from metomi.rose.upgrade import MacroUpgrade diff --git a/dependencies.sh b/dependencies.sh index 20df3ddc..126d9190 100644 --- a/dependencies.sh +++ b/dependencies.sh @@ -25,8 +25,8 @@ export lfric_core_rev=54094 export lfric_core_sources= export casim_rev=apps2.2 export casim_sources= -export jules_rev=31238 -export jules_sources= +export jules_rev= +export jules_sources=cazldf00006Y:/home/users/margaret.hendry/jules_work/jules_git_migration_jules-model-environment_to_jules-shared export socrates_rev=1869 export socrates_sources= export ukca_rev=7497 diff --git a/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf index 2cddaa70..cd725e1b 100644 --- a/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf @@ -1,3 +1,15 @@ +############################################################################### +# This is the LFRic flavour of the JULES metadata +############################################################################### +# This should only contain: +# * Import statements from lfric-jules-shared. +# * LFRic specific amendments to the imported metadata. +# The majority of the metadata should be under rose-meta/lfric-jules-shared. +# +# This file in the future will reside in the JULES repository and will import +# jules-shared directly from there when the build system has been developed to +# allow this. +# # Please see jules:wiki:SharingJULESmetadata import=lfric-jules-shared/jules-hydrology/HEAD @@ -15,6 +27,31 @@ import=lfric-jules-shared/jules-hydrology/HEAD [namelist:jules_hydrology=l_hydrology] trigger=namelist:jules_hydrology=l_var_rainfrac: .true.; +[namelist:jules_model_environment_lfric] +compulsory=true +description=Not all JULES options are available in all environments in which JULES is run e.g. standalone, + =UM, LFRic (LIS, MONC, CABLE). The model environment is specified here so that options that are + =unavailable can be made inaccessible via the metadata and thus will not appear in the gui. +ns=namelist/JULES Science Settings/jules_model_environment +sort-key=01 +title=Model environment interface +url=http://jules-lsm.github.io/latest/namelists/model_environment.nml.html#namelist-JULES_MODEL_ENVIRONMENT + +[namelist:jules_model_environment_lfric=l_jules_parent] +compulsory=true +description=Switch to identify the environment in which JULES is being run. + =No science code is associated with this switch, only what science options are available. + =THIS HAS TO BE LFRIC SPECIFIC FOR NOW AS A RESULT OF THE WAY THAT + =LFRIC COUPLED PROCESSES NAMELIST FILES. +!enumeration=true +fail-if=this != "'lfric'"; # This should indicate that LFRic is the parent model. +trigger=namelist:jules_surface=l_elev_land_ice: 'not_lfric'; + =namelist:jules_surface=l_elev_lw_down: 'not_lfric'; + =namelist:jules_surface=l_flake_model: 'not_lfric'; + =namelist:jules_surface=l_point_data: 'not_lfric'; +value-titles=LFRic +values='lfric' + [namelist:jules_radiation=fixed_sea_albedo] description=If using i_sea_alb_method='fixed', the global value of albedo to use. @@ -50,24 +87,52 @@ values='marshall','taillandier' [namelist:jules_snow=i_relayer_opt] values='original','inverse' +[namelist:jules_surface=all_tiles] +values='off','on' + [namelist:jules_surface=anthrop_heat_option] fail-if=this != "'dukes'"; # The DUKES fixed annual cycle is the only currently available option in LFRic trigger=namelist:jules_surface=anthrop_heat_mean: 'flanner'; values='dukes','flanner' [namelist:jules_surface=cor_mo_iter] +trigger=namelist:jules_surface=beta_cnv_bl: 'improved'; value-titles=Limit Obukhov length in low winds, =Improve initial guess (preferred) values='lim_oblen','improved' +[namelist:jules_surface=fd_hill_option] +value-titles=capped low hill +values='capped_lowhill' + [namelist:jules_surface=fd_stability_dep] value-titles=Off,Surface Ri values='none','surf_ri' [namelist:jules_surface=formdrag] -trigger=namelist:jules_surface=fd_stability_dep: 'eff_z0','dist_drag'; +fail-if= +trigger=namelist:jules_surface=orog_drag_param: 'eff_z0','dist_drag'; + =namelist:jules_surface=fd_stability_dep: 'eff_z0','dist_drag'; + =namelist:jules_surface=fd_hill_option: 'dist_drag'; values='none','eff_z0','dist_drag' +[namelist:jules_surface=i_modiscopt] +fail-if= +value-titles=On +values='on' + +[namelist:jules_surface=iscrntdiag] +fail-if= +value-titles=Decoupled with transitional effects +values='decoupled_trans' + +[namelist:jules_surface=l_elev_land_ice] +fail-if= +trigger= + +[namelist:jules_surface=l_flake_model] +trigger= + [namelist:jules_surface=l_urban2t] trigger=namelist:jules_surface_types=urban_canyon: .true.; =namelist:jules_surface_types=urban_roof: .true.; @@ -75,12 +140,15 @@ trigger=namelist:jules_surface_types=urban_canyon: .true.; =namelist:jules_urban: .true.; =namelist:jules_urban=anthrop_heat_scale: .true.; =namelist:files=urban_ancil_path: .true.; - =namelist:stochastic_physics=rp_lsfc_z0_urban_mult: .true. ; + =namelist:stochastic_physics=rp_lsfc_z0_urban_mult: .true.; [namelist:jules_surface=l_vary_z0m_soil] +fail-if= trigger=namelist:files=soil_rough_ancil_path: .true. ; [namelist:jules_surface=srf_ex_cnv_gust] +fail-if= +trigger= type=logical [namelist:jules_vegetation=can_rad_mod] diff --git a/interfaces/jules_interface/rose-meta/jules-lfric/versions.py b/interfaces/jules_interface/rose-meta/jules-lfric/versions.py index dba01949..b7317167 100644 --- a/interfaces/jules_interface/rose-meta/jules-lfric/versions.py +++ b/interfaces/jules_interface/rose-meta/jules-lfric/versions.py @@ -58,3 +58,82 @@ def upgrade(self, config, meta_config=None): # Blank upgrade macro to bump tag return config, self.reports + + +class vn22_t814(MacroUpgrade): + # Upgrade macro for #814 by Maggie Hendry + + BEFORE_TAG = "vn2.2" + AFTER_TAG = "vn2.2_t814" + + def upgrade(self, config, meta_config=None): + # Add jules_model_environment_lfric namelist + source = self.get_setting_value( + config, ["file:configuration.nml", "source"] + ) + source = re.sub( + r"namelist:jules_hydrology", + r"namelist:jules_hydrology)" + + "\n" + + " (namelist:jules_model_environment_lfric", + source, + ) + self.change_setting_value( + config, ["file:configuration.nml", "source"], source + ) + self.add_setting( + config, + ["namelist:jules_model_environment_lfric", "l_jules_parent"], + "'lfric'", + ) + # Add jules_surface namelist items + self.add_setting( + config, + ["namelist:jules_surface", "all_tiles"], + "'off'", + ) + self.add_setting(config, ["namelist:jules_surface", "beta1"], "0.83") + self.add_setting(config, ["namelist:jules_surface", "beta2"], "0.93") + self.add_setting( + config, ["namelist:jules_surface", "beta_cnv_bl"], "0.04" + ) + self.add_setting( + config, + ["namelist:jules_surface", "fd_hill_option"], + "'capped_lowhill'", + ) + self.add_setting(config, ["namelist:jules_surface", "fwe_c3"], "0.5") + self.add_setting( + config, ["namelist:jules_surface", "fwe_c4"], "20000.0" + ) + self.add_setting(config, ["namelist:jules_surface", "hleaf"], "5.7e4") + self.add_setting(config, ["namelist:jules_surface", "hwood"], "1.1e4") + self.add_setting( + config, ["namelist:jules_surface", "i_modiscopt"], "'on'" + ) + self.add_setting( + config, ["namelist:jules_surface", "l_epot_corr"], ".true." + ) + self.add_setting( + config, ["namelist:jules_surface", "l_land_ice_imp"], ".true." + ) + self.add_setting( + config, ["namelist:jules_surface", "l_mo_buoyancy_calc"], ".true." + ) + self.add_setting( + config, ["namelist:jules_surface", "orog_drag_param"], "0.15" + ) + self.add_setting( + config, ["namelist:jules_surface", "l_flake_model"], ".false." + ) + self.add_setting( + config, ["namelist:jules_surface", "l_elev_land_ice"], ".false." + ) + self.add_setting( + config, ["namelist:jules_surface", "l_elev_lw_down"], ".false." + ) + self.add_setting( + config, ["namelist:jules_surface", "l_point_data"], ".false." + ) + + return config, self.reports diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface/HEAD/rose-meta.conf index 298fad33..210458ce 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface/HEAD/rose-meta.conf @@ -6,9 +6,20 @@ sort-key=Section-A12e title=Surface options url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html +[namelist:jules_surface=all_tiles] +compulsory=true +description=Do calculations of tile properties on all tiles (except land ice) + =for all gridpoints even when the tile fraction is zero +!enumeration=true +sort-key=Panel-F10 +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::all_tiles +value-titles=Off,On +values=0,1 + [namelist:jules_surface=anthrop_heat_mean] compulsory=true description=Baseline mean anthropogenic heat flux for Flanner scheme +!kind=double sort-key=Panel-F03b type=real url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::anthrop_heat_mean @@ -23,11 +34,40 @@ url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SUR value-titles=DUKES fixed annual cycle, Flanner latitude-dependent annual and diurnal cycles values=0,1 +[namelist:jules_surface=beta1] +compulsory=true +description=Coupling coefficient for co-limitation +!kind=double +ns=namelist/JULES Science Settings/jules_surface/Parameters +sort-key=c +type=real +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::beta1 + +[namelist:jules_surface=beta2] +compulsory=true +description=Coupling coefficient for co-limitation +!kind=double +ns=namelist/JULES Science Settings/jules_surface/Parameters +sort-key=d +type=real +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::beta2 + +[namelist:jules_surface=beta_cnv_bl] +compulsory=true +description=Convective gustiness parameter in surface exchange +!kind=double +ns=namelist/JULES Science Settings/jules_surface/Parameters +range=0.0: +sort-key=Panel-F11a +type=real +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::beta_cnv_bl + [namelist:jules_surface=cor_mo_iter] compulsory=true description=Corrections to Monin-Obukhov surface exchange calculation !enumeration=true sort-key=Panel-F11 +trigger=namelist:jules_surface=beta_cnv_bl: 4; url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::cor_mo_iter value-titles=Correct convective gustiness in low winds, =Correct U* in dust scheme, @@ -35,6 +75,20 @@ value-titles=Correct convective gustiness in low winds, =Improve initial guess (preferred) values=1,2,3,4 +[namelist:jules_surface=fd_hill_option] +compulsory=true +description=Orographic form drag formulation + =NOT AVAILABLE TO STANDALONE +!enumeration=true +help=The distributed version of turbulent orographic form drag can + =use steep or low hill formulations (the steep being the one used with + =effective roughness lengths), or the low hill formulation but with + =the resulting stress capped by that generated from the steep hill + =expression +sort-key=Panel-FX01c +value-titles=steep hill,low hill,capped low hill +values=0,1,2 + [namelist:jules_surface=fd_stability_dep] compulsory=true description=Stability dependence option for orographic form drag @@ -56,6 +110,7 @@ compulsory=true description=Orographic form drag option =NOT AVAILABLE TO STANDALONE !enumeration=true +fail-if=this != 0 and namelist:jules_model_environment=l_jules_parent == 0; # In standalone formdrag should be 0 help=Turbulent orographic form drag can be implemented either using =effective roughness lengths or as an explicit distributed drag profile. =This option is currently not available to standalone as there @@ -64,9 +119,72 @@ sort-key=Panel-FX01 trigger=namelist:jules_surface=orog_drag_param: 1,2; =namelist:jules_surface=fd_stability_dep: 1,2; =namelist:jules_surface=fd_hill_option: 2; + =namelist:run_stochastic=orog_drag_param_rp: 1,2; value-titles=No orographic stress,Effective roughness,Distributed Drag values=0,1,2 +[namelist:jules_surface=fwe_c3] +compulsory=true +description=Factor in expressions for limitation of photosynthesis + =by transport of products for C3 grass +!kind=double +ns=namelist/JULES Science Settings/jules_surface/Parameters +sort-key=e +type=real +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::fwe_c3 + +[namelist:jules_surface=fwe_c4] +compulsory=true +description=Factor in expressions for limitation of photosynthesis + =by transport of products for C4 grass +!kind=double +ns=namelist/JULES Science Settings/jules_surface/Parameters +sort-key=f +type=real +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::fwe_c4 + +[namelist:jules_surface=hleaf] +compulsory=true +description=Specific heat capacity of leaves (J / K / kg Carbon) +!kind=double +ns=namelist/JULES Science Settings/jules_surface/Parameters +sort-key=a +type=real +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::hleaf + +[namelist:jules_surface=hwood] +compulsory=true +description=Specific heat capacity of wood (J / K / kg Carbon) +!kind=double +ns=namelist/JULES Science Settings/jules_surface/Parameters +sort-key=b +type=real +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::hwood + +[namelist:jules_surface=i_modiscopt] +compulsory=true +description=Method of discretization in the surface layer + =NOT AVAILABLE TO STANDALONE +!enumeration=true +fail-if=this !=0 and namelist:jules_model_environment=l_jules_parent == 0; # In standalone i_modiscopt should be 0 +help=Should always be 0 (i.e. off) in standalone. +sort-key=Panel-FX02 +value-titles=Off,On +values=0,1 + +[namelist:jules_surface=iscrntdiag] +compulsory=true +description=Method of diagnosing the screen temperature +!enumeration=true +fail-if=(this == 2 or this == 3) and namelist:jules_model_environment=l_jules_parent == 0; # The preferred option in standalone is 0. The decoupled option specified is not recommended until driving JULES with a decoupled variable is fully tested. +sort-key=Panel-F12 +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::iscrntdiag +value-titles=No decoupling, + =Decoupled in very stable conditions, + =Decoupled with transitional effects, + =Decoupled (T & q) with transitional effects +values=0,1,2,3 + [namelist:jules_surface=l_anthrop_heat_src] compulsory=true description=Use anthropogenic heat source on urban surface types @@ -76,6 +194,66 @@ trigger=namelist:jules_surface=anthrop_heat_option: .true.; type=logical url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_anthrop_heat_src +[namelist:jules_surface=l_elev_land_ice] +compulsory=true +description=Use individual tiled bedrock sub-surfaces for land ice tiles +fail-if=this and any(namelist:jules_surface_types=elev_ice < 0) and any(namelist:jules_surface_types=elev_rock < 0); # At least one of elev_ice or elev_rock needs to be used (> 0). + =this and len(namelist:jules_surface_types=elev_ice) == 0 and len(namelist:jules_surface_types=elev_rock) == 0; # At least one of elev_ice or elev_rock needs to be used (> 0). + =this and any(namelist:jules_surface_types=elev_ice < 0) and len(namelist:jules_surface_types=elev_rock) == 0; # At least one of elev_ice or elev_rock needs to be used (> 0). + =this and len(namelist:jules_surface_types=elev_ice) == 0 and any(namelist:jules_surface_types=elev_rock < 0); # At least one of elev_ice or elev_rock needs to be used (> 0). +sort-key=Panel-F04 +trigger=namelist:jules_soil=dzsoil_elev: .true.; + =namelist:jules_snow=rho_firn_albedo: .true.; + =namelist:jules_snow=aicemax: .true.; + =namelist:jules_surface_types=elev_ice: .true.; + =namelist:jules_surface_types=elev_rock: .true.; +type=logical +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_elev_land_ice + +[namelist:jules_surface=l_elev_lw_down] +compulsory=true +description=Adjust downward longwave radiation for elevated tiles +sort-key=Panel-F05 +type=logical +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_elev_lw_down + +[namelist:jules_surface=l_epot_corr] +compulsory=true +description=Use correction to calculation of potential evaporation +sort-key=Panel-F06 +type=logical +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_epot_corr + +[namelist:jules_surface=l_flake_model] +compulsory=true +description=Use the Flake model to simulate lakes. (Not yet ready to use with Irrigation or TRIFFID) +sort-key=Panel-F13 +trigger=namelist:jules_flake: .true.; + =namelist:jules_vegetation=l_triffid: .false.; + =namelist:jules_irrig=l_irrig_dmd: .false.; +type=logical + +[namelist:jules_surface=l_land_ice_imp] +compulsory=true +description=Use implicit numerics to update land ice temperatures +sort-key=Panel-F07 +type=logical +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_land_ice_imp + +[namelist:jules_surface=l_mo_buoyancy_calc] +compulsory=true +description=Switch for using interacting buoyancy in Monin-Obukhov calculation +sort-key=Panel-F14 +type=logical +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_mo_buoyancy_calc + +[namelist:jules_surface=l_point_data] +compulsory=true +description=Using point rainfall data +sort-key=Panel-F08 +type=logical +url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_point_data + [namelist:jules_surface=l_urban2t] compulsory=true description=Switch for using the two-tile urban schemes (including MORUSES) @@ -86,6 +264,7 @@ trigger=namelist:jules_surface_types=urban_canyon: .true.; =namelist:jules_urban: .true.; =namelist:jules_urban=anthrop_heat_scale: .true.; =namelist:urban_properties: .true.; + =namelist:run_stochastic=z0_urban_mult_rp: .true. ; type=logical url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_urban2t @@ -93,14 +272,25 @@ url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SUR compulsory=true description=Enable soil roughness to be set from ancillary file =NOT AVAILABLE TO STANDALONE +fail-if=this == '.true.' and namelist:jules_model_environment=l_jules_parent == 0; # Variable roughness length of bare soil is currently not available to standalone. !kind=default sort-key=Panel-FX04 type=logical +[namelist:jules_surface=orog_drag_param] +compulsory=true +description=Drag coefficient for orographic form drag + =NOT AVAILABLE TO STANDALONE +!kind=double +range=0.01:10.0 +sort-key=Panel-FX01a +type=real + [namelist:jules_surface=srf_ex_cnv_gust] compulsory=true description=Include effect of convective downdraughts on surface exchange =NOT AVAILABLE TO STANDALONE +fail-if=this !=0 and namelist:jules_model_environment=l_jules_parent == 0; # This is not currently available to standalone. help=Surface exchange is affected by the mean wind, =eddies spanning the depth =of the boundary layer and eddies driven by convective downdraughts. @@ -113,3 +303,4 @@ help=Surface exchange is affected by the mean wind, =J. Climate,13,p. 402. !kind=default sort-key=Panel-FX03 +trigger=namelist:run_convection=cnv_cold_pools: 1; diff --git a/interfaces/jules_interface/source/support/jules_control_init_mod.f90 b/interfaces/jules_interface/source/support/jules_control_init_mod.f90 index c19a936e..c47a3d64 100644 --- a/interfaces/jules_interface/source/support/jules_control_init_mod.f90 +++ b/interfaces/jules_interface/source/support/jules_control_init_mod.f90 @@ -12,7 +12,7 @@ module jules_control_init_mod use jules_sea_seaice_config_mod, only : nice_in => nice ! Other LFRic modules used - use constants_mod, only : i_def + use constants_mod, only : i_def, imdi implicit none @@ -49,43 +49,54 @@ module jules_control_init_mod subroutine jules_control_init() ! LFRic namelists which have been read - use jules_surface_types_config_mod, only : npft_in => npft, & - nnvg_in => nnvg, & - brd_leaf_in => brd_leaf, & - ndl_leaf_in => ndl_leaf, & - c3_grass_in => c3_grass, & - c4_grass_in => c4_grass, & - shrub_in => shrub, & - urban_in => urban, & - urban_canyon_in => urban_canyon,& - urban_roof_in => urban_roof, & - lake_in => lake, & - soil_in => soil, & - ice_in => ice + use jules_model_environment_lfric_config_mod, only : & + l_jules_parent_in => l_jules_parent, & + l_jules_parent_lfric + use jules_surface_types_config_mod, only : & + npft_in => npft, & + nnvg_in => nnvg, & + brd_leaf_in => brd_leaf, & + ndl_leaf_in => ndl_leaf, & + c3_grass_in => c3_grass, & + c4_grass_in => c4_grass, & + shrub_in => shrub, & + urban_in => urban, & + urban_canyon_in => urban_canyon, & + urban_roof_in => urban_roof, & + lake_in => lake, & + soil_in => soil, & + ice_in => ice use section_choice_config_mod, only : surface, surface_jules ! UM/JULES modules containing things that need setting use ancil_info, only: jules_dim_cs1 => dim_cs1, nsurft - use atm_step_local, only: co2_dim_len, co2_dim_row, & - dim_cs1 + use atm_step_local, only: co2_dim_len, co2_dim_row, dim_cs1 use jules_sea_seaice_mod, only: nice, nice_use use jules_soil_mod, only: jules_sm_levels => sm_levels - use jules_surface_types_mod, only: npft, nnvg, ntype, brd_leaf, ndl_leaf, & - c3_grass, c4_grass, shrub, urban, & - urban_canyon, urban_roof, lake, & + use jules_surface_types_mod, only: npft, nnvg, ntype, brd_leaf, ndl_leaf, & + c3_grass, c4_grass, shrub, urban, & + urban_canyon, urban_roof, lake, & soil, ice use jules_vegetation_mod, only: l_triffid - use jules_model_environment_mod, only: lsm_id, jules + use jules_model_environment_mod, only: lsm_id, jules, & + check_jules_model_environment use nlsizes_namelist_mod, only: ntiles, sm_levels use jules_surface_types_mod, only: & - set_derived_variables_jules_surface_types, & + set_derived_variables_jules_surface_types, & print_nlist_jules_surface_types, check_jules_surface_types use land_tile_ids_mod, only: set_surface_type_ids - use log_mod, only : log_event, log_scratch_space, LOG_LEVEL_INFO + use log_mod, only : log_event, log_scratch_space, LOG_LEVEL_INFO, & + LOG_LEVEL_ERROR + + use section_choice_config_mod, only: surface, & + surface_jules implicit none + ! This allows l_jules_parent switch to remain private in JULES module + integer(kind=i_def) :: l_jules_parent_config = imdi + call log_event( 'jules_control_init', LOG_LEVEL_INFO ) ! ---------------------------------------------------------------- @@ -180,8 +191,25 @@ subroutine jules_control_init() co2_dim_len = 1 co2_dim_row = 1 - ! Initialise LSM to be JULES (other options do exist; CABLE, Rivers-only) - lsm_id = jules + ! ---------------------------------------------------------------- + ! JULES model environment settings + ! - contained in module jules_model_environment + ! ---------------------------------------------------------------- + + if (surface == surface_jules) then + ! Initialise LSM to be JULES (other options do exist; CABLE, Rivers-only) + lsm_id = jules + select case (l_jules_parent_in) + case(l_jules_parent_lfric) + l_jules_parent_config = 3 + case default + write( log_scratch_space, '(A)' ) 'Parent model not set to LFRic.' + call log_event( log_scratch_space, LOG_LEVEL_ERROR ) + end select + + ! Check the contents of the jules model environment module + call check_jules_model_environment(l_jules_parent_config) + end if end subroutine jules_control_init diff --git a/interfaces/jules_interface/source/support/jules_physics_init_mod.f90 b/interfaces/jules_interface/source/support/jules_physics_init_mod.f90 index 7b4153e1..03322e49 100644 --- a/interfaces/jules_interface/source/support/jules_physics_init_mod.f90 +++ b/interfaces/jules_interface/source/support/jules_physics_init_mod.f90 @@ -85,22 +85,42 @@ module jules_physics_init_mod i_relayer_opt_original, & i_relayer_opt_inverse use jules_surface_config_mod, only : & + all_tiles_in => all_tiles, & + all_tiles_off, all_tiles_on, & + beta1_in => beta1, beta2_in => beta2, & + beta_cnv_bl_in => beta_cnv_bl, & cor_mo_iter_in => cor_mo_iter, & cor_mo_iter_lim_oblen, & cor_mo_iter_improved, & + fwe_c3_in => fwe_c3, fwe_c4_in => fwe_c4, & + hleaf_in => hleaf, hwood_in => hwood, & srf_ex_cnv_gust_in => srf_ex_cnv_gust, & formdrag_in => formdrag, formdrag_none, & formdrag_eff_z0, formdrag_dist_drag, & + fd_hill_option_in => fd_hill_option, & + fd_hill_option_capped_lowhill, & fd_stability_dep_in => fd_stability_dep, & fd_stability_dep_none, & fd_stability_dep_surf_ri, & + i_modiscopt_in => i_modiscopt, & + i_modiscopt_on, & + iscrntdiag_in => iscrntdiag, & + iscrntdiag_decoupled_trans, & + l_epot_corr_in => l_epot_corr, & + l_land_ice_imp_in => l_land_ice_imp, & + l_mo_buoyancy_calc_in => l_mo_buoyancy_calc, & anthrop_heat_option_in => anthrop_heat_option, & anthrop_heat_option_dukes, & anthrop_heat_option_flanner, & anthrop_heat_mean_in => anthrop_heat_mean, & l_anthrop_heat_src_in => l_anthrop_heat_src, & l_urban2t_in => l_urban2t, & - l_vary_z0m_soil_in => l_vary_z0m_soil + l_vary_z0m_soil_in => l_vary_z0m_soil, & + orog_drag_param_in => orog_drag_param, & + l_flake_model_in => l_flake_model, & + l_elev_land_ice_in => l_elev_land_ice, & + l_elev_lw_down_in => l_elev_lw_down, & + l_point_data_in => l_point_data use jules_vegetation_config_mod, only : & can_rad_mod_in => can_rad_mod, & can_rad_mod_one, can_rad_mod_four, & @@ -215,14 +235,18 @@ subroutine jules_physics_init() q10_ch4_npp, q10_ch4_resps, const_ch4_npp, const_ch4_resps, & t0_ch4, ch4_cpow, tau_ch4, k2_ch4, rho_ch4, q10_mic_ch4, cue_ch4, & mu_ch4, frz_ch4, alpha_ch4, ch4_cpow, ev_ch4, q10_ev_ch4 - use jules_surface_mod, only: l_epot_corr, cor_mo_iter, iscrntdiag, & - srf_ex_cnv_gust, Limit_ObukhovL, ip_scrndecpl2, IP_SrfExWithCnv, & - fd_stability_dep, orog_drag_param, check_jules_surface, & - Improve_Initial_Guess, formdrag, beta_cnv_bl, fd_hill_option, & - i_modiscopt, l_land_ice_imp, no_drag, effective_z0, & - capped_lowhill, explicit_stress, l_anthrop_heat_src, l_urban2t, & - l_vary_z0m_soil, l_mo_buoyancy_calc, anthrop_heat_option, dukes, & - flanner, anthrop_heat_mean + use jules_surface_mod, only: & + check_jules_surface, print_nlist_jules_surface, all_tiles, & + cor_mo_iter, Limit_ObukhovL, Improve_Initial_Guess, beta_cnv_bl, & + fd_hill_option, capped_lowhill, & + fd_stability_dep, orog_drag_param, & + formdrag, no_drag, effective_z0, explicit_stress, i_modiscopt, & + iscrntdiag, ip_scrndecpl2, srf_ex_cnv_gust, IP_SrfExWithCnv, & + l_anthrop_heat_src, anthrop_heat_option, dukes, flanner, & + anthrop_heat_mean, l_urban2t, l_epot_corr, l_land_ice_imp, & + l_mo_buoyancy_calc, l_vary_z0m_soil, beta1, beta2, fwe_c3, fwe_c4, & + hwood, hleaf, l_flake_model, l_elev_land_ice, l_elev_lw_down, & + l_point_data use jules_rivers_mod, only: lake_water_conserve_method, use_elake_surft use jules_urban_mod, only: anthrop_heat_scale, l_moruses_albedo, & l_moruses_emissivity, l_moruses_rough, l_moruses_storage, & @@ -472,21 +496,32 @@ subroutine jules_physics_init() ! ---------------------------------------------------------------- ! JULES surface settings - contained in module jules_surface ! ---------------------------------------------------------------- - anthrop_heat_mean = anthrop_heat_mean_in + anthrop_heat_mean = real(anthrop_heat_mean_in, r_um) select case (anthrop_heat_option_in) case(anthrop_heat_option_dukes) anthrop_heat_option = dukes case(anthrop_heat_option_flanner) anthrop_heat_option = flanner end select - beta_cnv_bl = 0.04_r_um + select case (all_tiles_in) + case(all_tiles_off) + all_tiles = 0 + case(all_tiles_on) + all_tiles = 1 + end select + beta1 = real(beta1_in, r_um) + beta2 = real(beta2_in, r_um) + beta_cnv_bl = real(beta_cnv_bl_in, r_um) select case (cor_mo_iter_in) case(cor_mo_iter_lim_oblen) cor_mo_iter = Limit_ObukhovL case(cor_mo_iter_improved) cor_mo_iter = Improve_Initial_Guess end select - fd_hill_option = capped_lowhill + select case (fd_hill_option_in) + case(fd_hill_option_capped_lowhill) + fd_hill_option = capped_lowhill + end select select case (fd_stability_dep_in) case(fd_stability_dep_none) fd_stability_dep = 0 @@ -501,16 +536,31 @@ subroutine jules_physics_init() case(formdrag_dist_drag) formdrag = explicit_stress end select - i_modiscopt = 1 - iscrntdiag = ip_scrndecpl2 + fwe_c3 = real(fwe_c3_in, r_um) + fwe_c4 = real(fwe_c4_in, r_um) + hleaf = real(hleaf_in, r_um) + hwood = real(hwood_in, r_um) + ! Awaiting advice from John Edwards regarding off or other allowed options + select case (i_modiscopt_in) + case(i_modiscopt_on) + i_modiscopt = 1 + end select + select case (iscrntdiag_in) + case(iscrntdiag_decoupled_trans) + iscrntdiag = ip_scrndecpl2 + end select if (srf_ex_cnv_gust_in) srf_ex_cnv_gust = IP_SrfExWithCnv - l_epot_corr = .true. - l_land_ice_imp = .true. - l_mo_buoyancy_calc = .true. + l_epot_corr = l_epot_corr_in + l_land_ice_imp = l_land_ice_imp_in + l_mo_buoyancy_calc = l_mo_buoyancy_calc_in l_anthrop_heat_src = l_anthrop_heat_src_in l_urban2t = l_urban2t_in l_vary_z0m_soil = l_vary_z0m_soil_in - orog_drag_param = 0.15_r_um + l_flake_model = l_flake_model_in + l_elev_land_ice = l_elev_land_ice_in + l_elev_lw_down = l_elev_lw_down_in + l_point_data = l_point_data_in + orog_drag_param = real(orog_drag_param_in, r_um) lake_water_conserve_method = use_elake_surft ! The minimum sea ice fraction @@ -522,6 +572,7 @@ subroutine jules_physics_init() endif ! Check the contents of the JULES surface parameters module + call print_nlist_jules_surface() call check_jules_surface() ! ---------------------------------------------------------------- diff --git a/science/gungho/rose-meta/lfric-gungho/HEAD/rose-meta.conf b/science/gungho/rose-meta/lfric-gungho/HEAD/rose-meta.conf index 15f3d968..ecd019a6 100644 --- a/science/gungho/rose-meta/lfric-gungho/HEAD/rose-meta.conf +++ b/science/gungho/rose-meta/lfric-gungho/HEAD/rose-meta.conf @@ -5328,6 +5328,7 @@ help=Currently JULES is the only surface scheme available for use sort-key=Panel-A10 trigger=namelist:surface: this == "'jules'" ; =namelist:jules_hydrology: this == "'jules'" ; + =namelist:jules_model_environment_lfric: this == "'jules'" ; =namelist:jules_nvegparm: this == "'jules'" ; =namelist:jules_pftparm: this == "'jules'" ; =namelist:jules_radiation: this == "'jules'" ; From 454f4d52b05f3ada9e5445892fde0048f2de6787 Mon Sep 17 00:00:00 2001 From: Maggie Hendry Date: Thu, 29 Jan 2026 08:10:33 +0000 Subject: [PATCH 2/4] Name added to contibutors. --- CONTRIBUTORS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index d0f7ae14..b791c373 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -4,3 +4,4 @@ | ----------- | --------- | ----------- | ---- | | james-bruten-mo | James Bruten | Met Office | 2025-12-09 | | jennyhickson | Jenny Hickson | Met Office | 2025-12-10 | +| maggiehendry | Maggie Hendry | Met Office | 2026-01-29 | From e793c059596aaaed66d8247b52a75bfdd00381ff Mon Sep 17 00:00:00 2001 From: Maggie Hendry Date: Fri, 30 Jan 2026 13:37:49 +0000 Subject: [PATCH 3/4] Metadata urls updated with new location of online docs (not yet version specific). --- .../rose-meta/jules-lfric/HEAD/rose-meta.conf | 2 +- .../jules-hydrology/HEAD/rose-meta.conf | 6 +-- .../jules-nvegparm/HEAD/rose-meta.conf | 26 ++++++------ .../jules-pftparm/HEAD/rose-meta.conf | 26 ++++++------ .../jules-radiation/HEAD/rose-meta.conf | 20 ++++----- .../jules-snow/HEAD/rose-meta.conf | 18 ++++---- .../jules-soil/HEAD/rose-meta.conf | 8 ++-- .../jules-surface-types/HEAD/rose-meta.conf | 28 ++++++------- .../jules-surface/HEAD/rose-meta.conf | 42 +++++++++---------- .../jules-urban/HEAD/rose-meta.conf | 14 +++---- .../jules-vegetation/HEAD/rose-meta.conf | 8 ++-- 11 files changed, 99 insertions(+), 99 deletions(-) diff --git a/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf index cd725e1b..66d84f38 100644 --- a/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf @@ -35,7 +35,7 @@ description=Not all JULES options are available in all environments in which JUL ns=namelist/JULES Science Settings/jules_model_environment sort-key=01 title=Model environment interface -url=http://jules-lsm.github.io/latest/namelists/model_environment.nml.html#namelist-JULES_MODEL_ENVIRONMENT +url=http://metoffice.github.io/jules/namelists/model_environment.nml.html#namelist-JULES_MODEL_ENVIRONMENT [namelist:jules_model_environment_lfric=l_jules_parent] compulsory=true diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-hydrology/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-hydrology/HEAD/rose-meta.conf index 782d7468..bc361c5d 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-hydrology/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-hydrology/HEAD/rose-meta.conf @@ -3,7 +3,7 @@ compulsory=true ns=namelist/JULES Science Settings/jules_hydrology sort-key=Section-A12g title=Hydrology options -url=http://jules-lsm.github.io/latest/namelists/jules_hydrology.nml.html#namelist-JULES_HYDROLOGY +url=http://metoffice.github.io/jules/namelists/jules_hydrology.nml.html#namelist-JULES_HYDROLOGY [namelist:jules_hydrology=l_hydrology] compulsory=true @@ -15,7 +15,7 @@ trigger=namelist:jules_hydrology=l_var_rainfrac: .true.; =namelist:jules_hydrology=l_pdm: .true.; =namelist:jules_hydrology=l_limit_gsoil: .true.; type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_hydrology.nml.html#JULES_HYDROLOGY::l_hydrology +url=http://metoffice.github.io/jules/namelists/jules_hydrology.nml.html#JULES_HYDROLOGY::l_hydrology [namelist:jules_hydrology=l_var_rainfrac] compulsory=true @@ -24,4 +24,4 @@ description=Enable variable large scale and convective rain fractions !kind=default sort-key=Panel-G02 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_hydrology.nml.html#JULES_HYDROLOGY::l_var_rainfrac +url=http://metoffice.github.io/jules/namelists/jules_hydrology.nml.html#JULES_HYDROLOGY::l_var_rainfrac diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-nvegparm/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-nvegparm/HEAD/rose-meta.conf index 1cb77755..5f7e7712 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-nvegparm/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-nvegparm/HEAD/rose-meta.conf @@ -4,7 +4,7 @@ description=Parameters required for each of the non-vegetated surface types. ns=namelist/JULES Science Settings/jules_nvegparm sort-key=Section-A12n title=Non-vegetated surface parameters -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#namelist-JULES_NVEGPARM +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#namelist-JULES_NVEGPARM widget[rose-config-edit]=cylc8_compat.PageArrayTable [namelist:jules_nvegparm=albsnc_nvg_io] @@ -15,7 +15,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg length=: range=0:1 type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::albsnc_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::albsnc_nvg_io [namelist:jules_nvegparm=albsnf_nvg_io] compulsory=true @@ -25,7 +25,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg length=: range=-1:1 type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::albsnf_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::albsnf_nvg_io [namelist:jules_nvegparm=albsnf_nvgl_io] compulsory=true @@ -35,7 +35,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg length=: range=0:1 type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::albsnf_nvgl_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::albsnf_nvgl_io [namelist:jules_nvegparm=albsnf_nvgu_io] compulsory=true @@ -45,7 +45,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg length=: range=0:1 type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::albsnf_nvgu_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::albsnf_nvgu_io [namelist:jules_nvegparm=catch_nvg_io] compulsory=true @@ -54,7 +54,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg !kind=default length=: type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::catch_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::catch_nvg_io [namelist:jules_nvegparm=ch_nvg_io] compulsory=true @@ -63,7 +63,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg !kind=default length=: type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::ch_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::ch_nvg_io [namelist:jules_nvegparm=emis_nvg_io] compulsory=true @@ -73,7 +73,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg length=: range=0:1 type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::emis_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::emis_nvg_io [namelist:jules_nvegparm=gs_nvg_io] compulsory=true @@ -81,7 +81,7 @@ description=Surface conductance (m s-1) fail-if=len(this) != namelist:jules_surface_types=nnvg length=: type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::gs_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::gs_nvg_io [namelist:jules_nvegparm=infil_nvg_io] compulsory=true @@ -90,7 +90,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg !kind=default length=: type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::infil_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::infil_nvg_io [namelist:jules_nvegparm=vf_nvg_io] compulsory=true @@ -100,7 +100,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg length=: range=0:1 type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::vf_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::vf_nvg_io [namelist:jules_nvegparm=z0_nvg_io] compulsory=true @@ -109,7 +109,7 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg !kind=default length=: type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::z0_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::z0_nvg_io [namelist:jules_nvegparm=z0hm_nvg_io] compulsory=true @@ -118,4 +118,4 @@ fail-if=len(this) != namelist:jules_surface_types=nnvg !kind=default length=: type=real -url=http://jules-lsm.github.io/latest/namelists/nveg_params.nml.html#JULES_NVEGPARM::z0hm_nvg_io +url=http://metoffice.github.io/jules/namelists/nveg_params.nml.html#JULES_NVEGPARM::z0hm_nvg_io diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-pftparm/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-pftparm/HEAD/rose-meta.conf index c9486d05..bcbaa80d 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-pftparm/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-pftparm/HEAD/rose-meta.conf @@ -6,7 +6,7 @@ description=This section is organised into two panels: ns=namelist/JULES Science Settings/jules_pftparm sort-key=Section-A12l title=PFT parameters -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#namelist-JULES_PFTPARM +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#namelist-JULES_PFTPARM widget[rose-config-edit]=cylc8_compat.PageArrayTable [namelist:jules_pftparm=albsnc_max_io] @@ -19,7 +19,7 @@ ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters range=0:1 sort-key=Panel-HR03 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::albsnc_max_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::albsnc_max_io [namelist:jules_pftparm=alnir_io] compulsory=true @@ -32,7 +32,7 @@ ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters range=0:1 sort-key=Panel-HR03 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::alnir_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alnir_io [namelist:jules_pftparm=alpar_io] compulsory=true @@ -45,7 +45,7 @@ ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters range=0:1 sort-key=Panel-HR03 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::alpar_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alpar_io [namelist:jules_pftparm=catch0_io] compulsory=true @@ -56,7 +56,7 @@ length=: ns=namelist/JULES Science Settings/jules_pftparm/Other parameters sort-key=Panel-HO05 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::catch0_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::catch0_io [namelist:jules_pftparm=dcatch_dlai_io] compulsory=true @@ -67,7 +67,7 @@ length=: ns=namelist/JULES Science Settings/jules_pftparm/Other parameters sort-key=Panel-HO05 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::dcatch_dlai_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::dcatch_dlai_io [namelist:jules_pftparm=fsmc_p0_io] compulsory=true @@ -79,7 +79,7 @@ length=: ns=namelist/JULES Science Settings/jules_pftparm/Other parameters sort-key=Panel-HO05 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::fsmc_p0_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fsmc_p0_io [namelist:jules_pftparm=kext_io] compulsory=true @@ -91,7 +91,7 @@ length=: ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters sort-key=Panel-HR02 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::kext_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::kext_io [namelist:jules_pftparm=knl_io] compulsory=true @@ -103,7 +103,7 @@ length=: ns=namelist/JULES Science Settings/jules_pftparm/Other parameters sort-key=Panel-HO05 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::knl_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::knl_io [namelist:jules_pftparm=omega_io] compulsory=true @@ -116,7 +116,7 @@ ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters range=0:1 sort-key=Panel-HR03 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::omega_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omega_io [namelist:jules_pftparm=omnir_io] compulsory=true @@ -129,7 +129,7 @@ ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters range=0:1 sort-key=Panel-HR03 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::omnir_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omnir_io [namelist:jules_pftparm=z0hm_pft_io] compulsory=true @@ -140,7 +140,7 @@ length=: ns=namelist/JULES Science Settings/jules_pftparm/Other parameters sort-key=Panel-HO05 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::z0hm_pft_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::z0hm_pft_io [namelist:jules_pftparm=z0v_io] compulsory=true @@ -151,7 +151,7 @@ length=: ns=namelist/JULES Science Settings/jules_pftparm/Other parameters sort-key=Panel-HO05 type=real -url=http://jules-lsm.github.io/latest/namelists/pft_params.nml.html#JULES_PFTPARM::z0v_io +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::z0v_io # Dummy page to force sort order for pftparm other parameters [namespace:pftparm_other] diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-radiation/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-radiation/HEAD/rose-meta.conf index 2e9f46c1..dadffcd2 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-radiation/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-radiation/HEAD/rose-meta.conf @@ -3,7 +3,7 @@ compulsory=true ns=namelist/JULES Science Settings/jules_radiation sort-key=Section-A12d title=Radiation options -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#namelist-JULES_RADIATION +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#namelist-JULES_RADIATION [namelist:jules_radiation=fixed_sea_albedo] compulsory=true @@ -12,7 +12,7 @@ description=If using i_sea_alb_method=4 or 5, the global value of albedo to use. range=0.0:1.0 sort-key=Panel-B05a type=real -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#JULES_RADIATION::fixed_sea_albedo +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#JULES_RADIATION::fixed_sea_albedo [namelist:jules_radiation=i_sea_alb_method] compulsory=true @@ -23,7 +23,7 @@ sort-key=Panel-B05 trigger=namelist:jules_radiation=l_sea_alb_var_chl: 3; =namelist:jules_radiation=fixed_sea_albedo: 4,5; =namelist:jules_radiation=l_spec_sea_alb: 1,2,3; -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#JULES_RADIATION::i_sea_alb_method +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#JULES_RADIATION::i_sea_alb_method value-titles=Briegleb and Ramanathan 1982,Barker and Li 1995,Jin et al. 2011,Fixed global value,Fixed sea with sea-ice param values=1,2,3,4,5 @@ -45,7 +45,7 @@ trigger=namelist:jules_pftparm=albsnf_maxu_io: .true.; =namelist:jules_nvegparm=albsnf_nvgu_io: .true.; =namelist:jules_nvegparm=albsnf_nvgl_io: .true.; type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#JULES_RADIATION::l_albedo_obs +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#JULES_RADIATION::l_albedo_obs [namelist:jules_radiation=l_hapke_soil] compulsory=true @@ -53,7 +53,7 @@ description=Switch to enable Hapke's model of soil reflectance to include a zeni !kind=default sort-key=Panel-B03 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#JULES_RADIATION::l_hapke_soil +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#JULES_RADIATION::l_hapke_soil [namelist:jules_radiation=l_niso_direct] compulsory=true @@ -61,7 +61,7 @@ description=Use the full non-isotropic expression for direct scattering in plant !kind=default sort-key=Panel-B02a1 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#JULES_RADIATION::l_niso_direct +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#JULES_RADIATION::l_niso_direct [namelist:jules_radiation=l_partition_albsoil] compulsory=true @@ -71,7 +71,7 @@ sort-key=Panel-B04 trigger=namelist:jules_radiation=ratio_albsoil: .true.; =namelist:jules_radiation=swdn_frac_albsoil: .true.; type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#JULES_RADIATION::l_partition_albsoil +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#JULES_RADIATION::l_partition_albsoil [namelist:jules_radiation=l_sea_alb_var_chl] compulsory=true @@ -92,7 +92,7 @@ description=Use a single value for both the direct and diffuse beams sort-key=Panel-B02a trigger=namelist:jules_radiation=l_niso_direct: .false.; type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#JULES_RADIATION::l_spec_alb_bs +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#JULES_RADIATION::l_spec_alb_bs [namelist:jules_radiation=ratio_albsoil] compulsory=true @@ -101,7 +101,7 @@ description=Ratio of the NIR to the VIS albedo of bare soil range=1.0:10.0 sort-key=Panel-B04a type=real -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#JULES_RADIATION::ratio_albsoil +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#JULES_RADIATION::ratio_albsoil [namelist:jules_radiation=swdn_frac_albsoil] compulsory=true @@ -110,4 +110,4 @@ description=The fraction of the total downward SW radiation assumed to be in the range=0.0:1.0 sort-key=Panel-B04b type=real -url=http://jules-lsm.github.io/latest/namelists/jules_radiation.nml.html#JULES_RADIATION::swdn_frac_albsoil +url=http://metoffice.github.io/jules/namelists/jules_radiation.nml.html#JULES_RADIATION::swdn_frac_albsoil diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-snow/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-snow/HEAD/rose-meta.conf index 5248b8ca..c862ff65 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-snow/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-snow/HEAD/rose-meta.conf @@ -3,7 +3,7 @@ compulsory=true ns=namelist/JULES Science Settings/jules_snow sort-key=Section-A12k title=Snow options -url=http://jules-lsm.github.io/latest/namelists/jules_snow.nml.html +url=http://metoffice.github.io/jules/namelists/jules_snow.nml.html [namelist:jules_snow=can_clump] compulsory=true @@ -15,7 +15,7 @@ length=: ns=namelist/JULES Science Settings/jules_snow/Radiation parameters sort-key=Panel-D09 type=real -url=http://jules-lsm.github.io/latest/namelists/jules_snow.nml.html#JULES_SNOW::can_clump +url=http://metoffice.github.io/jules/namelists/jules_snow.nml.html#JULES_SNOW::can_clump [namelist:jules_snow=cansnowpft] compulsory=false @@ -25,7 +25,7 @@ fail-if=len(this) != namelist:jules_surface_types=npft; # A value must be given length=: sort-key=Panel-D05 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_snow.nml.html#JULES_SNOW::cansnowpft +url=http://metoffice.github.io/jules/namelists/jules_snow.nml.html#JULES_SNOW::cansnowpft [namelist:jules_snow=i_basal_melting_opt] compulsory=true @@ -33,7 +33,7 @@ description=Option for melting at the base of the snow pack. !enumeration=true ns=namelist/JULES Science Settings/jules_snow/Other parameters sort-key=Panel-D17 -url=http://jules-lsm.github.io/latest/namelists/jules_snow.nml.html#JULES_SNOW::i_basal_melting_opt +url=http://metoffice.github.io/jules/namelists/jules_snow.nml.html#JULES_SNOW::i_basal_melting_opt value-titles=No basal melting,Instantaneous basal melting values=0,1 @@ -43,7 +43,7 @@ description=Option for rate of growth of snow grains. !enumeration=true ns=namelist/JULES Science Settings/jules_snow/Other parameters sort-key=Panel-D04 -url=http://jules-lsm.github.io/latest/namelists/jules_snow.nml.html#JULES_SNOW::i_grain_growth_opt +url=http://metoffice.github.io/jules/namelists/jules_snow.nml.html#JULES_SNOW::i_grain_growth_opt value-titles=Marshall1989,Taillandier2007_ET values=0,1 @@ -53,7 +53,7 @@ description=Option for method of relayering the snow pack in the multilayer sche !enumeration=true ns=namelist/JULES Science Settings/jules_snow/Other parameters sort-key=Panel-D01e -url=http://jules-lsm.github.io/latest/namelists/jules_snow.nml.html#JULES_SNOW::i_relayer_opt +url=http://metoffice.github.io/jules/namelists/jules_snow.nml.html#JULES_SNOW::i_relayer_opt value-titles=Original Scheme,Relayer inverse of grain size values=0,1 @@ -66,7 +66,7 @@ length=: ns=namelist/JULES Science Settings/jules_snow/Radiation parameters sort-key=Panel-D10 type=real -url=http://jules-lsm.github.io/latest/namelists/jules_snow.nml.html#JULES_SNOW::n_lai_exposed +url=http://metoffice.github.io/jules/namelists/jules_snow.nml.html#JULES_SNOW::n_lai_exposed [namelist:jules_snow=rho_snow_fresh] compulsory=false @@ -75,7 +75,7 @@ description=Density of fresh snow (kg m-3) ns=namelist/JULES Science Settings/jules_snow/Other parameters sort-key=Panel-D01b type=real -url=http://jules-lsm.github.io/latest/namelists/jules_snow.nml.html#JULES_SNOW::rho_snow_fresh +url=http://metoffice.github.io/jules/namelists/jules_snow.nml.html#JULES_SNOW::rho_snow_fresh [namelist:jules_snow=unload_rate_u] compulsory=true @@ -86,7 +86,7 @@ length=: ns=namelist/JULES Science Settings/jules_snow/Other parameters sort-key=Panel-D13 type=real -url=http://jules-lsm.github.io/latest/namelists/jules_snow.nml.html#JULES_SNOW::unload_rate_u +url=http://metoffice.github.io/jules/namelists/jules_snow.nml.html#JULES_SNOW::unload_rate_u # Dummy page to force sort order for Snow other parameters [namespace:snow_other] diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-soil/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-soil/HEAD/rose-meta.conf index 49a87b62..1b59f88f 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-soil/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-soil/HEAD/rose-meta.conf @@ -3,7 +3,7 @@ compulsory=true ns=namelist/JULES Science Settings/jules_soil sort-key=Section-A12j title=Soil options -url=http://jules-lsm.github.io/latest/namelists/jules_soil.nml.html#namelist-JULES_SOIL +url=http://metoffice.github.io/jules/namelists/jules_soil.nml.html#namelist-JULES_SOIL [namelist:jules_soil=l_dpsids_dsdz] compulsory=true @@ -12,7 +12,7 @@ description=Calculate vertical gradient of soil suction with the assumption of l !kind=default sort-key=Panel-E03 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_soil.nml.html#JULES_SOIL::l_dpsids_dsdz +url=http://metoffice.github.io/jules/namelists/jules_soil.nml.html#JULES_SOIL::l_dpsids_dsdz [namelist:jules_soil=l_soil_sat_down] compulsory=true @@ -20,7 +20,7 @@ description=Direction of water in excess of saturation !kind=default sort-key=Panel-E04 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_soil.nml.html#JULES_SOIL::l_soil_sat_down +url=http://metoffice.github.io/jules/namelists/jules_soil.nml.html#JULES_SOIL::l_soil_sat_down [namelist:jules_soil=l_vg_soil] compulsory=true @@ -28,4 +28,4 @@ description=Switch for van Genuchten soil hydraulic model. !kind=default sort-key=Panel-E02 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_soil.nml.html#JULES_SOIL::l_vg_soil +url=http://metoffice.github.io/jules/namelists/jules_soil.nml.html#JULES_SOIL::l_vg_soil diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface-types/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface-types/HEAD/rose-meta.conf index 42ff6a41..59a70716 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface-types/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface-types/HEAD/rose-meta.conf @@ -3,7 +3,7 @@ compulsory=true ns=namelist/JULES Surface Types/jules_surface_types sort-key=Section-A12a title=JULES Surface Types -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html [namelist:jules_surface_types=brd_leaf] description=Pseudo level of broadleaf PFT @@ -11,7 +11,7 @@ fail-if=this > namelist:jules_surface_types=npft; # Pseudo level must be less th range=1: sort-key=Panel-A1a type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::brd_leaf +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::brd_leaf [namelist:jules_surface_types=c3_grass] description=Pseudo level of C3 grass PFT @@ -19,7 +19,7 @@ fail-if=this > namelist:jules_surface_types=npft; # Pseudo level must be less th range=1: sort-key=Panel-A3a type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::c3_grass +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::c3_grass [namelist:jules_surface_types=c4_grass] description=Pseudo level of C4 grass PFT @@ -27,7 +27,7 @@ fail-if=this > namelist:jules_surface_types=npft; # Pseudo level must be less th range=1: sort-key=Panel-A4a type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::c4_grass +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::c4_grass [namelist:jules_surface_types=ice] description=Pseudo level of ice surface type @@ -36,7 +36,7 @@ fail-if=this > (namelist:jules_surface_types=npft + namelist:jules_surface_types range=1: sort-key=Panel-A9a type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::ice +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::ice [namelist:jules_surface_types=lake] description=Pseudo level of lake surface type @@ -45,7 +45,7 @@ fail-if=this > (namelist:jules_surface_types=npft + namelist:jules_surface_types range=1: sort-key=Panel-A7a type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::lake +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::lake [namelist:jules_surface_types=ndl_leaf] description=Pseudo level of needleleaf PFT @@ -53,7 +53,7 @@ fail-if=this > namelist:jules_surface_types=npft; # Pseudo level must be less th range=1: sort-key=Panel-A2a type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::ndl_leaf +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::ndl_leaf [namelist:jules_surface_types=nnvg] compulsory=true @@ -61,7 +61,7 @@ description=The number of non-plant surface types to be modelled range=1: sort-key=Panel-A0b type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::nnvg +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::nnvg [namelist:jules_surface_types=npft] compulsory=true @@ -69,7 +69,7 @@ description=The number of plant functional types to be modelled range=0: sort-key=Panel-A0a type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::npft +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::npft [namelist:jules_surface_types=shrub] description=Pseudo level of shrub PFT @@ -77,7 +77,7 @@ fail-if=this > namelist:jules_surface_types=npft; # Pseudo level must be less th range=1: sort-key=Panel-A5a type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::shrub +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::shrub [namelist:jules_surface_types=soil] compulsory=true @@ -87,7 +87,7 @@ fail-if=this > (namelist:jules_surface_types=npft + namelist:jules_surface_types range=1: sort-key=Panel-A8 type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::soil +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::soil [namelist:jules_surface_types=urban] compulsory=true @@ -98,7 +98,7 @@ fail-if=this > (namelist:jules_surface_types=npft + namelist:jules_surface_types range=-1,1: sort-key=Panel-A6a type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::urban +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::urban [namelist:jules_surface_types=urban_canyon] compulsory=true @@ -110,7 +110,7 @@ fail-if=this > namelist:jules_surface_types=npft + namelist:jules_surface_types= range=-1,1: sort-key=Panel-A6b type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::urban_canyon +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::urban_canyon [namelist:jules_surface_types=urban_roof] compulsory=true @@ -122,4 +122,4 @@ fail-if=this > namelist:jules_surface_types=npft + namelist:jules_surface_types= range=-1,1: sort-key=Panel-A6c type=integer -url=http://jules-lsm.github.io/latest/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::urban_roof +url=http://metoffice.github.io/jules/namelists/jules_surface_types.nml.html#JULES_SURFACE_TYPES::urban_roof diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface/HEAD/rose-meta.conf index 210458ce..844b7c45 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-surface/HEAD/rose-meta.conf @@ -4,7 +4,7 @@ description=Options for surface parametrisations ns=namelist/JULES Science Settings/jules_surface sort-key=Section-A12e title=Surface options -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html [namelist:jules_surface=all_tiles] compulsory=true @@ -12,7 +12,7 @@ description=Do calculations of tile properties on all tiles (except land ice) =for all gridpoints even when the tile fraction is zero !enumeration=true sort-key=Panel-F10 -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::all_tiles +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::all_tiles value-titles=Off,On values=0,1 @@ -22,7 +22,7 @@ description=Baseline mean anthropogenic heat flux for Flanner scheme !kind=double sort-key=Panel-F03b type=real -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::anthrop_heat_mean +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::anthrop_heat_mean [namelist:jules_surface=anthrop_heat_option] compulsory=true @@ -30,7 +30,7 @@ description=Options for calculating anthropogenic heat !enumeration=true sort-key=Panel-F03a trigger=namelist:jules_surface=anthrop_heat_mean: 1; -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::anthrop_heat_option +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::anthrop_heat_option value-titles=DUKES fixed annual cycle, Flanner latitude-dependent annual and diurnal cycles values=0,1 @@ -41,7 +41,7 @@ description=Coupling coefficient for co-limitation ns=namelist/JULES Science Settings/jules_surface/Parameters sort-key=c type=real -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::beta1 +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::beta1 [namelist:jules_surface=beta2] compulsory=true @@ -50,7 +50,7 @@ description=Coupling coefficient for co-limitation ns=namelist/JULES Science Settings/jules_surface/Parameters sort-key=d type=real -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::beta2 +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::beta2 [namelist:jules_surface=beta_cnv_bl] compulsory=true @@ -60,7 +60,7 @@ ns=namelist/JULES Science Settings/jules_surface/Parameters range=0.0: sort-key=Panel-F11a type=real -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::beta_cnv_bl +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::beta_cnv_bl [namelist:jules_surface=cor_mo_iter] compulsory=true @@ -68,7 +68,7 @@ description=Corrections to Monin-Obukhov surface exchange calculation !enumeration=true sort-key=Panel-F11 trigger=namelist:jules_surface=beta_cnv_bl: 4; -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::cor_mo_iter +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::cor_mo_iter value-titles=Correct convective gustiness in low winds, =Correct U* in dust scheme, =Limit Obukhov length in low winds, @@ -131,7 +131,7 @@ description=Factor in expressions for limitation of photosynthesis ns=namelist/JULES Science Settings/jules_surface/Parameters sort-key=e type=real -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::fwe_c3 +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::fwe_c3 [namelist:jules_surface=fwe_c4] compulsory=true @@ -141,7 +141,7 @@ description=Factor in expressions for limitation of photosynthesis ns=namelist/JULES Science Settings/jules_surface/Parameters sort-key=f type=real -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::fwe_c4 +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::fwe_c4 [namelist:jules_surface=hleaf] compulsory=true @@ -150,7 +150,7 @@ description=Specific heat capacity of leaves (J / K / kg Carbon) ns=namelist/JULES Science Settings/jules_surface/Parameters sort-key=a type=real -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::hleaf +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::hleaf [namelist:jules_surface=hwood] compulsory=true @@ -159,7 +159,7 @@ description=Specific heat capacity of wood (J / K / kg Carbon) ns=namelist/JULES Science Settings/jules_surface/Parameters sort-key=b type=real -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::hwood +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::hwood [namelist:jules_surface=i_modiscopt] compulsory=true @@ -178,7 +178,7 @@ description=Method of diagnosing the screen temperature !enumeration=true fail-if=(this == 2 or this == 3) and namelist:jules_model_environment=l_jules_parent == 0; # The preferred option in standalone is 0. The decoupled option specified is not recommended until driving JULES with a decoupled variable is fully tested. sort-key=Panel-F12 -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::iscrntdiag +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::iscrntdiag value-titles=No decoupling, =Decoupled in very stable conditions, =Decoupled with transitional effects, @@ -192,7 +192,7 @@ sort-key=Panel-F03 trigger=namelist:jules_surface=anthrop_heat_option: .true.; =namelist:jules_urban=anthrop_heat_scale: .true.; type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_anthrop_heat_src +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::l_anthrop_heat_src [namelist:jules_surface=l_elev_land_ice] compulsory=true @@ -208,21 +208,21 @@ trigger=namelist:jules_soil=dzsoil_elev: .true.; =namelist:jules_surface_types=elev_ice: .true.; =namelist:jules_surface_types=elev_rock: .true.; type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_elev_land_ice +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::l_elev_land_ice [namelist:jules_surface=l_elev_lw_down] compulsory=true description=Adjust downward longwave radiation for elevated tiles sort-key=Panel-F05 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_elev_lw_down +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::l_elev_lw_down [namelist:jules_surface=l_epot_corr] compulsory=true description=Use correction to calculation of potential evaporation sort-key=Panel-F06 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_epot_corr +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::l_epot_corr [namelist:jules_surface=l_flake_model] compulsory=true @@ -238,21 +238,21 @@ compulsory=true description=Use implicit numerics to update land ice temperatures sort-key=Panel-F07 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_land_ice_imp +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::l_land_ice_imp [namelist:jules_surface=l_mo_buoyancy_calc] compulsory=true description=Switch for using interacting buoyancy in Monin-Obukhov calculation sort-key=Panel-F14 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_mo_buoyancy_calc +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::l_mo_buoyancy_calc [namelist:jules_surface=l_point_data] compulsory=true description=Using point rainfall data sort-key=Panel-F08 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_point_data +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::l_point_data [namelist:jules_surface=l_urban2t] compulsory=true @@ -266,7 +266,7 @@ trigger=namelist:jules_surface_types=urban_canyon: .true.; =namelist:urban_properties: .true.; =namelist:run_stochastic=z0_urban_mult_rp: .true. ; type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_surface.nml.html#JULES_SURFACE::l_urban2t +url=http://metoffice.github.io/jules/namelists/jules_surface.nml.html#JULES_SURFACE::l_urban2t [namelist:jules_surface=l_vary_z0m_soil] compulsory=true diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-urban/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-urban/HEAD/rose-meta.conf index 4f1e6fb2..248da079 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-urban/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-urban/HEAD/rose-meta.conf @@ -8,7 +8,7 @@ description=Sets the options available for the two-tile urban schemes including ns=namelist/JULES Science Settings/jules_urban sort-key=Section-A12o title=Urban options -url=http://jules-lsm.github.io/latest/namelists/urban.nml.html#namelist-JULES_URBAN +url=http://metoffice.github.io/jules/namelists/urban.nml.html#namelist-JULES_URBAN [namelist:jules_urban=anthrop_heat_scale] compulsory=true @@ -16,35 +16,35 @@ description=Distribution scaling factor for anthropogenic heat flux !kind=default range=0:1 type=real -url=http://jules-lsm.github.io/latest/namelists/urban.nml.html#JULES_URBAN::anthrop_heat_scale +url=http://metoffice.github.io/jules/namelists/urban.nml.html#JULES_URBAN::anthrop_heat_scale [namelist:jules_urban=l_moruses_albedo] compulsory=true description=Use MORUSES parameterisation for effective canyon albedo (snow free) type=logical -url=http://jules-lsm.github.io/latest/namelists/urban.nml.html#JULES_URBAN::l_moruses_albedo +url=http://metoffice.github.io/jules/namelists/urban.nml.html#JULES_URBAN::l_moruses_albedo [namelist:jules_urban=l_moruses_emissivity] compulsory=true description=Use MORUSES parameterisation for effective canyon emissivity type=logical -url=http://jules-lsm.github.io/latest/namelists/urban.nml.html#JULES_URBAN::l_moruses_emissivity +url=http://metoffice.github.io/jules/namelists/urban.nml.html#JULES_URBAN::l_moruses_emissivity [namelist:jules_urban=l_moruses_rough] compulsory=true description=Use MORUSES parameterisation for effective roughness length for heat type=logical -url=http://jules-lsm.github.io/latest/namelists/urban.nml.html#JULES_URBAN::l_moruses_rough +url=http://metoffice.github.io/jules/namelists/urban.nml.html#JULES_URBAN::l_moruses_rough [namelist:jules_urban=l_moruses_storage] compulsory=true description=Use MORUSES parameterisation for thermal inertia and coupling with underlying soil trigger=namelist:jules_urban=l_moruses_storage_thin: .true.; type=logical -url=http://jules-lsm.github.io/latest/namelists/urban.nml.html#JULES_URBAN::l_moruses_storage +url=http://metoffice.github.io/jules/namelists/urban.nml.html#JULES_URBAN::l_moruses_storage [namelist:jules_urban=l_moruses_storage_thin] compulsory=true description=Use thin roofs (includes effects of insulation) type=logical -url=http://jules-lsm.github.io/latest/namelists/urban.nml.html#JULES_URBAN::l_moruses_storage_thin +url=http://metoffice.github.io/jules/namelists/urban.nml.html#JULES_URBAN::l_moruses_storage_thin diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-vegetation/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-vegetation/HEAD/rose-meta.conf index f59be621..e19371cd 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-vegetation/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-vegetation/HEAD/rose-meta.conf @@ -4,14 +4,14 @@ description=Options for vegetation parametrisations ns=namelist/JULES Science Settings/jules_vegetation sort-key=Section-A12f title=Vegetation options -url=http://jules-lsm.github.io/latest/namelists/jules_vegetation.nml.html +url=http://metoffice.github.io/jules/namelists/jules_vegetation.nml.html [namelist:jules_vegetation=can_rad_mod] compulsory=true description=Vegetation canopy radiation model !enumeration=true sort-key=Panel-I13 -url=http://jules-lsm.github.io/latest/namelists/jules_vegetation.nml.html#JULES_VEGETATION::can_rad_mod +url=http://metoffice.github.io/jules/namelists/jules_vegetation.nml.html#JULES_VEGETATION::can_rad_mod value-titles=1: Single canopy layer, =4: Multi-layer two stream approach, =5: Multi-layer with Sunfleck penetration and sunlit and shaded leaves, @@ -23,7 +23,7 @@ description=Logical for capping vegetation canopy areal thermal heat capacity !kind=default sort-key=Panel-I04 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_vegetation.nml.html#JULES_VEGETATION::l_limit_canhc +url=http://metoffice.github.io/jules/namelists/jules_vegetation.nml.html#JULES_VEGETATION::l_limit_canhc [namelist:jules_vegetation=l_spec_veg_z0] compulsory=true @@ -31,4 +31,4 @@ description=Logical switch for setting explicit vegetation roughness lengths !kind=default sort-key=Panel-I05 type=logical -url=http://jules-lsm.github.io/latest/namelists/jules_vegetation.nml.html#JULES_VEGETATION::l_spec_veg_z0 +url=http://metoffice.github.io/jules/namelists/jules_vegetation.nml.html#JULES_VEGETATION::l_spec_veg_z0 From 5e6b08d8d83d4da50de717481cc10af9a5225b90 Mon Sep 17 00:00:00 2001 From: Maggie Hendry Date: Wed, 4 Feb 2026 16:35:54 +0000 Subject: [PATCH 4/4] * JULES source set to local clone. * `jules_pftparm` migrated to **jules-shared**. * Hardwired values moved to upgrade macro. * Unused items for now ignored. * Plumbing in `jules_physics_init` incomplete and has an issue with the incorrect shape of the enumerated arrays - does not compile. --- dependencies.yaml | 4 +- .../rose-meta/jules-lfric/HEAD/rose-meta.conf | 123 ++ .../jules-pftparm/HEAD/rose-meta.conf | 1159 ++++++++++++++++- .../source/support/jules_physics_init_mod.f90 | 161 ++- 4 files changed, 1357 insertions(+), 90 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index a52d14b2..58de14bb 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -22,8 +22,8 @@ casim: ref: 2025.12.1 jules: - source: git@github.com:MetOffice/jules.git - ref: 2025.12.1 + source: margaret.hendry@cazldf00006V.spice.sc.metoffice.gov.uk:/home/users/margaret.hendry/jules_fork/jules + ref: lfric_apps: source: diff --git a/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf index 66d84f38..4a1b2867 100644 --- a/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/jules-lfric/HEAD/rose-meta.conf @@ -52,6 +52,129 @@ trigger=namelist:jules_surface=l_elev_land_ice: 'not_lfric'; value-titles=LFRic values='lfric' +[!namelist:jules_pftparm=act_jmax_io] + +[!namelist:jules_pftparm=act_vcmax_io] + +[!namelist:jules_pftparm=aef_io] + +[!namelist:jules_pftparm=albsnc_max_io] + +[!namelist:jules_pftparm=albsnf_max_io] + +[!namelist:jules_pftparm=alnir_io] + +[!namelist:jules_pftparm=alpar_io] + +[!namelist:jules_pftparm=alpha_elec_io] + +[!namelist:jules_pftparm=avg_ba_io] + +[namelist:jules_pftparm=c3_io] +values='not_c3','c3' + +[!namelist:jules_pftparm=ccleaf_max_io] + +[!namelist:jules_pftparm=ccleaf_min_io] + +[!namelist:jules_pftparm=ccwood_max_io] + +[!namelist:jules_pftparm=ccwood_min_io] + +[!namelist:jules_pftparm=ci_st_io] + +[!namelist:jules_pftparm=deact_jmax_io] + +[!namelist:jules_pftparm=deact_vcmax_io] + +[!namelist:jules_pftparm=dfp_dcuo_io] + +[!namelist:jules_pftparm=ds_jmax_io] + +[!namelist:jules_pftparm=ds_vcmax_io] + +[!namelist:jules_pftparm=fef_bc_io] + +[!namelist:jules_pftparm=fef_c2h4_io] + +[!namelist:jules_pftparm=fef_c2h6_io] + +[!namelist:jules_pftparm=fef_c3h8_io] + +[!namelist:jules_pftparm=fef_ch4_io] + +[!namelist:jules_pftparm=fef_co2_io] + +[!namelist:jules_pftparm=fef_co_io] + +[!namelist:jules_pftparm=fef_dms_io] + +[!namelist:jules_pftparm=fef_hcho_io] + +[!namelist:jules_pftparm=fef_mecho_io] + +[!namelist:jules_pftparm=fef_nh3_io] + +[!namelist:jules_pftparm=fef_nox_io] + +[!namelist:jules_pftparm=fef_oc_io] + +[!namelist:jules_pftparm=fef_so2_io] + +[!namelist:jules_pftparm=fire_mort_io] + +[!namelist:jules_pftparm=fl_o3_ct_io] + +[!namelist:jules_pftparm=fsmc_mod_io] +values='weight','average' + +[!namelist:jules_pftparm=fsmc_p0_io] + +[!namelist:jules_pftparm=g1_stomata_io] + +[!namelist:jules_pftparm=gpp_st_io] + +[!namelist:jules_pftparm=ief_io] + +[!namelist:jules_pftparm=jv25_ratio_io] + +[!namelist:jules_pftparm=kext_io] + +[!namelist:jules_pftparm=knl_io] + +[!namelist:jules_pftparm=mef_io] + +[!namelist:jules_pftparm=omega_io] + +[!namelist:jules_pftparm=omnir_io] + +[namelist:jules_pftparm=orient_io] +values='spherical','horizontal' + +[!namelist:jules_pftparm=psi_close_io] + +[!namelist:jules_pftparm=psi_open_io] + +[!namelist:jules_pftparm=sox_a_io] + +[!namelist:jules_pftparm=sox_p50_io] + +[!namelist:jules_pftparm=sox_rp_min_io] + +[!namelist:jules_pftparm=sug_g0_io] + +[!namelist:jules_pftparm=sug_grec_io] + +[!namelist:jules_pftparm=sug_yg_io] + +[!namelist:jules_pftparm=tef_io] + +[!namelist:jules_pftparm=z0hm_classic_pft_io] + +[!namelist:jules_pftparm=z0hm_pft_io] + +[!namelist:jules_pftparm=z0v_io] + [namelist:jules_radiation=fixed_sea_albedo] description=If using i_sea_alb_method='fixed', the global value of albedo to use. diff --git a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-pftparm/HEAD/rose-meta.conf b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-pftparm/HEAD/rose-meta.conf index bcbaa80d..dc3220a3 100644 --- a/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-pftparm/HEAD/rose-meta.conf +++ b/interfaces/jules_interface/rose-meta/lfric-jules-shared/jules-pftparm/HEAD/rose-meta.conf @@ -9,6 +9,58 @@ title=PFT parameters url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#namelist-JULES_PFTPARM widget[rose-config-edit]=cylc8_compat.PageArrayTable +[namelist:jules_pftparm=a_wl_io] +compulsory=true +description=Allometric coefficient relating the target woody biomass to the leaf area index (kg carbon m-2) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::a_wl_io + +[namelist:jules_pftparm=a_ws_io] +compulsory=true +description=Woody biomass as a multiple of live stem biomass +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::a_ws_io + +[namelist:jules_pftparm=act_jmax_io] +compulsory=true +description=Activation energy for temperature response of Jmax +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO20b +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::act_jmax_io + +[namelist:jules_pftparm=act_vcmax_io] +compulsory=true +description=Activation energy for temperature response of Vcmax +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO20b +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::act_vcmax_io + +[namelist:jules_pftparm=aef_io] +compulsory=true +description=Acetone emission factor per PFT (μgC g-1 h-1) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO10 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::aef_io + [namelist:jules_pftparm=albsnc_max_io] compulsory=true description=Snow-covered albedo for large LAI @@ -21,6 +73,53 @@ sort-key=Panel-HR03 type=real url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::albsnc_max_io +[namelist:jules_pftparm=albsnc_min_io] +compulsory=true +description=Snow-covered albedo for zero LAI +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::albsnc_min_io + +[namelist:jules_pftparm=albsnf_max_io] +compulsory=true +description=Snow-free albedo for large LAI +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::albsnf_max_io + +[namelist:jules_pftparm=albsnf_maxl_io] +compulsory=true +description=Lower limit on albsnf_max_io +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::albsnf_maxl_io + +[namelist:jules_pftparm=albsnf_maxu_io] +compulsory=true +description=Upper limit on albsnf_max_io +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::albsnf_maxu_io + [namelist:jules_pftparm=alnir_io] compulsory=true description=NIR Leaf reflection coeff. @@ -34,6 +133,30 @@ sort-key=Panel-HR03 type=real url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alnir_io +[namelist:jules_pftparm=alnirl_io] +compulsory=true +description=Lower limit on alnir_io +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alnirl_io + +[namelist:jules_pftparm=alniru_io] +compulsory=true +description=Upper limit on alnir_io +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alniru_io + [namelist:jules_pftparm=alpar_io] compulsory=true description=VIS Leaf reflection coeff. @@ -47,6 +170,94 @@ sort-key=Panel-HR03 type=real url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alpar_io +[namelist:jules_pftparm=alparl_io] +compulsory=true +description=Lower limit on alpar_io +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alparl_io + +[namelist:jules_pftparm=alparu_io] +compulsory=true +description=Upper limit on alpar_io +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alparu_io + +[namelist:jules_pftparm=alpha_elec_io] +compulsory=true +description=Quantum yield of electron transport (mol electrons/mol PAR photons) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO20 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alpha_elec_io + +[namelist:jules_pftparm=alpha_io] +compulsory=true +description=Quantum efficiency of photosynthesis (mol CO2/mol PAR photons) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::alpha_io + +[namelist:jules_pftparm=avg_ba_io] +compulsory=true +description=Average burnt area on PFTs per fire event (fraction) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::avg_ba_io + +[namelist:jules_pftparm=b_wl_io] +compulsory=true +description=Allometric exponent relating the target woody biomass to the leaf area index +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::b_wl_io + +[namelist:jules_pftparm=c3_io] +compulsory=true +description=Flag indicating whether PFT is C3 type +!enumeration=true +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO03 +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::c3_io +value-titles=Not C3,C3 +values=0,1 + +[namelist:jules_pftparm=can_struct_a_io] +compulsory=true +description=Canopy structure factor (1.0 is structurally homogeneous). +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +sort-key=Panel-HR02 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::can_struct_a_io + [namelist:jules_pftparm=catch0_io] compulsory=true description=Minimum canopy capacity (kg m-2) @@ -58,6 +269,56 @@ sort-key=Panel-HO05 type=real url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::catch0_io +[namelist:jules_pftparm=ccleaf_max_io] +compulsory=true +description=Leaf maximum combustion completeness +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::ccleaf_max_io + +[namelist:jules_pftparm=ccleaf_min_io] +compulsory=true +description=Leaf minimum combustion completeness +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::ccleaf_min_io + +[namelist:jules_pftparm=ccwood_max_io] +compulsory=true +description=Wood maximum combustion completeness +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::ccwood_max_io + +[namelist:jules_pftparm=ccwood_min_io] +compulsory=true +description=Wood minimum combustion completeness +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::ccwood_min_io + +[namelist:jules_pftparm=ci_st_io] +compulsory=true +description=Leaf-internal CO2 concentration (Pa) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO10 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::ci_st_io + [namelist:jules_pftparm=dcatch_dlai_io] compulsory=true description=Rate of change of canopy capacity with LAI (kg m-2) @@ -69,67 +330,903 @@ sort-key=Panel-HO05 type=real url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::dcatch_dlai_io -[namelist:jules_pftparm=fsmc_p0_io] +[namelist:jules_pftparm=deact_jmax_io] compulsory=true -description=PFT-dependent parameter governing the threshold at which the plant starts to experience water stress - =due to lack of water in the soil +description=Deactivation energy for temperature response of Jmax fail-if=len(this) != namelist:jules_surface_types=npft -!kind=default +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO20 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::deact_jmax_io + +[namelist:jules_pftparm=deact_vcmax_io] +compulsory=true +description=Deactivation energy for temperature response of Vcmax +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO20 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::deact_vcmax_io + +[namelist:jules_pftparm=dfp_dcuo_io] +compulsory=true +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO11 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::dfp_dcuo_io + +[namelist:jules_pftparm=dgl_dm_io] +compulsory=true +description=Rate of change of leaf turnover rate with moisture availability +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double length=: ns=namelist/JULES Science Settings/jules_pftparm/Other parameters sort-key=Panel-HO05 type=real -url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fsmc_p0_io +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::dgl_dm_io -[namelist:jules_pftparm=kext_io] +[namelist:jules_pftparm=dgl_dt_io] compulsory=true -description=Light extinction coefficient - =Used with Beers Law for light absorption through tile canopies +description=Rate of change of leaf turnover rate with temperature (K-1) fail-if=len(this) != namelist:jules_surface_types=npft -!kind=default +!kind=double length=: -ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters -sort-key=Panel-HR02 +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 type=real -url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::kext_io +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::dgl_dt_io -[namelist:jules_pftparm=knl_io] +[namelist:jules_pftparm=dqcrit_io] compulsory=true -description=Decay of nitrogen through the canopy for canopy radiation model 6 - =SHOULD NOT BE THE SAME AS KN! +description=Critical humidity deficit (kg H2O per kg air) fail-if=len(this) != namelist:jules_surface_types=npft -!kind=default +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO21a +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::dqcrit_io + +[namelist:jules_pftparm=ds_jmax_io] +compulsory=true +description=Entropy factor for temperature response of Jmax +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO20a +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::ds_jmax_io + +[namelist:jules_pftparm=ds_vcmax_io] +compulsory=true +description=Entropy factor for temperature response of Vcmax +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO20a +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::ds_vcmax_io + +[namelist:jules_pftparm=dust_veg_scj_io] +compulsory=true +description=Dust emissions scaling factor for each pft type + =NOT APPLICABLE TO STANDALONE +fail-if=len(this) != namelist:jules_surface_types=npft +help=This is applied when dust_veg_emiss is non-zero and + =allows the dust emission from different plant functional + =types to be reduced/switched off. +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HOX +type=real + +[namelist:jules_pftparm=dz0v_dh_io] +compulsory=true +description=Rate of change of vegetation roughness length for momentum with height +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double length=: ns=namelist/JULES Science Settings/jules_pftparm/Other parameters sort-key=Panel-HO05 type=real -url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::knl_io +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::dz0v_dh_io -[namelist:jules_pftparm=omega_io] +[namelist:jules_pftparm=emis_pft_io] compulsory=true -description=VIS Leaf scattering coeff. - =Leaf scattering coefficient for wavelengths < 690nm (Photosyntehtically Active Radiation). +description=Surface emissivity fail-if=len(this) != namelist:jules_surface_types=npft -!kind=default +!kind=double length=: ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters range=0:1 -sort-key=Panel-HR03 +sort-key=Panel-HR04 type=real -url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omega_io +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::emis_pft_io -[namelist:jules_pftparm=omnir_io] +[namelist:jules_pftparm=eta_sl_io] compulsory=true -description=NIR Leaf scattering coeff. - =Leaf scattering coefficient for Near Infra Red wavelengths > 690nm. +description=Live stemwood coefficient (kg C/m/LAI) fail-if=len(this) != namelist:jules_surface_types=npft -!kind=default +!kind=double length=: -ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters -range=0:1 -sort-key=Panel-HR03 +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 type=real -url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omnir_io +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::eta_sl_io + +[namelist:jules_pftparm=f0_io] +compulsory=true +description=CI / CA for DQ = 0 +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO21a +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::f0_io + +[namelist:jules_pftparm=fd_io] +compulsory=true +description=Scale factor for dark respiration +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fd_io + +[namelist:jules_pftparm=fef_bc_io] +compulsory=true +description=Black carbon (BC) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_bc_io + +[namelist:jules_pftparm=fef_c2h4_io] +compulsory=true +description=Ethene (C2H4) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_c2h4_io + +[namelist:jules_pftparm=fef_c2h6_io] +compulsory=true +description=Ethane (C2H6) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_c2h6_io + +[namelist:jules_pftparm=fef_c3h8_io] +compulsory=true +description=Propane (C3H8) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_c3h8_io + +[namelist:jules_pftparm=fef_ch4_io] +compulsory=true +description=Methane (CH4) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_ch4_io + +[namelist:jules_pftparm=fef_co2_io] +compulsory=true +description=Carbon dioxide (CO2) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_co2_io + +[namelist:jules_pftparm=fef_co_io] +compulsory=true +description=Carbon monoxide (CO) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_co_io + +[namelist:jules_pftparm=fef_dms_io] +compulsory=true +description=Dimethyl sulfide (DMS) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_dms_io + +[namelist:jules_pftparm=fef_hcho_io] +compulsory=true +description=Formaldehyde (HCHO) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_hcho_io + +[namelist:jules_pftparm=fef_mecho_io] +compulsory=true +description=Acetaldehyde (MeCHO) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_mecho_io + +[namelist:jules_pftparm=fef_nh3_io] +compulsory=true +description=Ammonia (NH3) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_nh3_io + +[namelist:jules_pftparm=fef_nox_io] +compulsory=true +description=Nitrogen oxides (NOx) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_nox_io + +[namelist:jules_pftparm=fef_oc_io] +compulsory=true +description=Organic carbon (OC) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_oc_io + +[namelist:jules_pftparm=fef_so2_io] +compulsory=true +description=Sulphur dioxide (SO2) emission factor from natural fires (INFERNO) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0: +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fef_so2_io + +[namelist:jules_pftparm=fire_mort_io] +compulsory=true +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +range=0:1 +sort-key=Panel-HO16 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fire_mort_io + +[namelist:jules_pftparm=fl_o3_ct_io] +compulsory=true +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO11 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fl_o3_ct_io + +[namelist:jules_pftparm=fsmc_mod_io] +compulsory=true +description=Switch for method of weighting the contribution that different soil layers make to the soil moisture + =availability factor fsmc +!enumeration=true +fail-if=len(this) != namelist:jules_surface_types=npft; + =namelist:jules_soil_biogeochem=l_layeredc == '.true.' and namelist:jules_soil_biogeochem=soil_bgc_model == '2' and any(this == 1); # fsmc_mod=1 cannot be used with layered 4-pool soil C model +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fsmc_mod_io +value-titles=weight water stress in layers by root fraction, use average root zone properties +values=0,1 + +[namelist:jules_pftparm=fsmc_of_io] +compulsory=true +description=Moisture availability below which leaves are dropped +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fsmc_of_io + +[namelist:jules_pftparm=fsmc_p0_io] +compulsory=true +description=PFT-dependent parameter governing the threshold at which the plant starts to experience water stress + =due to lack of water in the soil +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=default +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::fsmc_p0_io + +[namelist:jules_pftparm=g1_stomata_io] +compulsory=true +description=Parameter g1 of the Medlyn et al. (2011) model of stomatal conductance. +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO21b +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::g1_stomata_io + +[namelist:jules_pftparm=g_leaf_0_io] +compulsory=true +description=Minimum turnover rate for leaves (/360days) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::g_leaf_0_io + +[namelist:jules_pftparm=glmin_io] +compulsory=true +description=Minimum leaf conductance for H2O (m s-1) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::glmin_io + +[namelist:jules_pftparm=gpp_st_io] +compulsory=true +description=Gross primary production (GPP) at standard conditions (kgC m-2 s-1 ) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO10 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::gpp_st_io + +[namelist:jules_pftparm=gsoil_f_io] +compulsory=true +description=Soil evaporation enhancement factor +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::gsoil_f_io + +[namelist:jules_pftparm=hw_sw_io] +compulsory=true +description=Ratio of N in heartwood:stemwood with trait physiology. +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO07 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::hw_sw_io + +[namelist:jules_pftparm=ief_io] +compulsory=true +description=Isoprene emission factor per PFT (μgC g-1 h-1) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO10 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::ief_io + +[namelist:jules_pftparm=infil_f_io] +compulsory=true +description=Infiltration enhancement factor +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::infil_f_io + +[namelist:jules_pftparm=jv25_ratio_io] +compulsory=true +description=Ratio of Jmax to Vcmax at 25 degC. +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO20 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::jv25_ratio_io + +[namelist:jules_pftparm=kext_io] +compulsory=true +description=Light extinction coefficient + =Used with Beers Law for light absorption through tile canopies +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=default +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +sort-key=Panel-HR02 +type=real +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::kext_io + +[namelist:jules_pftparm=kn_io] +compulsory=true +description=Decay of nitrogen through the canopy for canopy radiation models 4-5 +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::kn_io + +[namelist:jules_pftparm=knl_io] +compulsory=true +description=Decay of nitrogen through the canopy for canopy radiation model 6 + =SHOULD NOT BE THE SAME AS KN! +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=default +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::knl_io + +[namelist:jules_pftparm=kpar_io] +compulsory=true +description=PAR Extinction coefficient (m2 leaf / m2 ground) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::kpar_io + +[namelist:jules_pftparm=lai_alb_lim_io] +compulsory=true +description=Minimum LAI for plant canopies in the absence of snow. +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +sort-key=Panel-HR02 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::lai_alb_lim_io + +[namelist:jules_pftparm=lma_io] +compulsory=true +description=Leaf mass per unit area (kgLeaf m-2) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO07 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::lma_io + +[namelist:jules_pftparm=mef_io] +compulsory=true +description=Methanol emission factor per PFT (μgC g-1 h-1) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO10 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::mef_io + +[namelist:jules_pftparm=neff_io] +compulsory=true +description=Scale factor relating Vcmax with leaf nitrogen concentration +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::neff_io + +[namelist:jules_pftparm=nl0_io] +compulsory=true +description=Top leaf nitrogen concentration (kg N/kg C) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::nl0_io + +[namelist:jules_pftparm=nmass_io] +compulsory=true +description=Top leaf nitrogen content per unit mass (kgN kgLeaf-1) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO07 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::nmass_io + +[namelist:jules_pftparm=nr_io] +compulsory=true +description=Root nitrogen concentration with trait physiology +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO07 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::nr_io + +[namelist:jules_pftparm=nr_nl_io] +compulsory=true +description=Ratio of root nitrogen concentration to leaf nitrogen concentration +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::nr_nl_io + +[namelist:jules_pftparm=ns_nl_io] +compulsory=true +description=Ratio of stem nitrogen concentration to leaf nitrogen concentration +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::ns_nl_io + +[namelist:jules_pftparm=nsw_io] +compulsory=true +description=Stemwood nitrogen concentration with trait physiology. +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO07 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::nsw_io + +[namelist:jules_pftparm=omega_io] +compulsory=true +description=VIS Leaf scattering coeff. + =Leaf scattering coefficient for wavelengths < 690nm (Photosyntehtically Active Radiation). +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=default +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omega_io + +[namelist:jules_pftparm=omegal_io] +compulsory=true +description=Lower limit on omega_io +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omegal_io + +[namelist:jules_pftparm=omegau_io] +compulsory=true +description=Upper limit on omega_io(kgLeaf m-2) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omegau_io + +[namelist:jules_pftparm=omnir_io] +compulsory=true +description=NIR Leaf scattering coeff. + =Leaf scattering coefficient for Near Infra Red wavelengths > 690nm. +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=default +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=http://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omnir_io + +[namelist:jules_pftparm=omnirl_io] +compulsory=true +description=Lower limit on omnir_io +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omnirl_io + +[namelist:jules_pftparm=omniru_io] +compulsory=true +description=Upper limit on omnir_io +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +range=0:1 +sort-key=Panel-HR03 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::omniru_io + +[namelist:jules_pftparm=orient_io] +compulsory=true +description=Flag indicating leaf angle distribution +!enumeration=true +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Radiation parameters +sort-key=Panel-HR01 +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::orient_io +value-titles=Spherical,Horizontal +values=0,1 + +[namelist:jules_pftparm=psi_close_io] +compulsory=true +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO19 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::psi_close_io + +[namelist:jules_pftparm=psi_open_io] +compulsory=true +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO19 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::psi_open_io + +[namelist:jules_pftparm=q10_leaf_io] +compulsory=true +description=Q10 factor for plant respiration +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::q10_leaf_io + +[namelist:jules_pftparm=r_grow_io] +compulsory=true +description=Growth respiration fraction +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::r_grow_io + +[namelist:jules_pftparm=rootd_ft_io] +compulsory=true +description=Root depth (m) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::rootd_ft_io + +[namelist:jules_pftparm=sigl_io] +compulsory=true +description=Specific density of leaf carbon (kg C/m2 leaf) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::sigl_io + +[namelist:jules_pftparm=sox_a_io] +compulsory=true +description=The shape parameter in the xylem vulnerability curve +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO21c +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::sox_a_io + +[namelist:jules_pftparm=sox_p50_io] +compulsory=true +description=Xylem water potential at which xylem hydraulic conductance is half its maximum value. (MPa) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO21c +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::sox_p50_io + +[namelist:jules_pftparm=sox_rp_min_io] +compulsory=true +description=Plant minimum hydraulic resistance. (m2 s MPa/mol) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO21c +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::sox_rp_min_io + +[namelist:jules_pftparm=sug_g0_io] +compulsory=true +description=Specific structural carbon production rate (kgC m-2 s-1) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO22 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::sug_g0_io + +[namelist:jules_pftparm=sug_grec_io] +compulsory=true +description=Specific structural carbon recycling rate (kgC m-2 s-1) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO22 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::sug_grec_io + +[namelist:jules_pftparm=sug_yg_io] +compulsory=true +description=Growth yield for SUGAR model +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO22 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::sug_yg_io + +[namelist:jules_pftparm=tef_io] +compulsory=true +description=(Mono-)Terpene emission factor per PFT (μgC g-1 h-1) +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO10 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::tef_io + +[namelist:jules_pftparm=tleaf_of_io] +compulsory=true +description=Temperature below which leaves are dropped (K) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::tleaf_of_io + +[namelist:jules_pftparm=tlow_io] +compulsory=true +description=Lower temperature for photosynthesis (deg C) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::tlow_io + +[namelist:jules_pftparm=tupp_io] +compulsory=true +description=Upper temperature for photosynthesis (deg C) +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO05 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::tupp_io + +[namelist:jules_pftparm=vint_io] +compulsory=true +description=Intercept in VCMAX and NAREA +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO07 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::vint_io + +[namelist:jules_pftparm=vsl_io] +compulsory=true +description=Slope in VCMAX and NAREA +fail-if=len(this) != namelist:jules_surface_types=npft +!kind=double +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HO07 +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::vsl_io + +[namelist:jules_pftparm=z0hm_classic_pft_io] +compulsory=true +description=Ratio of the roughness length for heat to the roughness length for momentum for the CLASSIC aerosol + =scheme only + =NOT APPLICABLE TO STANDALONE +fail-if=len(this) != namelist:jules_surface_types=npft +length=: +ns=namelist/JULES Science Settings/jules_pftparm/Other parameters +sort-key=Panel-HOX +type=real +url=https://metoffice.github.io/jules/namelists/pft_params.nml.html#JULES_PFTPARM::z0hm_classic_pft_io [namelist:jules_pftparm=z0hm_pft_io] compulsory=true diff --git a/interfaces/jules_interface/source/support/jules_physics_init_mod.f90 b/interfaces/jules_interface/source/support/jules_physics_init_mod.f90 index 03322e49..447c29ec 100644 --- a/interfaces/jules_interface/source/support/jules_physics_init_mod.f90 +++ b/interfaces/jules_interface/source/support/jules_physics_init_mod.f90 @@ -20,9 +20,47 @@ module jules_physics_init_mod emis_nvg_io, gs_nvg_io, infil_nvg_io, vf_nvg_io, & z0_nvg_io, z0hm_nvg_io use jules_pftparm_config_mod, only : & - albsnc_max_io, alnir_io, alpar_io, kext_io, & - omega_io, omnir_io, z0hm_pft_io, z0v_io, knl_io, & - fsmc_p0_io, catch0_io, dcatch_dlai_io + fsmc_mod_io, psi_close_io, psi_open_io, & + a_wl_io, a_ws_io, aef_io, & + act_jmax_io, act_vcmax_io, albsnc_max_io, & + albsnc_min_io, albsnf_max_io, albsnf_maxl_io, & + albsnf_maxu_io, alpha_io, alpha_elec_io, & + alnir_io, alnirl_io, alniru_io, & + alpar_io, alparl_io, alparu_io, & + avg_ba_io, b_wl_io, c3_io, & + c3_io_c3, c3_io_not_c3, & + can_struct_a_io, catch0_io, ccleaf_max_io, & + ccleaf_min_io, ccwood_max_io, ccwood_min_io, & + ci_st_io, dcatch_dlai_io, deact_jmax_io, & + deact_vcmax_io, dfp_dcuo_io, dgl_dm_io, & + dgl_dt_io, dqcrit_io, ds_jmax_io, & + ds_vcmax_io, dust_veg_scj_io, dz0v_dh_io, & + emis_pft_io, eta_sl_io, f0_io, & + fef_bc_io, fef_ch4_io, fef_co_io, & + fef_co2_io, fef_nox_io, fef_oc_io, & + fef_c2h4_io, fef_c2h6_io, fef_c3h8_io, & + fef_hcho_io, fef_mecho_io, & + fef_nh3_io, fef_dms_io, & + fef_so2_io, fd_io, fire_mort_io, & + fl_o3_ct_io, fsmc_of_io, fsmc_p0_io, & + sug_g0_io, g1_stomata_io, g_leaf_0_io, & + glmin_io, gpp_st_io, sug_grec_io, & + gsoil_f_io, hw_sw_io, ief_io, & + infil_f_io, jv25_ratio_io, kext_io, & + kn_io, knl_io, kpar_io, & + lai_alb_lim_io, lma_io, mef_io, & + neff_io, nl0_io, nmass_io, & + nr_io, nr_nl_io, ns_nl_io, & + nsw_io, omega_io, omegal_io, & + omegau_io, omnir_io, omnirl_io, & + omniru_io, orient_io, q10_leaf_io, & + r_grow_io, rootd_ft_io, sigl_io, & + tef_io, tleaf_of_io, tlow_io, & + tupp_io, vint_io, vsl_io, & + sug_yg_io, z0hm_pft_io, z0hm_classic_pft_io, & + z0v_io, sox_a_io, sox_p50_io, & + sox_rp_min_io + use jules_radiation_config_mod, only : & fixed_sea_albedo_in => fixed_sea_albedo, & l_hapke_soil_in => l_hapke_soil, & @@ -701,71 +739,80 @@ subroutine jules_physics_init() ! ---------------------------------------------------------------- ! JULES vegetation tile settigs - contained in module pftparm ! ---------------------------------------------------------------- - a_wl=(/ 0.65_r_um, 0.65_r_um, 0.005_r_um, 0.005_r_um, 0.10_r_um /) - a_ws=(/ 10.0_r_um, 10.0_r_um, 1.0_r_um, 1.0_r_um, 10.0_r_um /) + a_wl = real(a_wl_io, r_um) + a_ws = real(a_ws_io, r_um) albsnc_max = real(albsnc_max_io, r_um) - albsnc_min=(/ 3.0e-1_r_um, 3.0e-1_r_um, 8.0e-1_r_um, 8.0e-1_r_um, 8.0e-1_r_um /) - albsnf_maxl=(/ 0.095_r_um, 0.059_r_um, 0.128_r_um, 0.106_r_um, 0.077_r_um /) - albsnf_maxu=(/ 0.215_r_um, 0.132_r_um, 0.288_r_um, 0.239_r_um, 0.173_r_um /) + albsnc_min = real(albsnc_min_io, r_um) + albsnf_maxl = real(albsnf_maxl_io, r_um) + albsnf_maxu = real(albsnf_maxu_io, r_um) alnir = real(alnir_io, r_um) - alnirl=(/ 0.30_r_um, 0.23_r_um, 0.39_r_um, 0.39_r_um, 0.39_r_um /) - alniru=(/ 0.75_r_um, 0.65_r_um, 0.95_r_um, 0.95_r_um, 0.87_r_um /) + alnirl = real(alnirl_io, r_um) + alniru = real(alniru_io, r_um) alpar = real(alpar_io, r_um) - alparl=(/ 0.06_r_um, 0.04_r_um, 0.06_r_um, 0.06_r_um, 0.06_r_um /) - alparu=(/ 0.15_r_um, 0.11_r_um, 0.25_r_um, 0.25_r_um, 0.25_r_um /) - alpha=(/ 0.08_r_um, 0.08_r_um, 0.08_r_um, 0.04_r_um, 0.08_r_um /) - b_wl=(/ 1.667_r_um, 1.667_r_um, 1.667_r_um, 1.667_r_um, 1.667_r_um /) - c3=(/ 1,1,1,0,1 /) - can_struct_a=(/ 1.0_r_um, 1.0_r_um, 1.0_r_um, 1.0_r_um, 1.0_r_um /) + alparl = real(alparl_io, r_um) + alparu = real(alparu_io, r_um) + alpha = real(alpha_io, r_um) + b_wl = real(b_wl_io, r_um) + can_struct_a = real(can_struct_a_io, r_um) catch0 = real(catch0_io, r_um) dcatch_dlai = real(dcatch_dlai_io, r_um) - dgl_dm=(/ 0.0_r_um, 0.0_r_um, 0.0_r_um, 0.0_r_um, 0.0_r_um /) - dgl_dt=(/ 9.0_r_um, 9.0_r_um, 0.0_r_um, 0.0_r_um, 9.0_r_um /) - dqcrit=(/ 0.090_r_um, 0.060_r_um, 0.100_r_um, 0.075_r_um, 0.100_r_um /) - dust_veg_scj=(/ 0.0_r_um, 0.0_r_um, 1.0_r_um, 1.0_r_um, 0.5_r_um /) - dz0v_dh=(/ 5.0e-2_r_um, 5.0e-2_r_um, 1.0e-1_r_um, 1.0e-1_r_um, 1.0e-1_r_um /) - emis_pft=(/ 0.98_r_um, 0.99_r_um, 0.98_r_um, 0.98_r_um, 0.98_r_um /) - eta_sl=(/ 0.01_r_um, 0.01_r_um, 0.01_r_um, 0.01_r_um, 0.01_r_um /) - f0=(/ 0.875_r_um, 0.875_r_um, 0.900_r_um, 0.800_r_um, 0.900_r_um /) - fd=(/ 0.015_r_um, 0.015_r_um, 0.015_r_um, 0.025_r_um, 0.015_r_um /) - fsmc_of=(/ 0.0_r_um, 0.0_r_um, 0.0_r_um, 0.0_r_um, 0.0_r_um /) - fsmc_p0=real(fsmc_p0_io, r_um) - g_leaf_0=(/ 0.25_r_um, 0.25_r_um, 0.25_r_um, 0.25_r_um, 0.25_r_um /) - glmin=(/ 1.0e-6_r_um, 1.0e-6_r_um, 1.0e-6_r_um, 1.0e-6_r_um, 1.0e-6_r_um /) - gsoil_f=(/ 1.0_r_um, 1.0_r_um, 1.0_r_um, 1.0_r_um, 1.0_r_um /) - hw_sw=(/ 0.5_r_um, 0.5_r_um, 0.5_r_um, 0.5_r_um, 0.5_r_um /) - infil_f=(/ 4.0_r_um, 4.0_r_um, 2.0_r_um, 2.0_r_um, 2.0_r_um /) + dgl_dm = real(dgl_dm_io, r_um) + dgl_dt = real(dgl_dt_io, r_um) + dqcrit = real(dqcrit_io, r_um) + dust_veg_scj = real(dust_veg_scj_io, r_um) + dz0v_dh = real(dz0v_dh_io, r_um) + emis_pft = real(emis_pft_io, r_um) + eta_sl = real(eta_sl_io, r_um) + f0 = real(f0_io, r_um) + fd = real(fd_io, r_um) + fsmc_of = real(fsmc_of_io, r_um) + fsmc_p0 = real(fsmc_p0_io, r_um) + g_leaf_0 = real(g_leaf_0_io, r_um) + glmin = real(glmin_io, r_um) + gsoil_f = real(gsoil_f_io, r_um) + hw_sw = real(hw_sw_io, r_um) + infil_f = real(infil_f_io, r_um) kext = real(kext_io, r_um) - kn=(/ 0.78_r_um, 0.78_r_um, 0.78_r_um, 0.78_r_um, 0.78_r_um /) + kn = real(kn_io, r_um) knl = real(knl_io, r_um) - kpar=(/ 0.5_r_um, 0.5_r_um, 0.5_r_um, 0.5_r_um, 0.5_r_um /) - lai_alb_lim=(/ 0.005_r_um, 0.005_r_um, 0.005_r_um, 0.005_r_um, 0.005_r_um /) - lma=(/ 0.0824_r_um, 0.2263_r_um, 0.0498_r_um, 0.1370_r_um, 0.0695_r_um /) - neff=(/ 0.8e-3_r_um, 0.8e-3_r_um, 0.8e-3_r_um, 0.4e-3_r_um, 0.8e-3_r_um /) - nl0=(/ 0.040_r_um, 0.030_r_um, 0.060_r_um, 0.030_r_um, 0.030_r_um /) - nmass=(/ 0.0210_r_um, 0.0115_r_um, 0.0219_r_um, 0.0131_r_um, 0.0219_r_um /) - nr=(/ 0.01726_r_um, 0.00784_r_um, 0.0162_r_um, 0.0084_r_um, 0.01726_r_um /) - nr_nl=(/ 1.0_r_um, 1.0_r_um, 1.0_r_um, 1.0_r_um, 1.0_r_um /) - ns_nl=(/ 0.1_r_um, 0.1_r_um, 1.0_r_um, 1.0_r_um, 0.1_r_um /) - nsw=(/ 0.0072_r_um, 0.0083_r_um, 0.01604_r_um, 0.0202_r_um, 0.0072_r_um /) + kpar = real(kpar_io, r_um) + lai_alb_lim = real(lai_alb_lim_io, r_um) + lma = real(lma_io, r_um) + neff = real(neff_io, r_um) + nl0 = real(nl0_io, r_um) + nmass = real(nmass_io, r_um) + nr = real(nr_io, r_um) + nr_nl = real(nr_nl_io, r_um) + ns_nl = real(ns_nl_io, r_um) + nsw = real(nsw_io, r_um) omega = real(omega_io, r_um) - omegal=(/ 0.10_r_um, 0.10_r_um, 0.10_r_um, 0.12_r_um, 0.10_r_um /) - omegau=(/ 0.23_r_um, 0.23_r_um, 0.35_r_um, 0.35_r_um, 0.35_r_um /) + omegal = real(omegal_io, r_um) + omegau = real(omegau_io, r_um) omnir = real(omnir_io, r_um) - omnirl=(/ 0.50_r_um, 0.30_r_um, 0.53_r_um, 0.53_r_um, 0.53_r_um /) - omniru=(/ 0.90_r_um, 0.65_r_um, 0.98_r_um, 0.98_r_um, 0.98_r_um /) - orient=(/ 0,0,0,0,0 /) - q10_leaf=(/ 2.0_r_um, 2.0_r_um, 2.0_r_um, 2.0_r_um, 2.0_r_um /) - r_grow=(/ 0.25_r_um, 0.25_r_um, 0.25_r_um, 0.25_r_um, 0.25_r_um /) - rootd_ft=(/ 3.0_r_um, 1.0_r_um, 0.5_r_um, 0.5_r_um, 0.5_r_um /) - sigl=(/ 0.0375_r_um, 0.1000_r_um, 0.0250_r_um, 0.0500_r_um, 0.0500_r_um /) - tleaf_of=(/ 273.15_r_um, 243.15_r_um, 258.15_r_um, 258.15_r_um, 243.15_r_um /) - tlow=(/ 0.0_r_um, -5.0_r_um, 0.0_r_um, 13.0_r_um, 0.0_r_um /) - tupp=(/ 36.0_r_um, 31.0_r_um, 36.0_r_um, 45.0_r_um, 36.0_r_um /) - vint=(/ 5.73_r_um, 6.32_r_um, 6.42_r_um, 0.00_r_um, 14.71_r_um /) - vsl=(/ 29.81_r_um, 18.15_r_um, 40.96_r_um, 10.24_r_um, 23.15_r_um /) + omnirl = real(omnirl_io, r_um) + omniru = real(omniru_io, r_um) + q10_leaf = real(q10_leaf_io, r_um) + r_grow = real(r_grow_io, r_um) + rootd_ft = real(rootd_ft_io, r_um) + sigl = real(sigl_io, r_um) + tleaf_of = real(tleaf_of_io, r_um) + tlow = real(tlow_io, r_um) + tupp = real(tupp_io, r_um) + vint = real(vint_io, r_um) + vsl = real(vsl_io, r_um) z0v = real(z0v_io, r_um) + WHERE(c3_io == c3_io_c3) + c3(:) = 1 + ELSEWHERE(c3_io == c3_io_not_c3) + c3(:) = 0 + END WHERE + WHERE(orient_io == 'horizontal') + orient(:) = 1 + ELSEWHERE(orient_io == 'spherical') + orient(:) = 0 + END WHERE + ! ---------------------------------------------------------------- ! Settings which are specified on all surface tiles at once ! - contained in module c_z0h_z0m