Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions docs/examples/system-models/plot_oedi_9068.py
Original file line number Diff line number Diff line change
Expand Up @@ -143,10 +143,12 @@

keys = ['ghi', 'dni', 'dhi', 'temp_air', 'wind_speed',
'albedo', 'precipitable_water']
psm3, psm3_metadata = pvlib.iotools.get_psm3(latitude, longitude, api_key,
email, interval=5, names=2019,
map_variables=True, leap_day=True,
attributes=keys)
psm3, psm3_metadata = pvlib.iotools.get_nsrdb_psm4_conus(latitude, longitude,
api_key, email,
year=2019, interval=5,
parameters=keys,
map_variables=True,
leap_day=True)

# %%
# Pre-generate some model inputs
Expand Down
3 changes: 0 additions & 3 deletions docs/sphinx/source/reference/iotools.rst
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,6 @@ Satellite-derived irradiance and weather data for the Americas.
iotools.get_nsrdb_psm4_conus
iotools.get_nsrdb_psm4_full_disc
iotools.read_nsrdb_psm4
iotools.get_psm3
iotools.read_psm3
iotools.parse_psm3


Commercial datasets
Expand Down
10 changes: 1 addition & 9 deletions docs/sphinx/source/user_guide/extras/faq.rst
Original file line number Diff line number Diff line change
Expand Up @@ -52,15 +52,7 @@ Where can I get irradiance data for my simulation?

pvlib has a module called iotools which has several functions for
retrieving irradiance data as well as reading standard file formats
such as EPW, TMY2, and TMY3. For free irradiance data, you may
consider NREL's NSRDB which can be accessed using the
:py:func:`pvlib.iotools.get_psm3` function and is available for
North America. For Europe and Africa, you may consider looking into
CAMS (:py:func:`pvlib.iotools.get_cams`).
PVGIS (:py:func:`pvlib.iotools.get_pvgis_hourly`) is another option, which
provides irradiance from several different databases with near global coverage.
pvlib also has functions for accessing a plethora of ground-measured
irradiance datasets, including the BSRN, SURFRAD, SRML, and NREL's MIDC.
such as EPW, TMY2, and TMY3. See :ref:`weatherdata`.


Can I use PVsyst (PAN/OND) files with pvlib?
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,8 @@ online web APIs. For example, :py:func:`~pvlib.iotools.get_pvgis_hourly`
downloads data from PVGIS's webservers and returns it as a python variable.
Functions that retrieve data from the internet are named ``get_``, followed
by the name of the data source: :py:func:`~pvlib.iotools.get_bsrn`,
:py:func:`~pvlib.iotools.get_psm3`, :py:func:`~pvlib.iotools.get_pvgis_tmy`,
:py:func:`~pvlib.iotools.get_nsrdb_psm4_conus`,
:py:func:`~pvlib.iotools.get_pvgis_tmy`,
and so on.

For satellite/reanalysis datasets, the location is specified by latitude and
Expand All @@ -121,7 +122,7 @@ longitude in decimal degrees:
.. code-block:: python

latitude, longitude = 33.75, -84.39 # Atlanta, Georgia, United States
df, metadata = pvlib.iotools.get_psm3(latitude, longitude, map_variables=True, ...)
df, metadata = pvlib.iotools.get_pvgis_tmy(latitude, longitude, map_variables=True, ...)


For ground station networks, the location identifier is the station ID:
Expand Down
6 changes: 3 additions & 3 deletions docs/sphinx/source/whatsnew/v0.10.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -109,9 +109,9 @@ Enhancements
:py:func:`pvlib.iotools.get_pvgis_horizon`. (:issue:`1290`, :pull:`1395`)
* Update the URL used in the :py:func:`pvlib.iotools.get_cams` function. The new URL supports load-balancing
and redirects to the fastest server. (:issue:`1688`, :pull:`1740`)
* :py:func:`pvlib.iotools.get_psm3` now has a ``url`` parameter to give the user
* :py:func:`!pvlib.iotools.get_psm3` now has a ``url`` parameter to give the user
the option of controlling what NSRDB endpoint is used. (:pull:`1736`)
* :py:func:`pvlib.iotools.get_psm3` now uses the new NSRDB 3.2.2 endpoint for
* :py:func:`!pvlib.iotools.get_psm3` now uses the new NSRDB 3.2.2 endpoint for
hourly and half-hourly single-year datasets. (:issue:`1591`, :pull:`1736`)
* The default solar position algorithm (NREL SPA) is now 50-100% faster. (:pull:`1748`)
* Added functions to retrieve daily precipitation, temperature, and snowfall data
Expand Down Expand Up @@ -146,7 +146,7 @@ Testing
Documentation
~~~~~~~~~~~~~
* Updated the description of the interval parameter in
:py:func:`pvlib.iotools.get_psm3`. (:issue:`1702`, :pull:`1712`)
:py:func:`!pvlib.iotools.get_psm3`. (:issue:`1702`, :pull:`1712`)
* Fixed outdated nbviewer links. (:issue:`1721`, :pull:`1726`)


Expand Down
2 changes: 1 addition & 1 deletion docs/sphinx/source/whatsnew/v0.10.2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Enhancements

Bug fixes
~~~~~~~~~
* :py:func:`~pvlib.iotools.get_psm3` no longer incorrectly returns clear-sky
* :py:func:`!pvlib.iotools.get_psm3` no longer incorrectly returns clear-sky
DHI instead of clear-sky GHI when requesting ``ghi_clear``. (:pull:`1819`)
* :py:func:`pvlib.singlediode.bishop88` with ``method='newton'`` no longer
crashes when passed ``pandas.Series`` of length one.
Expand Down
2 changes: 1 addition & 1 deletion docs/sphinx/source/whatsnew/v0.10.3.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Bug fixes
* Fixed CAMS error message handler in
:py:func:`pvlib.iotools.get_cams`. (:issue:`1799`, :pull:`1905`)
* Fix mapping of the dew point column to ``temp_dew`` when ``map_variables``
is True in :py:func:`pvlib.iotools.get_psm3`. (:pull:`1920`)
is True in :py:func:`!pvlib.iotools.get_psm3`. (:pull:`1920`)
* Fix :py:class:`pvlib.modelchain.ModelChain` to use attribute `clearsky_model`.
(:pull:`1924`)

Expand Down
6 changes: 3 additions & 3 deletions docs/sphinx/source/whatsnew/v0.11.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ Breaking changes
* ``pvlib.iotools.read_srml_month_from_solardat`` was deprecated in v0.10.0 and has
now been completely removed. The function is replaced by :py:func:`~pvlib.iotools.get_srml()`.
(:pull:`1779`, :pull:`1989`)
* The ``leap_day`` parameter in :py:func:`~pvlib.iotools.get_psm3`
* The ``leap_day`` parameter in :py:func:`!pvlib.iotools.get_psm3`
now defaults to True instead of False. (:issue:`1481`, :pull:`1991`)
* :py:func:`~pvlib.iotools.get_psm3`, :py:func:`~pvlib.iotools.read_psm3`, and
:py:func:`~pvlib.iotools.parse_psm3` all now have ``map_variables=True`` by
* :py:func:`!pvlib.iotools.get_psm3`, :py:func:`!pvlib.iotools.read_psm3`, and
:py:func:`!pvlib.iotools.parse_psm3` all now have ``map_variables=True`` by
default. (:issue:`1425`, :pull:`2094`)
* The deprecated ``ivcurve_pnts`` parameter of :py:func:`pvlib.pvsystem.singlediode`
is removed. Use :py:func:`pvlib.pvsystem.v_from_i` and
Expand Down
2 changes: 1 addition & 1 deletion docs/sphinx/source/whatsnew/v0.13.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Deprecations
:pull:`2467`, :pull:`2466`)

- :py:func:`~pvlib.iotools.parse_epw`
- :py:func:`~pvlib.iotools.parse_psm3`
- :py:func:`!pvlib.iotools.parse_psm3`
- :py:func:`~pvlib.iotools.parse_cams`
- :py:func:`~pvlib.iotools.parse_bsrn`

Expand Down
3 changes: 3 additions & 0 deletions docs/sphinx/source/whatsnew/v0.13.2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ v0.13.2 (Anticipated December, 2025)

Breaking Changes
~~~~~~~~~~~~~~~~
* Following the removal of the NSRDB PSM3 API, the :func:`!pvlib.iotools.get_psm3`,
:func:`!pvlib.iotools.read_psm3`, and :func:`!pvlib.iotools.parse_psm3`
functions are removed. (:issue:`2581`, :pull:`2582`)


Deprecations
Expand Down
2 changes: 1 addition & 1 deletion docs/sphinx/source/whatsnew/v0.7.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ Enhancements
diode model fitting function '6parsolve' from NREL's System Advisor Model.
* Add :py:func:`~pvlib.ivtools.fit_sdm_desoto`, a method to fit the De Soto single
diode model to the typical specifications given in manufacturers datasheets.
* Add `timeout` to :py:func:`pvlib.iotools.get_psm3`.
* Add `timeout` to :py:func:`!pvlib.iotools.get_psm3`.
* Add :py:func:`~pvlib.scaling.wvm`, a port of the wavelet variability model for
computing reductions in variability due to a spatially distributed plant.
* Add :py:meth:`~pvlib.location.Location.from_epw`, a method to create a Location
Expand Down
4 changes: 2 additions & 2 deletions docs/sphinx/source/whatsnew/v0.7.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ v0.7.1 (January 17, 2020)

Enhancements
~~~~~~~~~~~~
* Added :py:func:`~pvlib.iotools.read_psm3` to read local NSRDB PSM3 files and
:py:func:`~pvlib.iotools.parse_psm3` to parse local NSRDB PSM3 file-like
* Added :py:func:`!pvlib.iotools.read_psm3` to read local NSRDB PSM3 files and
:py:func:`!pvlib.iotools.parse_psm3` to parse local NSRDB PSM3 file-like
objects. (:issue:`841`)
* Added `leap_day` parameter to `iotools.get_psm3` instead of hardcoding it as
False.
Expand Down
2 changes: 1 addition & 1 deletion docs/sphinx/source/whatsnew/v0.8.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ Breaking changes

* :py:func:`pvlib.iotools.read_tmy3` can now only read local data files because
the NREL RREDC server hosting the TMY3 dataset has been retired. For
fetching TMY data from NREL servers, :py:func:`pvlib.iotools.get_psm3` is
fetching TMY data from NREL servers, :py:func:`!pvlib.iotools.get_psm3` is
now recommended to retrieve newer PSM3 data over the older TMY3 data.
(:issue:`996`) (:pull:`1004`)

Expand Down
2 changes: 1 addition & 1 deletion docs/sphinx/source/whatsnew/v0.8.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Enhancements
10 minutes. (:pull:`1074`)
* Added :py:func:`pvlib.inverter.sandia_multi` and :py:func:`pvlib.inverter.pvwatts_multi`
for modeling inverters with multiple MPPTs (:issue:`457`, :pull:`1085`, :pull:`1106`)
* Added optional ``attributes`` parameter to :py:func:`pvlib.iotools.get_psm3`
* Added optional ``attributes`` parameter to :py:func:`!pvlib.iotools.get_psm3`
and added the option of fetching 5- and 15-minute PSM3 data. (:pull:`1086`)
* Added :py:func:`pvlib.irradiance.campbell_norman` for estimating DNI, DHI and GHI
from extraterrestrial irradiance. This function replaces ``pvlib.irradiance.liujordan``;
Expand Down
4 changes: 2 additions & 2 deletions docs/sphinx/source/whatsnew/v0.9.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ Breaking changes
:py:meth:`~pvlib.pvsystem.PVSystem.calcparams_cec` (:issue:`1118`, :pull:`1222`)

* Switched the order of the outputs from the PSM3 iotools, notably
:py:func:`~pvlib.iotools.get_psm3` and :py:func:`~pvlib.iotools.read_psm3`
:py:func:`!pvlib.iotools.get_psm3` and :py:func:`!pvlib.iotools.read_psm3`
(:issue:`1245`, :pull:`1268`)

* Changed the naming of the inputs ``startdate``/``enddate`` to ``start``/``end`` in
Expand Down Expand Up @@ -223,7 +223,7 @@ Documentation
and to make the procedural and OO results match exactly. (:issue:`1116`, :pull:`1144`)
* Add a gallery example showing how to appropriately use interval-averaged
weather data for modeling. (:pull:`1152`)
* Update documentation links in :py:func:`pvlib.iotools.get_psm3` (:pull:`1169`)
* Update documentation links in :py:func:`!pvlib.iotools.get_psm3` (:pull:`1169`)
* Use ``Mount`` classes in ``introtutorial`` and ``pvsystem`` docs pages (:pull:`1267`)
* Clarified how statistics are calculated for :py:func:`pvlib.clearsky.detect_clearsky`
(:issue:`1070`, :pull:`1243`)
Expand Down
4 changes: 2 additions & 2 deletions docs/sphinx/source/whatsnew/v0.9.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ Deprecations

Enhancements
~~~~~~~~~~~~
* Added ``map_variables`` option to :py:func:`pvlib.iotools.get_psm3` and
:py:func:`pvlib.iotools.read_psm3` (:pull:`1374`)
* Added ``map_variables`` option to :py:func:`!pvlib.iotools.get_psm3` and
:py:func:`!pvlib.iotools.read_psm3` (:pull:`1374`)
* Added ``pvlib.bifacial.infinite_sheds``, containing a model for irradiance
on front and back surfaces of bifacial arrays. (:pull:`717`)
* Added ``map_variables`` option to :func:`~pvlib.iotools.read_crn` (:pull:`1368`)
Expand Down
2 changes: 1 addition & 1 deletion docs/sphinx/source/whatsnew/v0.9.2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Bug fixes
timestamps as either 24:00 (which is the standard) as well as 00:00.
Previously 00:00 timestamps would incorrectly be moved one day forward.
(:pull:`1494`)
* :py:func:`pvlib.iotools.get_psm3` now raises a deprecation warning if
* :py:func:`!pvlib.iotools.get_psm3` now raises a deprecation warning if
the ``leap_day`` parameter is not specified in a single-year request.
Starting in pvlib 0.11.0 ``leap_day`` will default to True instead of False.
(:issue:`1481`, :pull:`1511`)
Expand Down
2 changes: 1 addition & 1 deletion docs/sphinx/source/whatsnew/v0.9.5.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ Bug fixes
incorrect loss results for systems that are near the ground. (:issue:`1636`,
:pull:`1653`)
* Fixed incorrect mapping of requested parameters names when using
:py:func:`pvlib.iotools.get_psm3`.
:py:func:`!pvlib.iotools.get_psm3`.
Also fixed the random reordering of the dataframe columns.
(:issue:`1629`, :issue:`1647`, :pull:`1648`)
* When using ``utc_time_range`` with :py:func:`pvlib.iotools.read_ecmwf_macc`,
Expand Down
3 changes: 0 additions & 3 deletions pvlib/iotools/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@
from pvlib.iotools.crn import read_crn # noqa: F401
from pvlib.iotools.solrad import read_solrad # noqa: F401
from pvlib.iotools.solrad import get_solrad # noqa: F401
from pvlib.iotools.psm3 import get_psm3 # noqa: F401
from pvlib.iotools.psm3 import read_psm3 # noqa: F401
from pvlib.iotools.psm3 import parse_psm3 # noqa: F401
from pvlib.iotools.psm4 import get_nsrdb_psm4_aggregated # noqa: F401
from pvlib.iotools.psm4 import get_nsrdb_psm4_tmy # noqa: F401
from pvlib.iotools.psm4 import get_nsrdb_psm4_conus # noqa: F401
Expand Down
Loading
Loading