topotherm.settings

This file contains all the settings for the optimization problem and should be modified and adapted to each case through a .yaml file (see examples).

Classes

Water

Water properties for the linearization of piping.

Ground

Ground properties for the linearization of piping.

Temperatures

Temperatures for the linearization of piping, calculation of

Piping

Piping properties for the linearization of piping.

Solver

Solver properties for the optimization problem. Used for the

Economics

Economic properties for the optimization problem. Used for the

Settings

Class for the settings of the optimization problem which is passed

Functions

load(file_path)

Load the settings from a yaml file.

Module Contents

class topotherm.settings.Water(/, **data)[source]

Bases: pydantic.BaseModel

Water properties for the linearization of piping.

Parameters:

data (Any)

dynamic_viscosity: float = None[source]
density: float = None[source]
heat_capacity_cp: float = None[source]
class topotherm.settings.Ground(/, **data)[source]

Bases: pydantic.BaseModel

Ground properties for the linearization of piping.

Parameters:

data (Any)

thermal_conductivity: float = None[source]
class topotherm.settings.Temperatures(/, **data)[source]

Bases: pydantic.BaseModel

Temperatures for the linearization of piping, calculation of postprocessing.

Parameters:

data (Any)

ambient: float = None[source]
supply: float = None[source]
return_: float = None[source]
class topotherm.settings.Piping(/, **data)[source]

Bases: pydantic.BaseModel

Piping properties for the linearization of piping.

Parameters:

data (Any)

diameter: List[float] = None[source]
middle_diameter: List[float] = None[source]
outer_diameter: List[float] = None[source]
cost: List[float] = None[source]
number_diameters: int = None[source]
max_pr_loss: float = None[source]
roughness: float = None[source]
thermal_conductivity: float = None[source]
depth: float = None[source]
check_length()[source]

Check if the length of diameter, outer_diameter, and cost is consistent with the defined number diameters.

class topotherm.settings.Solver(/, **data)[source]

Bases: pydantic.BaseModel

Solver properties for the optimization problem. Used for the optimization model.

Parameters:

data (Any)

mip_gap: float = None[source]
time_limit: int = None[source]
log: str = None[source]
class topotherm.settings.Economics(/, **data)[source]

Bases: pydantic.BaseModel

Economic properties for the optimization problem. Used for the optimization model.

Parameters:

data (Any)

source_price: List[List[float]] = None[source]
source_c_inv: List[float] = None[source]
source_c_irr: List[float] = None[source]
source_lifetime: List[float] = None[source]
source_max_power: List[float] = None[source]
source_min_power: List[float] = None[source]
pipes_c_irr: float = None[source]
heat_price: float = None[source]
pipes_lifetime: float = None[source]
class topotherm.settings.Settings(water=Water(), ground=Ground(), temperatures=Temperatures(), piping=Piping(), solver=Solver(), economics=Economics())[source]

Bases: pydantic.BaseModel

Class for the settings of the optimization problem which is passed to the regression, optimization model, and postprocessing.

Parameters:
water: Water[source]
ground: Ground[source]
temperatures: Temperatures[source]
piping: Piping[source]
solver: Solver[source]
economics: Economics[source]
topotherm.settings.load(file_path)[source]

Load the settings from a yaml file.

Parameters:

file_path (Union[str, os.PathLike[str]])

Return type:

Settings