{ "info": { "author": "SunPower", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Science/Research", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Scientific/Engineering" ], "description": "pvfactors: irradiance modeling made simple\n==========================================\n\n|Logo|\n\n|CircleCI| |License| |PyPI-Status| |PyPI-Versions|\n\npvfactors is a tool used by PV professionals to calculate the\nirradiance incident on surfaces of a photovoltaic array. It relies on the use of\n2D geometries and view factors integrated mathematically into systems of\nequations to account for reflections between all of the surfaces.\n\npvfactors was originally ported from the SunPower developed 'vf_model' package, which was introduced at the IEEE PV Specialist Conference 44 2017 (see [#pvfactors_paper]_ and link_ to paper).\n\n------------------------------------------\n\n.. contents:: Table of contents\n :backlinks: top\n :local:\n\n\nDocumentation\n-------------\n\nThe documentation can be found `here `_.\nIt includes a lot of tutorials_ that describe the different ways of using pvfactors.\n\n\nQuick Start\n-----------\n\nGiven some timeseries inputs:\n\n\n.. code:: python\n\n # Import external libraries\n from datetime import datetime\n import pandas as pd\n\n # Create input data\n df_inputs = pd.DataFrame(\n {'solar_zenith': [20., 50.],\n 'solar_azimuth': [110., 250.],\n 'surface_tilt': [10., 20.],\n 'surface_azimuth': [90., 270.],\n 'dni': [1000., 900.],\n 'dhi': [50., 100.],\n 'albedo': [0.2, 0.2]},\n index=[datetime(2017, 8, 31, 11), datetime(2017, 8, 31, 15)])\n df_inputs\n\n\n+---------------------+--------------+---------------+--------------+-----------------+--------+-------+--------+\n| | solar_zenith | solar_azimuth | surface_tilt | surface_azimuth | dni | dhi | albedo |\n+=====================+==============+===============+==============+=================+========+=======+========+\n| 2017-08-31 11:00:00 | 20.0 | 110.0 | 10.0 | 90.0 | 1000.0 | 50.0 | 0.2 |\n+---------------------+--------------+---------------+--------------+-----------------+--------+-------+--------+\n| 2017-08-31 15:00:00 | 50.0 | 250.0 | 20.0 | 270.0 | 900.0 | 100.0 | 0.2 |\n+---------------------+--------------+---------------+--------------+-----------------+--------+-------+--------+\n\n\nAnd some PV array parameters\n\n\n.. code:: python\n\n pvarray_parameters = {\n 'n_pvrows': 3, # number of pv rows\n 'pvrow_height': 1, # height of pvrows (measured at center / torque tube)\n 'pvrow_width': 1, # width of pvrows\n 'axis_azimuth': 0., # azimuth angle of rotation axis\n 'gcr': 0.4, # ground coverage ratio\n }\n\nThe user can quickly create a PV array with ``pvfactors``, and manipulate it with the engine\n\n\n.. code:: python\n\n from pvfactors.geometry import OrderedPVArray\n # Create PV array\n pvarray = OrderedPVArray.init_from_dict(pvarray_parameters)\n\n\n\n.. code:: python\n\n from pvfactors.engine import PVEngine\n # Create engine\n engine = PVEngine(pvarray)\n # Fit engine to data\n engine.fit(df_inputs.index, df_inputs.dni, df_inputs.dhi,\n df_inputs.solar_zenith, df_inputs.solar_azimuth,\n df_inputs.surface_tilt, df_inputs.surface_azimuth,\n df_inputs.albedo)\n\nThe user can then plot the PV array geometry at any given time of the simulation:\n\n\n.. code:: python\n\n # Plot pvarray shapely geometries\n f, ax = plt.subplots(figsize=(10, 5))\n pvarray.plot_at_idx(1, ax)\n plt.show()\n\n.. image:: https://raw.githubusercontent.com/SunPower/pvfactors/master/docs/sphinx/_static/pvarray.png\n\n\nIt is then very easy to run simulations using the defined engine:\n\n\n.. code:: python\n\n pvarray = engine.run_full_mode_timestep(1)\n\n\nAnd inspect the results thanks to the simple geometry API\n\n\n.. code:: python\n\n print(\"Incident irradiance on front surface of middle pv row: %.2f W/m2\"\n % (pvarray.pvrows[1].front.get_param_weighted('qinc')))\n print(\"Reflected irradiance on back surface of left pv row: %.2f W/m2\"\n % (pvarray.pvrows[0].back.get_param_weighted('reflection')))\n print(\"Isotropic irradiance on back surface of right pv row: %.2f W/m2\"\n % (pvarray.pvrows[2].back.get_param_weighted('isotropic')))\n\n.. parsed-literal::\n\n Incident irradiance on front surface of middle pv row: 886.38 W/m2\n Reflected irradiance on back surface of left pv row: 86.40 W/m2\n Isotropic irradiance on back surface of right pv row: 1.85 W/m2\n\n\nThe users can also run simulations for all provided timestamps, and obtain a \"report\" that will look like whatever the users want, and which can rely on the simple API shown above.\nThe two options to run the simulations are:\n\n- `fast mode`_: almost instantaneous results for back side irradiance calculations, but using simple reflection assumptions\n\n\n.. code:: python\n\n # Create a function that will build a report\n def fn_report(pvarray): return {'qinc_back': pvarray.ts_pvrows[1].back.get_param_weighted('qinc')}\n\n # Run fast mode simulation\n report = engine.run_fast_mode(fn_build_report=fn_report, pvrow_index=1)\n\n # Print results (report is defined by report function passed by user)\n df_report = pd.DataFrame(report, index=df_inputs.index)\n df_report\n\n\n+---------------------+------------+\n| | qinc_back |\n+=====================+============+\n| 2017-08-31 11:00:00 | 110.586509 |\n+---------------------+------------+\n| 2017-08-31 15:00:00 | 86.943571 |\n+---------------------+------------+\n\n\n- `full mode`_: which calculates the equilibrium of reflections for all timestamps and all surfaces\n\n\n.. code:: python\n\n # Create a function that will build a report\n from pvfactors.report import example_fn_build_report\n\n # Run full mode simulation\n report = engine.run_full_mode(fn_build_report=example_fn_build_report)\n\n # Print results (report is defined by report function passed by user)\n df_report = pd.DataFrame(report, index=df_inputs.index)\n df_report\n\n\n.. parsed-literal::\n\n 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 2/2 [00:00<00:00, 51.08it/s]\n\n\n+---------------------+-------------+------------+-----------+----------+\n| | qinc_front | qinc_back | iso_front | iso_back |\n+=====================+=============+============+===========+==========+\n| 2017-08-31 11:00:00 | 1034.967753 | 106.627832 | 20.848345 | 0.115792 |\n+---------------------+-------------+------------+-----------+----------+\n| 2017-08-31 15:00:00 | 886.376819 | 79.668878 | 54.995702 | 1.255482 |\n+---------------------+-------------+------------+-----------+----------+\n\n\nInstallation\n------------\n\npvfactors is currently compatible and tested with Python 2 and 3, and is available in `PyPI `_. The easiest way to install pvfactors is to use pip_ as follows:\n\n.. code:: sh\n\n $ pip install pvfactors\n\nThe package wheel files are also available in the `release section`_ of the Github repository.\n\n\nRequirements\n------------\n\nRequirements are included in the ``requirements.txt`` file of the package. Here is a list of important dependencies:\n\n* `shapely `_\n* `numpy `_\n* `scipy `_\n* `pandas `_\n* `pvlib-python `_\n\n\nCiting pvfactors\n----------------\n\nWe appreciate your use of pvfactors. If you use pvfactors in a published work, we kindly ask that you cite:\n\n\n.. parsed-literal::\n\n Anoma, M., Jacob, D., Bourne, B.C., Scholl, J.A., Riley, D.M. and Hansen, C.W., 2017. View Factor Model and Validation for Bifacial PV and Diffuse Shade on Single-Axis Trackers. In 44th IEEE Photovoltaic Specialist Conference.\n\n\nContributing\n------------\n\nContributions are needed in order to improve pvfactors.\nIf you wish to contribute, you can start by forking and cloning the repository, and then installing pvfactors using pip_ in the root folder of the package:\n\n.. code:: sh\n\n $ pip install .\n\n\nTo install the package in editable mode, you can use:\n\n.. code:: sh\n\n $ pip install -e .\n\n\nReferences\n----------\n\n.. [#pvfactors_paper] Anoma, M., Jacob, D., Bourne, B. C., Scholl, J. A., Riley, D. M., & Hansen, C. W. (2017). View Factor Model and Validation for Bifacial PV and Diffuse Shade on Single-Axis Trackers. In 44th IEEE Photovoltaic Specialist Conference.\n\n\n.. _link: https://pdfs.semanticscholar.org/ebb2/35e3c3796b158e1a3c45b40954e60d876ea9.pdf\n\n.. _tutorials: https://sunpower.github.io/pvfactors/tutorials/index.html\n\n.. _`full mode`: https://sunpower.github.io/pvfactors/theory/problem_formulation.html#full-simulations\n\n.. _`fast mode`: https://sunpower.github.io/pvfactors/theory/problem_formulation.html#fast-simulations\n\n.. _pip: https://pip.pypa.io/en/stable/\n\n.. _`release section`: https://github.com/SunPower/pvfactors/releases\n\n.. |Logo| image:: https://raw.githubusercontent.com/SunPower/pvfactors/master/docs/sphinx/_static/logo.png\n :target: http://sunpower.github.io/pvfactors/\n\n.. |CircleCI| image:: https://circleci.com/gh/SunPower/pvfactors.svg?style=shield\n :target: https://circleci.com/gh/SunPower/pvfactors\n\n.. |License| image:: https://img.shields.io/badge/License-BSD%203--Clause-blue.svg\n :target: https://github.com/SunPower/pvfactors/blob/master/LICENSE\n\n.. |PyPI-Status| image:: https://img.shields.io/pypi/v/pvfactors.svg\n :target: https://pypi.org/project/pvfactors\n\n.. |PyPI-Versions| image:: https://img.shields.io/pypi/pyversions/pvfactors.svg?logo=python&logoColor=white\n :target: https://pypi.org/project/pvfactors\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/SunPower/pvfactors", "keywords": "", "license": "BSD 3-Clause", "maintainer": "", "maintainer_email": "marc.abouanoma@sunpowercorp.com", "name": "pvfactors", "package_url": "https://pypi.org/project/pvfactors/", "platform": "", "project_url": "https://pypi.org/project/pvfactors/", "project_urls": { "Homepage": "https://github.com/SunPower/pvfactors" }, "release_url": "https://pypi.org/project/pvfactors/1.2.2/", "requires_dist": [ "pvlib (>=0.6.0)", "scipy (>=0.19.1)", "shapely (>=1.6.4.post2)", "matplotlib", "future", "six", "tqdm", "Sphinx ; extra == 'docs'", "sphinx-rtd-theme ; extra == 'docs'", "nbsphinx ; extra == 'docs'", "sphinxcontrib-napoleon ; extra == 'docs'", "sphinxcontrib-github-alt ; extra == 'docs'", "ipykernel ; extra == 'docs'", "pytest (>=3.2.1) ; extra == 'testing'", "pytest-mock (>=1.10.0) ; extra == 'testing'", "mock ; extra == 'testing'" ], "requires_python": "", "summary": "2D View Factor Model to calculate the irradiance incident on various surfaces of PV arrays", "version": "1.2.2" }, "last_serial": 5942966, "releases": { "0.1.3": [ { "comment_text": "", "digests": { "md5": "443952ad8d2c0507861bffe83af2d9e2", "sha256": "01709a5b1f3c50cdea8ade623b63fbb4a4b90aa3d7cd84bed402bfd9e2eab912" }, "downloads": -1, "filename": "pvfactors-0.1.3.tar.gz", "has_sig": false, "md5_digest": "443952ad8d2c0507861bffe83af2d9e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47285, "upload_time": "2018-10-11T06:58:31", "url": "https://files.pythonhosted.org/packages/c8/e1/58352b87cf05be38365045be8271d51feb731af9184338271dfb87545ad0/pvfactors-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "d0af6bb23b3f9c1cf05cb4de23323cd5", "sha256": "f67f29b319dca4bee05db69a252ef9da4452a7c9249ce243da62f62cafbeda0a" }, "downloads": -1, "filename": "pvfactors-0.1.4.tar.gz", "has_sig": false, "md5_digest": "d0af6bb23b3f9c1cf05cb4de23323cd5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47698, "upload_time": "2018-11-22T06:39:11", "url": "https://files.pythonhosted.org/packages/3b/34/cd02e3bc5d942f37643585c4230141328d7e66a3e1f1bd5f4dd42e40a5e8/pvfactors-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "abd672387c80fdd8a4461b5426afbda9", "sha256": "542a728768ee7e45aba15861a70aa71327b8b4546ba83cbfa7be65c15aa69cac" }, "downloads": -1, "filename": "pvfactors-0.1.5.tar.gz", "has_sig": false, "md5_digest": "abd672387c80fdd8a4461b5426afbda9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50733, "upload_time": "2018-12-14T09:12:04", "url": "https://files.pythonhosted.org/packages/86/d2/3cd27ca28c3f0adb511dafd276d9f7cb832eccf9ba94723e29acd082f2ab/pvfactors-0.1.5.tar.gz" } ], "0.1.5a0": [ { "comment_text": "", "digests": { "md5": "652fc54331b3626631f34aa77e885ce5", "sha256": "be002e4b4688ac4636e7cd7fd5aa0a7cf99e4731a9abed153a2f58a5a550ee22" }, "downloads": -1, "filename": "pvfactors-0.1.5a0.tar.gz", "has_sig": false, "md5_digest": "652fc54331b3626631f34aa77e885ce5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50681, "upload_time": "2018-11-22T07:19:53", "url": "https://files.pythonhosted.org/packages/71/a8/51d63c4dafb4d838c6ea1e0abda43efe0e156fd7aab85a332690d422f476/pvfactors-0.1.5a0.tar.gz" } ], "0.1.5a1": [ { "comment_text": "", "digests": { "md5": "7e6663c503e2f5c2fc6a88f1183b4a95", "sha256": "08f9c2ec09ccf246af56868d25c2bc1299535bd649f2e0b52c79fe59e29a1618" }, "downloads": -1, "filename": "pvfactors-0.1.5a1.tar.gz", "has_sig": false, "md5_digest": "7e6663c503e2f5c2fc6a88f1183b4a95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50728, "upload_time": "2018-11-22T07:27:57", "url": "https://files.pythonhosted.org/packages/79/7d/e6d2abf73fbd977db6a6d7301dfcba00d037bea3c99835f4221cb12f471b/pvfactors-0.1.5a1.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "cf058651990df6f951f4b6babdda2cd3", "sha256": "d5b18c508fd13f3c08170b560b86c43e8a4f29376a2d7053d960c4321e7ab5de" }, "downloads": -1, "filename": "pvfactors-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cf058651990df6f951f4b6babdda2cd3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12690, "upload_time": "2019-04-19T07:38:52", "url": "https://files.pythonhosted.org/packages/e7/d3/e1084cea6bbbf614794fcdde7c0d5dc6e9d153289c4a291cf7e11e08b92e/pvfactors-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "778f357c36e3f8134a44c6fcca7f497c", "sha256": "f9496c1a7c6d3caf188655bbb10146583cd549982ad1b53873f3fba893699ca7" }, "downloads": -1, "filename": "pvfactors-1.0.0.tar.gz", "has_sig": false, "md5_digest": "778f357c36e3f8134a44c6fcca7f497c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28924, "upload_time": "2019-04-19T07:38:54", "url": "https://files.pythonhosted.org/packages/96/51/7bbebde7d5ce5f7e482c8710395e72008d8ed70ea1830ad8061574ce657a/pvfactors-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "3395a0ea9a3c4e93aeb1039701ea352c", "sha256": "316de144ffa9a9a4a7f1c56b64e20bf8b7de37bb7622a2e8dad690eaa472a54b" }, "downloads": -1, "filename": "pvfactors-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3395a0ea9a3c4e93aeb1039701ea352c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 44302, "upload_time": "2019-05-14T08:52:19", "url": "https://files.pythonhosted.org/packages/05/3c/c4b0349933862f465401cbe9ea0e7e1df53e2d5156a13a0573a55582afaa/pvfactors-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bcca07a1f7afa9cf166d3ae1684f02d4", "sha256": "c153c4281bc41b724338b9f8c5be6f19551d07f1769dd091cecbf81e63fd8eb7" }, "downloads": -1, "filename": "pvfactors-1.0.1.tar.gz", "has_sig": false, "md5_digest": "bcca07a1f7afa9cf166d3ae1684f02d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54526, "upload_time": "2019-05-14T08:52:20", "url": "https://files.pythonhosted.org/packages/04/5a/6146a9d3891ee4874b8b848f9d294b834d9211879779e171174a3b60701a/pvfactors-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "7c6cfad57f427c6d300e76e5d99e0a8f", "sha256": "3dcb667c7ea5b5288af7b17bd2caa155347901564ab9f0b82df5c004925ebcf3" }, "downloads": -1, "filename": "pvfactors-1.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7c6cfad57f427c6d300e76e5d99e0a8f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 45711, "upload_time": "2019-07-05T09:29:57", "url": "https://files.pythonhosted.org/packages/18/cd/69000fbe4866c4a9d357d297152a9b159eea02b01008d5e711f9ffd12c0b/pvfactors-1.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "16223227e38d281bc4b529974dec1def", "sha256": "c717ca475e643a089de2b73157f21483969dd02a3e5031df54598d2ce7dff249" }, "downloads": -1, "filename": "pvfactors-1.0.2.tar.gz", "has_sig": false, "md5_digest": "16223227e38d281bc4b529974dec1def", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55872, "upload_time": "2019-07-05T09:29:59", "url": "https://files.pythonhosted.org/packages/e1/80/f66d5060d1e4968fd8413a7ba5c64ef0d672fa0ded0ea8f5c3cf13b7e2a9/pvfactors-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "0a5ced7f311eeae6b0dc299dafb8d6ab", "sha256": "bfe24ff68a94d7fcef6b9fba94322dd2ff753444cbb7fcef3f05ae7fab069a3a" }, "downloads": -1, "filename": "pvfactors-1.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0a5ced7f311eeae6b0dc299dafb8d6ab", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 45804, "upload_time": "2019-07-12T08:29:22", "url": "https://files.pythonhosted.org/packages/6f/c7/ae5d37ded53b8872e34dc70b4ace6542da66cb2f83f82e86aca1fc11c191/pvfactors-1.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c876423c5938f360eefde61078360bcd", "sha256": "a8f2d36080f7c999f9206ea636f241ac4866b15823491e84529a35604c6754a6" }, "downloads": -1, "filename": "pvfactors-1.0.3.tar.gz", "has_sig": false, "md5_digest": "c876423c5938f360eefde61078360bcd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55875, "upload_time": "2019-07-12T08:29:24", "url": "https://files.pythonhosted.org/packages/4f/82/cb47a29e7156c588759eed3871022fe7752f991635a8f2b4f21496b7d372/pvfactors-1.0.3.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "56e2624e70b95d5bbc49163fab911379", "sha256": "88968fbebb3660cd6b1cf0e9aeb5d85cace62623d0898e78ee4c39b60250e32c" }, "downloads": -1, "filename": "pvfactors-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "56e2624e70b95d5bbc49163fab911379", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 48579, "upload_time": "2019-08-02T10:35:02", "url": "https://files.pythonhosted.org/packages/d6/a5/b780c6d45505a07ff83cd3b71b284a94c0bb35acf2438b8575dd1c2cc5e1/pvfactors-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "240ae99a1644352c8b63d5abddef3a9a", "sha256": "b8ae6449d99327bdaebd8321e3e27a9afbed7bc9cfe807b47841dea64ba4f9c6" }, "downloads": -1, "filename": "pvfactors-1.1.0.tar.gz", "has_sig": false, "md5_digest": "240ae99a1644352c8b63d5abddef3a9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 58897, "upload_time": "2019-08-02T10:35:04", "url": "https://files.pythonhosted.org/packages/d1/16/851259b97d163c6d89c6d9c892dbea2d15ca8a5771b6dae9a81f23c8b340/pvfactors-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "e06cac4cc84102de93742a0dc223aa99", "sha256": "fb2535efe0183ca39be1836657440e91a793c30dc0e4bcdac8558ea6b2775386" }, "downloads": -1, "filename": "pvfactors-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e06cac4cc84102de93742a0dc223aa99", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 62268, "upload_time": "2019-09-09T08:17:11", "url": "https://files.pythonhosted.org/packages/13/40/92451cfc1fec7a368f1cf973376c31dbd3a3f611e72150a5b39f61646bbf/pvfactors-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "94768581337a13fded0323205d4d04bb", "sha256": "cf13c36dabffc3436ec7271627f6bcbfa38fb673b6028d461d900edb0bfcba83" }, "downloads": -1, "filename": "pvfactors-1.2.0.tar.gz", "has_sig": false, "md5_digest": "94768581337a13fded0323205d4d04bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 70979, "upload_time": "2019-09-09T08:17:14", "url": "https://files.pythonhosted.org/packages/03/93/fe9386742bb9ce36caa792231ac61a63ab3108301c2a78642c9c6d4429cf/pvfactors-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "25efc0cc3289a1b7aded66df7e93a417", "sha256": "1dea1deaaf3fdde541a828605cac7780d305b6aab4d06299952556fde2fa2ca0" }, "downloads": -1, "filename": "pvfactors-1.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "25efc0cc3289a1b7aded66df7e93a417", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 62918, "upload_time": "2019-09-13T09:03:12", "url": "https://files.pythonhosted.org/packages/8f/0a/efa5bb659bc29fc869522a51389a416a18aa413fa4516222e2b564b93439/pvfactors-1.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "87ec0952874bb3ab9e276178ed1441ee", "sha256": "6fd77d2f74a20a6b38d8db58f522090b5d14fbb68457cfc99c90ecfc7444e88a" }, "downloads": -1, "filename": "pvfactors-1.2.1.tar.gz", "has_sig": false, "md5_digest": "87ec0952874bb3ab9e276178ed1441ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 74323, "upload_time": "2019-09-13T09:03:14", "url": "https://files.pythonhosted.org/packages/7e/9b/d85621eb067452a67aba0ef230a505eba1d2d8732d5efc20a5efc57b1b3c/pvfactors-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "eada1d934fcc05a899ae5c8f66917979", "sha256": "e534b3ee5762d1db75c1da64a48b4d362da523627419c8f0d5a31483d494a103" }, "downloads": -1, "filename": "pvfactors-1.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "eada1d934fcc05a899ae5c8f66917979", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 62998, "upload_time": "2019-10-08T05:38:28", "url": "https://files.pythonhosted.org/packages/8a/80/790bf66d851e8aa75a3f5f455e3eb943767949b1da926cb1345093fa5cef/pvfactors-1.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9bd68254038e886daa10ab5be0755a91", "sha256": "e29bb766fb3da18be07ae5f71384bf2a28c5c513d327e478f637b270f173d1ca" }, "downloads": -1, "filename": "pvfactors-1.2.2.tar.gz", "has_sig": false, "md5_digest": "9bd68254038e886daa10ab5be0755a91", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 74490, "upload_time": "2019-10-08T05:38:30", "url": "https://files.pythonhosted.org/packages/99/08/64682491cf2c80f34784507042a236d48286c49055b877c45080b79fdb58/pvfactors-1.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "eada1d934fcc05a899ae5c8f66917979", "sha256": "e534b3ee5762d1db75c1da64a48b4d362da523627419c8f0d5a31483d494a103" }, "downloads": -1, "filename": "pvfactors-1.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "eada1d934fcc05a899ae5c8f66917979", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 62998, "upload_time": "2019-10-08T05:38:28", "url": "https://files.pythonhosted.org/packages/8a/80/790bf66d851e8aa75a3f5f455e3eb943767949b1da926cb1345093fa5cef/pvfactors-1.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9bd68254038e886daa10ab5be0755a91", "sha256": "e29bb766fb3da18be07ae5f71384bf2a28c5c513d327e478f637b270f173d1ca" }, "downloads": -1, "filename": "pvfactors-1.2.2.tar.gz", "has_sig": false, "md5_digest": "9bd68254038e886daa10ab5be0755a91", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 74490, "upload_time": "2019-10-08T05:38:30", "url": "https://files.pythonhosted.org/packages/99/08/64682491cf2c80f34784507042a236d48286c49055b877c45080b79fdb58/pvfactors-1.2.2.tar.gz" } ] }