{ "info": { "author": "Sven Willner, Robert Gieseke", "author_email": "sven.willner@pik-potsdam.de, robert.gieseke@pik-potsdam.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Operating System :: OS Independent", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "pyhector\n========\n\n+----------------+------------------------+\n| |PyPI Version| | |PyPI Python Versions| |\n+----------------+------------------------+\n| |Docs| | |Launch Binder| |\n+----------------+------------------------+\n| |JOSS| | |Zenodo| |\n+----------------+------------------------+\n\n.. sec-begin-index\n\n**pyhector** is a Python interface for the simple global climate\ncarbon-cycle model `Hector `_.\n\n**pyhector** makes the simple climate model Hector easily installable\nand usable from Python and can for example be used in the analysis of\nmitigation scenarios, in integrated assessment models, complex climate\nmodel emulation, and uncertainty analyses.\n\n`Hector `_ is written in C++ and\ndeveloped at the `Pacific Northwest National Laboratory\n`_. The model description is published in\n\n Hartin, C. A., Patel, P., Schwarber, A., Link, R. P., and\n Bond-Lamberty, B. P.: A simple object-oriented and open-source\n model for scientific and policy analyses of the global climate\n system \u2013 Hector v1.0, Geosci. Model Dev., 8, 939-955,\n `doi:10.5194/gmd-8-939-2015\n `_, 2015.\n\nSee the Hector `repository `_ and\n`wiki `_ for further\ninformation.\n\nThe Python interface **pyhector** is developed by `Sven Willner\n`_ and `Robert Gieseke\n`_ at the `Potsdam\nInstitute for Climate Impact Research `_.\n\nPyhector uses `pybind11 `_ to wrap\nHector's API. The version of Hector used can be read using Pyhector's\n``__hector_version__`` field.\n\n.. sec-end-index\n.. sec-begin-installation\n\nInstallation\n------------\n\nPrerequisites\n~~~~~~~~~~~~~\n\n`Hector `_ requires `Boost\n`_, so to install and use **pyhector** you need\nto have the filesystem and system modules of *Boost* version\n1.52 or later installed (see also the `Hector build\ninstructions `_).\n\nOn Ubuntu/Debian these can be installed by invoking\n\n.. code:: bash\n\n sudo apt-get install libboost-filesystem-dev libboost-system-dev\n\nOn macOS *Boost* is available through the Homebrew package manager, it\nmight be advisable to use a Homebrew installed Python for installing\n**pyhector**:\n\n.. code:: bash\n\n brew install boost\n\nWindows is (as Hector) in principle supported but not yet tested for\n**pyhector**. Pull request with installation notes for Windows are\nwelcome.\n\nInstall using pip\n~~~~~~~~~~~~~~~~~\n\nYou can simply install **pyhector** from\n`PyPI `_ by invoking\n\n.. code:: bash\n\n pip install pyhector\n\n.. sec-end-installation\n.. sec-begin-usage\n\nUsage\n-----\n\nThis repository also contains a `Jupyter Notebook\n`_ you can `run\nlive `_ and\nexperiment with, courtesy of the `Binder `_\nproject. The notebook can be viewed as a `static version\n`_\nusing nbviewer.\n\nBasic example\n~~~~~~~~~~~~~\n\n.. code:: python\n\n import pyhector\n\n output = pyhector.run(pyhector.rcp26)\n\nAdvanced example\n~~~~~~~~~~~~~~~~\n\n.. code:: python\n\n import pyhector\n from pyhector import rcp26, rcp45, rcp60, rcp85\n\n import matplotlib.pyplot as plt\n\n for rcp in [rcp26, rcp45, rcp60, rcp85]:\n output = pyhector.run(rcp, {\"core\": {\"endDate\": 2100}})\n temp = output[\"temperature.Tgav\"]\n # Adjust to 1850 - 1900 reference period\n temp = temp.loc[1850:] - temp.loc[1850:1900].mean()\n temp.plot(label=rcp.name.split(\"_\")[0])\n plt.title(\"Global mean temperature\")\n plt.ylabel(\"\u00b0C over pre-industrial (1850-1900 mean)\")\n plt.legend(loc=\"best\")\n plt.show()\n\n.. image-start\n\n.. image:: ./docs/example-plot.png\n :alt: Temperature Plot of RCP scenarios\n\n.. image-end\n.. sec-end-usage\n.. sec-begin-development\n\nDevelopment\n-----------\n\nFor local development you can clone the repository, update the\ndependencies and install in a virtual environment with ``pip``.\n\n.. code:: bash\n\n git clone https://github.com/openclimatedata/pyhector.git --recursive\n cd pyhector\n python3 -m venv venv\n ./venv/bin/pip install --editable .\n\nTo update **pyhector** and all submodules you can run\n\n.. code:: bash\n\n git pull --recurse-submodules\n git submodule update --init --recursive\n ./venv/bin/pip install --editable .\n\nTests can be run locally with\n\n::\n\n python setup.py test\n\n.. sec-end-development\n\n.. |PyPI Python Versions| image:: https://img.shields.io/pypi/pyversions/pyhector.svg\n :target: https://pypi.org/project/pyhector/\n.. |PyPI Version| image:: https://img.shields.io/pypi/v/pyhector.svg\n :target: https://pypi.org/project/pyhector/\n.. |Docs| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat\n :target: https://pyhector.readthedocs.io/en/latest/\n.. |Launch Binder| image:: https://img.shields.io/badge/launch-binder-e66581.svg\n :target: https://mybinder.org/v2/gh/openclimatedata/pyhector/master?filepath=notebooks/index.ipynb\n.. |JOSS| image:: https://img.shields.io/badge/JOSS-10.21105%2Fjoss.00248-brightgreen.svg\n :target: https://doi.org/10.21105/joss.00248\n.. |Zenodo| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.1194599.svg\n :target: https://zenodo.org/record/1194599", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/openclimatedata/pyhector", "keywords": "climate model climate change", "license": "GNU Affero General Public License v3", "maintainer": "", "maintainer_email": "", "name": "pyhector", "package_url": "https://pypi.org/project/pyhector/", "platform": "any", "project_url": "https://pypi.org/project/pyhector/", "project_urls": { "Homepage": "https://github.com/openclimatedata/pyhector" }, "release_url": "https://pypi.org/project/pyhector/2.4.0.0/", "requires_dist": null, "requires_python": "", "summary": "Python wrapper for the Hector simple climate model", "version": "2.4.0.0" }, "last_serial": 5640110, "releases": { "0.2.3": [ { "comment_text": "", "digests": { "md5": "624bae445df24f13d496caa18a8c65e4", "sha256": "858037a663566ef98dc2cb22788ec5469154ee775fccbc9fb8ed18d9ae304a69" }, "downloads": -1, "filename": "pyhector-0.2.3.tar.gz", "has_sig": false, "md5_digest": "624bae445df24f13d496caa18a8c65e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2236131, "upload_time": "2017-02-02T10:56:52", "url": "https://files.pythonhosted.org/packages/c8/a0/bfd5c4d505741bba83706f53f3cd86bdf25fa589390eae361c649f7e092e/pyhector-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "d3b2493b74059eb9d74eec187a3b9c0b", "sha256": "8f99cd073a3e8bd191bc4473fa0033a1ad2906cc46224b69042f44a6a8ab7a9d" }, "downloads": -1, "filename": "pyhector-0.2.4.tar.gz", "has_sig": false, "md5_digest": "d3b2493b74059eb9d74eec187a3b9c0b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2422578, "upload_time": "2017-02-02T11:03:04", "url": "https://files.pythonhosted.org/packages/9d/6f/fc1fcbd83a6621b73190903d220de584c30bde2dc95b3f64e4eb0bd5e528/pyhector-0.2.4.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "f06daac243f0ad7e1065dade30c540a4", "sha256": "658e7ca2ec7e17b17cec1c5c2ba179716c664518b539cecf0c019beaf5a86e56" }, "downloads": -1, "filename": "pyhector-0.3.0.tar.gz", "has_sig": false, "md5_digest": "f06daac243f0ad7e1065dade30c540a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2417682, "upload_time": "2017-02-09T13:56:07", "url": "https://files.pythonhosted.org/packages/3c/6c/6f19cf23086d847e3e67a2b89f43175e87e56d4a3dc047fa0baec25b11b3/pyhector-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "5a6c3304fe84fd1d9b8000ae70e1ced9", "sha256": "46cb8d6742622eaee48d79c6f327f66d38315c5bf8b7dff7c358a7d33c41e905" }, "downloads": -1, "filename": "pyhector-0.4.0.tar.gz", "has_sig": false, "md5_digest": "5a6c3304fe84fd1d9b8000ae70e1ced9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2022863, "upload_time": "2017-02-24T13:20:48", "url": "https://files.pythonhosted.org/packages/9c/f3/7ce2429029865974127d682a3dc40a3d69f711bc87690e3a3a12694dae07/pyhector-0.4.0.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "92e46ec50c1a5639502bbdfdd34f23de", "sha256": "61908a04b9c75163195cfeaa9dfb99a906299aa000243ed2a16d71c3d5388212" }, "downloads": -1, "filename": "pyhector-0.5.2.tar.gz", "has_sig": false, "md5_digest": "92e46ec50c1a5639502bbdfdd34f23de", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2029309, "upload_time": "2017-04-10T13:13:12", "url": "https://files.pythonhosted.org/packages/98/4c/5dc0b6c55782ba321d059698e054d7b181f101ebde069ba08c60bed3deee/pyhector-0.5.2.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "cd885222c1371e2677ac0dc5b9c8fb40", "sha256": "f9781b3be9a7b993a44a484c782853a885dd417f7d550d4374e516d18c60e364" }, "downloads": -1, "filename": "pyhector-0.6.0.tar.gz", "has_sig": false, "md5_digest": "cd885222c1371e2677ac0dc5b9c8fb40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2029785, "upload_time": "2017-04-24T09:31:08", "url": "https://files.pythonhosted.org/packages/60/30/dab3567d695b9794dde7054fc02c7cf4ece3e1460979c6cb7085d024e364/pyhector-0.6.0.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "0b61145a41f17c8cb95a6b97039787ca", "sha256": "20217897cb4e2016e911de53e51a29e8fec7401c230a7dceb110be1751c73a20" }, "downloads": -1, "filename": "pyhector-0.7.0.tar.gz", "has_sig": false, "md5_digest": "0b61145a41f17c8cb95a6b97039787ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2029171, "upload_time": "2017-04-26T14:44:59", "url": "https://files.pythonhosted.org/packages/82/1b/188763447dce1ad11ae3a3fae5caee56c77360847760a45879fcc1782c63/pyhector-0.7.0.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "855dab285af5613f018a73117fbcb778", "sha256": "3fcd86e4e2eb9daecfccc353f8e2449f156d9ae58e54a20e9d464a82f2fcc10f" }, "downloads": -1, "filename": "pyhector-0.8.1.tar.gz", "has_sig": false, "md5_digest": "855dab285af5613f018a73117fbcb778", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2016519, "upload_time": "2017-12-30T19:52:29", "url": "https://files.pythonhosted.org/packages/e2/d6/f4e092b85201bee346564b47bc177d1300ac14a4b93810a7dd660a2fdae9/pyhector-0.8.1.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "14b5b42a5a72b8a3f35228ea9cad5d8d", "sha256": "7e1d1f8ca1728ba97cf1276f1ce8afa8560081f56d67525af650dc48f4811aef" }, "downloads": -1, "filename": "pyhector-0.9.0.tar.gz", "has_sig": false, "md5_digest": "14b5b42a5a72b8a3f35228ea9cad5d8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2020700, "upload_time": "2018-01-22T09:39:54", "url": "https://files.pythonhosted.org/packages/61/dc/314fc0bd40249c35bbf32a828ffe6e6a60c2d34faf0119855ac10b13c25a/pyhector-0.9.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "598dd9ff113c6680ef37dd2661db6325", "sha256": "7008f7c10c773f05b6acc917fe9314fab4fbfdcce003fe5aa3d517224e4a5adb" }, "downloads": -1, "filename": "pyhector-2.0.0.tar.gz", "has_sig": false, "md5_digest": "598dd9ff113c6680ef37dd2661db6325", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2063138, "upload_time": "2018-03-08T18:27:55", "url": "https://files.pythonhosted.org/packages/a7/ca/b44738d8a9d5718ea43e4baa2ee73ad30670272c7e39eb6b01d2348be8cd/pyhector-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "291f5bae2d90ffb5232d055a51eb43e8", "sha256": "456ab37d2bd67e6f0742e3d2397230c3fbc2a125e03c409896bf16a8d0bbadda" }, "downloads": -1, "filename": "pyhector-2.0.1.tar.gz", "has_sig": false, "md5_digest": "291f5bae2d90ffb5232d055a51eb43e8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2070786, "upload_time": "2018-03-19T19:42:23", "url": "https://files.pythonhosted.org/packages/63/24/8a698222d57e133265e812f569c1765973d03eb2dfe35fb7ebbd06953ab8/pyhector-2.0.1.tar.gz" } ], "2.1.0.0": [ { "comment_text": "", "digests": { "md5": "c84b4e6b79d726b84b8873c30c0c9e8f", "sha256": "3f086819fa78c1be62b6388bb4597540f89749d14b3227701caad024aa41366e" }, "downloads": -1, "filename": "pyhector-2.1.0.0.tar.gz", "has_sig": false, "md5_digest": "c84b4e6b79d726b84b8873c30c0c9e8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1809300, "upload_time": "2019-03-02T18:59:58", "url": "https://files.pythonhosted.org/packages/f8/dc/e8b1920c7b195e10f3a1f4c8c16cf15a1bf1e299f28b22d5f18d57c8d328/pyhector-2.1.0.0.tar.gz" } ], "2.1.0a0": [ { "comment_text": "", "digests": { "md5": "74b0db9f23ad83cd4b6f87f9da27336d", "sha256": "4627ce621c1d1cf1e9202ce6bd129dc26ce530efcaa4954f77f57150ddee6562" }, "downloads": -1, "filename": "pyhector-2.1.0a0.tar.gz", "has_sig": false, "md5_digest": "74b0db9f23ad83cd4b6f87f9da27336d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2066805, "upload_time": "2019-02-27T09:56:44", "url": "https://files.pythonhosted.org/packages/df/66/a1fceac46f3f080a20b7efb0011e803a315d891b9dd2de79ff5aea18775b/pyhector-2.1.0a0.tar.gz" } ], "2.2.0.0": [ { "comment_text": "", "digests": { "md5": "b8fcc7ad12bad5581d2dd085390120fa", "sha256": "a9f679942d4469a1beb825878e49acc7c897d2d87e67e6a778861d295b39c823" }, "downloads": -1, "filename": "pyhector-2.2.0.0.tar.gz", "has_sig": false, "md5_digest": "b8fcc7ad12bad5581d2dd085390120fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1779234, "upload_time": "2019-04-02T14:02:35", "url": "https://files.pythonhosted.org/packages/dd/1c/9b038cd61e6b8b44e3a6e5a04b18051108bbecf2b7585e40e91b40149b1d/pyhector-2.2.0.0.tar.gz" } ], "2.2.0.1": [ { "comment_text": "", "digests": { "md5": "2d6c6cac9ccabcac19f8355600ba0989", "sha256": "746942455b4ba023f5f7b5bf432ed9dfb7d3b314881bd125aef3939d5249e81a" }, "downloads": -1, "filename": "pyhector-2.2.0.1.tar.gz", "has_sig": false, "md5_digest": "2d6c6cac9ccabcac19f8355600ba0989", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1814090, "upload_time": "2019-04-03T12:54:25", "url": "https://files.pythonhosted.org/packages/43/26/9ac94e5a68a42c01f19e5fc852b4594305bb0025e3d21860b20adb9ffffa/pyhector-2.2.0.1.tar.gz" } ], "2.2.2.0": [ { "comment_text": "", "digests": { "md5": "5434f033ce02cb1b2b844354d3ac874d", "sha256": "8d7f4036dc3daeec6d26cefa8b97b885944af95d148c4a9b48e0f7b940bbeb30" }, "downloads": -1, "filename": "pyhector-2.2.2.0.tar.gz", "has_sig": false, "md5_digest": "5434f033ce02cb1b2b844354d3ac874d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1816904, "upload_time": "2019-05-06T15:59:51", "url": "https://files.pythonhosted.org/packages/4b/56/8cf653402dc5cf31db26a7d8df11e1b6aa2df58ef4619aeb10e145c6c928/pyhector-2.2.2.0.tar.gz" } ], "2.3.0.0": [ { "comment_text": "", "digests": { "md5": "90a0f50ac067c169724b3c75c88a511e", "sha256": "03fa8ebcfbc211793a0f2a82d3ffa52755b9f3b6cb571a265d66fc91be47c8f3" }, "downloads": -1, "filename": "pyhector-2.3.0.0.tar.gz", "has_sig": false, "md5_digest": "90a0f50ac067c169724b3c75c88a511e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1815985, "upload_time": "2019-05-22T13:22:17", "url": "https://files.pythonhosted.org/packages/8e/3b/99839a9f30a769f8fe771b53b69ef13bd8f8df00d0d721127571b41030c6/pyhector-2.3.0.0.tar.gz" } ], "2.3.1.0": [ { "comment_text": "", "digests": { "md5": "f0d2248bb501ca7d6734bd577c953dd0", "sha256": "102c2d09a8a840acb353b513028c811bf27face6b4de3ef604238a6edff0066a" }, "downloads": -1, "filename": "pyhector-2.3.1.0.tar.gz", "has_sig": false, "md5_digest": "f0d2248bb501ca7d6734bd577c953dd0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1816186, "upload_time": "2019-08-05T09:42:21", "url": "https://files.pythonhosted.org/packages/16/1d/7467ced778646b8547e2ca9d6d5b02ca95f68cbce1b42c7876731f571a46/pyhector-2.3.1.0.tar.gz" } ], "2.4.0.0": [ { "comment_text": "", "digests": { "md5": "f843b9b02c64bddf74bfaa3d6d5c47c1", "sha256": "1f002b5dedd79d312fab60e687d1de6a5c94173a94480b0c00c0e3ca7089cd11" }, "downloads": -1, "filename": "pyhector-2.4.0.0.tar.gz", "has_sig": false, "md5_digest": "f843b9b02c64bddf74bfaa3d6d5c47c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1821203, "upload_time": "2019-08-06T14:37:28", "url": "https://files.pythonhosted.org/packages/5a/1e/20c99813ca9064246b9bce0f63e28c1f5c4b3041efd14bf04b39e686e092/pyhector-2.4.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f843b9b02c64bddf74bfaa3d6d5c47c1", "sha256": "1f002b5dedd79d312fab60e687d1de6a5c94173a94480b0c00c0e3ca7089cd11" }, "downloads": -1, "filename": "pyhector-2.4.0.0.tar.gz", "has_sig": false, "md5_digest": "f843b9b02c64bddf74bfaa3d6d5c47c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1821203, "upload_time": "2019-08-06T14:37:28", "url": "https://files.pythonhosted.org/packages/5a/1e/20c99813ca9064246b9bce0f63e28c1f5c4b3041efd14bf04b39e686e092/pyhector-2.4.0.0.tar.gz" } ] }