diff --git a/.all-contributorsrc b/.all-contributorsrc index 99812599..9bcfc16c 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -1,8 +1,15 @@ { "projectName": "OpenOA", - "projectOwner": "NREL" + "projectOwner": "NREL", + "repoType": "github", + "repoHost": "https://github.com", "files": [ "README.md" ], - "imageSize": 100 + "imageSize": 100, + "commit": true, + "commitConvention": "angular", + "contributors": [], + "contributorsPerLine": 7, + "linkToUsage": true } diff --git a/README.md b/README.md index a00fff0f..26bf9823 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,7 @@ OpenOA + +[![All Contributors](https://img.shields.io/badge/all_contributors-0-orange.svg?style=flat-square)](#contributors-) + ----- @@ -25,15 +28,19 @@ - Read the [documentation](https://openoa.readthedocs.io/en/latest/). - Learn how to [contribute](contributing.md). -This library provides a framework for assessing wind plant performance using operational assessment -(OA) methodologies that consume time series data from wind plants. Its development has been motivated -by the Wind Plant Performance Prediction (WP3) Benchmark project, led by the National Renewable -Energy Laboratory (NREL), which focuses on quantifying and understanding differences between the -expected and actual energy production of wind plants. To support the WP3 Benchmark project, OpenOA -was initially developed to provide a baseline implementation of a long-term operational annual -energy production (AEP) estimation method. It has since grown to incorporate several more OA -analysis methods, lower-level utility functions, and a schema for time-series data from wind power -plants. +OpenOA [^1] is a software framework written in Python for assessing wind plant performance using +operational assessment (OA) methodologies that consume time series data from wind plants. The goal +of the project is to provide an open source implementation of common data structures, analysis +methods, and utility functions relevant to wind plant OA, while providing a platform to collaborate +on new functionality. + +Development of OpenOA was motivated by the Wind Plant Performance Prediction (WP3) Benchmark project +[^2], led by the National Renewable Energy Laboratory (NREL), which focuses on quantifying and +understanding differences between the expected and actual energy production of wind plants. To +support the WP3 Benchmark project, OpenOA was initially developed to provide a baseline +implementation of a long-term operational annual energy production (AEP) estimation method. It has +since grown to incorporate several more OA analysis methods, lower-level utility functions, and a +schema for time-series data from wind power plants. > **Warning** OpenOA is a research software library and is released under a BSD-3 license. Please refer to the @@ -48,38 +55,12 @@ any data analysis. | Name | Description | Citations | | --- | --- | --- | -| `MonteCarloAEP` | This routine estimates the long-term annual energy production (AEP) of a wind power plant (typically over 10-20 years) based on operational data from a shorter period of record (e.g., 1-3 years), along with the uncertainty. | [^2], [^3] | -| `TurbineLongTermGrossEnergy`| This routine estimates the long-term turbine ideal energy (TIE) of a wind plant, defined as the long-term AEP that would be generated by the wind plant if all turbines operated normally (i.e., no downtime, derating, or severe underperformance, but still subject to wake losses and moderate performance losses), along with the uncertainty. | [^4] | -| `ElectricalLosses`| The ElectricalLosses routine estimates the average electrical losses at a wind plant, along with the uncertainty, by comparing the energy produced at the wind turbines to the energy delivered to the grid. | [^4] | -| `EYAGapAnalysis`| This class is used to perform a gap analysis between the estimated AEP from a pre-construction energy yield estimate (EYA) and the actual AEP. The gap analysis compares different wind plant performance categories to help understand the sources of differences between EYA AEP estimates and actual AEP, specifically availability losses, electrical losses, and TIE. | [^4] | -| `WakeLosses`| This routine estimates long-term internal wake losses experienced by a wind plant and for each individual turbine, along with the uncertainty. | [^5]. Based in part on approaches in [^6], [^7], [^8] | -| `StaticYawMisalignment`| The StaticYawMisalignment routine estimates the static yaw misalignment for individual wind turbines as a function of wind speed by comparing the estimated wind vane angle at which power is maximized to the mean wind vane angle at which the turbines operate. The routine includes uncertainty quantification. **Warning: This method has not been validated using data from wind turbines with known static yaw misalignment and the results should be treated with caution.** | Based in part on approaches in [^9], [^10], [^11], [^12], [^13] | - -[^1]: Fields, M. J., Optis, M., Perr-Sauer, J., Todd, A., Lee, J. C. Y., Meissner, J., Simley, E., Bodini, N., Williams, L., Sheng, S., and Hammond, R. Wind plant performance prediction benchmark phase 1 technical report, NREL/TP-5000-78715. Technical Report, National Renewable Energy Laboratory, Golden, CO (2021). https://doi.org/10.2172/1826665. - -[^2]: Bodini, N. & Optis, M. Operational-based annual energy production uncertainty: are its components actually uncorrelated? *Wind Energy Science* 5(4):1435–1448 (2020). https://doi.org/10.5194/wes-5-1435-2020. - -[^3]: Bodini, N., Optis, M., Perr-Sauer, J., Simley, E., and Fields, M. J. Lowering post-construction yield assessment uncertainty through better wind plant power curves. *Wind Energy*, 25(1):5–22 (2022). https://doi.org/10.1002/we.2645. - -[^4]: Todd, A. C., Optis, M., Bodini, N., Fields, M. J., Lee, J. C. Y., Simley, E., and Hammond, R. An independent analysis of bias sources and variability in wind plant pre‐construction energy yield estimation methods. *Wind Energy*, 25(10):1775-1790 (2022). https://doi.org/10.1002/we.2768. - -[^5]: Simley, E., Fields, M. J., Perr-Sauer, J., Hammond, R., and Bodini, N. A Comparison of Preconstruction and Operational Wake Loss Estimates for Land-Based Wind Plants. Presented at the NAWEA/WindTech 2022 Conference, Newark, DE, September 20-22 (2022). https://www.nrel.gov/docs/fy23osti/83874.pdf. - -[^6]: Barthelmie, R. J. and Jensen, L. E. Evaluation of wind farm efficiency and wind turbine wakes at the Nysted offshore wind farm, *Wind Energy* 13(6):573–586 (2010). https://doi.org/10.1002/we.408. - -[^7]: Nygaard, N. G. Systematic quantification of wake model uncertainty. Proc. EWEA Offshore, Copenhagen, Denmark, March 10-12 (2015). - -[^8]: Walker, K., Adams, N., Gribben, B., Gellatly, B., Nygaard, N. G., Henderson, A., Marchante Jimémez, M., Schmidt, S. R., Rodriguez Ruiz, J., Paredes, D., Harrington, G., Connell, N., Peronne, O., Cordoba, M., Housley, P., Cussons, R., Håkansson, M., Knauer, A., and Maguire, E.: An evaluation of the predictive accuracy of wake effects models for offshore wind farms. *Wind Energy* 19(5):979–996 (2016). https://doi.org/10.1002/we.1871. - -[^9]: Bao, Y., Yang, Q., Fu, L., Chen, Q., Cheng, C., and Sun, Y. Identification of Yaw Error Inherent Misalignment for Wind Turbine Based on SCADA Data: A Data Mining Approach. Proc. 12th Asian Control Conference (ASCC), Kitakyushu, Japan, June 9-12 (2019). 1095-1100. - -[^10]: Xue, J. and Wang, L. Online data-driven approach of yaw error estimation and correction of horizontal axis wind turbine. *IET J. Eng.* 2019(18):4937–4940 (2019). https://doi.org/10.1049/joe.2018.9293. - -[^11]: Astolfi, D., Castellani, F., and Terzi, L. An Operation Data-Based Method for the Diagnosis of Zero-Point Shift of Wind Turbines Yaw Angle. *J. Solar Energy Engineering* 142(2):024501 (2020). https://doi.org/10.1115/1.4045081. - -[^12]: Jing, B., Qian, Z., Pei, Y., Zhang, L., and Yang, T. Improving wind turbine efficiency through detection and calibration of yaw misalignment. *Renewable Energy* 160:1217-1227 (2020). https://doi.org/10.1016/j.renene.2020.07.063. - -[^13]: Gao, L. and Hong, J. Data-driven yaw misalignment correction for utility-scale wind turbines. *J. Renewable Sustainable Energy* 13(6):063302 (2021). https://doi.org/10.1063/5.0056671. +| `MonteCarloAEP` | This routine estimates the long-term annual energy production (AEP) of a wind power plant (typically over 10-20 years) based on operational data from a shorter period of record (e.g., 1-3 years), along with the uncertainty. | [^3], [^4] | +| `TurbineLongTermGrossEnergy`| This routine estimates the long-term turbine ideal energy (TIE) of a wind plant, defined as the long-term AEP that would be generated by the wind plant if all turbines operated normally (i.e., no downtime, derating, or severe underperformance, but still subject to wake losses and moderate performance losses), along with the uncertainty. | [^5] | +| `ElectricalLosses`| The ElectricalLosses routine estimates the average electrical losses at a wind plant, along with the uncertainty, by comparing the energy produced at the wind turbines to the energy delivered to the grid. | [^5] | +| `EYAGapAnalysis`| This class is used to perform a gap analysis between the estimated AEP from a pre-construction energy yield estimate (EYA) and the actual AEP. The gap analysis compares different wind plant performance categories to help understand the sources of differences between EYA AEP estimates and actual AEP, specifically availability losses, electrical losses, and TIE. | [^5] | +| `WakeLosses`| This routine estimates long-term internal wake losses experienced by a wind plant and for each individual turbine, along with the uncertainty. | [^6]. Based in part on approaches in [^7], [^8], [^9] | +| `StaticYawMisalignment`| The StaticYawMisalignment routine estimates the static yaw misalignment for individual wind turbines as a function of wind speed by comparing the estimated wind vane angle at which power is maximized to the mean wind vane angle at which the turbines operate. The routine includes uncertainty quantification. **Warning: This method has not been validated using data from wind turbines with known static yaw misalignments and the results should be treated with caution.** | Based in part on approaches in [^10], [^11], [^12], [^13], [^14] | ### PlantData Schema @@ -114,7 +95,7 @@ For further information about the features and citations, please see the methods, as noted in the [documentation](#included-analysis-methods) and inline comments. **To cite the open-source software framework as a whole, or the OpenOA open source development -effort more broadly,** please use the following citation: +effort more broadly,** please use citation [^1], which is provided below in BibTeX: ```bibtex @article{Perr-Sauer2021, @@ -300,3 +281,44 @@ make html [![All Contributors](https://img.shields.io/github/all-contributors/NREL/OpenOA?color=ee8449&style=flat-square)](#contributors) ### References + +[^1]: Perr-Sauer, J., and Optis, M., Fields, J.M., Bodini, N., Lee, J.C.Y., Todd, A., Simley, E., Hammond, R., Phillips, C., Lunacek, M., Kemper, T., Williams, L., Craig, A., Agarwal, N., Sheng, S., and Meissner, J. OpenOA: An Open-Source Codebase For Operational Analysis of Wind Farms. *Journal of Open Source Software*, 6(58):2171 (2022). https://doi.org/10.21105/joss.02171. + +[^2]: Fields, M. J., Optis, M., Perr-Sauer, J., Todd, A., Lee, J. C. Y., Meissner, J., Simley, E., Bodini, N., Williams, L., Sheng, S., and Hammond, R.. Wind plant performance prediction benchmark phase 1 technical report, NREL/TP-5000-78715. Technical Report, National Renewable Energy Laboratory, Golden, CO (2021). https://doi.org/10.2172/1826665. + +[^3]: Bodini, N. & Optis, M. Operational-based annual energy production uncertainty: are its components actually uncorrelated? *Wind Energy Science* 5(4):1435–1448 (2020). https://doi.org/10.5194/wes-5-1435-2020. + +[^4]: Bodini, N., Optis, M., Perr-Sauer, J., Simley, E., and Fields, M. J. Lowering post-construction yield assessment uncertainty through better wind plant power curves. *Wind Energy*, 25(1):5–22 (2022). https://doi.org/10.1002/we.2645. + +[^5]: Todd, A. C., Optis, M., Bodini, N., Fields, M. J., Lee, J. C. Y., Simley, E., and Hammond, R. An independent analysis of bias sources and variability in wind plant pre‐construction energy yield estimation methods. *Wind Energy*, 25(10):1775-1790 (2022). https://doi.org/10.1002/we.2768. + +[^6]: Simley, E., Fields, M. J., Perr-Sauer, J., Hammond, R., and Bodini, N. A Comparison of Preconstruction and Operational Wake Loss Estimates for Land-Based Wind Plants. Presented at the NAWEA/WindTech 2022 Conference, Newark, DE, September 20-22 (2022). https://www.nrel.gov/docs/fy23osti/83874.pdf. + +[^7]: Barthelmie, R. J. and Jensen, L. E. Evaluation of wind farm efficiency and wind turbine wakes at the Nysted offshore wind farm, *Wind Energy* 13(6):573–586 (2010). https://doi.org/10.1002/we.408. + +[^8]: Nygaard, N. G. Systematic quantification of wake model uncertainty. Proc. EWEA Offshore, Copenhagen, Denmark, March 10-12 (2015). + +[^9]: Walker, K., Adams, N., Gribben, B., Gellatly, B., Nygaard, N. G., Henderson, A., Marchante Jimémez, M., Schmidt, S. R., Rodriguez Ruiz, J., Paredes, D., Harrington, G., Connell, N., Peronne, O., Cordoba, M., Housley, P., Cussons, R., Håkansson, M., Knauer, A., and Maguire, E.: An evaluation of the predictive accuracy of wake effects models for offshore wind farms. *Wind Energy* 19(5):979–996 (2016). https://doi.org/10.1002/we.1871. + +[^10]: Bao, Y., Yang, Q., Fu, L., Chen, Q., Cheng, C., and Sun, Y. Identification of Yaw Error Inherent Misalignment for Wind Turbine Based on SCADA Data: A Data Mining Approach. Proc. 12th Asian Control Conference (ASCC), Kitakyushu, Japan, June 9-12 (2019). 1095-1100. + +[^11]: Xue, J. and Wang, L. Online data-driven approach of yaw error estimation and correction of horizontal axis wind turbine. *IET J. Eng.* 2019(18):4937–4940 (2019). https://doi.org/10.1049/joe.2018.9293. + +[^12]: Astolfi, D., Castellani, F., and Terzi, L. An Operation Data-Based Method for the Diagnosis of Zero-Point Shift of Wind Turbines Yaw Angle. *J. Solar Energy Engineering* 142(2):024501 (2020). https://doi.org/10.1115/1.4045081. + +[^13]: Jing, B., Qian, Z., Pei, Y., Zhang, L., and Yang, T. Improving wind turbine efficiency through detection and calibration of yaw misalignment. *Renewable Energy* 160:1217-1227 (2020). https://doi.org/10.1016/j.renene.2020.07.063. + +[^14]: Gao, L. and Hong, J. Data-driven yaw misalignment correction for utility-scale wind turbines. *J. Renewable Sustainable Energy* 13(6):063302 (2021). https://doi.org/10.1063/5.0056671. + +## Contributors ✨ + +Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)): + + + + + + + + +This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!