Interfaces to Modular Household Example

modular_household.interface_configs.modular_household_config module

modular_household.interface_configs.archetype_config module

Archetype config module.

class modular_household.interface_configs.archetype_config.ArcheTypeConfigModular(occupancy_profile_utsp: ~utspclient.helpers.lpgpythonbindings.JsonReference | None = None, occupancy_profile: str | None = 'AVG', building_code: str = 'DE.N.SFH.05.Gen.ReEx.001.002', absolute_conditioned_floor_area: float | None = None, water_heating_system_installed: ~hisim.loadtypes.HeatingSystems = HeatingSystems.DISTRICT_HEATING, heating_system_installed: ~hisim.loadtypes.HeatingSystems = HeatingSystems.DISTRICT_HEATING, mobility_set: ~utspclient.helpers.lpgpythonbindings.JsonReference | None = None, mobility_distance: ~utspclient.helpers.lpgpythonbindings.JsonReference | None = <factory>)

Bases: object

Archetype config class.

Defines the system config for the modular household.

absolute_conditioned_floor_area: float | None = None

absolute area considered for heating and cooling

building_code: str = 'DE.N.SFH.05.Gen.ReEx.001.002'

building code of considered type of building originated from the Tabula data base (https://episcope.eu/building-typology/webtool/)

classmethod from_dict(kvs: dict | list | str | int | float | bool | None, *, infer_missing=False) A
classmethod from_json(s: str | bytes | bytearray, *, parse_float=None, parse_int=None, parse_constant=None, infer_missing=False, **kw) A
heating_system_installed: HeatingSystems = 'DistrictHeating'

type of heating system

mobility_distance: JsonReference | None

average daily commuting distance in kilometers, passed as input to the LoadProfileGenerator and considered to model consumption of cars

mobility_set: JsonReference | None = None

considered mobility options, passed as inputs to the LoadProfileGenerator and considered to model cars

occupancy_profile: str | None = 'AVG'
occupancy_profile_utsp: JsonReference | None = None
classmethod schema(*, infer_missing: bool = False, only=None, exclude=(), many: bool = False, context=None, load_only=(), dump_only=(), partial: bool = False, unknown=None) SchemaF[A]
to_dict(encode_json=False) Dict[str, dict | list | str | int | float | bool | None]
to_json(*, skipkeys: bool = False, ensure_ascii: bool = True, check_circular: bool = True, allow_nan: bool = True, indent: int | str | None = None, separators: Tuple[str, str] | None = None, default: Callable | None = None, sort_keys: bool = False, **kw) str
water_heating_system_installed: HeatingSystems = 'DistrictHeating'

type of water heating system

modular_household.interface_configs.system_config module

For setting the configuration of the household.

class modular_household.interface_configs.system_config.SystemConfig(surplus_control_considered: bool = False, pv_included: bool = False, pv_peak_power: float | None = 8000.0, smart_devices_included: bool = False, buffer_included: bool = False, buffer_volume: float | None = 1.0, battery_included: bool = False, battery_capacity: float | None = 10.0, heatpump_included: bool = False, heatpump_power: float | None = 1.0, chp_included: bool = False, chp_power: float | None = 0.5, hydrogen_setup_included: bool = False, fuel_cell_power: float | None = 0.5, h2_storage_size: float | None = 100, electrolyzer_power: float | None = 0.5, ev_included: bool = False, charging_station: ~utspclient.helpers.lpgpythonbindings.JsonReference = <factory>)

Bases: object

Defines the configuration and sizing of all components considered in a modular household.

battery_capacity: float | None = 10.0

capacity of the considered battery in kWh

battery_included: bool = False

decision on the consideration of battery

buffer_included: bool = False

decision on the consideration of a buffer storage for heating

buffer_volume: float | None = 1.0

volume of the considered buffer storage in multiples of the default size

charging_station: JsonReference

choice of charging station related to the options available in LoadProfileGenerator

chp_included: bool = False

decision on the consideration of combined heat and power - in this case a fuel cell

chp_power: float | None = 0.5

maximal power of the considered CHP in multiples of the default

electrolyzer_power: float | None = 0.5

maximal power of the electroylzer in Watt

ev_included: bool = False

decision on the consideration of an electriv vehicle

classmethod from_dict(kvs: dict | list | str | int | float | bool | None, *, infer_missing=False) A
classmethod from_json(s: str | bytes | bytearray, *, parse_float=None, parse_int=None, parse_constant=None, infer_missing=False, **kw) A
fuel_cell_power: float | None = 0.5

maximal power of the considered fuel cell in kW (heat and electricity combined)

h2_storage_size: float | None = 100

size of the hydrogen storage in kg hydrogen

heatpump_included: bool = False

decision on the consideration of heat pump

heatpump_power: float | None = 1.0

maximal power of the considered heat pump in multiples of the default

hydrogen_setup_included: bool = False

decision on the consideration of fuel cell + hydrogen storage + electrolyzer

pv_included: bool = False

decision on the consideration of Photovoltaic Panel

pv_peak_power: float | None = 8000.0

peak power of the considered Photovoltaic Panel in Wp

classmethod schema(*, infer_missing: bool = False, only=None, exclude=(), many: bool = False, context=None, load_only=(), dump_only=(), partial: bool = False, unknown=None) SchemaF[A]
smart_devices_included: bool = False

decision on the consideration of Smart Control of Washing Machines, Dish Washers and Dryers

surplus_control_considered: bool = False

decision on the consideration of smart control for EV charging and heat pump

to_dict(encode_json=False) Dict[str, dict | list | str | int | float | bool | None]
to_json(*, skipkeys: bool = False, ensure_ascii: bool = True, check_circular: bool = True, allow_nan: bool = True, indent: int | str | None = None, separators: Tuple[str, str] | None = None, default: Callable | None = None, sort_keys: bool = False, **kw) str

modular_household.interface_configs.kpi_config module

KPI config module.

class modular_household.interface_configs.kpi_config.KPIConfigModular(self_consumption_rate: float, autarky_rate: float, injection: float, economic_investment_costs_in_euro: float, co2_investment_costs_in_euro: float)

Bases: object

KPI config class.

autarky_rate: float

ratio between the portion of the PV production consumed by the loads and the total load, given in %

co2_investment_costs_in_euro: float

annual C02 emmissions due to the construction and operation of the considered technology, given in kg

economic_investment_costs_in_euro: float

annual cost for investment and operation in the considered technology, given in euros

classmethod from_dict(kvs: dict | list | str | int | float | bool | None, *, infer_missing=False) A
classmethod from_json(s: str | bytes | bytearray, *, parse_float=None, parse_int=None, parse_constant=None, infer_missing=False, **kw) A
get_kpi() float

Weights all kpis to get one value evaluating the performance of one building configuration.

Also referred to as “rating” or “fitness” in the evolutionary algorithm of the building sizer.

injection: float

amount of electricity injected to the grid during the simulation period, given in kWh

classmethod schema(*, infer_missing: bool = False, only=None, exclude=(), many: bool = False, context=None, load_only=(), dump_only=(), partial: bool = False, unknown=None) SchemaF[A]
self_consumption_rate: float

ratio between the portion of the PV production consumed by the loads and the total PV production, given in %

to_dict(encode_json=False) Dict[str, dict | list | str | int | float | bool | None]
to_json(*, skipkeys: bool = False, ensure_ascii: bool = True, check_circular: bool = True, allow_nan: bool = True, indent: int | str | None = None, separators: Tuple[str, str] | None = None, default: Callable | None = None, sort_keys: bool = False, **kw) str