For beeing able to model a pump-device (for a heating network e.g.) we would need a more generic transformer with two inputs:
I suggest to add a transformer component that takes two inputs with two different conversion_factors and has one output. It therefore takes two conversion_factors in the userform, similiar to the fix_CHP. Ideally it would be possible to give both of them scalars or timeseries as inputs (any number allowed). A conversion_factor between ]0,1[ will lead to low input and high output, a conversion_factor >1 will lead to high input and low output. Therfore the therm "conversion_factor" instead of "efficiency" is used.
The user has to see/know wich input is connected to conversion_factor_1/2 in the user form. For my usecase it would be sufficient to have electricity_bus always as conversion_factor_1 and assign conversion_factor_2 to the input_2.
The nominal capacity on which the investment is applied should be possible to choose. For my usecase it would be sufficient to have it set to the electricity_input flow.
conversion_factor_1 [any number, scalar or timeseries] #Can also use the MVS efficieny variable if allowed any number
conversion_factor_2 [any number, scalar or timeseries] #Can also use the MVS efficieny2 variable if allowed any number
For beeing able to model a pump-device (for a heating network e.g.) we would need a more generic transformer with two inputs:
I suggest to add a transformer component that takes two inputs with two different conversion_factors and has one output. It therefore takes two conversion_factors in the userform, similiar to the fix_CHP. Ideally it would be possible to give both of them scalars or timeseries as inputs (any number allowed). A conversion_factor between ]0,1[ will lead to low input and high output, a conversion_factor >1 will lead to high input and low output. Therfore the therm "conversion_factor" instead of "efficiency" is used.
output=input_1 / conversion_factor_1= input_2 / conversion_factor_2
The user has to see/know wich input is connected to conversion_factor_1/2 in the user form. For my usecase it would be sufficient to have electricity_bus always as conversion_factor_1 and assign conversion_factor_2 to the input_2.
The nominal capacity on which the investment is applied should be possible to choose. For my usecase it would be sufficient to have it set to the electricity_input flow.
In oemof the component would look like this:
pump = solph.Transformer( label="pump", inputs={ b_el: solph.Flow( investment=solph.Investment(ep_costs=annuity()...) var_cost=... dispatch=... ), b_input_2: solph.Flow() }, outputs={b_output: solph.Flow()}, conversion_factors={ b_el: conversion_factor_1, b_input_2: conversion_factor_2 }, )
Inputs in Userform:
conversion_factor_1 [any number, scalar or timeseries] #Can also use the MVS efficieny variable if allowed any number conversion_factor_2 [any number, scalar or timeseries] #Can also use the MVS efficieny2 variable if allowed any number
other inputs:
dispatch_price development_costs specific_costs specific_costs_om installedCap maximumCap lifetime age_installed optimizeCap