Offshore references#

Source-exact catalog loading. Reference farms are ordinary Farm objects and compose with the rest of OOWL.

oowl.ReferenceCatalog()

Callable access to packaged offshore farms and catalog metadata.

oowl.ReferenceFarmInfo(name, aliases, ...[, ...])

Searchable metadata for one packaged farm or named farm group.

reference_farm is the callable catalog instance. Use reference_farm(name) to load a farm or reference_farm.list() to inspect the catalog.

class oowl.ReferenceCatalog[source]#

Callable access to packaged offshore farms and catalog metadata.

__call__(name, *, coordinate_frame='local', resource=None, roughness_length=0.0002, reference_height=None)[source]#

Load one real farm, or a group as a Cluster of its members.

Every commissioned, source-backed turbine position is included.

Parameters:
  • name (str) – Farm or group name or alias, ignoring case, accents, spaces and punctuation.

  • coordinate_frame (str) – "local" for the farm’s own projection in meters, or "epsg:3035" for the ETRS89 Lambert equal-area grid of Europe, also in meters.

  • resource (Literal['gwa'] | None) – None loads offline. "gwa" downloads the Global Wind Atlas climate at each farm centroid and caches it under $XDG_CACHE_HOME/oowl/gwa.

  • roughness_length (float) – Surface roughness in meters for the Global Wind Atlas climate. The default is the WAsP value for water.

  • reference_height (float | None) – Height in meters of the Global Wind Atlas climate. Defaults to the median hub height of the farm.

Raises:
  • KeyError – If name matches nothing.

  • TypeError – If name, coordinate_frame or a non-None resource is not a string.

  • ValueError – If name is ambiguous or only partly matches, or an option is invalid.

Return type:

Farm | Cluster

list(country=None, commissioning_year_range=None, min_turbines=None, *, include_groups=False)[source]#

List packaged farms without loading their geometry.

country is matched ignoring case, commissioning_year_range is an inclusive (first, last) pair that excludes farms of unknown year, and min_turbines is a positive lower bound. Named groups are left out unless include_groups is true, so no farm is listed twice.

Raises:
  • TypeError – If country is not a string, commissioning_year_range is not a sequence or has an end that is not a number, or min_turbines is not a number.

  • ValueError – If commissioning_year_range does not have two ends, has an end that is not a whole number or is not ordered, or min_turbines is not a positive whole number.

Parameters:
  • country (str | None)

  • commissioning_year_range (tuple[int, int] | None)

  • min_turbines (int | None)

  • include_groups (bool)

Return type:

tuple[ReferenceFarmInfo, …]

class oowl.ReferenceFarmInfo(name, aliases, country, commissioning_year, latitude, longitude, n_turbines, installation_type, boundary_source, boundary_kind, boundary_containment, boundary_containment_50m, boundary_max_outside_distance_m, boundary_source_names, boundary_source_feature_ids, boundary_adjustment, boundary_vertex_count_raw, quality_flags, fit_eligible, shape_fit_eligible, source_dates, is_group=False, members=(), catalog_date='', citations=('Fischereit, Vollmer & Hansen, Open European offshore wind turbine database, doi:10.5281/zenodo.19879819', 'OpenStreetMap contributors, current and historical turbine nodes, ODbL 1.0', 'EMODnet Human Activities wind-farm polygons, CC BY 4.0'))[source]#

Searchable metadata for one packaged farm or named farm group.

Coordinates of the centroid are WGS 84 degrees. boundary_kind is "area", "linear" for a single row of turbines, or "cluster" for a group. boundary_containment is the share of turbines inside the packaged boundary, boundary_containment_50m the share within 50 m of it and boundary_max_outside_distance_m the farthest turbine outside it, in meters. quality_flags name known caveats such as positions outside the boundary. fit_eligible marks an area farm of at least five distinct positions with 95 percent of them within 50 m of the boundary, and shape_fit_eligible an area farm whose boundary is one valid EMODnet polygon. A group reports its members’ weakest containment and is eligible for neither fit.

Parameters: