{ "info": { "author": "Kyle Hickmann", "author_email": "khickma@tulane.edu", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Science/Research", "License :: OSI Approved :: Apache Software License", "Operating System :: Unix", "Programming Language :: Python :: 2.7", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: Scientific/Engineering :: Information Analysis", "Topic :: Scientific/Engineering :: Mathematics", "Topic :: Scientific/Engineering :: Physics" ], "description": "###############################################################################\n###############################################################################\n# Copyright 2014 Kyle S. Hickmann and\n# The Administrators of the Tulane Educational Fund\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n###############################################################################\n###############################################################################\n\npyda separates ensemble generation and filtering/analysis into\nseparate class objects. These are then used together in an\nassimilation class object. This allows the user to code the ensemble\ngeneration, assimilation, and filtering/analysis steps\nseparately. Allowing concentration on the element of the assimilation\nprocess they are interested in refining. This also allows a user to\ncode up their particular ensemble generation method and use the\nassimilation and filtering classes we have provided to perform the\nassimilation. If you have written a time-dependent simulation in\npython then pyda will handle the data assimilation problem. There is\nminimal support for visualization and assimilation evaluation as well.\n\nThis package includes:\n - Classes to generate an ensemble of runs from a simulation\n - Classes to perform various flavors of Ensemble Kalman filtering\n - Classes to perform various particle filtering and sequential \n monte carlo filtering \n - Classes to control interaction between ensemble generation, data, \n and analysis for data assimilation\n - Multiple examples to experiment with data assimilation\n - Functions to visualize data assimilation process occurring in the exmples\n - Functions to evaluate effectiveness of data assimilation process\n\n#############################################\n#############################################\nNon-Standard Packages Used:\n\t Numpy and Matplotlib\n#############################################\n\nQUICK START:\n\n Just run\n >> python setup.py install\n \n Then, from the examples directory, try\n >> python SIR_enkf1.py\n\nDirectory Structure:\n\npyda1.0/\n\tMANIFEST.in\n\tLICENSE\n\tREADME\n\tsetup.py\n\tez_setup.py\n\texamples/\n\t\tSIR_enkf1.py\n\t\t:\n\t\tdata/\n\t\t :\n\t\tfigures/\n\t\t :\n\n\tpyda/\n\t\t__init__.py\n\t\tanalysis_generator/\n\t\t\t__init__.py\n\t\t\tanalysis_generator_class.py\n\t\t\t:\n\t\t\tkf/\n\t\t\t\t__init__.py\n\t\t\t\tenkf1.py\n\t\t\t\t:\n\t\t\tpf/\n\t\t\t\t__init__.py\n\t\t\t\t:\n\t\tassimilation/\n\t\t\t__init__.py\n\t\t\tassimilation_current.py\n\t\t\tdata_assimilation_class.py\n\t\t\t:\n\t\tensemble_generator/\n\t\t\t__init__.py\n\t\t\tensemble_generator_class.py\n\t\t\tSIRensemble.py\n\t\t\t:\n\t\tutilities/\n\t\t\t__init__.py\n\t\t\tepiODElib.py\n\t\t\t:\n\t\t\nDescription:\n------------\n\nexamples directory:\n\t \n\t SIR_enkf1.py, an implementation of ensemble Kalman Filter\n\t data assimilation using pyda. This serves as a basic example\n\t of how the pyda classes are used together with a simulation.\n\npyda directory:\n\t\n\tThis contains class files and helper module files in the\n\tutilities directory.\n\nanalysis_generator:\n\n\tHere classes are defined to implement data assimilation\n\tfilters. The analysis classes are meant to be derived all from\n\tthe AnalysisGeneratorClass defined in\n\tanalysis_generator_class.py. Data assimilation filters are\n\tdivided into Kalman Filter type and Particle Filter type.\n\nkf:\n\n\tAn example of an Ensemble Kalman filter analysis class is\n\tdefined in enkf1.py. Other variants of Kalman filters are to\n\tbe included here.\n\npf:\n\n\tVariants of particle filter and sequential monte carlo\n\tanalysis schemes are meant to be included here.\n\nassimilation:\n\n\tBeyond generating ensembles and producing filtered analysis\n\tensembles data assimilation must control exactly how these\n\tschemes interact with data. In this directory classes that\n\thandle this are included. All data assimilation classes are\n\tmeant to be derived from the DataAssimilationClass defined in\n\tdata_assimilation_class.py. DA_current defined in\n\tassimilation_current.py is an example of such a class.\n\nensemble_generator:\n\n\tThe user must already have software for simulation in place to\n\tuse pyda. If this is the case then an ensemble generator class\n\twill control how the simulation produces forecasts. Classes\n\tare all derived from EnsembleGeneratorClass which is defined\n\tin ensemble_generator_class.py. SIRensemble.py defines a\n\tspecific class to call on SIR epidemic simulation defined in\n\tthe epiODElib.py module under utilities/.\n\nutilities:\n\n\tThis is a directory of helper modules. Currently this contains\n\tepiODEli.py which implements Runge-Kutta solvers for several\n\tdifferential equation based epidemic models. This directory\n\talso contains a basic visualization module AssimilationVis.py\n\twhich uses matplotlib to visualize ensemble and analysis\n\tsolutions.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://hickmank.github.io/pyda", "keywords": null, "license": "Apache 2.0", "maintainer": null, "maintainer_email": null, "name": "pyda", "package_url": "https://pypi.org/project/pyda/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pyda/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://hickmank.github.io/pyda" }, "release_url": "https://pypi.org/project/pyda/1.0/", "requires_dist": null, "requires_python": null, "summary": "pyda is a general object-oriented data assimilation package", "version": "1.0" }, "last_serial": 1058181, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "725408e96cbd9821107b2812e96caa20", "sha256": "025e5f629e2cda2c74881575e333399e3007611e6ce6ca494145e35f53f7e26b" }, "downloads": -1, "filename": "pyda-1.0.tar.gz", "has_sig": false, "md5_digest": "725408e96cbd9821107b2812e96caa20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1821893, "upload_time": "2014-04-11T19:48:44", "url": "https://files.pythonhosted.org/packages/14/42/8e6e922f6e43b2b450fd6c1f46cb898200c16689b132bc24a6a026252f7b/pyda-1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "725408e96cbd9821107b2812e96caa20", "sha256": "025e5f629e2cda2c74881575e333399e3007611e6ce6ca494145e35f53f7e26b" }, "downloads": -1, "filename": "pyda-1.0.tar.gz", "has_sig": false, "md5_digest": "725408e96cbd9821107b2812e96caa20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1821893, "upload_time": "2014-04-11T19:48:44", "url": "https://files.pythonhosted.org/packages/14/42/8e6e922f6e43b2b450fd6c1f46cb898200c16689b132bc24a6a026252f7b/pyda-1.0.tar.gz" } ] }