Skip to content
Open
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
18 changes: 9 additions & 9 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -1,34 +1,34 @@
cff-version: 1.2.0
message: "If you use this software, please cite both the software and the paper from preferred-citation."
title: "PVDeg: Photovoltaic Degradation Tools"
abstract: "PVDeg is an open-source Python package for modeling photovoltaic (PV) degradation, developed at the National Renewable Energy Laboratory (NREL) and supported by the Durable Module Materials (DuraMAT) consortium. It provides modular functions, materials databases, and calculation workflows for simulating degradation mechanisms (e.g., LeTID, hydrolysis, UV exposure) using weather data from the National Solar Radiation Database (NSRDB) and the Photovoltaic Geographical Information System (PVGIS). By integrating Monte Carlo uncertainty propagation and geospatial processing, PVDeg enables field-relevant predictions and uncertainty quantification of module reliability and lifetime."
abstract: "PVDeg is an open-source Python package for modeling photovoltaic (PV) degradation, developed at the National Laboratory of the Rockies (NLR) and supported by the Durable Module Materials (DuraMAT) consortium. It provides modular functions, materials databases, and calculation workflows for simulating degradation mechanisms (e.g., LeTID, hydrolysis, UV exposure) using weather data from the National Solar Radiation Database (NSRDB) and the Photovoltaic Geographical Information System (PVGIS). By integrating Monte Carlo uncertainty propagation and geospatial processing, PVDeg enables field-relevant predictions and uncertainty quantification of module reliability and lifetime."
authors:
- family-names: Springer
given-names: Martin
affiliation: National Renewable Energy Laboratory
affiliation: National Laboratory of the Rockies
orcid: "https://orcid.org/0000-0001-6803-108X"
- family-names: Brown
given-names: Matthew
affiliation: National Renewable Energy Laboratory
affiliation: National Laboratory of the Rockies
orcid: "https://orcid.org/0000-0002-0988-3431"
- family-names: Ovaitt
given-names: Silvana
affiliation: National Renewable Energy Laboratory
affiliation: National Laboratory of the Rockies
orcid: "https://orcid.org/0000-0003-0180-728X"
- family-names: Ford
given-names: Tobin
affiliation: National Renewable Energy Laboratory
affiliation: National Laboratory of the Rockies
orcid: "https://orcid.org/0009-0000-7428-5625"
- family-names: Daxini
given-names: Rajiv
affiliation: National Renewable Energy Laboratory
affiliation: National Laboratory of the Rockies
orcid: "https://orcid.org/0000-0003-1993-9408"
- family-names: Holsapple
given-names: Derek
affiliation: National Renewable Energy Laboratory
affiliation: National Laboratory of the Rockies
- family-names: Kempe
given-names: Michael
affiliation: National Renewable Energy Laboratory
affiliation: National Laboratory of the Rockies
orcid: "https://orcid.org/0000-0003-3312-0482"
keywords:
- photovoltaic
Expand All @@ -43,7 +43,7 @@ keywords:
- PVGIS
- DuraMAT
license: BSD-3-Clause
repository-code: "https://github.com/NREL/PVDegradationTools"
repository-code: "https://github.com/NatLabRockies/PVDegradationTools"
url: "https://pvdegradationtools.readthedocs.io"
type: software
version: 0.7.1
Expand Down
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,8 +112,8 @@ git push origin feature/my-feature

- 📖 [Full Contributing Guide](https://pvdegradationtools.readthedocs.io/en/latest/user_guide/contributing.html) - Comprehensive documentation
- 📦 [Installation Guide](https://pvdegradationtools.readthedocs.io/en/latest/user_guide/installation.html) - Detailed setup instructions
- 🐛 [GitHub Issues](https://github.com/NREL/PVDegradationTools/issues) - Report bugs or request features
- 💬 [GitHub Discussions](https://github.com/NREL/PVDegradationTools/discussions) - Ask questions
- 🐛 [GitHub Issues](https://github.com/NatLabRockies/PVDegradationTools/issues) - Report bugs or request features
- 💬 [GitHub Discussions](https://github.com/NatLabRockies/PVDegradationTools/discussions) - Ask questions

## Contributor License Agreement

Expand Down
6 changes: 3 additions & 3 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@
Welcome to PVDeg!
==============================================================

PVDeg is an open-source Python package for modeling photovoltaic (PV) degradation, developed at the National Renewable Energy Laboratory (NREL) and supported by the Durable Module Materials (DuraMAT) consortium. It provides modular functions, materials databases, and calculation workflows for simulating degradation mechanisms (e.g., LeTID, hydrolysis, UV exposure) using weather data from the National Solar Radiation Database (NSRDB) and the Photovoltaic Geographical Information System (PVGIS). By integrating Monte Carlo uncertainty propagation and geospatial processing, PVDeg enables field-relevant predictions and uncertainty quantification of module reliability and lifetime.
PVDeg is an open-source Python package for modeling photovoltaic (PV) degradation, developed at the National Laboratory of the Rockies (NLR) and supported by the Durable Module Materials (DuraMAT) consortium. It provides modular functions, materials databases, and calculation workflows for simulating degradation mechanisms (e.g., LeTID, hydrolysis, UV exposure) using weather data from the National Solar Radiation Database (NSRDB) and the Photovoltaic Geographical Information System (PVGIS). By integrating Monte Carlo uncertainty propagation and geospatial processing, PVDeg enables field-relevant predictions and uncertainty quantification of module reliability and lifetime.

The source code for PVDeg is hosted on `github <https://github.com/NREL/pvdeg>`_. Please see the :ref:`installation` page for installation help.
The source code for PVDeg is hosted on `github <https://github.com/NatLabRockies/PVDegradationTools>`_. Please see the :ref:`installation` page for installation help.

See :ref:`tutorials` to learn how to use and experiment with various functionalities

Expand Down Expand Up @@ -52,7 +52,7 @@ If you use PVDeg in a published work, please cite both the software and the pape

**Software Citation:**

Click the "Cite this repository" button on the `GitHub repository <https://github.com/NREL/PVDegradationTools>`_, or visit `Zenodo <https://zenodo.org/records/8088578/latest>`_ for the DOI corresponding to your specific version. On the Zenodo page, use the "Cite as" section in the right sidebar to copy the citation in your preferred format (BibTeX, APA, etc.).
Click the "Cite this repository" button on the `GitHub repository <https://github.com/NatLabRockies/PVDegradationTools>`_, or visit `Zenodo <https://zenodo.org/records/8088578/latest>`_ for the DOI corresponding to your specific version. On the Zenodo page, use the "Cite as" section in the right sidebar to copy the citation in your preferred format (BibTeX, APA, etc.).

**JOSS Paper (In Review):**

Expand Down
10 changes: 5 additions & 5 deletions docs/source/tutorials/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ PVDeg provides comprehensive tutorials organized by topic. Choose your preferred
Jupyter Book (Recommended)
---------------------------

Interactive tutorials with live execution: `PVDeg Jupyter Book <https://nrel.github.io/PVDegradationTools/intro.html>`_
Interactive tutorials with live execution: `PVDeg Jupyter Book <https://NatLabRockies.github.io/PVDegradationTools/intro.html>`_

- Click the 🚀 rocket icon to launch notebooks in `Google Colab <https://colab.research.google.com/>`_
- **Development Preview:** See latest changes at `dev-preview <https://natlabrockies.github.io/PVDegradationTools/dev-preview/intro.html>`_
Expand All @@ -20,7 +20,7 @@ Binder
Run tutorials in your browser without installation:

.. image:: https://mybinder.org/badge_logo.svg
:target: https://mybinder.org/v2/gh/NREL/PVDegradationTools/main
:target: https://mybinder.org/v2/gh/NatLabRockies/PVDegradationTools/main
:alt: Binder

Local Installation
Expand All @@ -32,7 +32,7 @@ Local Installation

.. code-block:: bash

git clone https://github.com/NREL/PVDegradationTools.git
git clone https://github.com/NatLabRockies/PVDegradationTools.git
cd PVDegradationTools

3. **Start Jupyter:**
Expand All @@ -51,10 +51,10 @@ Local Installation
- ``10_workshop_demos/`` - Workshop demonstrations
- ``tools/`` - Standalone analysis tools

NREL HPC (Kestrel)
NLR HPC (Kestrel)
------------------

Running notebooks on Kestrel is documented on the `NREL HPC Documentation <https://natlabrockies.github.io/HPC/Documentation/Development/Jupyter/>`_.
Running notebooks on Kestrel is documented on the `NLR HPC Documentation <https://natlabrockies.github.io/HPC/Documentation/Development/Jupyter/>`_.

**Important:** Register a custom iPykernel before running notebooks on Kestrel:

Expand Down
2 changes: 1 addition & 1 deletion docs/source/user_guide/NSRDB_API_Key.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ NSRDB API Key

The National Solar Radiation Database (NSRDB) is a serially complete collection of satellite-derived measurements of solar radiation—global horizontal, direct normal, and diffuse horizontal irradiance—and meteorological data. These data have been collected at a sufficient number of locations and temporal and spatial scales to accurately represent regional solar radiation climates. The data are publicly available at no cost to the user. These API provide access to downloading the data.

Obtain your API key at https://developer.nrel.gov/signup/.
Obtain your API key at https://developer.nlr.gov/signup/.
14 changes: 7 additions & 7 deletions docs/source/user_guide/contributing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ We welcome contributions to PVDeg! Whether you're fixing bugs, adding features,
improving documentation, or contributing to our material property databases, your
help is valuable to the PV community.

For a quick overview, see `CONTRIBUTING.md <https://github.com/NREL/PVDegradationTools/blob/main/CONTRIBUTING.md>`_ on GitHub.
For a quick overview, see `CONTRIBUTING.md <https://github.com/NatLabRockies/PVDegradationTools/blob/main/CONTRIBUTING.md>`_ on GitHub.

This guide provides comprehensive details for contributors.

Expand All @@ -17,13 +17,13 @@ Easy Ways to Contribute

Here are ways to contribute, even if you're new to PVDeg, git, or Python:

* **Report bugs or request features** via `GitHub issues <https://github.com/NREL/PVDegradationTools/issues>`_
* **Report bugs or request features** via `GitHub issues <https://github.com/NatLabRockies/PVDegradationTools/issues>`_
* **Join discussions** on existing issues and pull requests
* **Improve documentation** - fix typos, clarify explanations, add examples
* **Enhance unit tests** - increase coverage or improve test quality
* **Create or improve tutorials** - demonstrate PVDeg in your area of expertise
* **Contribute to material databases** - add validated degradation parameters and properties
* **Share your work** - add your project to our `wiki <https://github.com/NREL/PVDegradationTools/wiki>`_
* **Share your work** - add your project to our `wiki <https://github.com/NatLabRockies/PVDegradationTools/wiki>`_
* **Spread the word** - tell colleagues about PVDeg

Getting Started
Expand Down Expand Up @@ -75,7 +75,7 @@ Development Environment Setup

python -m ipykernel install --user --name=pvdeg-dev

This is especially important when working on HPC systems like NREL's Kestrel.
This is especially important when working on HPC systems like NLR's Kestrel.

Pre-commit Hooks
~~~~~~~~~~~~~~~~
Expand Down Expand Up @@ -490,7 +490,7 @@ Pull Request Process
* Provide a clear description of changes
* Reference related issues (e.g., "Closes #123")
* Ensure all CI checks pass (tests, pre-commit hooks)
* Request review from maintainers or tag ``@NREL/pvdeg-maintainers``
* Request review from maintainers or tag ``@NLR/pvdeg-maintainers``

**Best practices**:

Expand Down Expand Up @@ -537,7 +537,7 @@ Contributor License Agreement
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

First-time contributors must sign the `Contributor License Agreement (CLA)
<https://github.com/NREL/PVDegradationTools/blob/main/cla-1.0.md>`_.
<https://github.com/NatLabRockies/PVDegradationTools/blob/main/cla-1.0.md>`_.
This protects both you and the project.

When you submit your first pull request, a bot will comment with instructions
Expand Down Expand Up @@ -573,7 +573,7 @@ Getting Help

If you have questions or need help:

* **Ask on GitHub Discussions**: `<https://github.com/NREL/PVDegradationTools/discussions>`_
* **Ask on GitHub Discussions**: `<https://github.com/NatLabRockies/PVDegradationTools/discussions>`_
* **Open an issue**: For bugs or feature requests
* **Check the documentation**: `<https://pvdegradationtools.readthedocs.io/>`_
* **Review existing PRs**: See how others approached similar problems
Expand Down
6 changes: 3 additions & 3 deletions docs/source/user_guide/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Installation

PVDeg releases may be installed using pip. Compatible with Python 3.10 and above.

For a quick start, see the **Installation** section in our `README.md <https://github.com/NREL/PVDegradationTools/blob/main/README.md#installation>`_.
For a quick start, see the **Installation** section in our `README.md <https://github.com/NatLabRockies/PVDegradationTools/blob/main/README.md#installation>`_.

Base Install
------------
Expand All @@ -20,7 +20,7 @@ This installs PVDeg with all required dependencies for basic degradation modelin

* Core scientific computing libraries (numpy, pandas, scipy)
* PV modeling with pvlib
* Weather data access (NREL-rex)
* Weather data access (NLR-rex)
* Geospatial tools (cartopy, geopy)
* Jupyter notebook support (jupyterlab, notebook)
* Pre-commit hooks for development
Expand Down Expand Up @@ -103,7 +103,7 @@ While PVDeg is installed via pip, you can use conda to manage your Python enviro
python -m ipykernel install --user --name=pvdeg

This allows you to select the ``pvdeg`` kernel when running Jupyter notebooks,
especially important on HPC systems like NREL's Kestrel.
especially important on HPC systems like NLR's Kestrel.

Developer Installation
----------------------
Expand Down
8 changes: 4 additions & 4 deletions docs/source/user_guide/meteorological-data.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ The methodology for these datasets varies but both are gridded geospatial datase
.. _NSRDB:
NSRDB
------
The NSRDB is produced by NREL and combines multiple datasets but we are most concerned with `Physical Solar Model 3 (PSM3) <https://developer.nrel.gov/docs/solar/nsrdb/psm3-2-2-download/>`_. This data was generated using satellite data from multiple channels to derive cloud
and aerosol properties, then fed into a radiative transfer model. Learn more about the NSRDB `here <https://nsrdb.nrel.gov/about/what-is-the-nsrdb#:~:text=The%20PSM%20is%20a%20two-step%20physical%20modeling%20process%2C,%28Xie%20et%20al.%2C%202016%29%2C%20in%20the%20subsequent%20step.>`_.
The NSRDB is produced by NLR and combines multiple datasets but we are most concerned with `Physical Solar Model 3 (PSM3) <https://developer.nlr.gov/docs/solar/nsrdb/psm3-2-2-download/>`_. This data was generated using satellite data from multiple channels to derive cloud
and aerosol properties, then fed into a radiative transfer model. Learn more about the NSRDB `here <https://nsrdb.nlr.gov/about/what-is-the-nsrdb#:~:text=The%20PSM%20is%20a%20two-step%20physical%20modeling%20process%2C,%28Xie%20et%20al.%2C%202016%29%2C%20in%20the%20subsequent%20step.>`_.

The NSRDB is free to use but requires an api-key and email. See :ref:`NSRDB_API_Key` for more information.
For our purposes, the api is limited to 1000 requests per day, although you can request a batch download via email with a singificantly higher rate limit (not recommended for PVDeg).
Expand All @@ -23,14 +23,14 @@ Flowchart showing the dataflow from satellite to solar radiation measurement.
.. image:: meteorological-data-details/data_flow_chart.png
:alt: dataflow from satellite to solar radiation measurement, image missing

`<https://nsrdb.nrel.gov/about/what-is-the-nsrdb>`_
`<https://nsrdb.nlr.gov/about/what-is-the-nsrdb>`_

NSRDB data are seperated by satellite/model source. Each dataset is shown below, much of the PVDeg project uses the *Americas* data.

.. image:: meteorological-data-details/nsrdb_global_coverage.jpg
:alt: NSRDB data sources, image missing

`<https://nsrdb.nrel.gov/about/what-is-the-nsrdb>`_
`<https://nsrdb.nlr.gov/about/what-is-the-nsrdb>`_


.. _PVGIS:
Expand Down
4 changes: 2 additions & 2 deletions docs/source/user_guide/package_overview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ photovoltaics and accelerated testing.
It currently offers functions to calculate test-chamber irradiance settings,
the humidity of PV materials, the spectral degradation in backsheets, and more.
Functionality has been simplified so you can use .psm3 weather files retrieved
from NREL's `National Solar Radiation Database (NSRDB) <https://nsrdb.nrel.gov/>`_.
from NREL's `National Solar Radiation Database (NSRDB) <https://nsrdb.nlr.gov/>`_.

In some cases, such as calculating the relative backsheet spectral degradation,
you will need spectraly resolved irradiance. This can be field data or data
produced via simulation (for example: results from `bifacial_radiance
<https://github.com/NREL/bifacial_radiance>`_)
<https://github.com/NatLabRockies/bifacial_radiance>`_)

**Package Functions:**

Expand Down
2 changes: 1 addition & 1 deletion docs/source/user_guide/pysam.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
PySAM Implementation
====================

PVDeg provides a convient wrapper for ``NREL-PySAM`` which is a Python wrapper for `NREL's System Advisor Model (SAM) <https://sam.nrel.gov/>`_. PySAM has a steep learning curve so we seek to provide a simple implementation that allows users to run geospatial analyses with SAM.
PVDeg provides a convient wrapper for ``NREL-PySAM`` which is a Python wrapper for `NLR's System Advisor Model (SAM) <https://sam.nlr.gov/>`_. PySAM has a steep learning curve so we seek to provide a simple implementation that allows users to run geospatial analyses with SAM.

This work was produced to support `Innovative Solar Practices Integrated with Rural Economies and Ecosystems (InSPIRE) <https://openei.org/wiki/InSPIRE>`_.

Expand Down
2 changes: 1 addition & 1 deletion docs/source/whatsnew/releases/v0.7.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Enhancements
``03_monte_carlo/02_standoff.ipynb`` (NYC).
- Add jupytext configuration and Python script versions for all notebooks with
pre-commit hook synchronization for version control.
- Update Eagle HPC references to Kestrel (NREL's current HPC system).
- Update Eagle HPC references to Kestrel (NLR's current HPC system).
- Update all configuration files (``_toc.yml``, ``_config.yml``, ``myst.yml``),
GitHub Actions workflows (``nbval.yaml``, ``testbook.yaml``,
``deploy-books.yml``), and CI/CD pipelines for new structure.
Expand Down
21 changes: 21 additions & 0 deletions docs/source/whatsnew/releases/v0.7.2.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
v0.7.2 (2026-03-10)
===================


Documentation & Bug Fixes
-------------------------
- Comprehensive update of "NREL" and "National Renewable Laboratory"
with the new name National Laboratory of the Rockies (NatLabRockies or NLR) on
all files, including repositories, dependencies (i.e. NLR-rex), HPC settings,
tutorials, emails, and function names.
- Please note NREL-pySAM has not migrated name and will not do so until ~April 2026.
updated as required. This includes an update to the CLA and its checksum (:pull:`XXX`).



Contributors
------------
- Silvana Ovaitt (:ghuser:`shirubana`)
- Rajiv Daxini (:ghuser:`rdaxini`)
- Martin Springer (:ghuser:`martin-springer`)

4 changes: 2 additions & 2 deletions pvdeg/geospatialscenario.py
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ def addLocation(
weather_arg = {
"satellite": satellite,
"names": year,
"NREL_HPC": True,
"NLR_HPC": True,
"attributes": nsrdb_attributes,
}

Expand Down Expand Up @@ -794,7 +794,7 @@ def _get_geospatial_data(year: int):
weather_arg = {
"satellite": "Americas",
"names": year,
"NREL_HPC": True,
"NLR_HPC": True,
# 'attributes': ['air_temperature', 'wind_speed', 'dhi', 'ghi', 'dni',
# 'relative_humidity']}
"attributes": [], # does having do atributes break anything, should we just
Expand Down
2 changes: 1 addition & 1 deletion pvdeg/montecarlo.py
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ def generateCorrelatedSamples(

# monte carlo function
# model after -
# https://github.com/NREL/PVDegradationTools/blob/main/pvdeg_tutorials/tutorials/LETID%20-%20Outdoor%20Geospatial%20Demo.ipynb # noqa
# https://github.com/NatLabRockies/PVDegradationTools/blob/main/pvdeg_tutorials/tutorials/LETID%20-%20Outdoor%20Geospatial%20Demo.ipynb # noqa


def simulate(
Expand Down
Loading
Loading