{ "info": { "author": "Stefan Pfenninger", "author_email": "stefan@pfenninger.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Science/Research", "Programming Language :: Python", "Programming Language :: Python :: 3" ], "description": "[![Build Status](https://img.shields.io/travis/com/renewables-ninja/gsee/master.svg?style=flat-square)](https://travis-ci.com/renewables-ninja/gsee) [![Coverage](https://img.shields.io/coveralls/renewables-ninja/gsee.svg?style=flat-square)](https://coveralls.io/r/renewables-ninja/gsee) [![PyPI version](https://img.shields.io/pypi/v/gsee.svg?style=flat-square)](https://pypi.python.org/pypi/gsee)\n\n# GSEE: Global Solar Energy Estimator\n\n`GSEE` is a solar energy simulation library designed for rapid calculations and ease of use. [Renewables.ninja](https://www.renewables.ninja/) uses `GSEE`.\n\n## Requirements\n\nWorks only with Python 3. Required libraries:\n\n* [joblib](https://joblib.readthedocs.io/en/latest/)\n* [numpy](https://numpy.org/)\n* [pandas](https://pandas.pydata.org/)\n* [pyephem](https://pypi.org/project/ephem/)\n* [scipy](https://scipy.org/)\n* [xarray](https://xarray.pydata.org/)\n\n## Installation\n\nSimply install with `pip`:\n\n pip install gsee\n\nThe recommended way to install the required scientific libraries is to use the [Anaconda Python distribution](https://www.continuum.io/downloads).\n\n**Known issue**: If you do not already have `numpy` installed, you will get a compiler error when pip tries to build to `climatedata_interface` Cython extension.\n\n## Functionality\n\nThe following submodules are available:\n\n* __``brl_model``__: an implementation of the BRL model, a method to derive the diffuse fraction of irradiance, based on Ridley et al. (2010)\n* __``climatedata_interface``__: an interface to use GSEE with annual, seasonal, monthly or daily data. See [docs/climatedata_interface](docs/climatedata_interface.md) for details.\n* __``pv``__: electric output from PV a panel\n* __``trigon``__: functions to calculate irradiance on an inclined plane\n\nA model can be imported like this: ``import gsee.pv``\n\nA plant simulation model implements a model class (e.g. ``PVPlant``) with the relevant settings, and a ``run_model()`` function that take time series data (a pandas Series) and runs a default instance of the model class, but can also take a ``model`` argument to specify a custom-configured model instance.\n\n## Examples\n\n### Power output from a PV system with fixed panels\n\nIn this example, ``data`` must be a pandas.DataFrame with columns ``global_horizontal`` (in W/m2), ``diffuse_fraction``, and optionally a ``temperature`` column for ambient air temperature (in degrees Celsius).\n\n```python\nresult = gsee.pv.run_model(\n data,\n coords=(22.78, 5.51), # Latitude and longitude\n tilt=30, # 30 degrees tilt angle\n azim=180, # facing towards equator,\n tracking=0, # fixed - no tracking\n capacity=1000, # 1000 W\n)\n```\n\n### Aperture irradiance on a panel with 2-axis tracking\n\n```python\nlocation = (22.78, 5.51)\nplane_irradiance = gsee.trigon.aperture_irradiance(\n data['direct_horizontal'], data['diffuse_horizontal'],\n location, tracking=2\n)\n```\n\n### Climate data Interface\n\nExample use directly reading NetCDF files with GHI, diffuse irradiance fraction, and temperature data:\n\n```python\nfrom gsee.climatedata_interface.interface import run_interface\n\nrun_interface(\n ghi_data=('ghi_input.nc', 'ghi'), # Tuple of (input file path, variable name)\n diffuse_data=('diffuse_fraction_input.nc', 'diff_frac'),\n temp_data=('temperature_input.nc', 't2m'),\n outfile='output_file.nc',\n params=dict(tilt=35, azim=180, tracking=0, capacity=1000),\n frequency='detect'\n)\n```\n\nTilt can be given as a latitude-dependent function instead of static value:\n\n```python\nparams = dict(tilt=lambda lat: 0.35396 * lat + 16.84775, ...)\n```\n\nInstead of letting the climate data interface read and prepare data from NetCDF files, an `xarray.Dataset` can also be passed directly (e.g. when using the module in combination with a larger application):\n\n```python\nfrom gsee.climatedata_interface.interface import run_interface_from_dataset\n\nresult = run_interface_from_dataset(\n data=my_dataset, # my_dataset is an xarray.Dataset\n params=dict(tilt=35, azim=180, tracking=0, capacity=1000)\n)\n```\n\nBy default, a built-in file with monthly probability density functions is automatically downloaded and used to generate synthetic daily irradiance.\n\nFor more information, see the [climate data interface documentation](docs/climatedata-interface.md).\n\n## Development\n\nTo install the latest development version directly from GitHub:\n\n pip install -e git+https://github.com/renewables-ninja/gsee.git#egg=gsee\n\nTo build the `climatedata_interface` submodule [Cython >= 0.28.5](http://cython.org/) is required.\n\n## Credits and contact\n\nContact [Stefan Pfenninger](mailto:stefan.pfenninger@usys.ethz.ch) for questions about `GSEE`. `GSEE` is also a component of the [Renewables.ninja](https://www.renewables.ninja) project, developed by Stefan Pfenninger and Iain Staffell. Use the [contact page](https://www.renewables.ninja/about) there if you want more information about Renewables.ninja.\n\n## Citation\n\nIf you use `GSEE` or code derived from it in academic work, please cite:\n\nStefan Pfenninger and Iain Staffell (2016). Long-term patterns of European PV output using 30 years of validated hourly reanalysis and satellite data. *Energy* 114, pp. 1251-1265. [doi: 10.1016/j.energy.2016.08.060](https://doi.org/10.1016/j.energy.2016.08.060)\n\n## License\n\nBSD-3-Clause", "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/renewables-ninja/gsee", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "gsee", "package_url": "https://pypi.org/project/gsee/", "platform": "", "project_url": "https://pypi.org/project/gsee/", "project_urls": { "Homepage": "https://github.com/renewables-ninja/gsee" }, "release_url": "https://pypi.org/project/gsee/0.3.1/", "requires_dist": null, "requires_python": "", "summary": "GSEE: Global Solar Energy Estimator", "version": "0.3.1" }, "last_serial": 5572218, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "1ed0566c1a8e1e7ed72a8833e6987428", "sha256": "496067feed0da325e76ab47324ae00c042080ae75f24d7695df341cfeec34ceb" }, "downloads": -1, "filename": "gsee-0.2.0.tar.gz", "has_sig": false, "md5_digest": "1ed0566c1a8e1e7ed72a8833e6987428", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10846, "upload_time": "2018-08-10T09:51:54", "url": "https://files.pythonhosted.org/packages/c5/0f/f2aa6d5adee7f18244e02b036bd82bca508a8e1ecb3d632ed350180c7f82/gsee-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "dad42e924cbbb7ffab1d9b19567095bf", "sha256": "aa03dd569ab3c492cb58d35e70ecadf081ac94d149b767941d043cedce975307" }, "downloads": -1, "filename": "gsee-0.2.1.tar.gz", "has_sig": false, "md5_digest": "dad42e924cbbb7ffab1d9b19567095bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10815, "upload_time": "2018-09-07T08:01:57", "url": "https://files.pythonhosted.org/packages/a3/2f/e3b4ffd183defd71c9868ec33176bd96c653817a48dc8a5dfa01eb5829fa/gsee-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "5cd08e2fa9f103712a4ced3f4d996a72", "sha256": "04d2d22533d310038ba27dbdb0371094624002a568efd14079c5978cf885e236" }, "downloads": -1, "filename": "gsee-0.3.0.tar.gz", "has_sig": false, "md5_digest": "5cd08e2fa9f103712a4ced3f4d996a72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 80656, "upload_time": "2018-12-19T09:10:57", "url": "https://files.pythonhosted.org/packages/03/2d/bf8a0c5da5fcd6a65dcf699ca64c2efc11cc57351d82f07073c81222d1c7/gsee-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "f94af572f78186b76e83b31ac4860c23", "sha256": "a20d24f85fb77276713ccd6a25df884a2de4195909532b7f36f91a3ec50ed8ea" }, "downloads": -1, "filename": "gsee-0.3.1.tar.gz", "has_sig": false, "md5_digest": "f94af572f78186b76e83b31ac4860c23", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 80842, "upload_time": "2019-07-23T12:34:56", "url": "https://files.pythonhosted.org/packages/7d/6a/5fc32751ea05af151080a219cecf416e19e6619e747cca421ed4a5524531/gsee-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f94af572f78186b76e83b31ac4860c23", "sha256": "a20d24f85fb77276713ccd6a25df884a2de4195909532b7f36f91a3ec50ed8ea" }, "downloads": -1, "filename": "gsee-0.3.1.tar.gz", "has_sig": false, "md5_digest": "f94af572f78186b76e83b31ac4860c23", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 80842, "upload_time": "2019-07-23T12:34:56", "url": "https://files.pythonhosted.org/packages/7d/6a/5fc32751ea05af151080a219cecf416e19e6619e747cca421ed4a5524531/gsee-0.3.1.tar.gz" } ] }