reV.econ.economies_of_scale.EconomiesOfScale
- class EconomiesOfScale(data, cap_eqn=None, fixed_eqn=None, var_eqn=None)[source]
Bases:
object
Class to calculate economies of scale where power plant capital cost is reduced for larger power plants.
Units
capacity_factor : unitless capacity : kW annual_energy_production : kWh fixed_charge_rate : unitless fixed_operating_cost : $ (per year) variable_operating_cost : $/kWh lcoe : $/MWh
- Parameters:
data (dict | pd.DataFrame) – Namespace of econ data to use to calculate economies of scale. Keys in dict or column labels in dataframe should match the Independent variables in the eqn input. Should also include variables required to calculate LCOE.
cap_eqn (str, optional) – LCOE scaling equation to implement “economies of scale”. Equation must be in python string format and return a scalar value to multiply the capital cost by. Independent variables in the equation should match the keys in the data input arg. This equation may use numpy functions with the package prefix “np”. If
None
, no economies of scale are applied to the capital cost. By default,None
.fixed_eqn (str, optional) – LCOE scaling equation to implement “economies of scale”. Equation must be in python string format and return a scalar value to multiply the fixed operating cost by. Independent variables in the equation should match the keys in the data input arg. This equation may use numpy functions with the package prefix “np”. If
None
, no economies of scale are applied to the fixed operating cost. By default,None
.var_eqn (str, optional) – LCOE scaling equation to implement “economies of scale”. Equation must be in python string format and return a scalar value to multiply the variable operating cost by. Independent variables in the equation should match the keys in the data input arg. This equation may use numpy functions with the package prefix “np”. If
None
, no economies of scale are applied to the variable operating cost. By default,None
.
Methods
is_method
(s)Check if a string is a numpy/pandas or python builtin method
is_num
(s)Check if a string is a number
Attributes
Annual energy production (kWh) back-calculated from the raw LCOE:
Evaluated output of the EconomiesOfScale capital cost equation.
Fixed charge rate from input data arg
Evaluated output of the EconomiesOfScale fixed operating cost equation.
Unscaled (raw) capital cost found in the data input arg.
Unscaled (raw) fixed operating cost from input data arg
Raw LCOE ($/MWh) taken from the input data
Unscaled (raw) variable operating cost from input data arg
Capital cost found in the data input arg scaled by the evaluated EconomiesOfScale input equation.
Fixed operating cost found in the data input arg scaled by the evaluated EconomiesOfScale input equation.
LCOE ($/MWh) calculated with the scaled costs based on the EconomiesOfScale input equation.
Variable operating cost found in the data input arg scaled by the evaluated EconomiesOfScale input equation.
Evaluated output of the EconomiesOfScale equation variable operating cost.
Get a list of variable names that the EconomiesOfScale equation uses as input.
- property vars
Get a list of variable names that the EconomiesOfScale equation uses as input.
- Returns:
vars (list) – List of strings representing variable names that were parsed from the equation string. This will return an empty list if the equation has no variables.
- property capital_cost_scalar
Evaluated output of the EconomiesOfScale capital cost equation. Should be numeric scalars to apply directly to the capital cost.
- Returns:
out (float | np.ndarray) – Evaluated output of the EconomiesOfScale equation. Should be numeric scalars to apply directly to the capital cost.
- property fixed_operating_cost_scalar
Evaluated output of the EconomiesOfScale fixed operating cost equation. Should be numeric scalars to apply directly to the fixed operating cost.
- Returns:
out (float | np.ndarray) – Evaluated output of the EconomiesOfScale equation. Should be numeric scalars to apply directly to the fixed operating cost.
- property variable_operating_cost_scalar
Evaluated output of the EconomiesOfScale equation variable operating cost. Should be numeric scalars to apply directly to the variable operating cost.
- Returns:
out (float | np.ndarray) – Evaluated output of the EconomiesOfScale equation. Should be numeric scalars to apply directly to the variable operating cost.
- property raw_capital_cost
Unscaled (raw) capital cost found in the data input arg.
- Returns:
out (float | np.ndarray) – Unscaled (raw) capital_cost ($) found in the data input arg.
- property scaled_capital_cost
Capital cost found in the data input arg scaled by the evaluated EconomiesOfScale input equation.
- Returns:
out (float | np.ndarray) – Capital cost ($) found in the data input arg scaled by the evaluated EconomiesOfScale equation.
- property fcr
Fixed charge rate from input data arg
- Returns:
out (float | np.ndarray) – Fixed charge rate from input data arg
- property raw_fixed_operating_cost
Unscaled (raw) fixed operating cost from input data arg
- Returns:
out (float | np.ndarray) – Unscaled (raw) fixed operating cost ($/year) from input data arg
- property scaled_fixed_operating_cost
Fixed operating cost found in the data input arg scaled by the evaluated EconomiesOfScale input equation.
- Returns:
out (float | np.ndarray) – Fixed operating cost ($/year) found in the data input arg scaled by the evaluated EconomiesOfScale equation.
- property raw_variable_operating_cost
Unscaled (raw) variable operating cost from input data arg
- Returns:
out (float | np.ndarray) – Unscaled (raw) variable operating cost ($/kWh) from input data arg
- property scaled_variable_operating_cost
Variable operating cost found in the data input arg scaled by the evaluated EconomiesOfScale input equation.
- Returns:
out (float | np.ndarray) – Variable operating cost ($/kWh) found in the data input arg scaled by the evaluated EconomiesOfScale equation.
- property aep
Annual energy production (kWh) back-calculated from the raw LCOE:
AEP = (fcr * raw_cap_cost + raw_foc) / (raw_lcoe - raw_voc)
- Returns:
out (float | np.ndarray)
- property raw_lcoe
Raw LCOE ($/MWh) taken from the input data
- Returns:
lcoe (float | np.ndarray)
- property scaled_lcoe
LCOE ($/MWh) calculated with the scaled costs based on the EconomiesOfScale input equation.
LCOE = (FCR * scaled_capital_cost + scaled_FOC) / AEP + scaled_VOC
- Returns:
lcoe (float | np.ndarray) – LCOE calculated with the scaled costs based on the EconomiesOfScale input equation.