vortex-nwp 2.1.3__py3-none-any.whl → 2.3.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- vortex/__init__.py +3 -2
- vortex/algo/components.py +20 -2
- vortex/algo/mpitools.py +5 -6
- vortex/data/abstractstores.py +43 -39
- vortex/data/executables.py +28 -0
- vortex/data/geometries.ini +89 -24
- vortex/data/geometries.py +24 -7
- vortex/data/handlers.py +1 -0
- vortex/data/providers.py +49 -10
- vortex/data/stores.py +152 -42
- vortex/nwp/algo/assim.py +1 -31
- vortex/nwp/algo/forecasts.py +30 -0
- vortex/nwp/algo/ifsroot.py +34 -20
- vortex/nwp/algo/monitoring.py +2 -2
- vortex/nwp/algo/odbtools.py +2 -2
- vortex/nwp/data/consts.py +61 -1
- vortex/nwp/data/diagnostics.py +2 -4
- vortex/nwp/tools/conftools.py +7 -6
- vortex/sessions.py +3 -2
- vortex/tools/storage.py +12 -10
- vortex/tools/systems.py +33 -3
- {vortex_nwp-2.1.3.dist-info → vortex_nwp-2.3.0.dist-info}/METADATA +4 -1
- {vortex_nwp-2.1.3.dist-info → vortex_nwp-2.3.0.dist-info}/RECORD +26 -26
- {vortex_nwp-2.1.3.dist-info → vortex_nwp-2.3.0.dist-info}/WHEEL +1 -1
- {vortex_nwp-2.1.3.dist-info → vortex_nwp-2.3.0.dist-info}/licenses/LICENSE +0 -0
- {vortex_nwp-2.1.3.dist-info → vortex_nwp-2.3.0.dist-info}/top_level.txt +0 -0
vortex/nwp/data/diagnostics.py
CHANGED
|
@@ -145,10 +145,7 @@ _surfex_diag_decofp = footprints.DecorativeFootprint(
|
|
|
145
145
|
]
|
|
146
146
|
),
|
|
147
147
|
nativefmt=dict(
|
|
148
|
-
values=[
|
|
149
|
-
"netcdf",
|
|
150
|
-
"grib",
|
|
151
|
-
],
|
|
148
|
+
values=["netcdf", "grib", "fa"],
|
|
152
149
|
default="netcdf",
|
|
153
150
|
optional=True,
|
|
154
151
|
),
|
|
@@ -185,6 +182,7 @@ class ObjTrack(GeoFlowResource):
|
|
|
185
182
|
values=[
|
|
186
183
|
"json",
|
|
187
184
|
"hdf5",
|
|
185
|
+
"tar",
|
|
188
186
|
"foo",
|
|
189
187
|
],
|
|
190
188
|
default="foo",
|
vortex/nwp/tools/conftools.py
CHANGED
|
@@ -1045,11 +1045,11 @@ class ArpIfsForecastTermConfTool(ConfTool):
|
|
|
1045
1045
|
The forecast term can be retrieved:
|
|
1046
1046
|
|
|
1047
1047
|
>>> print(ct.fcterm('assim', 6))
|
|
1048
|
-
6
|
|
1048
|
+
6.0
|
|
1049
1049
|
>>> print(ct.fcterm('production', 0))
|
|
1050
|
-
102
|
|
1050
|
+
102.0
|
|
1051
1051
|
>>> print(ct.fcterm('production', 12))
|
|
1052
|
-
24
|
|
1052
|
+
24.0
|
|
1053
1053
|
|
|
1054
1054
|
If nothing is defined it crashes:
|
|
1055
1055
|
|
|
@@ -1451,11 +1451,12 @@ class ArpIfsForecastTermConfTool(ConfTool):
|
|
|
1451
1451
|
return self._lookup_rangex_cache[(what_desc, cutoff, hh)]
|
|
1452
1452
|
|
|
1453
1453
|
def fcterm(self, cutoff, hh):
|
|
1454
|
-
"""The forecast term for **cutoff** and **hh
|
|
1454
|
+
"""The forecast term for **cutoff** and **hh** as a float or int."""
|
|
1455
1455
|
fcterm = self._cutoff_hh_lookup("fcterm", cutoff, hh)
|
|
1456
|
-
if isinstance(fcterm, Time)
|
|
1457
|
-
return fcterm.hour
|
|
1456
|
+
if isinstance(fcterm, Time):
|
|
1457
|
+
return fcterm.hour + (fcterm.minute / 60)
|
|
1458
1458
|
else:
|
|
1459
|
+
# fcterm is an int representing nb of timesteps
|
|
1459
1460
|
return fcterm
|
|
1460
1461
|
|
|
1461
1462
|
def hist_terms(self, cutoff, hh):
|
vortex/sessions.py
CHANGED
|
@@ -85,8 +85,9 @@ def exit():
|
|
|
85
85
|
"""Ask all inactive sessions to close, then close the active one."""
|
|
86
86
|
tags = keys()
|
|
87
87
|
xtag = Ticket.tag_focus()
|
|
88
|
-
tags
|
|
89
|
-
|
|
88
|
+
if xtag in tags:
|
|
89
|
+
tags.remove(xtag)
|
|
90
|
+
tags.append(xtag)
|
|
90
91
|
ok = True
|
|
91
92
|
for s in [get(tag=x) for x in tags]:
|
|
92
93
|
ok = s.exit() and ok
|
vortex/tools/storage.py
CHANGED
|
@@ -548,6 +548,11 @@ class AbstractArchive(Storage):
|
|
|
548
548
|
tube=dict(
|
|
549
549
|
info="How to communicate with the archive ?",
|
|
550
550
|
),
|
|
551
|
+
entry=dict(
|
|
552
|
+
optional=False,
|
|
553
|
+
type=str,
|
|
554
|
+
info="The absolute path to the archive space",
|
|
555
|
+
),
|
|
551
556
|
),
|
|
552
557
|
)
|
|
553
558
|
|
|
@@ -560,23 +565,20 @@ class AbstractArchive(Storage):
|
|
|
560
565
|
def realkind(self):
|
|
561
566
|
return "archive"
|
|
562
567
|
|
|
563
|
-
def _formatted_path(self,
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
rawpath = self.sh.path.join(root, rawpath.lstrip("/"))
|
|
568
|
+
def _formatted_path(self, subpath, **kwargs):
|
|
569
|
+
path = self.sh.path.join(self.entry, subpath.lstrip("/"))
|
|
570
|
+
|
|
567
571
|
# Deal with compression
|
|
568
572
|
compressionpipeline = kwargs.get("compressionpipeline", None)
|
|
569
573
|
if compressionpipeline is not None:
|
|
570
|
-
|
|
571
|
-
return self.sh.anyft_remote_rewrite(
|
|
572
|
-
rawpath, fmt=kwargs.get("fmt", "foo")
|
|
573
|
-
)
|
|
574
|
+
path += compressionpipeline.suffix
|
|
575
|
+
return self.sh.anyft_remote_rewrite(path, fmt=kwargs.get("fmt", "foo"))
|
|
574
576
|
|
|
575
577
|
def _actual_proxy_method(self, pmethod):
|
|
576
578
|
"""Create a proxy method based on the **pmethod** actual method."""
|
|
577
579
|
|
|
578
|
-
def actual_proxy(
|
|
579
|
-
path = self._formatted_path(
|
|
580
|
+
def actual_proxy(subpath, *kargs, **kwargs):
|
|
581
|
+
path = self._formatted_path(subpath, **kwargs)
|
|
580
582
|
if path is None:
|
|
581
583
|
raise ValueError("The archive's path is void.")
|
|
582
584
|
return pmethod(path, *kargs, **kwargs)
|
vortex/tools/systems.py
CHANGED
|
@@ -67,7 +67,6 @@ from vortex.tools.compression import CompressionPipeline
|
|
|
67
67
|
from vortex.tools.env import Environment
|
|
68
68
|
from vortex.tools.net import AssistedSsh, AutoRetriesFtp, DEFAULT_FTP_PORT
|
|
69
69
|
from vortex.tools.net import FtpConnectionPool, LinuxNetstats, StdFtp
|
|
70
|
-
import vortex.tools.storage
|
|
71
70
|
from vortex import config
|
|
72
71
|
|
|
73
72
|
#: No automatic export
|
|
@@ -1161,6 +1160,7 @@ class OSExtended(System):
|
|
|
1161
1160
|
logger.warning(
|
|
1162
1161
|
"Bad return code [%d] for %s", p.returncode, str(args)
|
|
1163
1162
|
)
|
|
1163
|
+
self.dump_spawn_to_script(args)
|
|
1164
1164
|
if isinstance(output, bool) and output:
|
|
1165
1165
|
sys.stderr.write(p_err.decode(plocale, "replace"))
|
|
1166
1166
|
if fatal:
|
|
@@ -1183,6 +1183,31 @@ class OSExtended(System):
|
|
|
1183
1183
|
|
|
1184
1184
|
return rc
|
|
1185
1185
|
|
|
1186
|
+
def dump_spawn_to_script(self, args):
|
|
1187
|
+
"""Dump spawn environment to a script that can be executed 'out-of-vortex'."""
|
|
1188
|
+
script = [
|
|
1189
|
+
"#!/bin/bash",
|
|
1190
|
+
"",
|
|
1191
|
+
'SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )',
|
|
1192
|
+
"cd $SCRIPT_DIR",
|
|
1193
|
+
"",
|
|
1194
|
+
"ulimit -s unlimited",
|
|
1195
|
+
"",
|
|
1196
|
+
]
|
|
1197
|
+
# env vars
|
|
1198
|
+
for k in sorted(self.env.keys()):
|
|
1199
|
+
if not (k.startswith("SLURM") or k.startswith("MTOOL")):
|
|
1200
|
+
script.append('export {}="{}"'.format(k, self.env[k]))
|
|
1201
|
+
# command line
|
|
1202
|
+
script.append("\n" + " ".join(args))
|
|
1203
|
+
# replace any MTOOL dirs from spool to abort
|
|
1204
|
+
for i, line in enumerate(script):
|
|
1205
|
+
script[i] = line.replace("spool/spool_", "abort/dump_")
|
|
1206
|
+
# write to file
|
|
1207
|
+
with open("spawn_dump.sh", "w") as o:
|
|
1208
|
+
for l in script:
|
|
1209
|
+
o.write(l + "\n")
|
|
1210
|
+
|
|
1186
1211
|
def getlogname(self):
|
|
1187
1212
|
"""Be sure to get the actual login name."""
|
|
1188
1213
|
return passwd.getpwuid(self._os.getuid())[0]
|
|
@@ -1860,10 +1885,15 @@ class OSExtended(System):
|
|
|
1860
1885
|
"""Return a cache object for the FtSpool."""
|
|
1861
1886
|
if self._ftspool_cache is not None:
|
|
1862
1887
|
return self._ftspool_cache
|
|
1888
|
+
try:
|
|
1889
|
+
cacheloc = config.from_config(section="data-tree", key="rootdir")
|
|
1890
|
+
except config.ConfigurationError:
|
|
1891
|
+
cacheloc = os.path.join(os.environ["HOME"], ".vortex.d")
|
|
1892
|
+
|
|
1863
1893
|
self._ftspool_cache = footprints.proxy.cache(
|
|
1864
1894
|
entry=os.path.join(
|
|
1865
|
-
|
|
1866
|
-
)
|
|
1895
|
+
cacheloc.replace("%usr%", self.glove.user), "ftspool"
|
|
1896
|
+
)
|
|
1867
1897
|
)
|
|
1868
1898
|
return self._ftspool_cache
|
|
1869
1899
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vortex-nwp
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.3.0
|
|
4
4
|
Summary: A Python library to write Numerical Weather Prediction pipelines components
|
|
5
5
|
Author-email: The Vortex Team <vortex.support@meteo.fr>
|
|
6
6
|
License: CECILL-C
|
|
@@ -14,6 +14,7 @@ Requires-Dist: footprints
|
|
|
14
14
|
Requires-Dist: taylorism
|
|
15
15
|
Requires-Dist: tomli
|
|
16
16
|
Requires-Dist: arpifs_listings
|
|
17
|
+
Requires-Dist: importlib_metadata; python_version < "3.8"
|
|
17
18
|
Provides-Extra: docs
|
|
18
19
|
Requires-Dist: sphinx; extra == "docs"
|
|
19
20
|
Requires-Dist: sphinx-book-theme; extra == "docs"
|
|
@@ -21,6 +22,8 @@ Requires-Dist: sphinx-copybutton; extra == "docs"
|
|
|
21
22
|
Provides-Extra: dev
|
|
22
23
|
Requires-Dist: ruff==0.9.1; extra == "dev"
|
|
23
24
|
Requires-Dist: pytest; extra == "dev"
|
|
25
|
+
Provides-Extra: git
|
|
26
|
+
Requires-Dist: pygit2; extra == "git"
|
|
24
27
|
Dynamic: license-file
|
|
25
28
|
|
|
26
29
|
## vortex
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
vortex/__init__.py,sha256=
|
|
1
|
+
vortex/__init__.py,sha256=iF0Qyy8b-ZIznlaDuFfFtuA3PU4d3OxQZVYM1TyU7fQ,4438
|
|
2
2
|
vortex/config.py,sha256=YEpcc81wR94jvn36fPONmKc1tM4ap0s8Rc7v3KfDUok,2948
|
|
3
3
|
vortex/gloves.py,sha256=GKz27S8eLfRlk8fNqVL_z1gsQ8zvEj73p5uVi11ou00,8487
|
|
4
4
|
vortex/proxy.py,sha256=OlPrVUJS5FoKt5pX8ApN1crFFDj8RJAqhDEilwvfrYU,127
|
|
5
|
-
vortex/sessions.py,sha256=
|
|
5
|
+
vortex/sessions.py,sha256=zWVhsFGKl-SovyVAZz3mpvmojjHROt5iyERjwA6kudQ,10017
|
|
6
6
|
vortex/toolbox.py,sha256=fDTvfghg8Yl7ggAwhIaY3V6owO3V1IG9LBf6F97A_50,42385
|
|
7
7
|
vortex/algo/__init__.py,sha256=I_9COn_QBRbwvbqhs0X3CdHeR97NZhBacIqwKjnVBTg,359
|
|
8
|
-
vortex/algo/components.py,sha256=
|
|
9
|
-
vortex/algo/mpitools.py,sha256=
|
|
8
|
+
vortex/algo/components.py,sha256=BodJA593f0OM1Tj5BAh-u-p55IbL81rwQR_g_Ee-mL0,89990
|
|
9
|
+
vortex/algo/mpitools.py,sha256=4J-qGZ4olkgq6kpC2F81ogXeksXp4030ARg-QbCdQ9Y,74154
|
|
10
10
|
vortex/algo/serversynctools.py,sha256=fPel0txVHsrUfk6VFaeKa0D6i21fOskIAR_BbByBv9g,5601
|
|
11
11
|
vortex/algo/mpitools_templates/__init__.py,sha256=Jbw903aPqVKF-AaSoB-mGMxthSvm88O_yqGoGmf_S_U,18
|
|
12
12
|
vortex/algo/mpitools_templates/envelope_wrapper_default.tpl,sha256=4VhkDx_YbOYywKQ82HIxRJXGcDpLuOgqcY7Edx9Rxyw,453
|
|
13
13
|
vortex/algo/mpitools_templates/envelope_wrapper_mpiauto.tpl,sha256=iB4_4jz-7QDqpl6AxrlCACsotJnEMG75dtazuGfkCb4,514
|
|
14
14
|
vortex/algo/mpitools_templates/wrapstd_wrapper_default.tpl,sha256=hh1Um95FIuvXAhUTMifAfixtfGgyjF1vEaF1nmbqMLw,502
|
|
15
15
|
vortex/data/__init__.py,sha256=XaHof5W6oCalr4X6oYAK4zW3z3F6mKuwdbKxmmmDraY,560
|
|
16
|
-
vortex/data/abstractstores.py,sha256=
|
|
16
|
+
vortex/data/abstractstores.py,sha256=eghm3HSlUcZM8AGdx0js4Nt_IdxEiYffOmqS5gkpVsQ,55297
|
|
17
17
|
vortex/data/containers.py,sha256=Qny5rqwXEdDWxG4JlC8KcsSAsHK3pp8qukZj1PTFBOM,26004
|
|
18
18
|
vortex/data/contents.py,sha256=ZrwlJfOvkTemzikFRgYBQH3ApC-TPNrbZxpZstzDdbY,19079
|
|
19
|
-
vortex/data/executables.py,sha256=
|
|
19
|
+
vortex/data/executables.py,sha256=aFIf0gTEw1z60SlznfDzGG58vzE4191ObDrASt0hszw,7381
|
|
20
20
|
vortex/data/flow.py,sha256=P1itBnA8jaoCWnVQjqbD_Pf26rpzud1JdwSLECDnDl4,3008
|
|
21
|
-
vortex/data/geometries.ini,sha256=
|
|
22
|
-
vortex/data/geometries.py,sha256=
|
|
23
|
-
vortex/data/handlers.py,sha256=
|
|
21
|
+
vortex/data/geometries.ini,sha256=W2yDVXwG5J0amjRt3xHjOrFr_xI7h3v75WFQcFda16w,54103
|
|
22
|
+
vortex/data/geometries.py,sha256=q-0xmfBFN_TrMaojljO0wEpEwY9w1cbUuoBo49cvYhc,28221
|
|
23
|
+
vortex/data/handlers.py,sha256=bChvizJnN5zxQxVf0oeUqcw_Wj-jnVszSqT1ovVUXFA,50525
|
|
24
24
|
vortex/data/outflow.py,sha256=IPKJkn75lRvhSqN5969TuhRAPnsZKlrWR4Cmw6VBFDs,1475
|
|
25
|
-
vortex/data/providers.py,sha256=
|
|
25
|
+
vortex/data/providers.py,sha256=s1CHOuogjzyPUHfK6gPpKU3IDCtySLTjPgkmuC4xiJA,16614
|
|
26
26
|
vortex/data/resources.py,sha256=UOwvQDTJxS9z66Aa7JM2nWM3IxrMWvY3L2J9D5w3sZw,6348
|
|
27
|
-
vortex/data/stores.py,sha256=
|
|
27
|
+
vortex/data/stores.py,sha256=e4fhTTHcnh7FhZ21M93bH5ixl_owArSMKlvlPIxHIF4,47735
|
|
28
28
|
vortex/data/sync_templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
29
29
|
vortex/layout/__init__.py,sha256=aZsDhVJrd3-648vw-UESI_2BLxyGl71sHdyrg9cL638,826
|
|
30
30
|
vortex/layout/contexts.py,sha256=GkysEtOOUj3nQvGUWrFjOOjzv7SmWFPUSLTH_pMMycI,20363
|
|
@@ -32,18 +32,18 @@ vortex/layout/dataflow.py,sha256=SKOUJKbtftW4POStjyBqNrqjvfbutsNHnWQ-p_75l_8,447
|
|
|
32
32
|
vortex/layout/monitor.py,sha256=DIUXoW242tg5B6fFEEe2Og-NOxli1T_xpcNWFvTaWXQ,34316
|
|
33
33
|
vortex/nwp/__init__.py,sha256=UfB2il-lEjF87PyVO9sGxjcuy3OYhZwskZw3z52VYAE,311
|
|
34
34
|
vortex/nwp/algo/__init__.py,sha256=_it4GhWxay_WAy0qr2IxLdIqsjWxXcsSSB7wx1BitB4,577
|
|
35
|
-
vortex/nwp/algo/assim.py,sha256=
|
|
35
|
+
vortex/nwp/algo/assim.py,sha256=HIyOAkzWc8U42ttWy7nYpHiDoBjTp9WoO7F_SQau9v8,15209
|
|
36
36
|
vortex/nwp/algo/clim.py,sha256=Z9QwUfosH0X_xTg6mam68qWIvw6Ts6CZIpc7Nb0NO1s,37511
|
|
37
37
|
vortex/nwp/algo/coupling.py,sha256=6KQ_YB7PCvVbt6c2VEtpCzwIyWRTjLfu54mNpKnXL9Q,29755
|
|
38
38
|
vortex/nwp/algo/eda.py,sha256=Wf2mt1r6v_ZYDz4BFyt-4JP1XAsO8sZW3O1UAOSRzmU,30746
|
|
39
39
|
vortex/nwp/algo/eps.py,sha256=JCBFiaFF9TQ-x7Szgw44Cd39tRD9184UXqOtoT6aRCs,26812
|
|
40
|
-
vortex/nwp/algo/forecasts.py,sha256=
|
|
40
|
+
vortex/nwp/algo/forecasts.py,sha256=qgpSYYsD0C9agBusBX38ulDesw01uU_QvOc28gspNCI,30971
|
|
41
41
|
vortex/nwp/algo/fpserver.py,sha256=98HQZsdQE22spy_mIE1G-NORQMMjfA5grEjeIMSlP9w,50163
|
|
42
42
|
vortex/nwp/algo/ifsnaming.py,sha256=WfpSpRJ7ua3ihqv8Y4UkrvE4pb0CkNWKIlW9EjY-2ao,11188
|
|
43
|
-
vortex/nwp/algo/ifsroot.py,sha256=
|
|
44
|
-
vortex/nwp/algo/monitoring.py,sha256=
|
|
43
|
+
vortex/nwp/algo/ifsroot.py,sha256=RIJzn1r9uZ5Cno3WHQ6swEZUAlmndvYRtn9TQ3BVIXc,14771
|
|
44
|
+
vortex/nwp/algo/monitoring.py,sha256=qwWupx4ITJx4vaQVfl3XhWdkaq2T8bNwk72Ur4v-Xw8,8893
|
|
45
45
|
vortex/nwp/algo/mpitools.py,sha256=QO3I9iMdY69znnA6hJy8XUAzBoejDpsVMQFRo3YzXro,24876
|
|
46
|
-
vortex/nwp/algo/odbtools.py,sha256=
|
|
46
|
+
vortex/nwp/algo/odbtools.py,sha256=SjYCYseLqrxlPtEHu4APwSZoCPwjl2rLvT1XC2kvql4,44104
|
|
47
47
|
vortex/nwp/algo/oopsroot.py,sha256=es3p7RPOixQT74TcglJX1q8MswxveVnLZa84kyhu3uM,33806
|
|
48
48
|
vortex/nwp/algo/oopstests.py,sha256=owQAS7_fGbUGZGzMsJek32dbb3JQ6dafSVBrdmveQ-Q,6654
|
|
49
49
|
vortex/nwp/algo/request.py,sha256=y5N9RUfKoPXR6EbSely37Zz6d-2HYyfV3UCvvoenqbY,22809
|
|
@@ -53,9 +53,9 @@ vortex/nwp/data/assim.py,sha256=Dv5nmRYDDzYopC6xIwAl92HFTIz3k18C1jFE_IhYzuU,1009
|
|
|
53
53
|
vortex/nwp/data/boundaries.py,sha256=xZoIriM5L-Q66_am6rOD2ZO0s-31iAUeTE7NZIXXvHI,8114
|
|
54
54
|
vortex/nwp/data/climfiles.py,sha256=hlpe51wc-qrLFV_PX3vCedfLJu8Ko4VHa_qoVmA-Wcg,12610
|
|
55
55
|
vortex/nwp/data/configfiles.py,sha256=0c3VvM25dhU6-QEJs5Wo4IckIVjXFHc-tTEzh1Bho1c,3760
|
|
56
|
-
vortex/nwp/data/consts.py,sha256=
|
|
56
|
+
vortex/nwp/data/consts.py,sha256=LCVZEqONqgDSeWbGSVYTIcdsFnvs0tpuoA3C_fYaEJU,23894
|
|
57
57
|
vortex/nwp/data/ctpini.py,sha256=wEpJG7Px2hb7Vudn4eY2vJHKi8YYO99Sd6UJAeT5kMI,3537
|
|
58
|
-
vortex/nwp/data/diagnostics.py,sha256=
|
|
58
|
+
vortex/nwp/data/diagnostics.py,sha256=Ckemxx6O7-nhOLKyZK3R8dlwMdEAcbSPEC2H4lk3Ikk,5040
|
|
59
59
|
vortex/nwp/data/eda.py,sha256=rVQ35SpHVdHAQ10-LhyGy1k6P9Dbd6os8Crz2I4ThvY,4112
|
|
60
60
|
vortex/nwp/data/eps.py,sha256=nLKTEpEeMxV9oE_sf87xihspMqwzXA8r9uJPP6PdycE,11861
|
|
61
61
|
vortex/nwp/data/executables.py,sha256=xFRHzE5rK71m7gkd-LgMO3KSs0uBeCLqW-8vmedMHqQ,25036
|
|
@@ -80,7 +80,7 @@ vortex/nwp/tools/bdap.py,sha256=GdqC4QclVHzZUNQGYQPu9EmFPNEEBadDNGsLmrE2XUs,1689
|
|
|
80
80
|
vortex/nwp/tools/bdcp.py,sha256=cDlkIVZW9grF2YnieIoiwsDhPxQsJIcaBuOCu6rsCzo,986
|
|
81
81
|
vortex/nwp/tools/bdm.py,sha256=e9o3IpR9C4GGd7NhXWt0bpogrcVkqn_hbEJBtThSV5g,360
|
|
82
82
|
vortex/nwp/tools/bdmp.py,sha256=tlsaPvsPtKSXrq2T7X_xtAdWGZ3Hg2qJUJfH8Fetx3E,1506
|
|
83
|
-
vortex/nwp/tools/conftools.py,sha256=
|
|
83
|
+
vortex/nwp/tools/conftools.py,sha256=Awnf9Tied8qeWhv24GXbe3VF9DWPYScnPXjN2Viez-I,59578
|
|
84
84
|
vortex/nwp/tools/drhook.py,sha256=8BgHw1UGxgviLche73XUltuUtkN9rqjBPy4oBLyG4KY,1972
|
|
85
85
|
vortex/nwp/tools/grib.py,sha256=Uur8z4NjGoRXV4Via-63F9Px59FKG5UxiLM9yMgNkUs,10262
|
|
86
86
|
vortex/nwp/tools/gribdiff.py,sha256=VD4nH06DuFheE9HsFT1UXWnvAC5vUfVBPeqQhCK4wbo,3137
|
|
@@ -123,9 +123,9 @@ vortex/tools/prestaging.py,sha256=lGJIo4SA8pDziF1nbBogsrK1bgwDQA6tj9Wg9VUFt6Q,70
|
|
|
123
123
|
vortex/tools/rawfiles.py,sha256=keUI6QtEZQrWQ7H_Sg_TY9SY32anfb-suqJkrDmdXN0,215
|
|
124
124
|
vortex/tools/schedulers.py,sha256=7JtfYfSJgViytM7T26B61V8W83dvNwkDWdb2jY_Bn-A,15691
|
|
125
125
|
vortex/tools/services.py,sha256=hprRFmLcQRLVGDUnFxUFHaEB7ll1tNdt38hRQz8SWF8,29795
|
|
126
|
-
vortex/tools/storage.py,sha256=
|
|
126
|
+
vortex/tools/storage.py,sha256=e2GGTN_fl2wDNdEeYoD2V7jmwpZecb8u32rYvnqPMZk,34522
|
|
127
127
|
vortex/tools/surfex.py,sha256=qbCIGt-dmfIRWRRMjOQnzc9sGNnt8PIFSqQYT77trhw,1408
|
|
128
|
-
vortex/tools/systems.py,sha256=
|
|
128
|
+
vortex/tools/systems.py,sha256=fU46ZU6feCPkyCYti2Cs_jWbbYWv4zSBZskJwfSy_8U,150269
|
|
129
129
|
vortex/tools/targets.py,sha256=-n2uMoEFdz3AeoSd1IGhlr7dYYb8xantUeh9_ggk9iI,14896
|
|
130
130
|
vortex/util/__init__.py,sha256=Zt0OASbKbNnnwUqFHFoq5Mk13sGYSQhxqh7bUvJH6Y8,198
|
|
131
131
|
vortex/util/config.py,sha256=KJHq0GMNRlwzh2WUdpwn1FIKCuAXla7nPRe7j3IZGcI,40045
|
|
@@ -137,8 +137,8 @@ vortex/util/roles.py,sha256=9un_QAijaMn5iTS7PrdoWI5_NNw7uHxMWTnyhc5aNzg,1150
|
|
|
137
137
|
vortex/util/storefunctions.py,sha256=uSfG-G_A88iJf3DwFBd-j0rw6eJta8opfRT39aQHsHM,3615
|
|
138
138
|
vortex/util/structs.py,sha256=vapErq0MNhiKlsnjrv_a5M0Rn29KbP3WE_oiy4Hfwb8,683
|
|
139
139
|
vortex/util/worker.py,sha256=zp8f2tx4SXwf1v55XMdYLAx7n3vSlg8PRGrkHgnfdmg,4721
|
|
140
|
-
vortex_nwp-2.
|
|
141
|
-
vortex_nwp-2.
|
|
142
|
-
vortex_nwp-2.
|
|
143
|
-
vortex_nwp-2.
|
|
144
|
-
vortex_nwp-2.
|
|
140
|
+
vortex_nwp-2.3.0.dist-info/licenses/LICENSE,sha256=ewBJPmWAcQqtBPrydH10tt6ECkcYP3b1o2RfH85pJF0,21863
|
|
141
|
+
vortex_nwp-2.3.0.dist-info/METADATA,sha256=IYexH93RR5LZEqUCVzTfE5IIlngnReB61R5T7bHcErs,2301
|
|
142
|
+
vortex_nwp-2.3.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
143
|
+
vortex_nwp-2.3.0.dist-info/top_level.txt,sha256=3xfbSD7kw8xKl0jk4GNHsOPKbhubstfWHPl6bxHciRQ,7
|
|
144
|
+
vortex_nwp-2.3.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|