wrfrun 0.1.6__tar.gz → 0.1.8__tar.gz

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.
Files changed (112) hide show
  1. {wrfrun-0.1.6 → wrfrun-0.1.8}/.gitignore +5 -0
  2. {wrfrun-0.1.6 → wrfrun-0.1.8}/PKG-INFO +16 -4
  3. {wrfrun-0.1.6 → wrfrun-0.1.8}/README.md +11 -1
  4. wrfrun-0.1.8/build.sh +5 -0
  5. {wrfrun-0.1.6 → wrfrun-0.1.8}/meson.build +2 -2
  6. {wrfrun-0.1.6 → wrfrun-0.1.8}/pyproject.toml +17 -3
  7. wrfrun-0.1.8/wrfrun/__init__.py +3 -0
  8. wrfrun-0.1.8/wrfrun/core/__init__.py +38 -0
  9. wrfrun-0.1.8/wrfrun/core/base.py +848 -0
  10. wrfrun-0.1.8/wrfrun/core/config.py +836 -0
  11. wrfrun-0.1.8/wrfrun/core/error.py +110 -0
  12. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/core/meson.build +3 -2
  13. wrfrun-0.1.8/wrfrun/core/replay.py +146 -0
  14. wrfrun-0.1.8/wrfrun/core/server.py +269 -0
  15. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/data.py +15 -6
  16. wrfrun-0.1.8/wrfrun/extension/__init__.py +29 -0
  17. wrfrun-0.1.8/wrfrun/extension/goos_sst/__init__.py +67 -0
  18. wrfrun-0.1.6/wrfrun/extension/goos_sst/goos_sst.py → wrfrun-0.1.8/wrfrun/extension/goos_sst/core.py +38 -16
  19. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/goos_sst/meson.build +1 -1
  20. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/littler/utils.py +153 -115
  21. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/meson.build +1 -0
  22. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/utils.py +8 -3
  23. wrfrun-0.1.8/wrfrun/model/__init__.py +7 -0
  24. wrfrun-0.1.8/wrfrun/model/base.py +14 -0
  25. wrfrun-0.1.8/wrfrun/model/meson.build +11 -0
  26. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/model/plot.py +12 -8
  27. wrfrun-0.1.8/wrfrun/model/utils.py +34 -0
  28. wrfrun-0.1.8/wrfrun/model/wrf/__init__.py +6 -0
  29. wrfrun-0.1.8/wrfrun/model/wrf/_metgrid.py +71 -0
  30. wrfrun-0.1.6/wrfrun/model/utils/ndown_utils.py → wrfrun-0.1.8/wrfrun/model/wrf/_ndown.py +4 -4
  31. wrfrun-0.1.8/wrfrun/model/wrf/core.py +805 -0
  32. wrfrun-0.1.8/wrfrun/model/wrf/exec_wrap.py +101 -0
  33. {wrfrun-0.1.6/wrfrun/model → wrfrun-0.1.8/wrfrun/model/wrf}/geodata.py +5 -5
  34. {wrfrun-0.1.6/wrfrun/model → wrfrun-0.1.8/wrfrun/model/wrf}/meson.build +6 -6
  35. {wrfrun-0.1.6/wrfrun/model → wrfrun-0.1.8/wrfrun/model/wrf}/namelist.py +96 -96
  36. wrfrun-0.1.8/wrfrun/model/wrf/plot.py +158 -0
  37. wrfrun-0.1.8/wrfrun/model/wrf/scheme.py +395 -0
  38. wrfrun-0.1.8/wrfrun/model/wrf/vtable.py +65 -0
  39. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/pbs.py +5 -4
  40. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/plot/wps.py +66 -58
  41. wrfrun-0.1.8/wrfrun/res/README.md +72 -0
  42. wrfrun-0.1.8/wrfrun/res/__init__.py +22 -0
  43. wrfrun-0.1.8/wrfrun/res/config.toml.template +138 -0
  44. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/config.yaml.template +11 -9
  45. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/extension/meson.build +0 -1
  46. wrfrun-0.1.8/wrfrun/res/extension/name_map.json +6 -0
  47. wrfrun-0.1.8/wrfrun/res/generate_init.py +108 -0
  48. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/job_scheduler/meson.build +0 -1
  49. wrfrun-0.1.8/wrfrun/res/job_scheduler/name_map.json +10 -0
  50. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/meson.build +1 -4
  51. wrfrun-0.1.8/wrfrun/res/name_map.json +18 -0
  52. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/namelist/meson.build +0 -1
  53. wrfrun-0.1.8/wrfrun/res/namelist/name_map.json +22 -0
  54. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/namelist/namelist.input.real.template +1 -7
  55. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/namelist/namelist.input.wrf.template +0 -6
  56. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/namelist/namelist.wps.template +2 -2
  57. wrfrun-0.1.8/wrfrun/run.py +264 -0
  58. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/utils.py +58 -28
  59. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/workspace.py +19 -18
  60. wrfrun-0.1.6/main.py +0 -25
  61. wrfrun-0.1.6/wrfrun/__init__.py +0 -9
  62. wrfrun-0.1.6/wrfrun/core/__init__.py +0 -4
  63. wrfrun-0.1.6/wrfrun/core/config.py +0 -135
  64. wrfrun-0.1.6/wrfrun/core/constant.py +0 -121
  65. wrfrun-0.1.6/wrfrun/core/namelist.py +0 -301
  66. wrfrun-0.1.6/wrfrun/core/server.py +0 -187
  67. wrfrun-0.1.6/wrfrun/extension/__init__.py +0 -1
  68. wrfrun-0.1.6/wrfrun/extension/goos_sst/__init__.py +0 -3
  69. wrfrun-0.1.6/wrfrun/model/__init__.py +0 -5
  70. wrfrun-0.1.6/wrfrun/model/core.py +0 -187
  71. wrfrun-0.1.6/wrfrun/model/run.py +0 -377
  72. wrfrun-0.1.6/wrfrun/model/scheme.py +0 -191
  73. wrfrun-0.1.6/wrfrun/model/utils/__init__.py +0 -5
  74. wrfrun-0.1.6/wrfrun/model/utils/core.py +0 -124
  75. wrfrun-0.1.6/wrfrun/model/utils/meson.build +0 -11
  76. wrfrun-0.1.6/wrfrun/model/utils/wps_utils.py +0 -168
  77. wrfrun-0.1.6/wrfrun/model/utils/wrf_utils.py +0 -66
  78. wrfrun-0.1.6/wrfrun/model/utils/wrfda_utils.py +0 -0
  79. wrfrun-0.1.6/wrfrun/res/__init__.py +0 -13
  80. wrfrun-0.1.6/wrfrun/res/extension/__init__.py +0 -9
  81. wrfrun-0.1.6/wrfrun/res/geogrid/GEOGRID.SHAN_DONG_LANDUSE_SOIL_TOP.TBL +0 -982
  82. wrfrun-0.1.6/wrfrun/res/geogrid/__init__.py +0 -8
  83. wrfrun-0.1.6/wrfrun/res/geogrid/meson.build +0 -7
  84. wrfrun-0.1.6/wrfrun/res/job_scheduler/__init__.py +0 -8
  85. wrfrun-0.1.6/wrfrun/res/metgrid/METGRID.TBL +0 -1150
  86. wrfrun-0.1.6/wrfrun/res/metgrid/__init__.py +0 -8
  87. wrfrun-0.1.6/wrfrun/res/metgrid/meson.build +0 -7
  88. wrfrun-0.1.6/wrfrun/res/namelist/__init__.py +0 -16
  89. wrfrun-0.1.6/wrfrun/res/ungrib/__init__.py +0 -7
  90. wrfrun-0.1.6/wrfrun/res/ungrib/meson.build +0 -6
  91. wrfrun-0.1.6/wrfrun/run.py +0 -185
  92. {wrfrun-0.1.6 → wrfrun-0.1.8}/.gitattributes +0 -0
  93. {wrfrun-0.1.6 → wrfrun-0.1.8}/LICENSE +0 -0
  94. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/goos_sst/README.md +0 -0
  95. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/goos_sst/res/Vtable.ERA_GOOS_SST +0 -0
  96. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/goos_sst/res/__init__.py +0 -0
  97. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/goos_sst/res/meson.build +0 -0
  98. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/goos_sst/utils.py +0 -0
  99. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/littler/README.md +0 -0
  100. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/littler/__init__.py +0 -0
  101. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/littler/meson.build +0 -0
  102. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/extension/micaps/README.md +0 -0
  103. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/meson.build +0 -0
  104. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/plot/__init__.py +0 -0
  105. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/plot/meson.build +0 -0
  106. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/extension/plotgrids.ncl +0 -0
  107. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/job_scheduler/pbs.template +0 -0
  108. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/job_scheduler/slurm.template +0 -0
  109. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/namelist/namelist.input.da_wrfvar.template +0 -0
  110. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/namelist/namelist.input.dfi.template +0 -0
  111. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/namelist/parame.in.template +0 -0
  112. {wrfrun-0.1.6 → wrfrun-0.1.8}/wrfrun/res/run.sh.template +0 -0
@@ -10,6 +10,7 @@ wrfrun.egg-info/
10
10
  .idea/
11
11
  data/
12
12
  docs/build
13
+ docs/source/api/generated/
13
14
 
14
15
  **/*.1
15
16
  **/*.input_step1
@@ -18,3 +19,7 @@ docs/build
18
19
  **/*.so
19
20
  test.*
20
21
  config.yaml
22
+ main.py
23
+ .python-version
24
+ uv.lock
25
+ namelist.*
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: wrfrun
3
- Version: 0.1.6
3
+ Version: 0.1.8
4
4
  Summary: wrfrun is a comprehensive toolkit for managing and using WRF
5
5
  Keywords: WRF
6
6
  Author-Email: Syize <syizeliu@gmail.com>
@@ -8,13 +8,13 @@ Maintainer-Email: Syize <syizeliu@gmail.com>
8
8
  License: GPL-3.0-or-later
9
9
  Project-URL: homepage, https://github.com/Syize/wrfrun
10
10
  Project-URL: repository, https://github.com/Syize/wrfrun
11
- Project-URL: documentation, https://github.com/Syize/wrfrun/wiki
11
+ Project-URL: documentation, https://wrfrun.syize.cn
12
12
  Project-URL: Bug Tracker, https://github.com/Syize/wrfrun/issues
13
13
  Requires-Python: >=3.10
14
+ Requires-Dist: numpy<2.0.0
14
15
  Requires-Dist: xarray
15
16
  Requires-Dist: netCDF4
16
17
  Requires-Dist: rich
17
- Requires-Dist: PyYAML
18
18
  Requires-Dist: pandas
19
19
  Requires-Dist: f90nml
20
20
  Requires-Dist: cdsapi
@@ -22,6 +22,8 @@ Requires-Dist: matplotlib
22
22
  Requires-Dist: Cartopy
23
23
  Requires-Dist: wrf-python
24
24
  Requires-Dist: cfgrib
25
+ Requires-Dist: tomli
26
+ Requires-Dist: tomli-w
25
27
  Description-Content-Type: text/markdown
26
28
 
27
29
  # wrfrun: A toolkit to control WRF
@@ -42,6 +44,16 @@ The following are the main features that wrfrun wants to achieve. These features
42
44
  - Real-time parsing of WRF logs, feedback on simulation progress.
43
45
  - Support for adding more functionality through extensions.
44
46
 
47
+ ## Dependencies
48
+
49
+ You need to install `meson` and `ninja` at first, both of which can be installed using `pip`:
50
+
51
+ ```bash
52
+ pip install meson ninja
53
+ ```
54
+
55
+ Make sure the path `$HOME/.local/bin` has been added to your environment variable `PATH`.
56
+
45
57
  ## Installation
46
58
 
47
59
  Install using pip:
@@ -52,4 +64,4 @@ pip install wrfrun
52
64
 
53
65
  ## Documentation
54
66
 
55
- Please check [Wiki](https://github.com/Syize/wrfrun/wiki).
67
+ Please check [Wiki](https://wrfrun.syize.cn).
@@ -16,6 +16,16 @@ The following are the main features that wrfrun wants to achieve. These features
16
16
  - Real-time parsing of WRF logs, feedback on simulation progress.
17
17
  - Support for adding more functionality through extensions.
18
18
 
19
+ ## Dependencies
20
+
21
+ You need to install `meson` and `ninja` at first, both of which can be installed using `pip`:
22
+
23
+ ```bash
24
+ pip install meson ninja
25
+ ```
26
+
27
+ Make sure the path `$HOME/.local/bin` has been added to your environment variable `PATH`.
28
+
19
29
  ## Installation
20
30
 
21
31
  Install using pip:
@@ -26,4 +36,4 @@ pip install wrfrun
26
36
 
27
37
  ## Documentation
28
38
 
29
- Please check [Wiki](https://github.com/Syize/wrfrun/wiki).
39
+ Please check [Wiki](https://wrfrun.syize.cn).
wrfrun-0.1.8/build.sh ADDED
@@ -0,0 +1,5 @@
1
+ #!/bin/bash
2
+
3
+ python wrfrun/res/generate_init.py -o wrfrun/res/__init__.py
4
+
5
+ python -m build -s
@@ -1,12 +1,12 @@
1
1
  project(
2
2
  'wrfrun',
3
3
  'c',
4
- version: '0.1.6',
4
+ version: '0.1.8',
5
5
  license: 'BSD-3',
6
6
  meson_version: '>=0.64.0',
7
7
  default_options: ['warning_level=2'],
8
8
  )
9
9
 
10
- py3 = import('python').find_installation(pure: false)
10
+ py3 = import('python').find_installation(pure: true)
11
11
 
12
12
  subdir('wrfrun')
@@ -4,7 +4,7 @@ requires = ["meson-python"]
4
4
 
5
5
  [project]
6
6
  name = "wrfrun"
7
- version = "0.1.6"
7
+ version = "0.1.8"
8
8
  readme = "README.md"
9
9
  license = { text = "GPL-3.0-or-later" }
10
10
  requires-python = '>=3.10'
@@ -14,12 +14,26 @@ maintainers = [
14
14
  ]
15
15
  keywords = [ "WRF", ]
16
16
  description = "wrfrun is a comprehensive toolkit for managing and using WRF"
17
- dependencies = ["xarray", "netCDF4", "rich", "PyYAML", "pandas", "f90nml", "cdsapi", "matplotlib", "Cartopy", "wrf-python", "cfgrib"]
17
+ dependencies = [
18
+ "numpy<2.0.0",
19
+ "xarray",
20
+ "netCDF4",
21
+ "rich",
22
+ "pandas",
23
+ "f90nml",
24
+ "cdsapi",
25
+ "matplotlib",
26
+ "Cartopy",
27
+ "wrf-python",
28
+ "cfgrib",
29
+ "tomli",
30
+ "tomli-w"
31
+ ]
18
32
 
19
33
  [project.urls]
20
34
  homepage = "https://github.com/Syize/wrfrun"
21
35
  repository = "https://github.com/Syize/wrfrun"
22
- documentation = "https://github.com/Syize/wrfrun/wiki"
36
+ documentation = "https://wrfrun.syize.cn"
23
37
  "Bug Tracker" = "https://github.com/Syize/wrfrun/issues"
24
38
 
25
39
  [tool.poetry]
@@ -0,0 +1,3 @@
1
+ from .core import *
2
+ from .run import *
3
+ from .res import *
@@ -0,0 +1,38 @@
1
+ """
2
+ wrfrun.core
3
+ ###########
4
+
5
+ The core functionalities of ``wrfrun`` are all implemented in the submodule ``wrfrun.core``,
6
+ such as processing namelist files, managing resource files required during model's running (e.g., VTable files),
7
+ calling the numerical model and process its output and log files, monitoring simulation process via model's log,
8
+ recording and replaying the simulation.
9
+
10
+ The functionalities are split into several submodules, which are listed in the table below.
11
+
12
+ Submodules
13
+ **********
14
+
15
+ ================================ ========================================================
16
+ :doc:`base </api/core.base>` Executable base class and related classes.
17
+ :doc:`config </api/core.config>` ``wrfrun`` config classes.
18
+ :doc:`error </api/core.error>` ``wrfrun`` error classes.
19
+ :doc:`replay </api/core.replay>` Functions and classes to record and replay simulations.
20
+ :doc:`server </api/core.server>` Functions and classes to start socket server.
21
+ ================================ ========================================================
22
+
23
+ .. toctree::
24
+ :maxdepth: 1
25
+ :hidden:
26
+
27
+ base <core.base>
28
+ config <core.config>
29
+ error <core.error>
30
+ replay <core.replay>
31
+ server <core.server>
32
+ """
33
+
34
+ from .base import *
35
+ from .config import *
36
+ from .error import *
37
+ from .replay import *
38
+ from .server import *