windkit.io.windio.compose_wind_farm#
- windkit.io.windio.compose_wind_farm(wind_turbines, wtgs, name='wind_farm')[source]#
Compose windIO wind_farm data from windkit objects.
Warning
windIO support is experimental. API may change in future versions.
Creates a wind_farm-level windIO dictionary by combining turbine layouts with full WTG definitions. The result can be written directly with
write_wind_farm()for use as an!includetarget, or embedded in a plant structure.This is a convenience wrapper around
wind_turbines_to_windio(wind_turbines, wtgs, level="wind_farm").- Parameters:
wind_turbines (xarray.Dataset) – Wind turbines dataset with turbine positions and wtg_key assignments.
wtgs (dict) – Dictionary mapping wtg_key strings to WTG datasets. All wtg_key values in wind_turbines must exist as keys in this dictionary.
name (str) – Name for the wind farm (default: “wind_farm”).
- Returns:
windIO wind_farm dictionary with layouts and turbine_types, ready to be written with
write_wind_farm().- Return type:
- Raises:
ValueError – If wtg_key values in wind_turbines are missing from wtgs dict.
Examples
>>> import windkit as wk >>> from windkit.io.windio.translate import compose_wind_farm >>> from windkit.io.windio import write_wind_farm >>> >>> turbines = wk.read_wind_turbines("layout.csv", crs="EPSG:32632") >>> wtg = wk.read_wtg("turbine.wtg") >>> >>> wind_farm = compose_wind_farm( ... wind_turbines=turbines, ... wtgs={"IEA_10MW": wtg}, ... ) >>> write_wind_farm(wind_farm, "wind_farm.yaml")