deflex.allocate_fuel

deflex.allocate_fuel(method, eta_e, eta_th, **kwargs)[source]

Allocate the fuel input of chp plants to the two output flows: heat and electricity.

Use allocate_fuel_deflex() if you want to use the default values of the config file or if you want to define your own default values.

The following methods are available:

The sum of the allocation factors of both flows is always one: \alpha_{th} + \alpha_{el} = 1

The fuel factor is the allocation factor devided by the efficiency:

f_{fuel, el}=\frac{\alpha_{el}}{\eta_{el}}\qquad
f_{fuel, th}=\frac{\alpha_{th}}{\eta_{th}}

f_{fuel, el/th} :Fuel factor of the electricity/heat flow

\alpha_{el/th} : Allocation factor of the electricity/heat flow

\eta_{el/th} : Efficiency of the electricity/heat output in the chp plant

Parameters:
  • method (str) – The method to allocate the output flows of chp plants: alternative_generation, carnot, efficiency, electricity, exergy, finnish, heat, iea
  • eta_e (numeric) – The efficiency of the electricity production in the chp plant. Mandatory for all functions.
  • eta_th (numeric) – The efficiency of the heat output in the chp plant.Mandatory for all functions.
Other Parameters:
 
  • eta_c (numeric) – The Carnot factor of the heating system. Mandatory in the following functions: exergy
  • eta_e_ref (numeric) – The efficiency of the best power plant available on the market and economically viable in the year of construction of the CHP plant. Mandatory in the following functions: alternative_generation
  • eta_th_ref (numeric) – The efficiency of the best heat plant available on the market and economically viable in the year of construction of the CHP plant. Mandatory in the following functions: alternative_generation
Returns:

The fuel factors of the output flows (heat/electricity)

Return type:

namedtuple

Examples

>>> a = allocate_fuel("efficiency", eta_e=0.3, eta_th=0.5)
>>> round(a.electricity, 2)
2.08
>>> round(a.heat, 2)
0.75
>>> a = allocate_fuel("electricity", eta_e=0.3, eta_th=0.5)
>>> round(a.electricity, 2)
3.33
>>> a.heat
0.0
>>> a = allocate_fuel("exergy", eta_e=0.3, eta_th=0.5, eta_c=0.555)
>>> round(a.electricity, 2)
1.73
>>> round(a.heat, 2)
0.96
>>> a = allocate_fuel("finnish", eta_e=0.3, eta_th=0.5, eta_e_ref=0.5,
...                   eta_th_ref=0.9)
>>> round(a.electricity, 2)
1.73
>>> round(a.heat, 2)
0.96
>>> a = allocate_fuel("heat", eta_e=0.3, eta_th=0.5)
>>> a.electricity
0.0
>>> a.heat
2.0
>>> a = allocate_fuel("iea", eta_e=0.3, eta_th=0.5)
>>> round(a.electricity, 2)
1.25
>>> round(a.heat, 2)
1.25