From b717a059baf7298db8fceb5b2be3fa7124ca4ba7 Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Thu, 19 Oct 2017 14:14:16 -0600 Subject: [PATCH 01/14] screenshot images for Readme file --- screenshots/Clearsky_result.png | Bin 0 -> 61158 bytes screenshots/Workflow1.png | Bin 0 -> 57400 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 screenshots/Clearsky_result.png create mode 100644 screenshots/Workflow1.png diff --git a/screenshots/Clearsky_result.png b/screenshots/Clearsky_result.png new file mode 100644 index 0000000000000000000000000000000000000000..1e024f9c9b8e30c9e4ddfe9846473a6b1ee5b491 GIT binary patch literal 61158 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 literal 0 HcmV?d00001 From cc9683c587286c8e6f7747f97d3feefdaef935f0 Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Thu, 19 Oct 2017 14:27:10 -0600 Subject: [PATCH 02/14] README.md workflow --- README.md | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 44b4e23d..2b86ce8c 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,21 @@ -# RdTools +#About RdTools + +RdTools is a set of Python tools for analysis of photovoltaic data. +In particular, high frequency (hourly or greater) PV production data is evaluated +over several years to obtain rates of performance degradation over time. + +## Workflow + +The degradation calculations consist of several steps illustrated here: +0. Import and preliminary calculations +1. Normalize data using a performance metric +2. Filter data that creates bias +3. Aggregate data +4. Analyze aggregated data to estimate the degradation rate + +RdTools Workflow -Degradation Tools -Python tools for photovoltaic degradation analysis. ## Install using pip From 532d7200101ddf5230f6cd30053e704f165aa849 Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Thu, 19 Oct 2017 14:51:21 -0600 Subject: [PATCH 03/14] README.md update: results, citing RdTools --- README.md | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 2b86ce8c..8e2c265f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -#About RdTools +# About RdTools RdTools is a set of Python tools for analysis of photovoltaic data. In particular, high frequency (hourly or greater) PV production data is evaluated @@ -6,15 +6,24 @@ over several years to obtain rates of performance degradation over time. ## Workflow -The degradation calculations consist of several steps illustrated here: 0. Import and preliminary calculations 1. Normalize data using a performance metric 2. Filter data that creates bias 3. Aggregate data 4. Analyze aggregated data to estimate the degradation rate -RdTools Workflow +RdTools Workflow + +## Degradation Results + +RdTools output shows filtered historical data along with a linear trend line. +However, the most accurate estimate of degradation over the analysis period in question +is the Year-on-year (YOY) distribution, which is a normal distribution, the central tendancy +of which is the most representative degradation rate. Distribution width provides information +about the accuracy of the analysis. + +RdTools Result ## Install using pip @@ -31,12 +40,21 @@ import rdtools For usage examples, look at the notebooks in rdtools/docs. +## Citing RdTools + +The underlying workflow of RdTools has been published in several places. If you use RdTools in a published work, please cite the most appropriate of: + + - D. Jordan, C. Deline, S. Kurtz, G. Kimball, M. Anderson, "Robust PV Degradation Methodology and Application", + IEEE Journal of Photovoltaics, 2017 + - D. C. Jordan, M. G. Deceglie, S. R. Kurtz, “PV degradation methodology comparison — A basis for a standard”, in 43rd IEEE Photovoltaic Specialists Conference, Portland, OR, USA, 2016, DOI: 10.1109/PVSC.2016.7749593. + - E. Hasselbrink, M. Anderson, Z. Defreitas, M. Mikofski, Y.-C.Shen, S. Caldwell, A. Terao, D. Kavulak, Z. Campeau, D. DeGraaffE. Hasselbrink, “Validation of the PVLife model using 3 million module-years of live site data”, 39th IEEE Photovoltaic Specialists ConferenceIEEE PVSC, Tampa, FL, USA, 2013, p. 7 – 13, DOI: 10.1109/PVSC.2013.6744087. + ## Unit tests To run tests from the main directory: ``` $ tests/run_tests ``` -## Wiki +## Further Instructions and Updates Check out the [wiki](https://github.com/NREL/rdtools/wiki) for information on development goals and framework. From 9f315d33a2ab1c647623eecb5b452d2b7b87dade Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Thu, 19 Oct 2017 15:14:31 -0600 Subject: [PATCH 04/14] README.md update: functions and usage, link to .ipnyb notebook --- README.md | 36 ++++++++++++++++++++++++++++++++---- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 8e2c265f..f229cca0 100644 --- a/README.md +++ b/README.md @@ -26,10 +26,20 @@ about the accuracy of the analysis. RdTools Result -## Install using pip +Two methods are available for system performance ratio calculation. The sensor-based +approach assumes that site irradiance and temperature sensors are calibrated and in good repair. +Since this is not always the case, a 'Clear-Sky' workflow is provided that is based on +modeled temperature and irradiance. Note that site irradiance data is still required to identify +clear-sky conditions to be analyzed. In many cases, the 'Clear-Sky' analysis can identify conditions +of instrument errors, such as in the above analysis. + + +## Install RdTools using pip + +RdTools can be installed into Python from the command line. 1. Clone or download the rdtools repository. -2. Navigate to repository: `cd rdtools` +2. Navigate to the repository: `cd rdtools` 3. Install via pip: `pip install .` ## Usage @@ -38,7 +48,25 @@ about the accuracy of the analysis. import rdtools ``` -For usage examples, look at the notebooks in rdtools/docs. +The most frequently used functions are: + +`normalized, insolation = normalize_with_pvwatts(energy, pvwatts_kws)` + Inputs: Pandas time series of raw energy, PVwatts dict for system analysis (poa_global, P_ref, T_cell, G_ref, T_ref, gamma_pdc) + Outputs: Pandas time series of normalized energy and POA insolation + +`poa_filter(poa); tcell_filter(Tcell); clip_filter(power); csi_filter(insolation, clearsky_insolation)` + Inputs: Pandas time series of raw data to be filtered. + Output: Boolean mask where `True` indicates acceptable data + +`aggregation_insol(normalized, insolation, frequency='D')` + Inputs: Normalized energy and insolation + Output: Aggregated data, weighted by the insolation. + +`degradataion_year_on_year(aggregated)` + Inputs: Aggregated, normalized, filtered time series data + Outputs: Tuple: `yoy_rd`: Degradation rate `yoy_ci`: Confidence interval `yoy_info`: associated analysis data + +For additional usage examples, look at the notebooks in [rdtools/docs](./docs/degradation_example.ipynb). ## Citing RdTools @@ -47,7 +75,7 @@ The underlying workflow of RdTools has been published in several places. If you - D. Jordan, C. Deline, S. Kurtz, G. Kimball, M. Anderson, "Robust PV Degradation Methodology and Application", IEEE Journal of Photovoltaics, 2017 - D. C. Jordan, M. G. Deceglie, S. R. Kurtz, “PV degradation methodology comparison — A basis for a standard”, in 43rd IEEE Photovoltaic Specialists Conference, Portland, OR, USA, 2016, DOI: 10.1109/PVSC.2016.7749593. - - E. Hasselbrink, M. Anderson, Z. Defreitas, M. Mikofski, Y.-C.Shen, S. Caldwell, A. Terao, D. Kavulak, Z. Campeau, D. DeGraaffE. Hasselbrink, “Validation of the PVLife model using 3 million module-years of live site data”, 39th IEEE Photovoltaic Specialists ConferenceIEEE PVSC, Tampa, FL, USA, 2013, p. 7 – 13, DOI: 10.1109/PVSC.2013.6744087. + - E. Hasselbrink, M. Anderson, Z. Defreitas, M. Mikofski, Y.-C.Shen, S. Caldwell, A. Terao, D. Kavulak, Z. Campeau, D. DeGraaff, “Validation of the PVLife model using 3 million module-years of live site data”, 39th IEEE Photovoltaic Specialists Conference, Tampa, FL, USA, 2013, p. 7 – 13, DOI: 10.1109/PVSC.2013.6744087. ## Unit tests From bf5bab5a65fb99c93beb5bf3c30d362c97e32d63 Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Thu, 19 Oct 2017 15:17:23 -0600 Subject: [PATCH 05/14] README.md update: formatting --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f229cca0..be49f23b 100644 --- a/README.md +++ b/README.md @@ -51,18 +51,22 @@ import rdtools The most frequently used functions are: `normalized, insolation = normalize_with_pvwatts(energy, pvwatts_kws)` + Inputs: Pandas time series of raw energy, PVwatts dict for system analysis (poa_global, P_ref, T_cell, G_ref, T_ref, gamma_pdc) Outputs: Pandas time series of normalized energy and POA insolation `poa_filter(poa); tcell_filter(Tcell); clip_filter(power); csi_filter(insolation, clearsky_insolation)` + Inputs: Pandas time series of raw data to be filtered. Output: Boolean mask where `True` indicates acceptable data `aggregation_insol(normalized, insolation, frequency='D')` + Inputs: Normalized energy and insolation Output: Aggregated data, weighted by the insolation. `degradataion_year_on_year(aggregated)` + Inputs: Aggregated, normalized, filtered time series data Outputs: Tuple: `yoy_rd`: Degradation rate `yoy_ci`: Confidence interval `yoy_info`: associated analysis data @@ -85,4 +89,4 @@ $ tests/run_tests ``` ## Further Instructions and Updates -Check out the [wiki](https://github.com/NREL/rdtools/wiki) for information on development goals and framework. +Check out the [wiki](https://github.com/NREL/rdtools/wiki) for additional usage documentation, and for information on development goals and framework. From 8c19afa021fc6f26445aae41de86cb823af7120a Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Thu, 19 Oct 2017 15:25:28 -0600 Subject: [PATCH 06/14] README.md: formatting and license --- README.md | 48 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 40 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index be49f23b..76430846 100644 --- a/README.md +++ b/README.md @@ -50,25 +50,33 @@ import rdtools The most frequently used functions are: -`normalized, insolation = normalize_with_pvwatts(energy, pvwatts_kws)` - +```Python +normalized, insolation = normalize_with_pvwatts(energy, pvwatts_kws) + ''' Inputs: Pandas time series of raw energy, PVwatts dict for system analysis (poa_global, P_ref, T_cell, G_ref, T_ref, gamma_pdc) Outputs: Pandas time series of normalized energy and POA insolation + '''``` -`poa_filter(poa); tcell_filter(Tcell); clip_filter(power); csi_filter(insolation, clearsky_insolation)` - +```Python +poa_filter(poa); tcell_filter(Tcell); clip_filter(power); csi_filter(insolation, clearsky_insolation) + ''' Inputs: Pandas time series of raw data to be filtered. Output: Boolean mask where `True` indicates acceptable data + '''``` -`aggregation_insol(normalized, insolation, frequency='D')` - +```Python +aggregation_insol(normalized, insolation, frequency='D') + ''' Inputs: Normalized energy and insolation Output: Aggregated data, weighted by the insolation. + '''``` -`degradataion_year_on_year(aggregated)` - +````Python +degradataion_year_on_year(aggregated) + ''' Inputs: Aggregated, normalized, filtered time series data Outputs: Tuple: `yoy_rd`: Degradation rate `yoy_ci`: Confidence interval `yoy_info`: associated analysis data + '''``` For additional usage examples, look at the notebooks in [rdtools/docs](./docs/degradation_example.ipynb). @@ -90,3 +98,27 @@ $ tests/run_tests ## Further Instructions and Updates Check out the [wiki](https://github.com/NREL/rdtools/wiki) for additional usage documentation, and for information on development goals and framework. + +License +======== +MIT License + +Copyright (c) 2016 kwhanalytics and NREL + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file From 77472afb3cb51b82b2ff4734e1308bb717aed37d Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Thu, 19 Oct 2017 15:27:56 -0600 Subject: [PATCH 07/14] README.md : remove license, code block formatting --- README.md | 44 ++++++++++++++------------------------------ 1 file changed, 14 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index 76430846..c192d556 100644 --- a/README.md +++ b/README.md @@ -53,30 +53,37 @@ The most frequently used functions are: ```Python normalized, insolation = normalize_with_pvwatts(energy, pvwatts_kws) ''' - Inputs: Pandas time series of raw energy, PVwatts dict for system analysis (poa_global, P_ref, T_cell, G_ref, T_ref, gamma_pdc) + Inputs: Pandas time series of raw energy, PVwatts dict for system analysis + (poa_global, P_ref, T_cell, G_ref, T_ref, gamma_pdc) Outputs: Pandas time series of normalized energy and POA insolation - '''``` + ''' +``` ```Python -poa_filter(poa); tcell_filter(Tcell); clip_filter(power); csi_filter(insolation, clearsky_insolation) +poa_filter(poa); tcell_filter(Tcell); clip_filter(power); +csi_filter(insolation, clearsky_insolation) ''' Inputs: Pandas time series of raw data to be filtered. Output: Boolean mask where `True` indicates acceptable data - '''``` + ''' +``` ```Python aggregation_insol(normalized, insolation, frequency='D') ''' Inputs: Normalized energy and insolation Output: Aggregated data, weighted by the insolation. - '''``` + ''' +``` ````Python degradataion_year_on_year(aggregated) ''' Inputs: Aggregated, normalized, filtered time series data - Outputs: Tuple: `yoy_rd`: Degradation rate `yoy_ci`: Confidence interval `yoy_info`: associated analysis data - '''``` + Outputs: Tuple: `yoy_rd`: Degradation rate + `yoy_ci`: Confidence interval `yoy_info`: associated analysis data + ''' +``` For additional usage examples, look at the notebooks in [rdtools/docs](./docs/degradation_example.ipynb). @@ -99,26 +106,3 @@ $ tests/run_tests Check out the [wiki](https://github.com/NREL/rdtools/wiki) for additional usage documentation, and for information on development goals and framework. -License -======== -MIT License - -Copyright (c) 2016 kwhanalytics and NREL - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. \ No newline at end of file From ba2ca74732ae74ba5ac3fdc05715a15a0e517bb2 Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Thu, 19 Oct 2017 15:28:55 -0600 Subject: [PATCH 08/14] README.md update --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c192d556..05a119f6 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ aggregation_insol(normalized, insolation, frequency='D') ''' ``` -````Python +```Python degradataion_year_on_year(aggregated) ''' Inputs: Aggregated, normalized, filtered time series data From 8a9fdb36a05c1f464cd9dbfb47e16df026fe8f2e Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Mon, 23 Oct 2017 08:33:53 -0600 Subject: [PATCH 09/14] README.md updated - Dirk and Mike's comments --- README.md | 44 +++++++++++++++++++++++++++++--------------- 1 file changed, 29 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 05a119f6..70a508e1 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,13 @@ # About RdTools RdTools is a set of Python tools for analysis of photovoltaic data. -In particular, high frequency (hourly or greater) PV production data is evaluated -over several years to obtain rates of performance degradation over time. +In particular, PV production data is evaluated over several years +to obtain rates of performance degradation over time. Rdtools can +handle both high frequency (hourly or better) or low frequency (daily, weekly, etc.) +datasets. Best results are obtained with higher frequency data. + +Full examples are worked out in the example notebooks in [rdtools/docs](./docs/degradation_example.ipynb). + ## Workflow @@ -26,12 +31,12 @@ about the accuracy of the analysis. RdTools Result -Two methods are available for system performance ratio calculation. The sensor-based -approach assumes that site irradiance and temperature sensors are calibrated and in good repair. -Since this is not always the case, a 'Clear-Sky' workflow is provided that is based on +Two workflows are available for system performance ratio calculation, and illustrated in an example notebook. +The sensor-based approach assumes that site irradiance and temperature sensors are calibrated and in good repair. +Since this is not always the case, a 'clear-sky' workflow is provided that is based on modeled temperature and irradiance. Note that site irradiance data is still required to identify -clear-sky conditions to be analyzed. In many cases, the 'Clear-Sky' analysis can identify conditions -of instrument errors, such as in the above analysis. +clear-sky conditions to be analyzed. In many cases, the 'clear-sky' analysis can identify conditions +of instrument errors or irradiance sensor drift, such as in the above analysis. ## Install RdTools using pip @@ -44,6 +49,11 @@ RdTools can be installed into Python from the command line. ## Usage + +Full workflow examples are found in the notebooks in [rdtools/docs](./docs/degradation_example.ipynb). + +The following functions are used for degradation analysis: + ``` import rdtools ``` @@ -51,7 +61,7 @@ import rdtools The most frequently used functions are: ```Python -normalized, insolation = normalize_with_pvwatts(energy, pvwatts_kws) +normalized, insolation = normalization.normalize_with_pvwatts(energy, pvwatts_kws) ''' Inputs: Pandas time series of raw energy, PVwatts dict for system analysis (poa_global, P_ref, T_cell, G_ref, T_ref, gamma_pdc) @@ -60,8 +70,8 @@ normalized, insolation = normalize_with_pvwatts(energy, pvwatts_kws) ``` ```Python -poa_filter(poa); tcell_filter(Tcell); clip_filter(power); -csi_filter(insolation, clearsky_insolation) +filtering.poa_filter(poa); filtering.tcell_filter(Tcell); filtering.clip_filter(power); +filtering.csi_filter(insolation, clearsky_insolation) ''' Inputs: Pandas time series of raw data to be filtered. Output: Boolean mask where `True` indicates acceptable data @@ -69,7 +79,7 @@ csi_filter(insolation, clearsky_insolation) ``` ```Python -aggregation_insol(normalized, insolation, frequency='D') +aggregation.aggregation_insol(normalized, insolation, frequency='D') ''' Inputs: Normalized energy and insolation Output: Aggregated data, weighted by the insolation. @@ -77,7 +87,7 @@ aggregation_insol(normalized, insolation, frequency='D') ``` ```Python -degradataion_year_on_year(aggregated) +degradation.degradataion_year_on_year(aggregated) ''' Inputs: Aggregated, normalized, filtered time series data Outputs: Tuple: `yoy_rd`: Degradation rate @@ -85,15 +95,19 @@ degradataion_year_on_year(aggregated) ''' ``` -For additional usage examples, look at the notebooks in [rdtools/docs](./docs/degradation_example.ipynb). - ## Citing RdTools -The underlying workflow of RdTools has been published in several places. If you use RdTools in a published work, please cite the most appropriate of: +The underlying workflow of RdTools has been published in several places. If you use RdTools in a published work, please cite the following: - D. Jordan, C. Deline, S. Kurtz, G. Kimball, M. Anderson, "Robust PV Degradation Methodology and Application", IEEE Journal of Photovoltaics, 2017 + +Other useful references which may also be consulted for degradation rate methodology include: + + - D. C. Jordan, M. G. Deceglie, S. R. Kurtz, “PV degradation methodology comparison — A basis for a standard”, in 43rd IEEE Photovoltaic Specialists Conference, Portland, OR, USA, 2016, DOI: 10.1109/PVSC.2016.7749593. + - Jordan DC, Kurtz SR, VanSant KT, Newmiller J, Compendium of Photovoltaic Degradation Rates, Progress in Photovoltaics: Research and Application, 2016, 24(7), 978 - 989. + - D. Jordan, S. Kurtz, PV Degradation Rates – an Analytical Review, Progress in Photovoltaics: Research and Application, 2013, 21(1), 12 - 29. - E. Hasselbrink, M. Anderson, Z. Defreitas, M. Mikofski, Y.-C.Shen, S. Caldwell, A. Terao, D. Kavulak, Z. Campeau, D. DeGraaff, “Validation of the PVLife model using 3 million module-years of live site data”, 39th IEEE Photovoltaic Specialists Conference, Tampa, FL, USA, 2013, p. 7 – 13, DOI: 10.1109/PVSC.2013.6744087. ## Unit tests From 0134cfa15f3c8fee6dfa8fc4c268e738e151edb6 Mon Sep 17 00:00:00 2001 From: Chris Deline Date: Tue, 31 Oct 2017 11:42:00 -0600 Subject: [PATCH 10/14] Update URL and email address in setup.py --- setup.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py index 21dff6de..ee7ae6aa 100755 --- a/setup.py +++ b/setup.py @@ -14,14 +14,14 @@ LONG_DESCRIPTION = """ Rdtools is a collection of tools for the analysis of photovoltaic degradation. -Source code: https://github.com/kwhanalytics/rdtools +Source code: https://github.com/NREL/rdtools """ DISTNAME = 'rdtools' LICENSE = 'MIT' AUTHOR = 'Rdtools Python Developers' -MAINTAINER_EMAIL = 'adam.b.shinn@gmail.com' -URL = 'https://github.com/kwhanalytics/rdtools' +MAINTAINER_EMAIL = 'michael.deceglie@nrel.gov' +URL = 'https://github.com/NREL/rdtools' INSTALL_REQUIRES = [ 'numpy >= 1.11.0', From 673c6ef754667ad73dc5b65ef3742e7c460048e0 Mon Sep 17 00:00:00 2001 From: Michael Deceglie Date: Tue, 31 Oct 2017 15:06:26 -0600 Subject: [PATCH 11/14] Change wording around preferred method --- README.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 70a508e1..f9ae0d0b 100644 --- a/README.md +++ b/README.md @@ -22,11 +22,12 @@ Full examples are worked out in the example notebooks in [rdtools/docs](./docs/d ## Degradation Results -RdTools output shows filtered historical data along with a linear trend line. -However, the most accurate estimate of degradation over the analysis period in question -is the Year-on-year (YOY) distribution, which is a normal distribution, the central tendancy -of which is the most representative degradation rate. Distribution width provides information -about the accuracy of the analysis. +The preferred method for degradation rate estimation is the year-on-year (YOY) approach, +available in `degradation.degradation_year_on_year`. The YOY calculation yields in a distribution +of degradation rates, the central tendency of which is the most representative of the true +degradation. The width of the distribution provides information about the uncertainty in the +estimate via a bootstrap calculation. The [example notebook](https://github.com/NREL/rdtools/blob/master/docs/degradation_example.ipynb) uses the output of `degradation.degradation_year_on_year` +to visualize the calculation. RdTools Result From 31bcd5208978b9f490fe14d1a8a7d74c94453853 Mon Sep 17 00:00:00 2001 From: Michael Deceglie Date: Tue, 31 Oct 2017 15:16:39 -0600 Subject: [PATCH 12/14] New references section and NEO reference --- README.md | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index f9ae0d0b..d23dc992 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ The preferred method for degradation rate estimation is the year-on-year (YOY) a available in `degradation.degradation_year_on_year`. The YOY calculation yields in a distribution of degradation rates, the central tendency of which is the most representative of the true degradation. The width of the distribution provides information about the uncertainty in the -estimate via a bootstrap calculation. The [example notebook](https://github.com/NREL/rdtools/blob/master/docs/degradation_example.ipynb) uses the output of `degradation.degradation_year_on_year` +estimate via a bootstrap calculation. The [example notebook](https://github.com/NREL/rdtools/blob/master/docs/degradation_example.ipynb) uses the output of `degradation.degradation_year_on_year()` to visualize the calculation. RdTools Result @@ -102,14 +102,19 @@ The underlying workflow of RdTools has been published in several places. If you - D. Jordan, C. Deline, S. Kurtz, G. Kimball, M. Anderson, "Robust PV Degradation Methodology and Application", IEEE Journal of Photovoltaics, 2017 + +## References +The clear sky temperature calculation, `clearsky_temperature.get_clearsky_tamb()`, uses data +from images created by Jesse Allen, NASA’s Earth Observatory using data courtesy of the MODIS Land Group. +https://neo.sci.gsfc.nasa.gov/view.php?datasetId=MOD_LSTD_CLIM_M +https://neo.sci.gsfc.nasa.gov/view.php?datasetId=MOD_LSTN_CLIM_M Other useful references which may also be consulted for degradation rate methodology include: - - - D. C. Jordan, M. G. Deceglie, S. R. Kurtz, “PV degradation methodology comparison — A basis for a standard”, in 43rd IEEE Photovoltaic Specialists Conference, Portland, OR, USA, 2016, DOI: 10.1109/PVSC.2016.7749593. + - D. C. Jordan, M. G. Deceglie, S. R. Kurtz, “PV degradation methodology comparison — A basis for a standard”, in 43rd IEEE Photovoltaic Specialists Conference, Portland, OR, USA, 2016, DOI: 10.1109/PVSC.2016.7749593. - Jordan DC, Kurtz SR, VanSant KT, Newmiller J, Compendium of Photovoltaic Degradation Rates, Progress in Photovoltaics: Research and Application, 2016, 24(7), 978 - 989. - - D. Jordan, S. Kurtz, PV Degradation Rates – an Analytical Review, Progress in Photovoltaics: Research and Application, 2013, 21(1), 12 - 29. - - E. Hasselbrink, M. Anderson, Z. Defreitas, M. Mikofski, Y.-C.Shen, S. Caldwell, A. Terao, D. Kavulak, Z. Campeau, D. DeGraaff, “Validation of the PVLife model using 3 million module-years of live site data”, 39th IEEE Photovoltaic Specialists Conference, Tampa, FL, USA, 2013, p. 7 – 13, DOI: 10.1109/PVSC.2013.6744087. + - D. Jordan, S. Kurtz, PV Degradation Rates – an Analytical Review, Progress in Photovoltaics: Research and Application, 2013, 21(1), 12 - 29. + - E. Hasselbrink, M. Anderson, Z. Defreitas, M. Mikofski, Y.-C.Shen, S. Caldwell, A. Terao, D. Kavulak, Z. Campeau, D. DeGraaff, “Validation of the PVLife model using 3 million module-years of live site data”, 39th IEEE Photovoltaic Specialists Conference, Tampa, FL, USA, 2013, p. 7 – 13, DOI: 10.1109/PVSC.2013.6744087. ## Unit tests From a867bde752749fe7aaddbe7e48c48159d6622042 Mon Sep 17 00:00:00 2001 From: Michael Deceglie Date: Tue, 31 Oct 2017 15:18:01 -0600 Subject: [PATCH 13/14] standardize common function notation --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d23dc992..d2daa4cf 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ import rdtools The most frequently used functions are: ```Python -normalized, insolation = normalization.normalize_with_pvwatts(energy, pvwatts_kws) +normalization.normalize_with_pvwatts(energy, pvwatts_kws) ''' Inputs: Pandas time series of raw energy, PVwatts dict for system analysis (poa_global, P_ref, T_cell, G_ref, T_ref, gamma_pdc) From fa1f12328ffb20def6b161c05864cfba46cbcae8 Mon Sep 17 00:00:00 2001 From: Michael Deceglie Date: Tue, 31 Oct 2017 15:19:58 -0600 Subject: [PATCH 14/14] Change example notebook link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d2daa4cf..0f76a8aa 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ The preferred method for degradation rate estimation is the year-on-year (YOY) a available in `degradation.degradation_year_on_year`. The YOY calculation yields in a distribution of degradation rates, the central tendency of which is the most representative of the true degradation. The width of the distribution provides information about the uncertainty in the -estimate via a bootstrap calculation. The [example notebook](https://github.com/NREL/rdtools/blob/master/docs/degradation_example.ipynb) uses the output of `degradation.degradation_year_on_year()` +estimate via a bootstrap calculation. The [example notebook](./docs/degradation_example.ipynb) uses the output of `degradation.degradation_year_on_year()` to visualize the calculation. RdTools Result