1111from windpowerlib import tools , power_curves
1212import numpy as np
1313import pandas as pd
14+ import warnings
1415
1516
1617class WindFarm (object ):
@@ -54,11 +55,15 @@ class WindFarm(object):
5455 dimensionless wind farm efficiency. Default: None.
5556 hub_height : float
5657 The calculated mean hub height of the wind farm.
57- installed_power : float
58- The calculated installed power of the wind farm.
5958 power_curve : pandas.DataFrame or None
6059 The calculated power curve of the wind farm.
6160 power_output : pandas.Series
61+ nominal_power : float
62+ The nominal power is the sum of the nominal power of all turbines in
63+ the wind farm in W.
64+ installed_power : float
65+ Installed nominal power of the wind farm in W. Deprecated! Use
66+ :attr:`~.wind_farm.WindFarm.nominal_power` instead.
6267 The calculated power output of the wind farm.
6368
6469 Examples
@@ -77,8 +82,7 @@ class WindFarm(object):
7782 ... 'wind_turbine_fleet': [{'wind_turbine': e126,
7883 ... 'number_of_turbines': 6}]}
7984 >>> example_farm = wind_farm.WindFarm(**example_farm_data)
80- >>> example_farm.installed_power = example_farm.get_installed_power()
81- >>> print(example_farm.installed_power)
85+ >>> print(example_farm.nominal_power)
8286 25200000.0
8387
8488 """
@@ -91,10 +95,52 @@ def __init__(self, name, wind_turbine_fleet, coordinates=None,
9195 self .efficiency = efficiency
9296
9397 self .hub_height = None
94- self .installed_power = None
98+ self ._nominal_power = None
99+ self ._installed_power = None
95100 self .power_curve = None
96101 self .power_output = None
97102
103+ @property
104+ def installed_power (self ):
105+ r"""
106+ The installed nominal power of the wind farm. (Deprecated!)
107+
108+ """
109+ warnings .warn (
110+ 'installed_power is deprecated, use nominal_power instead.' ,
111+ FutureWarning )
112+ return self .nominal_power
113+
114+ @installed_power .setter
115+ def installed_power (self , installed_power ):
116+ self ._installed_power = installed_power
117+
118+ @property
119+ def nominal_power (self ):
120+ r"""
121+ The nominal power of the wind farm.
122+
123+ See :attr:`~.wind_farm.WindFarm.nominal_power` for further information.
124+
125+ Parameters
126+ -----------
127+ nominal_power : float
128+ Nominal power of the wind farm in W.
129+
130+ Returns
131+ -------
132+ float
133+ Nominal power of the wind farm in W.
134+
135+ """
136+ if not self ._nominal_power :
137+ self .nominal_power = self .get_installed_power ()
138+ return self ._nominal_power
139+
140+ @nominal_power .setter
141+ def nominal_power (self , nominal_power ):
142+ self ._nominal_power = nominal_power
143+
98144 def mean_hub_height (self ):
99145 r"""
100146 Calculates the mean hub height of the wind farm.
@@ -139,17 +185,13 @@ def mean_hub_height(self):
139185
140186 def get_installed_power (self ):
141187 r"""
142- Calculates the installed power of the wind farm.
143-
144- The installed power of wind farms is necessary when a
145- :class:`~.wind_turbine_cluster.WindTurbineCluster` object is used and
146- it's power weighed mean hub height is calculated with
147- :py:func:`~.wind_turbine_cluster.WindTurbineCluster.mean_hub_height`.
188+ Calculates :py:attr:`~nominal_power` of the wind farm.
148189
149190 Returns
150191 -------
151192 float
152- Installed power of the wind farm.
193+ Nominal power of the wind farm in W. See :py:attr:`~nominal_power`
194+ for further information.
153195
154196 """
155197 return sum (
0 commit comments