I am trying to estimate wind speeds at a proposed wind farm site using the method described in this paper hyperlink here. The approach is summarized in figure 2 of the paper.

Short Summary, you get ERA5 reanalysis data, then you scale it relative to wind speed figures calculated in a microscale model (Global Wind Atlas) using a bunch of formulas.

What I've done

  • I have downloaded 12 months of historic hourly ERA5 reanalysis data.
  • I've taken hourly 100m wind speed readings from the 4 neighboring grid points near my site
  • I've used bilinear interpolation to estimate wind speed at site.
  • I've used wind_stats (hyperlink here to get the site specific Generalized Wind Climate (gwc) file from the Global Wind Atlas. to use for statistical downscaling purposes.

But this is where I get stuck

What I've having trouble with

I am having two issues with the gwc file that I am unsure on how to resolve.

  1. The gwc file provides the Weibull A & K parameters at a sector level (i.e. in 30 degree increments up to 360 degree, sort of in a wind rose format). Do I aggregate the sector figures up (if so, how?) or do I do I transform my ERA5 data into sectors then apply the downscaling formulas at that level?
  2. The gwc file doesn't give me a site specific roughness figure, instead it gives me 5 different values. how do I know which roughness figure to use? Do I need a different source of data to first determine what site roughness is?

Help Requested

Does anyone have any experience with the gwc file format? Any assistance be greatly appreciated.


1 Answer 1


Regarding 2:

The roughness length is dependent on height, eg: $$z_0 = Az\exp(-u(z)/\sigma_u)$$ where $A=\frac{\sigma_u}{u_*}k$. ($k$ is the Von-Karman constant and $\sigma_u/u(z)$ represents the horizontal turbulent intensity, which basically implies that the roughness length is also very much dependent on wind direction (or sectors). Here you should see roughness length as a coordinate, so as you point out you don't get a value of roughness. None of the 5 values would be correct to use as it is a coordinate.

You can estimate the roughness length in many ways. The simplest would be to make a subjective evaluation of the area, or you could use datasets as the CORINE land cover (that's not a good source for roughness in my experience), or you could even measure $z_0$ by measuring the horizontal turbulent intensity, but that is difficult.

When you have your roughness length you can either decide to use the coordinate closest to, or interpolate from the nearest values.

Regarding 1:

It depends on what you want. I would suggest splitting the ERA5 data into sectors and looking at the sectors' statistics. Also, make a frequency diagram so you can see which wind directions are most common.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.