1 file was added to this release more than 14 days after its initial publication. Inspect the release files before installing.
###############################################################################
# Copyright 2014 Kyle S. Hickmann and
# The Administrators of the Tulane Educational Fund
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
###############################################################################
###############################################################################
pyda separates ensemble generation and filtering/analysis into
separate class objects. These are then used together in an
assimilation class object. This allows the user to code the ensemble
generation, assimilation, and filtering/analysis steps
separately. Allowing concentration on the element of the assimilation
process they are interested in refining. This also allows a user to
code up their particular ensemble generation method and use the
assimilation and filtering classes we have provided to perform the
assimilation. If you have written a time-dependent simulation in
python then pyda will handle the data assimilation problem. There is
minimal support for visualization and assimilation evaluation as well.
This package includes:
- Classes to generate an ensemble of runs from a simulation
- Classes to perform various flavors of Ensemble Kalman filtering
- Classes to perform various particle filtering and sequential
monte carlo filtering
- Classes to control interaction between ensemble generation, data,
and analysis for data assimilation
- Multiple examples to experiment with data assimilation
- Functions to visualize data assimilation process occurring in the exmples
- Functions to evaluate effectiveness of data assimilation process
#############################################
#############################################
Non-Standard Packages Used:
Numpy and Matplotlib
#############################################
QUICK START:
Just run
>> python setup.py install
Then, from the examples directory, try
>> python SIR_enkf1.py
Directory Structure:
pyda1.0/
MANIFEST.in
LICENSE
README
setup.py
ez_setup.py
examples/
SIR_enkf1.py
:
data/
:
figures/
:
pyda/
__init__.py
analysis_generator/
__init__.py
analysis_generator_class.py
:
kf/
__init__.py
enkf1.py
:
pf/
__init__.py
:
assimilation/
__init__.py
assimilation_current.py
data_assimilation_class.py
:
ensemble_generator/
__init__.py
ensemble_generator_class.py
SIRensemble.py
:
utilities/
__init__.py
epiODElib.py
:
Description:
------------
examples directory:
SIR_enkf1.py, an implementation of ensemble Kalman Filter
data assimilation using pyda. This serves as a basic example
of how the pyda classes are used together with a simulation.
pyda directory:
This contains class files and helper module files in the
utilities directory.
analysis_generator:
Here classes are defined to implement data assimilation
filters. The analysis classes are meant to be derived all from
the AnalysisGeneratorClass defined in
analysis_generator_class.py. Data assimilation filters are
divided into Kalman Filter type and Particle Filter type.
kf:
An example of an Ensemble Kalman filter analysis class is
defined in enkf1.py. Other variants of Kalman filters are to
be included here.
pf:
Variants of particle filter and sequential monte carlo
analysis schemes are meant to be included here.
assimilation:
Beyond generating ensembles and producing filtered analysis
ensembles data assimilation must control exactly how these
schemes interact with data. In this directory classes that
handle this are included. All data assimilation classes are
meant to be derived from the DataAssimilationClass defined in
data_assimilation_class.py. DA_current defined in
assimilation_current.py is an example of such a class.
ensemble_generator:
The user must already have software for simulation in place to
use pyda. If this is the case then an ensemble generator class
will control how the simulation produces forecasts. Classes
are all derived from EnsembleGeneratorClass which is defined
in ensemble_generator_class.py. SIRensemble.py defines a
specific class to call on SIR epidemic simulation defined in
the epiODElib.py module under utilities/.
utilities:
This is a directory of helper modules. Currently this contains
epiODEli.py which implements Runge-Kutta solvers for several
differential equation based epidemic models. This directory
also contains a basic visualization module AssimilationVis.py
which uses matplotlib to visualize ensemble and analysis
solutions.
Metadata
Release files for pyda 1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
File added late
1 file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release files before installing.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pyda-1.0.tar.gz | 1.8 MB | Without provenance | Details for pyda-1.0.tar.gz |
Release files / pyda-1.0.tar.gz
File added late
This file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release file before installing.
| Download URL | pyda-1.0.tar.gz |
|---|---|
| Size | 1.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
025e5f629e2cda2c74881575e333399e3007611e6ce6ca494145e35f53f7e26b
|
|
BLAKE2b-256 checksum How to use checksums |
14428e6e922f6e43b2b450fd6c1f46cb898200c16689b132bc24a6a026252f7b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for pyda 1.0
Upload timing
Release file added late
1 file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.