LINCOM Model#

Warning

The LINCOM model in PyWAsP is in its early phases of development. Therefore, the documentation is currently sparse and the code should be considered experimental for now.

The pywasp.lincom subpackage contains classes and functions used for interacting with the LINCOM model that is used in WEng for calculating extreme winds and other parameters important for site analysis.

LINCOM is designed to work on raster data, so your outputs are provided on a regular grid that matches your inputs. However, because of this it takes a while to setup, so the LINCOM model is run in stages allowing you to cache various inputs along the way, re-using them as you desire. The following routines are designed to be used in order:

  1. Prepare the inputs: read the elevation raster with windkit.read_elevation_map() and the roughness raster with windkit.read_roughness_map(..., convert_to_landcover=True), which also returns the land cover table. Derive the raster and vector land masks with pywasp.lincom.roughness_to_landmask(), and describe the input wind with pywasp.lincom.create_wind(). pywasp.lincom.calculate_fetchmap() then calculates the fetch map from the land masks for that wind.

  2. Solve the flow in Fourier space with pywasp.lincom.FourierSpace.create_fourier_space(). This is the expensive step, and uses one run of your PyWAsP subscription. Save the result with to_file and read it back with from_file.

  3. Calculate the flow at a height with pywasp.lincom.WindLevel.get_wind_level().

  4. Extract the results at your output locations with pywasp.lincom.get_wind_points().

For extreme winds, pywasp.lincom.create_lut() runs LINCOM for a set of sectors and wind speeds to create a lookup table, using one run of your subscription per sector and wind speed, and pywasp.lincom.apply_lut() applies it to a generalized extreme wind climate (GEWC); pywasp.lincom.interpolate_gewc() interpolates a GEWC to other locations. pywasp.lincom.get_return_wind() then fits a Gumbel distribution to the annual maxima to estimate the 50-year (or other return period) wind speed. pywasp.lincom.get_spec_corr_fac() calculates the spectral correction factor for modelled wind speed time series.