A practical example of reproducible research in wind energy, using publicly available data from Kelmarsh wind farm and the methodology of Sopena (2023).
RR4WindEnergy/
├── src/
│ └── rr4we/ # Main package
│ ├── data/ # Data preprocessing utilities
│ ├── models/ # Neural network models
│ ├── utils/ # Utility functions and metrics
│ └── vmd/ # Variational Mode Decomposition
├── notebooks/ # Jupyter notebooks
│ ├── 01_data_preprocessing.ipynb
│ ├── 02_generate_vmd_datasets.ipynb
│ └── 03_wind_power_forecast.ipynb
├── data/
│ ├── raw/ # Raw SCADA data
│ └── processed/ # Processed data files
├── results/ # Model outputs and predictions
├── figures/ # Generated plots and visualizations
└── tests/ # Unit tests
- Clone the repository:
git clone <repository-url>
cd RR4WindEnergy- Create a virtual environment (recommended):
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install the package:
pip install -e .Or install dependencies directly:
pip install -r requirements.txtRun the data preprocessing notebook to load and clean the raw SCADA data:
jupyter notebook notebooks/01_data_preprocessing.ipynbDecompose the time series data using Variational Mode Decomposition:
jupyter notebook notebooks/02_generate_vmd_datasets.ipynbTrain neural network models and generate forecasts:
jupyter notebook notebooks/03_wind_power_forecast.ipynbnumpy pandas scipy scikit-learn tensorflow matplotlib python-dateutil jupyter ipykernel notebook
See requirements.txt for the complete list of dependencies.
If you use this code, please cite the original paper:
Sopena, J. G. (2023). A benchmarking framework for performance evaluation of statistical wind power forecasting models. Sustainable Energy Technologies and Assessments, 103246. https://doi.org/10.1016/j.seta.2023.103246
See LICENSE file for details.