Skip to content
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
453666d
merging changes from older branch
alanjhewitt Aug 7, 2026
3f2eaa9
Add RADAER API documentation
alanjhewitt Aug 7, 2026
1b91106
Add documentation
alanjhewitt Aug 7, 2026
f114df3
tidy
alanjhewitt Aug 7, 2026
8281df6
I think I need new namelist in all of these
alanjhewitt Aug 7, 2026
84f4601
Beginning of initialisation pipework to UKCA repo
alanjhewitt Aug 7, 2026
763c39a
Beginning of initialisation pipework to UKCA repo
alanjhewitt Aug 7, 2026
d8f4d36
Revert " Add documentation"
alanjhewitt Aug 7, 2026
13cc02d
Revert " Beginning of initialisation pipework to UKCA repo"
alanjhewitt Aug 7, 2026
7501b76
Revert " Beginning of initialisation pipework to UKCA repo"
alanjhewitt Aug 7, 2026
f6e3b82
Revert " I think I need new namelist in all of these"
alanjhewitt Aug 7, 2026
2d4b474
Revert " merging changes from older branch"
alanjhewitt Aug 7, 2026
568abf9
messy - but now only one versions.py
alanjhewitt Aug 7, 2026
3ccbb0d
maybe sorted git revert
alanjhewitt Aug 7, 2026
09bd990
only ukca setting should trigger i_mode_setup
alanjhewitt Aug 7, 2026
b2541ef
pass dust ageing and BC tuning setting to radaer in namelist
alanjhewitt Aug 11, 2026
a132533
dust ageing not allowed for dust only
alanjhewitt Aug 11, 2026
8deee3e
initialisation pipework
alanjhewitt Aug 11, 2026
88c1669
Its time to start testing this change
alanjhewitt Aug 11, 2026
621164b
Fixed errors in upgrade macro
alanjhewitt Aug 11, 2026
6b74a99
Typo
alanjhewitt Aug 11, 2026
2fc181b
Typo
alanjhewitt Aug 11, 2026
0cdd0db
Merge branch 'MetOffice:main' into radaer_api_la_side_5
alanjhewitt Aug 12, 2026
338a1ae
LFRic needs to see these UKCA modules
alanjhewitt Aug 12, 2026
c11ade5
tidy - makes it read better in emacs
alanjhewitt Aug 12, 2026
bd2ac92
I think this fail-if test is broken
alanjhewitt Aug 12, 2026
aa48fcd
Fix build errors
alanjhewitt Aug 13, 2026
e49ca5f
some fixes
alanjhewitt Aug 13, 2026
904d47b
build errors
alanjhewitt Aug 13, 2026
8feab8d
validate rose-meta error
alanjhewitt Aug 13, 2026
2c0477a
whoops - forgotten an argument
alanjhewitt Aug 14, 2026
94cb9ec
typo
alanjhewitt Aug 14, 2026
05b4cae
This will now use the enumeration values for mode_setup
alanjhewitt Aug 14, 2026
5d9fc41
Fixing build errors
alanjhewitt Aug 14, 2026
f0002bc
Run time errors - integers dont match
alanjhewitt Aug 14, 2026
81ab53c
Only initialise when l_radaer is true
alanjhewitt Aug 24, 2026
c6b5b0f
use allocatable lists specific to i_mode_setup
alanjhewitt Aug 24, 2026
a83cb0f
include new UKCA module
alanjhewitt Aug 24, 2026
71375a4
l_sustrat is now a namelist option
alanjhewitt Aug 25, 2026
88d1e96
sustrat defaults to true
alanjhewitt Aug 25, 2026
fba5745
Mohit and Ian suggested changes
alanjhewitt Aug 27, 2026
b2fe4b5
I used git mv to hopefully preserve history
alanjhewitt Aug 27, 2026
c5a32d6
Remove trailing white space
alanjhewitt Aug 27, 2026
9c6c53a
build error
alanjhewitt Aug 27, 2026
766fafb
validate rose meta failure
alanjhewitt Aug 27, 2026
7fa3de0
reverted change - not sure what problem is
alanjhewitt Aug 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -18,37 +18,44 @@ def __repr__(self):
__str__ = __repr__


"""
Copy this template and complete to add your macro
class vn32_t683(MacroUpgrade):
"""
Upgrade macro for ticket #698 by Alan J Hewitt.
Users can now select UKCA GLOMAP setting via namelist.

class vnXX_txxx(MacroUpgrade):
# Upgrade macro for <TICKET> by <Author>

BEFORE_TAG = "vnX.X"
AFTER_TAG = "vnX.X_txxx"

def upgrade(self, config, meta_config=None):
# Add settings
return config, self.reports
"""


class vn32_t634(MacroUpgrade):
"""Upgrade macro for ticket #634 by Ian Boutle."""
Note that dust_and_clim is treated by UKCA as if setting (6)
but is treated by RADAER as if setting (8)
"""

BEFORE_TAG = "vn3.2"
AFTER_TAG = "vn3.2_t634"
AFTER_TAG = "vn3.2_t698"

def upgrade(self, config, meta_config=None):
# Commands From: rose-meta/lfric-gungho
nml = "namelist:boundaries"
self.add_setting(config, [nml, "lbc_bal_meth"], "'keep_rho'")
self.add_setting(config, [nml, "lbc_sort_theta"], ".true.")
nml = "namelist:initialization"
eos_height = self.get_setting_value(config, [nml, "model_eos_height"])
self.remove_setting(config, [nml, "model_eos_height"])
self.add_setting(config, [nml, "init_eos_height"], eos_height)
self.add_setting(config, [nml, "init_exner_method"], "'hydrostatic'")
self.add_setting(config, [nml, "init_sort_theta"], ".true.")
# Add settings

aerosol_setting = self.get_setting_value(config,
["namelist:aerosol",
"glomap_mode"])

if glomap_mode == "'glomap_mode_dust_and_clim'":
# Existing suites with dust_and_clim need i_mode_setup==6
i_mode_setup = "6"
else if glomap_mode == "'glomap_mode_ukca'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_radaer_test'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_climatology'":
# This is trigger ignored
i_mode_setup = "0"
else:
# This is trigger ignored
i_mode_setup = "0"

# Add new settings with the specified option
self.add_setting( config, ["namelist:aerosol","i_mode_setup"],
i_mode_setup )

return config, self.reports

61 changes: 34 additions & 27 deletions applications/gravity_wave/rose-meta/lfric-gravity_wave/versions.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,37 +18,44 @@ def __repr__(self):
__str__ = __repr__


"""
Copy this template and complete to add your macro
class vn32_t683(MacroUpgrade):
"""
Upgrade macro for ticket #698 by Alan J Hewitt.
Users can now select UKCA GLOMAP setting via namelist.

class vnXX_txxx(MacroUpgrade):
# Upgrade macro for <TICKET> by <Author>

BEFORE_TAG = "vnX.X"
AFTER_TAG = "vnX.X_txxx"

def upgrade(self, config, meta_config=None):
# Add settings
return config, self.reports
"""


class vn32_t634(MacroUpgrade):
"""Upgrade macro for ticket #634 by Ian Boutle."""
Note that dust_and_clim is treated by UKCA as if setting (6)
but is treated by RADAER as if setting (8)
"""

BEFORE_TAG = "vn3.2"
AFTER_TAG = "vn3.2_t634"
AFTER_TAG = "vn3.2_t698"

def upgrade(self, config, meta_config=None):
# Commands From: rose-meta/lfric-gungho
nml = "namelist:boundaries"
self.add_setting(config, [nml, "lbc_bal_meth"], "'keep_rho'")
self.add_setting(config, [nml, "lbc_sort_theta"], ".true.")
nml = "namelist:initialization"
eos_height = self.get_setting_value(config, [nml, "model_eos_height"])
self.remove_setting(config, [nml, "model_eos_height"])
self.add_setting(config, [nml, "init_eos_height"], eos_height)
self.add_setting(config, [nml, "init_exner_method"], "'hydrostatic'")
self.add_setting(config, [nml, "init_sort_theta"], ".true.")
# Add settings

aerosol_setting = self.get_setting_value(config,
["namelist:aerosol",
"glomap_mode"])

if glomap_mode == "'glomap_mode_dust_and_clim'":
# Existing suites with dust_and_clim need i_mode_setup==6
i_mode_setup = "6"
else if glomap_mode == "'glomap_mode_ukca'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_radaer_test'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_climatology'":
# This is trigger ignored
i_mode_setup = "0"
else:
# This is trigger ignored
i_mode_setup = "0"

# Add new settings with the specified option
self.add_setting( config, ["namelist:aerosol","i_mode_setup"],
i_mode_setup )

return config, self.reports

61 changes: 34 additions & 27 deletions applications/gungho_model/rose-meta/lfric-gungho_model/versions.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,37 +18,44 @@ def __repr__(self):
__str__ = __repr__


"""
Copy this template and complete to add your macro
class vn32_t683(MacroUpgrade):
"""
Upgrade macro for ticket #698 by Alan J Hewitt.
Users can now select UKCA GLOMAP setting via namelist.

class vnXX_txxx(MacroUpgrade):
# Upgrade macro for <TICKET> by <Author>

BEFORE_TAG = "vnX.X"
AFTER_TAG = "vnX.X_txxx"

def upgrade(self, config, meta_config=None):
# Add settings
return config, self.reports
"""


class vn32_t634(MacroUpgrade):
"""Upgrade macro for ticket #634 by Ian Boutle."""
Note that dust_and_clim is treated by UKCA as if setting (6)
but is treated by RADAER as if setting (8)
"""

BEFORE_TAG = "vn3.2"
AFTER_TAG = "vn3.2_t634"
AFTER_TAG = "vn3.2_t698"

def upgrade(self, config, meta_config=None):
# Commands From: rose-meta/lfric-gungho
nml = "namelist:boundaries"
self.add_setting(config, [nml, "lbc_bal_meth"], "'keep_rho'")
self.add_setting(config, [nml, "lbc_sort_theta"], ".true.")
nml = "namelist:initialization"
eos_height = self.get_setting_value(config, [nml, "model_eos_height"])
self.remove_setting(config, [nml, "model_eos_height"])
self.add_setting(config, [nml, "init_eos_height"], eos_height)
self.add_setting(config, [nml, "init_exner_method"], "'hydrostatic'")
self.add_setting(config, [nml, "init_sort_theta"], ".true.")
# Add settings

aerosol_setting = self.get_setting_value(config,
["namelist:aerosol",
"glomap_mode"])

if glomap_mode == "'glomap_mode_dust_and_clim'":
# Existing suites with dust_and_clim need i_mode_setup==6
i_mode_setup = "6"
else if glomap_mode == "'glomap_mode_ukca'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_radaer_test'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_climatology'":
# This is trigger ignored
i_mode_setup = "0"
else:
# This is trigger ignored
i_mode_setup = "0"

# Add new settings with the specified option
self.add_setting( config, ["namelist:aerosol","i_mode_setup"],
i_mode_setup )

return config, self.reports

61 changes: 34 additions & 27 deletions applications/jedi_lfric_tests/rose-meta/jedi_common/versions.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,37 +18,44 @@ def __repr__(self):
__str__ = __repr__


"""
Copy this template and complete to add your macro
class vn32_t683(MacroUpgrade):
"""
Upgrade macro for ticket #698 by Alan J Hewitt.
Users can now select UKCA GLOMAP setting via namelist.

class vnXX_txxx(MacroUpgrade):
# Upgrade macro for <TICKET> by <Author>

BEFORE_TAG = "vnX.X"
AFTER_TAG = "vnX.X_txxx"

def upgrade(self, config, meta_config=None):
# Add settings
return config, self.reports
"""


class vn32_t634(MacroUpgrade):
"""Upgrade macro for ticket #634 by Ian Boutle."""
Note that dust_and_clim is treated by UKCA as if setting (6)
but is treated by RADAER as if setting (8)
"""

BEFORE_TAG = "vn3.2"
AFTER_TAG = "vn3.2_t634"
AFTER_TAG = "vn3.2_t698"

def upgrade(self, config, meta_config=None):
# Commands From: rose-meta/lfric-gungho
nml = "namelist:boundaries"
self.add_setting(config, [nml, "lbc_bal_meth"], "'keep_rho'")
self.add_setting(config, [nml, "lbc_sort_theta"], ".true.")
nml = "namelist:initialization"
eos_height = self.get_setting_value(config, [nml, "model_eos_height"])
self.remove_setting(config, [nml, "model_eos_height"])
self.add_setting(config, [nml, "init_eos_height"], eos_height)
self.add_setting(config, [nml, "init_exner_method"], "'hydrostatic'")
self.add_setting(config, [nml, "init_sort_theta"], ".true.")
# Add settings

aerosol_setting = self.get_setting_value(config,
["namelist:aerosol",
"glomap_mode"])

if glomap_mode == "'glomap_mode_dust_and_clim'":
# Existing suites with dust_and_clim need i_mode_setup==6
i_mode_setup = "6"
else if glomap_mode == "'glomap_mode_ukca'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_radaer_test'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_climatology'":
# This is trigger ignored
i_mode_setup = "0"
else:
# This is trigger ignored
i_mode_setup = "0"

# Add new settings with the specified option
self.add_setting( config, ["namelist:aerosol","i_mode_setup"],
i_mode_setup )

return config, self.reports

70 changes: 34 additions & 36 deletions applications/jedi_lfric_tests/rose-meta/jedi_forecast/versions.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,46 +18,44 @@ def __repr__(self):
__str__ = __repr__


"""
Copy this template and complete to add your macro
class vnXX_txxx(MacroUpgrade):
# Upgrade macro for <TICKET> by <Author>
BEFORE_TAG = "vnX.X"
AFTER_TAG = "vnX.X_txxx"
def upgrade(self, config, meta_config=None):
# Add settings
return config, self.reports
"""
class vn32_t683(MacroUpgrade):
"""
Upgrade macro for ticket #698 by Alan J Hewitt.
Users can now select UKCA GLOMAP setting via namelist.


class vn32_t512(MacroUpgrade):
"""Upgrade macro for ticket #512 by Steven Sandbach."""
Note that dust_and_clim is treated by UKCA as if setting (6)
but is treated by RADAER as if setting (8)
"""

BEFORE_TAG = "vn3.2"
AFTER_TAG = "vn3.2_t512"

def upgrade(self, config, meta_config=None):
# Commands From: rose-meta/jedi_forecast
# Blank Upgrade Macro
return config, self.reports


class vn32_t634(MacroUpgrade):
"""Upgrade macro for ticket #634 by Ian Boutle."""

BEFORE_TAG = "vn3.2_t512"
AFTER_TAG = "vn3.2_t634"
AFTER_TAG = "vn3.2_t698"

def upgrade(self, config, meta_config=None):
# Commands From: rose-meta/lfric-gungho
nml = "namelist:boundaries"
self.add_setting(config, [nml, "lbc_bal_meth"], "'keep_rho'")
self.add_setting(config, [nml, "lbc_sort_theta"], ".true.")
nml = "namelist:initialization"
eos_height = self.get_setting_value(config, [nml, "model_eos_height"])
self.remove_setting(config, [nml, "model_eos_height"])
self.add_setting(config, [nml, "init_eos_height"], eos_height)
self.add_setting(config, [nml, "init_exner_method"], "'hydrostatic'")
self.add_setting(config, [nml, "init_sort_theta"], ".true.")
# Add settings

aerosol_setting = self.get_setting_value(config,
["namelist:aerosol",
"glomap_mode"])

if glomap_mode == "'glomap_mode_dust_and_clim'":
# Existing suites with dust_and_clim need i_mode_setup==6
i_mode_setup = "6"
else if glomap_mode == "'glomap_mode_ukca'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_radaer_test'":
# Existing suites with ukca need i_mode_setup==8
i_mode_setup = "8"
else if glomap_mode == "'glomap_mode_climatology'":
# This is trigger ignored
i_mode_setup = "0"
else:
# This is trigger ignored
i_mode_setup = "0"

# Add new settings with the specified option
self.add_setting( config, ["namelist:aerosol","i_mode_setup"],
i_mode_setup )

return config, self.reports

Loading
Loading