Skip to content

Commit 5ab4814

Browse files
Core vn3.2 release (#425)
1 parent 99d8d2b commit 5ab4814

41 files changed

Lines changed: 2943 additions & 705 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
import re
2+
import sys
3+
4+
from metomi.rose.upgrade import MacroUpgrade # noqa: F401
5+
6+
from .version30_31 import *
7+
8+
9+
class UpgradeError(Exception):
10+
"""Exception created when an upgrade fails."""
11+
12+
def __init__(self, msg):
13+
self.msg = msg
14+
15+
def __repr__(self):
16+
sys.tracebacklimit = 0
17+
return self.msg
18+
19+
__str__ = __repr__
20+
21+
22+
"""
23+
Copy this template and complete to add your macro
24+
class vnXX_txxx(MacroUpgrade):
25+
# Upgrade macro for <TICKET> by <Author>
26+
BEFORE_TAG = "vnX.X"
27+
AFTER_TAG = "vnX.X_txxx"
28+
def upgrade(self, config, meta_config=None):
29+
# Add settings
30+
return config, self.reports
31+
"""
32+
33+
34+
class vn31_t238(MacroUpgrade):
35+
"""Upgrade macro for ticket #238 by Thomas Bendall."""
36+
37+
BEFORE_TAG = "vn3.1"
38+
AFTER_TAG = "vn3.1_t238"
39+
40+
def upgrade(self, config, meta_config=None):
41+
# Commands From: rose-meta/lfric-driver
42+
self.add_setting(
43+
config, ["namelist:finite_element", "coord_space"], "'Wchi'"
44+
)
45+
coord_order = self.get_setting_value(
46+
config, ["namelist:finite_element", "coord_order"]
47+
)
48+
self.add_setting(
49+
config,
50+
["namelist:finite_element", "coord_order_nonprime"],
51+
coord_order,
52+
)
53+
return config, self.reports
54+
55+
56+
class vn31_t324(MacroUpgrade):
57+
"""Upgrade macro for ticket #324 by Ricky Wong."""
58+
59+
BEFORE_TAG = "vn3.1_t238"
60+
AFTER_TAG = "vn3.1_t324"
61+
62+
def upgrade(self, config, meta_config=None):
63+
# Commands From: rose-meta/lfric-driver
64+
# Only add in new configuration settings if the namelists
65+
# are already present
66+
#
67+
if config.get(["namelist:partitioning"]) is not None:
68+
self.add_setting(
69+
config, ["namelist:partitioning", "inner_halo_tiles"], ".false."
70+
)
71+
self.add_setting(
72+
config, ["namelist:partitioning", "tile_size_x"], "1"
73+
)
74+
self.add_setting(
75+
config, ["namelist:partitioning", "tile_size_y"], "1"
76+
)
77+
if config.get(["namelist:multigrid"]) is not None:
78+
self.add_setting(
79+
config,
80+
["namelist:multigrid", "coarsen_multigrid_tiles"],
81+
".false.",
82+
)
83+
self.add_setting(
84+
config, ["namelist:multigrid", "max_tiled_multigrid_level"], "1"
85+
)
86+
return config, self.reports
87+
88+
89+
class vn31_t611(MacroUpgrade):
90+
"""Upgrade macro for ticket TTTT by Unknown."""
91+
92+
BEFORE_TAG = "vn3.1_t324"
93+
AFTER_TAG = "vn3.2"
94+
95+
def upgrade(self, config, meta_config=None):
96+
# Commands From: rose-meta/lfric-driver
97+
# Blank Upgrade Macro
98+
# Commands From: rose-meta/lfric-coupled
99+
# Blank Upgrade Macro
100+
return config, self.reports
Lines changed: 1 addition & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
import re
21
import sys
32

43
from metomi.rose.upgrade import MacroUpgrade # noqa: F401
54

6-
from .version30_31 import *
5+
from .version31_32 import *
76

87

98
class UpgradeError(Exception):
@@ -32,60 +31,3 @@ def upgrade(self, config, meta_config=None):
3231
# Add settings
3332
return config, self.reports
3433
"""
35-
36-
37-
class vn31_t238(MacroUpgrade):
38-
"""Upgrade macro for ticket #238 by Thomas Bendall."""
39-
40-
BEFORE_TAG = "vn3.1"
41-
AFTER_TAG = "vn3.1_t238"
42-
43-
def upgrade(self, config, meta_config=None):
44-
# Commands From: rose-meta/lfric-driver
45-
self.add_setting(
46-
config, ["namelist:finite_element", "coord_space"], "'Wchi'"
47-
)
48-
coord_order = self.get_setting_value(
49-
config, ["namelist:finite_element", "coord_order"]
50-
)
51-
self.add_setting(
52-
config,
53-
["namelist:finite_element", "coord_order_nonprime"],
54-
coord_order,
55-
)
56-
57-
return config, self.reports
58-
59-
60-
class vn31_t324(MacroUpgrade):
61-
"""Upgrade macro for ticket #324 by Ricky Wong."""
62-
63-
BEFORE_TAG = "vn3.1_t238"
64-
AFTER_TAG = "vn3.1_t324"
65-
66-
def upgrade(self, config, meta_config=None):
67-
# Commands From: rose-meta/lfric-driver
68-
# Only add in new configuration settings if the namelists
69-
# are already present
70-
#
71-
if config.get(["namelist:partitioning"]) is not None:
72-
self.add_setting(
73-
config, ["namelist:partitioning", "inner_halo_tiles"], ".false."
74-
)
75-
self.add_setting(
76-
config, ["namelist:partitioning", "tile_size_x"], "1"
77-
)
78-
self.add_setting(
79-
config, ["namelist:partitioning", "tile_size_y"], "1"
80-
)
81-
if config.get(["namelist:multigrid"]) is not None:
82-
self.add_setting(
83-
config,
84-
["namelist:multigrid", "coarsen_multigrid_tiles"],
85-
".false.",
86-
)
87-
self.add_setting(
88-
config, ["namelist:multigrid", "max_tiled_multigrid_level"], "1"
89-
)
90-
91-
return config, self.reports
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
import=lfric-driver/vn3.2
Lines changed: 174 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,174 @@
1+
import re
2+
import sys
3+
4+
from metomi.rose.upgrade import MacroUpgrade # noqa: F401
5+
6+
from .version30_31 import *
7+
8+
9+
class UpgradeError(Exception):
10+
"""Exception created when an upgrade fails."""
11+
12+
def __init__(self, msg):
13+
self.msg = msg
14+
15+
def __repr__(self):
16+
sys.tracebacklimit = 0
17+
return self.msg
18+
19+
__str__ = __repr__
20+
21+
22+
"""
23+
Copy this template and complete to add your macro
24+
class vnXX_txxx(MacroUpgrade):
25+
# Upgrade macro for <TICKET> by <Author>
26+
BEFORE_TAG = "vnX.X"
27+
AFTER_TAG = "vnX.X_txxx"
28+
def upgrade(self, config, meta_config=None):
29+
# Add settings
30+
return config, self.reports
31+
"""
32+
33+
34+
class vn31_t232(MacroUpgrade):
35+
# Upgrade macro for 232 by Ed Hone
36+
BEFORE_TAG = "vn3.1"
37+
AFTER_TAG = "vn3.1_t232"
38+
39+
def upgrade(self, config, meta_config=None):
40+
"""Add new io_demo namelist"""
41+
source = self.get_setting_value(
42+
config, ["file:configuration.nml", "source"]
43+
)
44+
source = re.sub(
45+
r"namelist:io",
46+
r"namelist:io" + "\n" + " namelist:io_demo",
47+
source,
48+
)
49+
self.change_setting_value(
50+
config, ["file:configuration.nml", "source"], source
51+
)
52+
self.add_setting(config, ["namelist:io_demo"])
53+
"""Move multifile_io setting from io namelist to io_demo"""
54+
self.remove_setting(config, ["namelist:io", "multifile_io"])
55+
self.add_setting(
56+
config, ["namelist:io_demo", "multifile_io"], ".false."
57+
)
58+
self.add_setting(
59+
config, ["namelist:io_demo", "benchmark_sleep_time"], 0
60+
)
61+
self.add_setting(
62+
config, ["namelist:io_demo", "io_benchmark"], ".false."
63+
)
64+
self.add_setting(config, ["namelist:io_demo", "n_benchmark_fields"], 0)
65+
return config, self.reports
66+
67+
68+
class vn31_t330(MacroUpgrade):
69+
# Upgrade macro for 330 by Ed Hone
70+
BEFORE_TAG = "vn3.1_t232"
71+
AFTER_TAG = "vn3.1_t330"
72+
73+
def upgrade(self, config, meta_config=None):
74+
"""Add new io_demo namelist"""
75+
source = self.get_setting_value(
76+
config, ["file:configuration.nml", "source"]
77+
)
78+
source = re.sub(
79+
r"namelist:extrusion",
80+
r"namelist:extrusion" + "\n" + " namelist:files",
81+
source,
82+
)
83+
self.change_setting_value(
84+
config, ["file:configuration.nml", "source"], source
85+
)
86+
self.add_setting(config, ["namelist:files"])
87+
self.add_setting(config, ["namelist:files", "temporal_file_path"], "")
88+
self.add_setting(
89+
config, ["namelist:io_demo", "temporal_reading"], ".false."
90+
)
91+
return config, self.reports
92+
93+
94+
class vn31_t238(MacroUpgrade):
95+
"""Upgrade macro for ticket #238 by Thomas Bendall."""
96+
97+
BEFORE_TAG = "vn3.1_t330"
98+
AFTER_TAG = "vn3.1_t238"
99+
100+
def upgrade(self, config, meta_config=None):
101+
# Commands From: rose-meta/lfric-driver
102+
self.add_setting(
103+
config, ["namelist:finite_element", "coord_space"], "'Wchi'"
104+
)
105+
coord_order = self.get_setting_value(
106+
config, ["namelist:finite_element", "coord_order"]
107+
)
108+
self.add_setting(
109+
config,
110+
["namelist:finite_element", "coord_order_nonprime"],
111+
coord_order,
112+
)
113+
return config, self.reports
114+
115+
116+
class vn31_t287(MacroUpgrade):
117+
"""Upgrade macro for ticket #287 by Ed Hone."""
118+
119+
BEFORE_TAG = "vn3.1_t238"
120+
AFTER_TAG = "vn3.1_t287"
121+
122+
def upgrade(self, config, meta_config=None):
123+
# Commands From: rose-meta/lfric-io_demo
124+
self.add_setting(
125+
config, ["namelist:files", "checkpoint_stem_name"], "''"
126+
)
127+
return config, self.reports
128+
129+
130+
class vn31_t324(MacroUpgrade):
131+
"""Upgrade macro for ticket #324 by Ricky Wong."""
132+
133+
BEFORE_TAG = "vn3.1_t287"
134+
AFTER_TAG = "vn3.1_t324"
135+
136+
def upgrade(self, config, meta_config=None):
137+
# Commands From: rose-meta/lfric-driver
138+
# Only add in new configuration settings if the namelists
139+
# are already present
140+
#
141+
if config.get(["namelist:partitioning"]) is not None:
142+
self.add_setting(
143+
config, ["namelist:partitioning", "inner_halo_tiles"], ".false."
144+
)
145+
self.add_setting(
146+
config, ["namelist:partitioning", "tile_size_x"], "1"
147+
)
148+
self.add_setting(
149+
config, ["namelist:partitioning", "tile_size_y"], "1"
150+
)
151+
if config.get(["namelist:multigrid"]) is not None:
152+
self.add_setting(
153+
config,
154+
["namelist:multigrid", "coarsen_multigrid_tiles"],
155+
".false.",
156+
)
157+
self.add_setting(
158+
config, ["namelist:multigrid", "max_tiled_multigrid_level"], "1"
159+
)
160+
return config, self.reports
161+
162+
163+
class vn31_t611(MacroUpgrade):
164+
"""Upgrade macro for ticket TTTT by Unknown."""
165+
166+
BEFORE_TAG = "vn3.1_t324"
167+
AFTER_TAG = "vn3.2"
168+
169+
def upgrade(self, config, meta_config=None):
170+
# Commands From: rose-meta/lfric-driver
171+
# Blank Upgrade Macro
172+
# Commands From: rose-meta/lfric-io_demo
173+
# Blank Upgrade Macro
174+
return config, self.reports

0 commit comments

Comments
 (0)