dapper 1.7.1__tar.gz → 1.7.3__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.
- {dapper-1.7.1 → dapper-1.7.3}/PKG-INFO +6 -5
- {dapper-1.7.1 → dapper-1.7.3}/README.md +70 -70
- {dapper-1.7.1 → dapper-1.7.3}/dapper/__init__.py +1 -1
- {dapper-1.7.1 → dapper-1.7.3}/dapper.egg-info/PKG-INFO +6 -5
- {dapper-1.7.1 → dapper-1.7.3}/dapper.egg-info/requires.txt +2 -2
- {dapper-1.7.1 → dapper-1.7.3}/setup.py +7 -4
- {dapper-1.7.1 → dapper-1.7.3}/LICENCE.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/da_methods/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/da_methods/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/da_methods/baseline.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/da_methods/ensemble.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/da_methods/extended.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/da_methods/other.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/da_methods/particle.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/da_methods/variational.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/dpr_config.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/dpr_config.yaml +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/DoublePendulum/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/DoublePendulum/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/DoublePendulum/settings101.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Id/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Ikeda/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Ikeda/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Ikeda/some_settings_01.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/KS/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/KS/bocquet2019.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/KS/compare_schemes.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/KS/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LA/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LA/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LA/evensen2009.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LA/raanes2015.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LA/small.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz05/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz05/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz05/settings01.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz63/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz63/anderson2010rhf.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz63/bocquet2012.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz63/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz63/extras.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz63/mandel2016.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz63/ramgraber2022.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz63/sakov2012.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz63/wiljes2017.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz84/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz84/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz84/harder.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz84/pajonk2012.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/anderson2009.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/bocquet2010.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/bocquet2010_m40.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/bocquet2015loc.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/extras.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/frei2013bridging.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/hoteit2015.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/miyoshi2011.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/pinheiro2019.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/raanes2016.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/sakov2008.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/spantini2019.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/spectral_obs.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/todter2015.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96/todter2015_G.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96s/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/Lorenz96s/grudzien2020.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LorenzUV/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LorenzUV/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LorenzUV/illust_LorenzUV.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LorenzUV/illust_parameterizations.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LorenzUV/lorenz96.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LorenzUV/wilks05.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LotkaVolterra/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LotkaVolterra/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/LotkaVolterra/settings101.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/counillon2009.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/Makefile +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/calc.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/data.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/helmholtz.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/interface.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/nfw.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/parameters.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/prms_cou09_ens.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/prms_cou09_truth.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/prms_counillon2009_ens.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/prms_counillon2009_truth.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/prms_sak08.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/prms_sakov2008.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/prms_sample_generation.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/prms_test_model.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/qg.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/qgflux.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/qgstep.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/f90/utils.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/governing_eqn.png +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/illust_obs.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/QG/sakov2008.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/VL20/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/VL20/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/explore_props.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/integration.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/mods/utils.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/stats.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/stats_etc.md +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/chronos.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/colors.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/datafiles.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/linalg.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/liveplotting.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/localization.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/matrices.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/multiproc.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/progressbar.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/randvars.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/remote/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/remote/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/remote/autoscaler.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/remote/uplink.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/rounding.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/seeding.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/series.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/tools/viz.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/xp_launch.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper/xp_process.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper.egg-info/SOURCES.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper.egg-info/dependency_links.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/dapper.egg-info/top_level.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/pyproject.toml +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/setup.cfg +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_HMMs.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_TLMs.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_data.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_demos.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_example_2.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_iEnKS.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_localization.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_matrices.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_operator.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_plotting.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_printing.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_randvars.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_rng.py +0 -0
- {dapper-1.7.1 → dapper-1.7.3}/tests/test_round2.py +0 -0
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dapper
|
|
3
|
-
Version: 1.7.
|
|
3
|
+
Version: 1.7.3
|
|
4
4
|
Summary: DAPPER benchmarks the performance of data assimilation (DA) methods.
|
|
5
5
|
Author: Patrick N. Raanes
|
|
6
6
|
Author-email: patrick.n.raanes@gmail.com
|
|
7
|
+
License: MIT
|
|
7
8
|
Project-URL: Documentation, https://nansencenter.github.io/DAPPER/
|
|
8
9
|
Project-URL: Source, https://github.com/nansencenter/DAPPER
|
|
9
10
|
Project-URL: Tracker, https://github.com/nansencenter/DAPPER/issues
|
|
@@ -12,9 +13,8 @@ Classifier: Development Status :: 3 - Alpha
|
|
|
12
13
|
Classifier: Intended Audience :: Science/Research
|
|
13
14
|
Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
14
15
|
Classifier: Programming Language :: Python :: 3
|
|
15
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
16
16
|
Classifier: Operating System :: OS Independent
|
|
17
|
-
Requires-Python: >=3.
|
|
17
|
+
Requires-Python: >=3.12
|
|
18
18
|
Description-Content-Type: text/markdown
|
|
19
19
|
License-File: LICENCE.txt
|
|
20
20
|
Requires-Dist: scipy>=1.14
|
|
@@ -23,8 +23,8 @@ Requires-Dist: matplotlib>=3.10
|
|
|
23
23
|
Requires-Dist: pyyaml>=6.0.2
|
|
24
24
|
Requires-Dist: ipython>=7.34
|
|
25
25
|
Requires-Dist: ipdb
|
|
26
|
-
Requires-Dist:
|
|
27
|
-
Requires-Dist: notebook<
|
|
26
|
+
Requires-Dist: setuptools
|
|
27
|
+
Requires-Dist: notebook<6.5
|
|
28
28
|
Requires-Dist: mpl-tools==0.4.1
|
|
29
29
|
Requires-Dist: tqdm~=4.67
|
|
30
30
|
Requires-Dist: colorama~=0.4.1
|
|
@@ -95,6 +95,7 @@ Dynamic: classifier
|
|
|
95
95
|
Dynamic: description
|
|
96
96
|
Dynamic: description-content-type
|
|
97
97
|
Dynamic: keywords
|
|
98
|
+
Dynamic: license
|
|
98
99
|
Dynamic: license-file
|
|
99
100
|
Dynamic: project-url
|
|
100
101
|
Dynamic: provides-extra
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
!
|
|
9
9
|
-->
|
|
10
10
|
|
|
11
|
-
<img src="https://github.com/nansencenter/DAPPER/raw/master/docs/images/logos/logo_wtxt.png" align="left" width="250"/>
|
|
11
|
+
<img src="https://github.com/nansencenter/DAPPER/raw/master/docs/images/logos/logo_wtxt.png" alt="DAPPER logo" align="left" width="250"/>
|
|
12
12
|
|
|
13
13
|
DAPPER is a set of templates for **benchmarking** the performance of **data assimilation** (DA) methods.
|
|
14
14
|
The numerical experiments provide support and guidance for new developments in DA.
|
|
@@ -88,7 +88,7 @@ Also see its [drawbacks](#similar-projects).
|
|
|
88
88
|
|
|
89
89
|
Successfully tested on Linux/Mac/Windows.
|
|
90
90
|
|
|
91
|
-
### Prerequisite: Python>=3.
|
|
91
|
+
### Prerequisite: Python>=3.12
|
|
92
92
|
|
|
93
93
|
If you're an expert, setup a python environment however you like.
|
|
94
94
|
Otherwise:
|
|
@@ -141,23 +141,23 @@ you'll first need to run `conda activate dapper-env`
|
|
|
141
141
|
|
|
142
142
|
<!-- markdownlint-capture -->
|
|
143
143
|
<!-- markdownlint-disable line-length -->
|
|
144
|
-
Method
|
|
145
|
-
|
|
146
|
-
EnKF <sup>1</sup>
|
|
147
|
-
EnKF-N
|
|
148
|
-
EnKS, EnRTS
|
|
149
|
-
iEnKS / iEnKF / EnRML / ES-MDA <sup>2</sup>
|
|
150
|
-
LETKF, local & serial EAKF
|
|
151
|
-
Sqrt. model noise methods
|
|
152
|
-
Particle filter (bootstrap) <sup>3</sup>
|
|
153
|
-
Optimal/implicit Particle filter <sup>3</sup>
|
|
154
|
-
NETF
|
|
155
|
-
Rank histogram filter (RHF)
|
|
156
|
-
4D-Var
|
|
157
|
-
3D-Var
|
|
158
|
-
Extended KF
|
|
159
|
-
Optimal interpolation
|
|
160
|
-
Climatology
|
|
144
|
+
| Method | Literature reproduced |
|
|
145
|
+
|------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------|
|
|
146
|
+
| EnKF <sup>1</sup> | [Sakov08](https://nansencenter.github.io/DAPPER/references/#sakov2008b), [Hoteit15](https://nansencenter.github.io/DAPPER/references/#hoteit2015a), [Grudzien2020](https://nansencenter.github.io/DAPPER/references/#grudzien2020a) |
|
|
147
|
+
| EnKF-N | [Bocquet12](https://nansencenter.github.io/DAPPER/references/#bocquet2012a), [Bocquet15](https://nansencenter.github.io/DAPPER/references/#bocquet2015) |
|
|
148
|
+
| EnKS, EnRTS | [Raanes2016](https://nansencenter.github.io/DAPPER/references/#raanes2016thesis) |
|
|
149
|
+
| iEnKS / iEnKF / EnRML / ES-MDA <sup>2</sup> | [Sakov12](https://nansencenter.github.io/DAPPER/references/#sakov2012a), [Bocquet12](https://nansencenter.github.io/DAPPER/references/#Bocquet12), [Bocquet14](https://nansencenter.github.io/DAPPER/references/#bocquet2014) |
|
|
150
|
+
| LETKF, local & serial EAKF | [Bocquet11](https://nansencenter.github.io/DAPPER/references/#bocquet2011) |
|
|
151
|
+
| Sqrt. model noise methods | [Raanes2014](https://nansencenter.github.io/DAPPER/references/#raanes2014) |
|
|
152
|
+
| Particle filter (bootstrap) <sup>3</sup> | [Bocquet10](https://nansencenter.github.io/DAPPER/references/#bocquet2010a) |
|
|
153
|
+
| Optimal/implicit Particle filter <sup>3</sup> | [Bocquet10](https://nansencenter.github.io/DAPPER/references/#bocquet2010a) |
|
|
154
|
+
| NETF | [Tödter15](https://nansencenter.github.io/DAPPER/references/#todter2015a), [Wiljes16](https://nansencenter.github.io/DAPPER/references/#wiljes2016) |
|
|
155
|
+
| Rank histogram filter (RHF) | [Anderson10](https://nansencenter.github.io/DAPPER/references/#anderson2010) |
|
|
156
|
+
| 4D-Var | |
|
|
157
|
+
| 3D-Var | |
|
|
158
|
+
| Extended KF | |
|
|
159
|
+
| Optimal interpolation | |
|
|
160
|
+
| Climatology | |
|
|
161
161
|
<!-- markdownlint-restore -->
|
|
162
162
|
|
|
163
163
|
<sup>1</sup>: Stochastic, DEnKF (i.e. half-update), ETKF (i.e. sym. sqrt.).
|
|
@@ -183,22 +183,22 @@ grep -r "xp.*iEnKS" dapper/mods
|
|
|
183
183
|
Simple models facilitate the reliability, reproducibility,
|
|
184
184
|
and interpretability of experiment results.
|
|
185
185
|
|
|
186
|
-
Model | Lin | TLM
|
|
187
|
-
|
|
188
|
-
Id | Yes | Yes | No | N/A |
|
|
189
|
-
Linear Advect. (LA) | Yes | Yes | Yes | 1d | 1000
|
|
190
|
-
DoublePendulum | No | Yes | No | 0d | 4 | 2 | Matplotlib/Raanes
|
|
191
|
-
Ikeda | No | Yes | No | 0d | 2 | 1 | Raanes
|
|
192
|
-
LotkaVolterra | No | Yes | No | 0d | 5
|
|
193
|
-
Lorenz63 | No | Yes | "Yes" | 0d | 3 | 2 | Sakov
|
|
194
|
-
Lorenz84 | No | Yes | No | 0d | 3 | 2 | Raanes
|
|
195
|
-
Lorenz96 | No | Yes | No | 1d | 40
|
|
196
|
-
Lorenz96s | No | Yes | No | 1d | 10
|
|
197
|
-
LorenzUV | No | Yes | No | 2x 1d | 256 + 8
|
|
198
|
-
LorenzIII | No | No | No | 1d | 960
|
|
199
|
-
Vissio-Lucarini 20 | No | Yes | No | 1d | 36
|
|
200
|
-
Kuramoto-Sivashinsky | No | Yes | Yes | 1d | 128
|
|
201
|
-
Quasi-Geost (QG) | No | No | Yes | 2d | 129²≈17k | ≈140 | Sakov
|
|
186
|
+
| Model | Lin | TLM`**` | PDE? | Phys.dim. | State len | Lyap≥0 | Implementer |
|
|
187
|
+
|----------------------|-----|-------|-------|-----------|-----------|--------|---------------------|
|
|
188
|
+
| Id | Yes | Yes | No | N/A | `*` | 0 | Raanes |
|
|
189
|
+
| Linear Advect. (LA) | Yes | Yes | Yes | 1d | 1000 `*` | 51 | Evensen/Raanes |
|
|
190
|
+
| DoublePendulum | No | Yes | No | 0d | 4 | 2 | Matplotlib/Raanes |
|
|
191
|
+
| Ikeda | No | Yes | No | 0d | 2 | 1 | Raanes |
|
|
192
|
+
| LotkaVolterra | No | Yes | No | 0d | 5 `*` | 1 | Wikipedia/Raanes |
|
|
193
|
+
| Lorenz63 | No | Yes | "Yes" | 0d | 3 | 2 | Sakov |
|
|
194
|
+
| Lorenz84 | No | Yes | No | 0d | 3 | 2 | Raanes |
|
|
195
|
+
| Lorenz96 | No | Yes | No | 1d | 40 `*` | 13 | Raanes |
|
|
196
|
+
| Lorenz96s | No | Yes | No | 1d | 10 `*` | 4 | Grudzien |
|
|
197
|
+
| LorenzUV | No | Yes | No | 2x 1d | 256 + 8 `*` | ≈60 | Raanes |
|
|
198
|
+
| LorenzIII | No | No | No | 1d | 960 `*` | ≈164 | Raanes |
|
|
199
|
+
| Vissio-Lucarini 20 | No | Yes | No | 1d | 36 `*` | 10 | Yumeng |
|
|
200
|
+
| Kuramoto-Sivashinsky | No | Yes | Yes | 1d | 128 `*` | 11 | Kassam/Raanes |
|
|
201
|
+
| Quasi-Geost (QG) | No | No | Yes | 2d | 129²≈17k | ≈140 | Sakov |
|
|
202
202
|
|
|
203
203
|
- `*`: Flexible; set as necessary
|
|
204
204
|
- `**`: Tangent Linear Model included?
|
|
@@ -247,42 +247,42 @@ Therefore, if you have an *operational* or real-world application,
|
|
|
247
247
|
such as WRF, you should look into one of the alternatives,
|
|
248
248
|
sorted by approximate project size.
|
|
249
249
|
|
|
250
|
-
Name | Developers | Purpose (approximately)
|
|
251
|
-
|
|
252
|
-
[DART][1] | NCAR
|
|
253
|
-
[PDAF][7] | AWI
|
|
254
|
-
[JEDI][21] | JCSDA (NOAA, NASA, ++)| General
|
|
255
|
-
[OpenDA][3] | TU Delft
|
|
256
|
-
[EMPIRE][4] | Reading (Met)
|
|
257
|
-
[ERT][2] | Statoil
|
|
258
|
-
[PIPT][14] | CIPR
|
|
259
|
-
[MIKE][9] | DHI
|
|
260
|
-
[OAK][10] | Liège
|
|
261
|
-
[Siroco][11] | OMP
|
|
262
|
-
[Verdandi][6] | INRIA
|
|
263
|
-
[PyOSSE][8] | Edinburgh, Reading
|
|
250
|
+
| Name | Developers | Purpose (approximately) |
|
|
251
|
+
|--------------------|----------------------|-----------------------------------|
|
|
252
|
+
| [DART][1] | NCAR | General |
|
|
253
|
+
| [PDAF][7] | AWI | General |
|
|
254
|
+
| [JEDI][21] | JCSDA (NOAA, NASA, ++)| General |
|
|
255
|
+
| [OpenDA][3] | TU Delft | General |
|
|
256
|
+
| [EMPIRE][4] | Reading (Met) | General |
|
|
257
|
+
| [ERT][2] | Statoil | History matching (Petroleum DA) |
|
|
258
|
+
| [PIPT][14] | CIPR | History matching (Petroleum DA) |
|
|
259
|
+
| [MIKE][9] | DHI | Oceanographic |
|
|
260
|
+
| [OAK][10] | Liège | Oceanographic |
|
|
261
|
+
| [Siroco][11] | OMP | Oceanographic |
|
|
262
|
+
| [Verdandi][6] | INRIA | Biophysical DA |
|
|
263
|
+
| [PyOSSE][8] | Edinburgh, Reading | Earth-observation DA |
|
|
264
264
|
|
|
265
265
|
Below is a list of projects with a purpose more similar to DAPPER's
|
|
266
266
|
(research *in* DA, and not so much *using* DA):
|
|
267
267
|
|
|
268
|
-
Name | Developers | Notes
|
|
269
|
-
|
|
270
|
-
[DAPPER][22] | Raanes, Chen, Grudzien | Python
|
|
271
|
-
[SANGOMA][5] | Conglomerate* | Fortran, Matlab
|
|
272
|
-
[hIPPYlib][25] | Villa, Petra, Ghattas | Python, adjoint-based PDE methods
|
|
273
|
-
[FilterPy][12] | R. Labbe | Python. Engineering oriented.
|
|
274
|
-
[DASoftware][13] | Yue Li, Stanford | Matlab. Large inverse probs.
|
|
275
|
-
[Pomp][18] | U of Michigan | R
|
|
276
|
-
[EnKF-Matlab][15] | Sakov | Matlab
|
|
277
|
-
[EnKF-C][17] | Sakov | C. Light-weight, off-line DA
|
|
278
|
-
[pyda][16] | Hickman | Python
|
|
279
|
-
[PyDA][19] | Shady-Ahmed | Python
|
|
280
|
-
[DasPy][20] | Xujun Han | Python
|
|
281
|
-
[DataAssim.jl][23] | Alexander-Barth | Julia
|
|
282
|
-
[DataAssimilationBenchmarks.jl][24] | Grudzien | Julia, Python
|
|
283
|
-
[EnsembleKalmanProcesses.jl][26] | Clim. Modl. Alliance | Julia, EKI (optim)
|
|
284
|
-
Datum | Raanes | Matlab
|
|
285
|
-
IEnKS code | Bocquet | Python
|
|
268
|
+
| Name | Developers | Notes |
|
|
269
|
+
|--------------------------------------|---------------------------|------------------------------------|
|
|
270
|
+
| [DAPPER][22] | Raanes, Chen, Grudzien | Python |
|
|
271
|
+
| [SANGOMA][5] | Conglomerate* | Fortran, Matlab |
|
|
272
|
+
| [hIPPYlib][25] | Villa, Petra, Ghattas | Python, adjoint-based PDE methods |
|
|
273
|
+
| [FilterPy][12] | R. Labbe | Python. Engineering oriented. |
|
|
274
|
+
| [DASoftware][13] | Yue Li, Stanford | Matlab. Large inverse probs. |
|
|
275
|
+
| [Pomp][18] | U of Michigan | R |
|
|
276
|
+
| [EnKF-Matlab][15] | Sakov | Matlab |
|
|
277
|
+
| [EnKF-C][17] | Sakov | C. Light-weight, off-line DA |
|
|
278
|
+
| [pyda][16] | Hickman | Python |
|
|
279
|
+
| [PyDA][19] | Shady-Ahmed | Python |
|
|
280
|
+
| [DasPy][20] | Xujun Han | Python |
|
|
281
|
+
| [DataAssim.jl][23] | Alexander-Barth | Julia |
|
|
282
|
+
| [DataAssimilationBenchmarks.jl][24] | Grudzien | Julia, Python |
|
|
283
|
+
| [EnsembleKalmanProcesses.jl][26] | Clim. Modl. Alliance | Julia, EKI (optim) |
|
|
284
|
+
| Datum | Raanes | Matlab |
|
|
285
|
+
| IEnKS code | Bocquet | Python |
|
|
286
286
|
|
|
287
287
|
The `EnKF-Matlab` and `IEnKS` codes have been inspirational
|
|
288
288
|
in the development of DAPPER.
|
|
@@ -353,9 +353,9 @@ and the Center for Western Weather and Water Extremes (CW3E).
|
|
|
353
353
|
<!-- markdownlint-disable line-length -->
|
|
354
354
|

|
|
355
355
|

|
|
356
|
-
<img src="https://github.com/nansencenter/DAPPER/raw/master/docs/images/logos/UoR-logo.png?raw=true" height="120" />
|
|
357
|
-
<img src="https://github.com/nansencenter/DAPPER/raw/master/docs/images/logos/nceologo1000.png?raw=true" height="100">
|
|
358
|
-
<img src="https://github.com/nansencenter/DAPPER/raw/master/docs/images/logos/CW3E-Logo-Horizontal-FullColor.png?raw=true" width="400">
|
|
356
|
+
<img src="https://github.com/nansencenter/DAPPER/raw/master/docs/images/logos/UoR-logo.png?raw=true" alt="University of Reading logo" height="120" />
|
|
357
|
+
<img src="https://github.com/nansencenter/DAPPER/raw/master/docs/images/logos/nceologo1000.png?raw=true" alt="NCEO logo" height="100">
|
|
358
|
+
<img src="https://github.com/nansencenter/DAPPER/raw/master/docs/images/logos/CW3E-Logo-Horizontal-FullColor.png?raw=true" alt="CW3E logo" width="400">
|
|
359
359
|
<!-- markdownlint-restore -->
|
|
360
360
|
|
|
361
361
|
## Publications
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dapper
|
|
3
|
-
Version: 1.7.
|
|
3
|
+
Version: 1.7.3
|
|
4
4
|
Summary: DAPPER benchmarks the performance of data assimilation (DA) methods.
|
|
5
5
|
Author: Patrick N. Raanes
|
|
6
6
|
Author-email: patrick.n.raanes@gmail.com
|
|
7
|
+
License: MIT
|
|
7
8
|
Project-URL: Documentation, https://nansencenter.github.io/DAPPER/
|
|
8
9
|
Project-URL: Source, https://github.com/nansencenter/DAPPER
|
|
9
10
|
Project-URL: Tracker, https://github.com/nansencenter/DAPPER/issues
|
|
@@ -12,9 +13,8 @@ Classifier: Development Status :: 3 - Alpha
|
|
|
12
13
|
Classifier: Intended Audience :: Science/Research
|
|
13
14
|
Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
14
15
|
Classifier: Programming Language :: Python :: 3
|
|
15
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
16
16
|
Classifier: Operating System :: OS Independent
|
|
17
|
-
Requires-Python: >=3.
|
|
17
|
+
Requires-Python: >=3.12
|
|
18
18
|
Description-Content-Type: text/markdown
|
|
19
19
|
License-File: LICENCE.txt
|
|
20
20
|
Requires-Dist: scipy>=1.14
|
|
@@ -23,8 +23,8 @@ Requires-Dist: matplotlib>=3.10
|
|
|
23
23
|
Requires-Dist: pyyaml>=6.0.2
|
|
24
24
|
Requires-Dist: ipython>=7.34
|
|
25
25
|
Requires-Dist: ipdb
|
|
26
|
-
Requires-Dist:
|
|
27
|
-
Requires-Dist: notebook<
|
|
26
|
+
Requires-Dist: setuptools
|
|
27
|
+
Requires-Dist: notebook<6.5
|
|
28
28
|
Requires-Dist: mpl-tools==0.4.1
|
|
29
29
|
Requires-Dist: tqdm~=4.67
|
|
30
30
|
Requires-Dist: colorama~=0.4.1
|
|
@@ -95,6 +95,7 @@ Dynamic: classifier
|
|
|
95
95
|
Dynamic: description
|
|
96
96
|
Dynamic: description-content-type
|
|
97
97
|
Dynamic: keywords
|
|
98
|
+
Dynamic: license
|
|
98
99
|
Dynamic: license-file
|
|
99
100
|
Dynamic: project-url
|
|
100
101
|
Dynamic: provides-extra
|
|
@@ -31,8 +31,11 @@ INSTALL_REQUIRES = [
|
|
|
31
31
|
"pyyaml>=6.0.2",
|
|
32
32
|
"ipython>=7.34",
|
|
33
33
|
"ipdb",
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
# Latest installs (Mac and Ubuntu) of notebook 6.5 fail
|
|
35
|
+
# (Could not open static file ''), so downgrade:
|
|
36
|
+
"setuptools",
|
|
37
|
+
"notebook<6.5", # Colab will still use 6.5
|
|
38
|
+
# "notebook<7", # only nbclassic supports nbAgg (liveplotting in Jupyter) backend
|
|
36
39
|
"mpl-tools==0.4.1",
|
|
37
40
|
"tqdm~=4.67",
|
|
38
41
|
"colorama~=0.4.1",
|
|
@@ -113,12 +116,13 @@ setup(
|
|
|
113
116
|
description=DOCLINES[0],
|
|
114
117
|
long_description="\n".join(DOCLINES[2:]),
|
|
115
118
|
long_description_content_type="text/markdown",
|
|
119
|
+
license="MIT",
|
|
116
120
|
# >=3.5 for @.
|
|
117
121
|
# >=3.6 for mpl>=3.1.
|
|
118
122
|
# >=3.7 for dataclass, capture_output, dict ordering, np>=1.20.
|
|
119
123
|
# ==3.7 for Colab
|
|
120
124
|
# ==3.9 for the DAPPER/GCP cluster, since dill isn't compat. across versions.
|
|
121
|
-
python_requires=">=3.
|
|
125
|
+
python_requires=">=3.12",
|
|
122
126
|
install_requires=INSTALL_REQUIRES,
|
|
123
127
|
extras_require=EXTRAS,
|
|
124
128
|
packages=find_packages(),
|
|
@@ -133,7 +137,6 @@ setup(
|
|
|
133
137
|
"Intended Audience :: Science/Research",
|
|
134
138
|
"Topic :: Scientific/Engineering :: Mathematics",
|
|
135
139
|
"Programming Language :: Python :: 3",
|
|
136
|
-
"License :: OSI Approved :: MIT License",
|
|
137
140
|
"Operating System :: OS Independent",
|
|
138
141
|
],
|
|
139
142
|
keywords=(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|