forked from MetOffice/lfric_core
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathversion31_32.py
More file actions
100 lines (79 loc) · 2.77 KB
/
Copy pathversion31_32.py
File metadata and controls
100 lines (79 loc) · 2.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
import re
import sys
from metomi.rose.upgrade import MacroUpgrade # noqa: F401
from .version30_31 import *
class UpgradeError(Exception):
"""Exception created when an upgrade fails."""
def __init__(self, msg):
self.msg = msg
def __repr__(self):
sys.tracebacklimit = 0
return self.msg
__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 vn31_t238(MacroUpgrade):
"""Upgrade macro for ticket #238 by Thomas Bendall."""
BEFORE_TAG = "vn3.1"
AFTER_TAG = "vn3.1_t238"
def upgrade(self, config, meta_config=None):
# Commands From: rose-meta/lfric-driver
self.add_setting(
config, ["namelist:finite_element", "coord_space"], "'Wchi'"
)
coord_order = self.get_setting_value(
config, ["namelist:finite_element", "coord_order"]
)
self.add_setting(
config,
["namelist:finite_element", "coord_order_nonprime"],
coord_order,
)
return config, self.reports
class vn31_t324(MacroUpgrade):
"""Upgrade macro for ticket #324 by Ricky Wong."""
BEFORE_TAG = "vn3.1_t238"
AFTER_TAG = "vn3.1_t324"
def upgrade(self, config, meta_config=None):
# Commands From: rose-meta/lfric-driver
# Only add in new configuration settings if the namelists
# are already present
#
if config.get(["namelist:partitioning"]) is not None:
self.add_setting(
config, ["namelist:partitioning", "inner_halo_tiles"], ".false."
)
self.add_setting(
config, ["namelist:partitioning", "tile_size_x"], "1"
)
self.add_setting(
config, ["namelist:partitioning", "tile_size_y"], "1"
)
if config.get(["namelist:multigrid"]) is not None:
self.add_setting(
config,
["namelist:multigrid", "coarsen_multigrid_tiles"],
".false.",
)
self.add_setting(
config, ["namelist:multigrid", "max_tiled_multigrid_level"], "1"
)
return config, self.reports
class vn31_t611(MacroUpgrade):
"""Upgrade macro for ticket TTTT by Unknown."""
BEFORE_TAG = "vn3.1_t324"
AFTER_TAG = "vn3.2"
def upgrade(self, config, meta_config=None):
# Commands From: rose-meta/lfric-driver
# Blank Upgrade Macro
# Commands From: rose-meta/lfric-coupled
# Blank Upgrade Macro
return config, self.reports