RdTools Change Log¶
v2.0.4 (December 4, 2020)¶
Bug Fixes¶
- Fix bug related to leading NaN values with
energy_from_power()
. This fixed a small normalization error indegradation_and_soiling_example.ipynb
and slightly changed the clear-sky degradation results (GH #244, GH #245)
Contributors¶
- Kevin Anderson (@kanderso-nrel)
v2.0.3 (November 20, 2020)¶
Requirements¶
- Change to
docs/notebook_requirements.txt
: notebook version from 5.7.8 to 6.1.5 and terminado version from 0.8.1 to 0.8.3 (GH #239)
Contributors¶
- Mike Deceglie (@mdeceglie)
- @dependabot
v2.0.2 (November 17, 2020)¶
Examples¶
- degradation_and_soiling_example.ipynb modified to not use
max_timedelta
parameter ininterpolate()
andenergy_from_power()
in Step 0 (GH #237)
Contributors¶
- Mike Deceglie (@mdeceglie)
v2.0.1 (October 30, 2020)¶
Deprecations¶
- The deprecation of
pvwatts_dc_power()
andnormalize_with_pvwatts()
has been reversed. (GH #227)
Contributors¶
- Mike Deceglie (@mdeceglie)
- Kevin Anderson (@kanderso-nrel)
v2.0.0 (October 20, 2020)¶
Version 2.0.0 adds experimental soiling and availability modules, plotting capability, and includes updates to normalization work flow. This major release introduces some breaking changes to the API. Details below.
API Changes¶
- The calculations internal to
normalize_with_pvwatts()
andnormalize_with_sapm()
have changed. Generally, when working with raw power data it should be converted to right-labeled energy withenergy_from_power()
before being used with these normalization functions (GH #105, GH #108). - Remove
low_power_cutoff
parameter inclip_filter()
(GH #84). - Many kwargs have changed name (but not input order) to bring nomenclature into
closer alignment with the DuraMAT pv-terms project: (GH #185)
aggregation_insol()
first kwarg is nowenergy_normalized
.degradation_year_on_year()
,degradation_ols()
anddegradation_classical_decomposition()
first kwarg is nowenergy_normalized
.normalized_filter()
input kwargs are nowenergy_normalized
,energy_normalized_low
andenergy_normalized_high
.poa_filter()
input kwargs are nowpoa_global
,poa_global_low
andpoa_global_high
.tcell_filter()
input kwargs are nowtemperature_cell
,temperature_cell_low
andtemperature_cell_high
.clip_filter()
input kwargs are nowpower_ac
andquantile
.csi_filter()
first two kwargs are nowpoa_global_measured
,poa_global_clearsky
.normalize_with_pvwatts()
pvwatts_kws dictionary keys have been renamed.pvwatts_dc_power()
input kwargs are nowpoa_global
,power_dc_rated
,temperature_cell
,poa_global_ref
,temperature_cell_ref
,gamma_pdc
.irradiance_rescale()
second kwarg is nowirrad_sim
Deprecations¶
- The functions
pvwatts_dc_power()
,sapm_dc_power()
,normalize_with_pvwatts()
, andnormalize_with_sapm()
have been deprecated in favor ofnormalize_with_expected_power()
. (GH #215) delta_index()
andcheck_series_frequency()
(GH #222)
Enhancements¶
- Add new
soiling
module to implement the stochastic rate and recovery method:- Create new class
SRRAnalysis
and helper functionsoiling_srr()
(GH #112, GH #168, GH #169, GH #176, GH #208, GH #213) - Create functions
monthly_soiling_rates()
andannual_soiling_ratios()
(GH #193, GH #207)
- Create new class
- Create new module
availability
with the classAvailabilityAnalysis
for estimating timeseries system availability (GH #131) - Add new function
normalize_with_expected_power()
(GH #173). - Add new functions
energy_from_power()
andinterpolate()
(GH #105, GH #108, GH #182, GH #212). - Add new function
normalized_filter()
(GH #139) - Add new
plotting
module for generating standard plots (GH #138, GH #131) - Add parameter
convergence_threshold
toirradiance_rescale()
(GH #152).
Bug fixes¶
- Allow
max_iterations=0
inirradiance_rescale()
(GH #152).
Testing¶
Documentation¶
Requirements¶
- Drop support for Python 2.7, minimum supported version is now 3.6 (GH #135).
- Increase minimum pvlib version to 0.7.0 (GH #170)
- Update requirements.txt and notebook_requirements.txt to avoid conflicting specifications. Taken together, they represent the complete environment for the notebook example (GH #164).
- Add minimum matplotlib requirement of 3.0.0 (released September 18, 2018) (GH #197)
- Increase minimum numpy version from 1.12 (released January 15, 2017) to 1.15 (released July 23, 2018) (GH #197)
Example Updates¶
- Seed
numpy.random
to ensure repeatable results (GH #164). - Use
normalized_filter()
instead of manually filtering the normalized energy timeseries. Also updated the associated mask variable names (GH #139). - Add soiling section to the original example notebook.
- Add a new example notebook that analyzes data from a PV system located at NREL's South Table Mountain campus (PVDAQ system #4) (GH #171).
- Explicitly register pandas datetime converters which were deprecated.
- Add new
system_availability_example.ipynb
notebook (GH #131)
Contributors¶
- Mike Deceglie (@mdeceglie)
- Kevin Anderson (@kanderso-nrel)
- Chris Deline (@cdeline)
- Will Vining (@wfvining)
v1.2.3 (April 12, 2020)¶
- Updates dependencies
- Versioneer bug fix
- Licence update
Contributors¶
- Mike Deceglie (@mdeceglie)
v1.2.2 (October 12, 2018)¶
Patch that adds author email to enable pypi deployment
Contributors¶
- Mike Deceglie (@mdeceglie)
v1.2.1 (October 12, 2018)¶
This update includes automated testing and deployment to support development along with some bug fixes to the library itself, a documented environment for the example notebook, and new example results to reflect changes in the example dataset. It addresses GH #49, GH #76, GH #78, GH #79, GH #80, GH #85, GH #86, and GH #92.
Contributors¶
- Mike Deceglie (@mdeceglie)
- Adam Shinn (@abshinn)
- Chris Deline (@cdeline)
- nb137 (@nb137)
v1.2.0 (March 30, 2018)¶
This incorporates changes including:
- Enables users to control confidence intervals reported in degradation calculations (GH #59)
- Adds python 3 support (GH #56 and GH #67)
- Fixes bugs (GH #61 GH #57)
- Improvements/typo fixes to docstrings
- Fixes error in check for two years of data in degradation_year_on_year
- Improves the calculations underlying irradiance_rescale
Contributors¶
- Mike Deceglie (@mdeceglie)
- Ambarish Nag (@ambarishnag)
- Gregory Kimball (@GregoryKimball)
- Chris Deline (@cdeline)
- Mark Mikofski (@mikofski)
v1.1.3 (December 6, 2017)¶
This patch includes the following changes:
- Update the notebook for improved plotting with Pandas v.0.21.0
- Fix installation bug related to package data
Contributors¶
- Mike Deceglie (@mdeceglie)
- Chris Deline (@cdeline)
v1.1.2 (November 6, 2017)¶
This patch includes the following changes:
- Fix bugs in installation
- Update requirements
- Notebook plots made compatible with pandas v.0.21.0
Contributors¶
- Mike Deceglie (@mdeceglie)
v1.1.1 (November 1, 2017)¶
This patch:
- Improves documentation
- Fixes installation requirements
Contributors¶
- Mike Deceglie (@mdeceglie)
- Adam Shinn (@abshinn)
- Chris Deline (@cdeline)
v1.1.0 (September 30, 2017)¶
This update includes the addition of filters, functions to support a clear-sky workflow, and updates to the example notebook.
Contributors¶
- Mike Deceglie (@mdeceglie)
- Adam Shinn (@abshinn)
- Ambarish Nag (@ambarishnag)
- Gregory Kimball (@GregoryKimball)
- Chris Deline (@cdeline)
- Jiyang Yan (@yjy1663)