https://github.com/1kastner/spotpy
A Statistical Parameter Optimization Tool
Science Score: 23.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 1 DOI reference(s) in README -
✓Academic publication links
Links to: scholar.google, plos.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.1%) to scientific vocabulary
Last synced: 10 months ago
·
JSON representation
Repository
A Statistical Parameter Optimization Tool
Basic Info
- Host: GitHub
- Owner: 1kastner
- License: mit
- Language: Python
- Default Branch: master
- Homepage: https://www.uni-giessen.de/faculties/f09/institutes/ilr/hydro/download/spotpy
- Size: 12 MB
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
- Releases: 0
Fork of thouska/spotpy
Created about 7 years ago
· Last pushed about 7 years ago
https://github.com/1kastner/spotpy/blob/master/
# spotpy A Statistical Parameter Optimization Tool for Python --- [![PyPI Version][pypi-v-image]][pypi-v-link] [![Python Versions][pypi-pyv-image]][pypi-pyv-link] [![Build Status][travis-image]][travis-link] [![License][license-image]][license-link] [](https://coveralls.io/github/thouska/spotpy?branch=master) [pypi-v-image]: https://img.shields.io/pypi/v/spotpy.png [pypi-v-link]: https://pypi.python.org/pypi/spotpy [pypi-pyv-image]: https://img.shields.io/pypi/pyversions/spotpy.png [pypi-pyv-link]: https://img.shields.io/pypi/pyversions/spotpy [travis-image]: https://img.shields.io/travis/thouska/spotpy/master.png [travis-link]: https://travis-ci.org/thouska/spotpy [license-image]: https://img.shields.io/badge/license-MIT-blue.png [license-link]: http://opensource.org/licenses/MIT Purpose ================= SPOTPY is a Python framework that enables the use of Computational optimization techniques for calibration, uncertainty and sensitivity analysis techniques of almost every (environmental-) model. The package is puplished in the open source journal PLoS One: Houska, T., Kraft, P., Chamorro-Chavez, A. and Breuer, L.: SPOTting Model Parameters Using a Ready-Made Python Package, PLoS ONE, 10(12), e0145180, doi:[10.1371/journal.pone.0145180](http://journals.plos.org/plosone/article?id=10.1371%2Fjournal.pone.0145180 "SPOTting Model Parameters Using a Ready-Made Python Package"), 2015 The simplicity and flexibility enables the use and test of different algorithms of almost any model, without the need of complex codes:: sampler = spotpy.algorithms.sceua(model_setup()) # Initialize your model with a setup file sampler.sample(10000) # Run the model results = sampler.getdata() # Load the results spotpy.analyser.plot_parametertrace(results) # Show the results Features ================= Complex algorithms bring complex tasks to link them with a model. We want to make this task as easy as possible. Some features you can use with the SPOTPY package are: * Fitting models to evaluation data with different algorithms. Available algorithms are: * Monte Carlo (`MC`) * Markov-Chain Monte-Carlo (`MCMC`) * Maximum Likelihood Estimation (`MLE`) * Latin-Hypercube Sampling (`LHS`) * Simulated Annealing (`SA`) * Shuffled Complex Evolution Algorithm (`SCE-UA`) * Differential Evolution Markov Chain Algorithm (`DE-MCz`) * Differential Evolution Adaptive Metropolis Algorithm (`DREAM`) * RObust Parameter Estimation (`ROPE`) * Fourier Amplitude Sensitivity Test (`FAST`) * Artificial Bee Colony (`ABC`) * Fitness Scaled Chaotic Artificial Bee Colony (`FSCABC`) * Dynamically Dimensioned Search algorithm (`DDS`) * Wide range of objective functions (also known as loss function, fitness function or energy function) to validate the sampled results. Available functions are * Bias * PBias * Nash-Sutcliff (`NSE`) * logarithmic Nash-Sutcliff (`logNSE`) * logarithmic probability (`logp`) * Correlation Coefficient (`r`) * Coefficient of Determination (`r^2`) * Mean Squared Error (`MSE`) * Root Mean Squared Error (`RMSE`) * Mean Absolute Error (`MAE`) * Relative Root Mean Squared Error (`RRMSE`) * Agreement Index (`AI`) * Covariance, Decomposed MSE (`dMSE`) * Kling-Gupta Efficiency (`KGE`) * Non parametric Kling-Gupta Efficiency (`KGE_non_parametric`) * Wide range of hydrological signatures functions to validate the sampled results: * Slope * Flooding/Drought events * Flood/Drought frequency * Flood/Drought duration * Flood/Drought variance * Mean flow * Median flow * Skewness * compare percentiles of discharge * Prebuild parameter distribution functions: * Uniform * Normal * logNormal * Chisquare * Exponential * Gamma * Wald * Weilbull * Wide range to adapt algorithms to perform uncertainty-, sensitivity analysis or calibration of a model. * Multi-objective support * MPI support for fast parallel computing * A progress bar monitoring the sampling loops. Enables you to plan your coffee brakes. * Use of NumPy functions as often as possible. This makes your coffee brakes short. * Different databases solutions: `ram` storage for fast sampling a simple , `csv` tables the save solution for long duration samplings. * Automatic best run selecting and plotting * Parameter trace plotting * Parameter interaction plot including the Gaussian-kde function * Regression analysis between simulation and evaluation data * Posterior distribution plot * Convergence diagnostics with Gelman-Rubin and the Geweke plot Install ================= Installing SPOTPY is easy. Just use: pip install spotpy Or, after downloading the [source code](https://pypi.python.org/pypi/spotpy "source code") and making sure python is in your OS path: python setup.py install Support ================= * Documentation: http://www.uni-giessen.de/cms/faculties/f09/institutes/ilr/hydro/download/spotpy * Feel free to contact the authors of this tool for any support questions. * Please contact the authors in case of any bug. * If you use this package for a scientific research paper, please cite SPOTPY. It is [peer-reviewed](http://journals.plos.org/plosone/article?id=10.1371%2Fjournal.pone.0145180 "SPOTting Model Parameters Using a Ready-Made Python Package"). * Patches/enhancements and any other contributions to this package are very welcome! Getting started ================= Have a look at https://github.com/thouska/spotpy/tree/master/spotpy/examples and http://fb09-pasig.umwelt.uni-giessen.de/spotpy/Tutorial/2-Rosenbrock/ Contributing ================= Patches/enhancements/new algorithms and any other contributions to this package are very welcome! 1. Fork it ( http://github.com/thouska/spotpy/fork ) 2. Create your feature branch (``git checkout -b my-new-feature``) 3. Add your modifications 4. Add short summary of your modifications on ``CHANGELOG.rst`` 5. Commit your changes (``git commit -m "Add some feature"``) 6. Push to the branch (``git push origin my-new-feature``) 7. Create new Pull Request Papers citing SPOTPY ===================== See [Google Scholar](https://scholar.google.de/scholar?cites=17155001516727704728&as_sdt=2005&sciodt=0,5&hl=de) for a continuously updated list.
Owner
- Login: 1kastner
- Kind: user
- Location: Hamburg
- Company: TUHH
- Website: https://www.tuhh.de/mls/en/institute/associates/marvin-kastner-msc.html
- Repositories: 5
- Profile: https://github.com/1kastner