tsf

reparameterize_components

Reparameterize certain compnents in a tessif energy system after its creation

tsf is a tessif module aggregating mod:tessif energy system specific <tessif.model.energy_system> hooks to change tessif energy systems after their creation.

Usually used for auto comparing a singular tessif energy system on contradicting model assumptions. Like for example in Hamburg Energy System Example (Brief).

tessif.frused.hooks.tsf.reparameterize_components(es, components={})[source]

Reparameterize certain compnents in a tessif energy system after its creation

Parameters:

Examples

Use tessifs example hub to create a minimum working example:

>>> import tessif.examples.data.tsf.py_hard as hardcoded_tessif_examples
>>> mwe = hardcoded_tessif_examples.create_mwe()

Check the components that are to be reparamterized:

>>> for transformer in mwe.transformers:
...     print(transformer.uid)
...     print(transformer.flow_costs)
...     print(transformer.conversions)
Generator
{'electricity': 2, 'fuel': 0}
{('fuel', 'electricity'): 0.42}
>>> for sink in mwe.sinks:
...     print(sink.uid)
...     print(sink.flow_rates)
Demand
{'electricity': MinMax(min=10, max=10)}

Reparameterize the mwe:

>>> reparameterized_mwe = reparameterize_components(
...     es=mwe,
...     components={
...         'Generator': {
...             'flow_costs': {'electricity': 3, 'fuel': 0},
...             'conversions': {('fuel', 'electricity'): 0.43},
...         },
...         'Demand': {
...             'flow_rates': {'electricity': (11, 11)},
...         }
...     },
... )

Check the reparemterized components:

>>> for transformer in reparameterized_mwe.transformers:
...     print(transformer.uid)
...     print(transformer.flow_costs)
...     print(transformer.conversions)
Generator
{'electricity': 3, 'fuel': 0}
{('fuel', 'electricity'): 0.43}
>>> for sink in reparameterized_mwe.sinks:
...     print(sink.uid)
...     print(sink.flow_rates)
Demand
{'electricity': MinMax(min=11, max=11)}