University of Manchester
28 files

Assessment of five wind farm parameterizations in WRF

Version 9 2023-08-14, 10:12
Version 8 2023-05-19, 09:20
Version 7 2023-03-23, 11:29
Version 6 2023-03-09, 14:24
Version 5 2023-03-02, 11:00
Version 4 2023-01-09, 10:42
Version 3 2023-01-06, 10:13
Version 2 2022-10-07, 14:29
Version 1 2022-10-05, 09:25
online resource
posted on 2022-10-07, 14:29 authored by Karim AliKarim Ali, David SchultzDavid Schultz, Alistair Revell, Timothy Stallard, Pablo Ouro

This dataset presents the input files to WRF to regenerate the simulations of the North Sea region on October 14th, 2017, along with the modified WRF module files. Four modified WRF modules are attached

  • module_first_rk_step_part1.F
  • module_pbl_driver.F
  • module_wind_base.F
  • Registry.EM_COMMON

which will be added to the source code as explained here. A list of namelist.input files for WRF corresponding to different simulations are attached along with the coordinates of the wind turbines in the windturbines.txt file and the performance curves of the wind turbine types used in this study in the files wind-turbine-*.tbl.

Modified WRF code

WRF can be downloaded from the public repository following the steps mentioned here ( Once WRF is downloaded, go to the folder containing WRF and store its directory in wrfdir by running the command

  • wrfdir=$(pwd)

Go to the folder where this document is present and run the commands:

  • cp ./module_first_rk_step_part1.F $wrfdir/dyn_em/
  • cp ./module_pbl_driver.F $wrfdir/phys/
  • cp ./module_wind_base.F $wrfdir/phys/
  • cp ./Registry.EM_COMMON $wrfdir/Registry/

Now, the code is ready to compile via

  • cd $wrfdir
  • ./clean
  • ./configure
  • ./compile em_real >& compile.log

There are multiple new variables in the modified registry which are defined as follows

  • UTEND: this variable exports the zonal momentum tendency of the turbines.
  • VTEND: this variable exports the meridional momentum tendency of the turbines.
  • QTEND: this variable exports the turbine-induced turbulence generation.
  • abkar_constant: this is the correction factor $\zeta$ from (Abkar and Porté-Agel 2015). The default value is 1.0.
  • use_ec: this integer takes the value of 0 or 1 specifying whether the energy correction should be used or not.
  • dc_turb: this integer allows to disconnect the wind turbines from the flow by not allowing the wind farm parameterization to feedback the calculated momentum and turbulence tendencies. This can be used when we want to simulate the undisturbed wind field and to calculate the generated power in this case as well.
  • volker_sigma_over_R: this is ratio $\sigma_o/R$ from (Volker et al. 2015). The default value is 1.7.
  • pan_np: this specifies the number of points that are randomly generated over the surface of each wind turbine to calculate the percentage of the rotor-plane surface area that is blocked by upwind turbines. It is used with the parameterization of (Pan and Archer 2018). The default value for this entry is 1000 points. More points would increase the accuracy of the calculated blocked area but at the expense of computational cost.
  • pan_nouter: this specifies the number of outer iterations done to calculate the blocked area of the rotor within the parameterization of (Pan and Archer 2018). The purpose of the outer iterations is to minimize the randomness in the blocked area calculations due to the randomly generated points by averaging through multiple trials. The default value is 2.
  • pan_infZone: this entry specifies the maximum ratio between the distance between two wind turbines and the diameter of the considered wind turbine to include the upwind one in blocked area calculations. The default value is 20. Hence, all wind turbines that are more than 20-diameters away from a wind turbine are not considered for blocked area calculations. 
  • turbine_cell: is an integer specifying the method to identify the index of the grid-cell containing a wind turbine. A value of 1 corresponds to the function nint (nearest integer) which is the default in WRF. A value of 2 corresponds to the function floor which was suggested in (Volker et al. 2015; Pryor et al. 2020). The default value here is 1.

The windfarm_opt in namelist.input used to have one of two values:

  • 0: no wind farm parameterization is used.
  • 1: Fitch's parameterization is used (Fitch et al. 2012).

More options have been added to the entry windfarm_opt

  • 0:  no wind farm parameterization
  • 1:  Fitch's parameterization (Fitch et al. 2012)
  • 2: Abkar's parameterization (Abkar and Porté-Agel 2015)
  • 3: Volker's parameterization (Volker et al. 2015)
  • 4: Redfern's parameterization (Redfern et al. 2019)
  • 5: Pan's parameterization (Pan and Archer 2018)

Input files

Multiple namelist.input files are attached in the form of *-namelist.input and they are defined as follows

  • A80-namelist.input: Abkar's parameterization with Abkar's correction set to 0.8.
  • A90-namelist.input: Abkar's parameterization with Abkar's correction set to 0.9.
  • A100-namelist.input: Abkar's parameterization with Abkar's correction set to 1.0.
  • F25-namelist.input: Fitch's parameterization with 0.25 turbulence correction factor (Archer et al. 2020).
  • F100-namelist.input: Fitch's parameterization with 1.0 turbulence correction factor (i.e. base Fitch's parameterization).
  • F100-NE-namelist.input: Fitch's parameterization with 1.0 turbulence correction factor but no energy correction is used.
  • NT-namelist.input: No wind turbines. Nonetheless, power is calculated according to Fitch's parameterization to record the ideal power generation without any wake effects. This is done by setting the entry dc_turb to one while setting windfarm_opt to one as well.
  • PAN-namelist.input| Pan's parameterization.
  • R25-namelist.input: Redfern's parameterization with 0.25 turbulence correction factor
  • R100-namelist.input: Redfern's parameterization with 1.0 turbulence correction factor
  • V80-namelist.input: Volker's parameterization with the ratio sigma/R set to 1.36 (i.e. 80% of the base value 1.7).
  • V100-namelist.input: Volker's parameterization with the ratio sigma/R set to 1.7.
  • V120-namelist.input: Volker's parameterization with the ratio sigma/R set to 2.04 (i.e. 120% of the base value 1.7)

The performance curves of the used wind turbine types are provided in the wind-turbine-*.tbl. The coordinates of the wind turbines are stored in windturbines.txt file. To be able to differentiate between the wind turbines of different wind farms, the first and last wind turbine index per wind farm is as follows

  • Gode Wind 1 & 2: 1 - 97
  • Veja Mate: 98 - 164
  • BARD Offshore 1: 165 - 244
  • Riffgat: 245 - 274
  • Borkum Riffgrund 1: 275 - 352
  • Meerwind: 353 - 432
  • Nordsee Ost: 433 - 480
  • Amrumbank West: 481 - 560
  • Alpha Ventus: 561 - 572
  • Trianel Windpark Borkum I: 573 - 612
  • Global Tech I: 613 - 692
  • Nordsee One: 693 - 746
  • Gemini: 747 - 896


  • Abkar, M., and F. Porté-Agel, 2015: A new wind-farm parameterization for large-scale atmospheric models. Journal of Renewable and Sustainable Energy, 7 (1), 013 121,
  • Archer, C. L., S. Wu, Y. Ma, and P. A. Jiménez, 2020: Two Corrections for Turbulent Kinetic Energy Generated by Wind Farms in the WRF Model. Monthly Weather Review, 148 (12), 4823 – 4835,
  • Fitch, A. C., J. B. Olson, J. K. Lundquist, J. Dudhia, A. K. Gupta, J. Michalakes, and I. Barstad, 2012: Local and Mesoscale Impacts of Wind Farms as Parameterized in a Mesoscale NWP Model. Monthly Weather Review, 140 (9), 3017 – 3038,
  • Pan, Y., and C. L. Archer, 2018: A Hybrid Wind-Farm Parametrization for Mesoscale and Climate Models. Boundary-Layer Meteorology, 168 (3), 469–495,
  • Pryor, S. C., T. J. Shepherd, P. J. H. Volker, A. N. Hahmann, and R. J. Barthelmie, 2020: “Wind Theft” from Onshore Wind Turbine Arrays: Sensitivity to Wind Farm Parameterization and Resolution. Journal of Applied Meteorology and Climatology, 59 (1), 153 – 174,
  • Redfern, S., J. B. Olson, J. K. Lundquist, and C. T. M. Clack, 2019: Incorporation of the Rotor-Equivalent Wind Speed into the Weather Research and Forecasting Model’s Wind Farm Parameterization. Monthly Weather Review, 147 (3), 1029 – 1046,
  • Volker, P. J. H., J. Badger, A. N. Hahmann, and S. Ott, 2015: The Explicit Wake Parametrisation V1.0: a wind farm parametrisation in the mesoscale model WRF. Geoscientific Model Development, 8 (11), 3715–3731,


This study is funded by the School of Engineering at the University of Manchetser, United Kingdom


Usage metrics

    School of Engineering



    Ref. manager