dapper 1.7.1__tar.gz → 1.7.2__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.2}/PKG-INFO +2 -2
- {dapper-1.7.1 → dapper-1.7.2}/README.md +70 -70
- {dapper-1.7.1 → dapper-1.7.2}/dapper/__init__.py +1 -1
- {dapper-1.7.1 → dapper-1.7.2}/dapper.egg-info/PKG-INFO +2 -2
- {dapper-1.7.1 → dapper-1.7.2}/setup.py +1 -1
- {dapper-1.7.1 → dapper-1.7.2}/LICENCE.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/da_methods/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/da_methods/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/da_methods/baseline.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/da_methods/ensemble.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/da_methods/extended.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/da_methods/other.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/da_methods/particle.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/da_methods/variational.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/dpr_config.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/dpr_config.yaml +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/DoublePendulum/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/DoublePendulum/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/DoublePendulum/settings101.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Id/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Ikeda/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Ikeda/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Ikeda/some_settings_01.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/KS/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/KS/bocquet2019.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/KS/compare_schemes.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/KS/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LA/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LA/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LA/evensen2009.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LA/raanes2015.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LA/small.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz05/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz05/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz05/settings01.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz63/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz63/anderson2010rhf.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz63/bocquet2012.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz63/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz63/extras.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz63/mandel2016.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz63/ramgraber2022.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz63/sakov2012.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz63/wiljes2017.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz84/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz84/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz84/harder.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz84/pajonk2012.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/anderson2009.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/bocquet2010.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/bocquet2010_m40.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/bocquet2015loc.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/extras.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/frei2013bridging.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/hoteit2015.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/miyoshi2011.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/pinheiro2019.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/raanes2016.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/sakov2008.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/spantini2019.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/spectral_obs.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/todter2015.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96/todter2015_G.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96s/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/Lorenz96s/grudzien2020.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LorenzUV/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LorenzUV/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LorenzUV/illust_LorenzUV.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LorenzUV/illust_parameterizations.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LorenzUV/lorenz96.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LorenzUV/wilks05.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LotkaVolterra/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LotkaVolterra/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/LotkaVolterra/settings101.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/counillon2009.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/Makefile +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/calc.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/data.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/helmholtz.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/interface.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/nfw.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/parameters.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/prms_cou09_ens.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/prms_cou09_truth.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/prms_counillon2009_ens.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/prms_counillon2009_truth.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/prms_sak08.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/prms_sakov2008.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/prms_sample_generation.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/prms_test_model.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/qg.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/qgflux.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/qgstep.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/f90/utils.f90 +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/governing_eqn.png +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/illust_obs.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/QG/sakov2008.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/VL20/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/VL20/demo.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/explore_props.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/integration.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/mods/utils.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/stats.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/stats_etc.md +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/chronos.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/colors.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/datafiles.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/linalg.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/liveplotting.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/localization.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/matrices.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/multiproc.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/progressbar.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/randvars.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/remote/README.md +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/remote/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/remote/autoscaler.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/remote/uplink.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/rounding.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/seeding.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/series.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/tools/viz.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/xp_launch.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper/xp_process.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper.egg-info/SOURCES.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper.egg-info/dependency_links.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper.egg-info/requires.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/dapper.egg-info/top_level.txt +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/pyproject.toml +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/setup.cfg +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/__init__.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_HMMs.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_TLMs.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_data.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_demos.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_example_2.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_iEnKS.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_localization.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_matrices.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_operator.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_plotting.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_printing.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_randvars.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_rng.py +0 -0
- {dapper-1.7.1 → dapper-1.7.2}/tests/test_round2.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dapper
|
|
3
|
-
Version: 1.7.
|
|
3
|
+
Version: 1.7.2
|
|
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
|
|
@@ -14,7 +14,7 @@ Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
|
14
14
|
Classifier: Programming Language :: Python :: 3
|
|
15
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
|
|
@@ -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,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dapper
|
|
3
|
-
Version: 1.7.
|
|
3
|
+
Version: 1.7.2
|
|
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
|
|
@@ -14,7 +14,7 @@ Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
|
14
14
|
Classifier: Programming Language :: Python :: 3
|
|
15
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
|
|
@@ -118,7 +118,7 @@ setup(
|
|
|
118
118
|
# >=3.7 for dataclass, capture_output, dict ordering, np>=1.20.
|
|
119
119
|
# ==3.7 for Colab
|
|
120
120
|
# ==3.9 for the DAPPER/GCP cluster, since dill isn't compat. across versions.
|
|
121
|
-
python_requires=">=3.
|
|
121
|
+
python_requires=">=3.12",
|
|
122
122
|
install_requires=INSTALL_REQUIRES,
|
|
123
123
|
extras_require=EXTRAS,
|
|
124
124
|
packages=find_packages(),
|
|
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
|
|
File without changes
|