{ "info": { "author": "M. Marek-Spartz", "author_email": "patt0335@umn.edu", "bugtrack_url": null, "classifiers": [ "Environment :: Console", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 2", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "# generations\n\nA set of recursive population models for ecologists including:\n\n- Nicholson Bailey host-parasitoid model\n- Weed-herbivore coupled model for an annual plant that forms a seed bank from [Buckley et al. 2005](http://onlinelibrary.wiley.com/doi/10.1111/j.1365-2664.2005.00991.x/epdf)\n- Weed-herbivore model for a biennial plant that forms a seed bank\n\n\n## Installation\n\nGenerations is available from the [Python Package Index](https://pypi.org/project/generations/). It can be installed using `pip`:\n\n pip install generations\n\n\n## Running\n\nOnce installed, the user can run the various models in `generations` by entering the following commands. Python's `-m` flag imports and runs the specified module. Each population model in `generations` is in it's own module:\n\n python -m generations.nicholson_bailey\n\n python -m generations.buckley\n\n python -m generations.biennial\n\n### Visualization\n\nGenerations requires the [Bokeh](https://pypi.org/project/bokeh/) Python package to generate interactive plots of the simulation outputs in the browser. This functionality is attached to each modeling module. When the module runs, it automatically generates a .csv of the population densities for each organism at each time step Bokeh uses that .csv to automatically generate an html page with an interactive plot of the results in the user's browser. \n\n\n### Custom parameters\n\nThe user can also create a copy of the default configuration file for the population model modules in their working directory. The file will be named `model_parameters.cfg`.\n\n python -m generations.create_config\n\nThe user can then edit parameters to fit their desired ecological system. Model parameters will be loaded from the working directory into the population models at runtime.\n\n\n## Development\n\nGenerations source code is available on [GitHub](https://github.com/alfalimajuliett/generations).\n\n git clone https://github.com/alfalimajuliett/generations.git\n\n\n### Testing\n\n ./test.sh\n\nThis will run the unit tests. If you have [pipenv](https://docs.pipenv.org/), it will also run a number of other checks:\n\n- [`yapf`](https://github.com/google/yapf/): reformat the code automatically\n- [`mypy`](http://mypy-lang.org): check for runtime errors like misnamed imports or variables, or incompatible types\n- [`tox`](https://tox.readthedocs.io/en/latest/): run the unit tests against Python 2.7 and 3.7\n- [`coverage`](https://github.com/nedbat/coveragepy): report on lines that are not covered by unit tests\n\n\n### Uploading to PyPI\n\nInstall [pipenv](https://docs.pipenv.org/#install-pipenv-today) if you don't have it.\n\nIncrement the version in `setup.py`.\n\nRun the tests one last time:\n\n ./test.sh\n\nBuild the distribution files:\n\n pipenv run python3 setup.py sdist bdist_wheel\n\nUpload using [`twine`](https://github.com/pypa/twine). It will prompt for your PyPI password:\n\n pipenv run twine upload dist/*\n\nCommit the version, create a tag, and push tags:\n\n git commit -am \"$version\"\n git tag $version\n git push --tags\n git push\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/alfalimajuliett/generations", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "generations", "package_url": "https://pypi.org/project/generations/", "platform": "", "project_url": "https://pypi.org/project/generations/", "project_urls": { "Homepage": "https://github.com/alfalimajuliett/generations" }, "release_url": "https://pypi.org/project/generations/1.2.0/", "requires_dist": null, "requires_python": "", "summary": "A set of recursive population models for ecologists", "version": "1.2.0" }, "last_serial": 5727839, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "db215a3a1698d30e41faaf2476182695", "sha256": "7ac7870cffa5dc9d672f22acb71867947975a96abf8e867040c2c5a83020928a" }, "downloads": -1, "filename": "generations-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "db215a3a1698d30e41faaf2476182695", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8449, "upload_time": "2018-08-05T01:48:38", "url": "https://files.pythonhosted.org/packages/62/30/ca1570c81e68c4acfe10d12f413cf41bf99c2178d279c596fe9daea001a7/generations-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0f6be47162d2d600a66dc6b5d0342a8c", "sha256": "bb2bab95f56b9cacaee3340168e07c26afd3abc5e1110963e1f5162b2b671a7b" }, "downloads": -1, "filename": "generations-1.0.0.tar.gz", "has_sig": false, "md5_digest": "0f6be47162d2d600a66dc6b5d0342a8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4957, "upload_time": "2018-08-05T01:48:39", "url": "https://files.pythonhosted.org/packages/f7/b6/e4cf463cb3e63535067121d52192ce7da9451fb7417b872395a8eaaff146/generations-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "e33bdca75a19a429db06275e509e7a0a", "sha256": "9e6af575a76dd6c6d0c4a7b1735867f579b3a7cc2417149bb23f469a6239a33f" }, "downloads": -1, "filename": "generations-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e33bdca75a19a429db06275e509e7a0a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9100, "upload_time": "2018-08-16T02:07:40", "url": "https://files.pythonhosted.org/packages/4a/0f/2e030015d812a78f3c00affb06c5331b5aef764b1e7f6d4bfd31dc3b836f/generations-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e62e7ac1c8ff0d566251ab662e9a1541", "sha256": "20dbdbbc6da126c2d9f248aebc2d29e5198207de1bc268cac26c35b574e13671" }, "downloads": -1, "filename": "generations-1.1.0.tar.gz", "has_sig": false, "md5_digest": "e62e7ac1c8ff0d566251ab662e9a1541", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5639, "upload_time": "2018-08-16T02:07:42", "url": "https://files.pythonhosted.org/packages/fe/02/98f707c33b58f96a77ca839aef833bfbef87633ff7a17fba80b23e4df4e5/generations-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "d2887bd484e43c7e527d9e75db12eb55", "sha256": "696c98ceb382c706d18599eac8c3107f74b273a67e8f64243a597b31f2d669df" }, "downloads": -1, "filename": "generations-1.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d2887bd484e43c7e527d9e75db12eb55", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12201, "upload_time": "2019-08-25T19:53:35", "url": "https://files.pythonhosted.org/packages/ad/1b/16ecd759addcd54535183d57a3ee798339adf1608fd2c45a5ca16cd41314/generations-1.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "39cd56ba22cfe09236a2c7583ddaf828", "sha256": "79d3d9f17729fa25fead2ad3ce1c6296a86182869c201dc9565b0a11964a1c96" }, "downloads": -1, "filename": "generations-1.2.0.tar.gz", "has_sig": false, "md5_digest": "39cd56ba22cfe09236a2c7583ddaf828", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6977, "upload_time": "2019-08-25T19:53:39", "url": "https://files.pythonhosted.org/packages/dc/68/16b2f6cfdf0fe4c25d4a66c36905444464589ee434c4907ae9ec4a6e7c85/generations-1.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d2887bd484e43c7e527d9e75db12eb55", "sha256": "696c98ceb382c706d18599eac8c3107f74b273a67e8f64243a597b31f2d669df" }, "downloads": -1, "filename": "generations-1.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d2887bd484e43c7e527d9e75db12eb55", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12201, "upload_time": "2019-08-25T19:53:35", "url": "https://files.pythonhosted.org/packages/ad/1b/16ecd759addcd54535183d57a3ee798339adf1608fd2c45a5ca16cd41314/generations-1.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "39cd56ba22cfe09236a2c7583ddaf828", "sha256": "79d3d9f17729fa25fead2ad3ce1c6296a86182869c201dc9565b0a11964a1c96" }, "downloads": -1, "filename": "generations-1.2.0.tar.gz", "has_sig": false, "md5_digest": "39cd56ba22cfe09236a2c7583ddaf828", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6977, "upload_time": "2019-08-25T19:53:39", "url": "https://files.pythonhosted.org/packages/dc/68/16b2f6cfdf0fe4c25d4a66c36905444464589ee434c4907ae9ec4a6e7c85/generations-1.2.0.tar.gz" } ] }