state_schemas
State
Bases: BaseModel
Stores information about temperatures within cables at the final state.
The final state is reached at the end of the simulation. In addition, the relevant cable representations and their properties are stored.
Attributes:
| Name | Type | Description |
|---|---|---|
static_env_hash |
int
|
str: Deterministic hash of the static environment, used for validation and consistency checks. |
temperature |
dict[CableKey, ndarray]
|
dict[CableKey, np.ndarray]: Combines the self-heating contribution with the ambient temperature profile and, for a StateSoil object, the mutual-heating contribution. |
self_heating_contribution |
dict[CableKey, ndarray]
|
dict[CableKey, np.ndarray]: The temperature delta profile as a result of self-heating due to the load. |
check_solution_consistency
check_solution_consistency()
Validate that temperature and self_heating_contribution share the same cable keys.
Source code in cable_thermal_model/model/schemas/state_schemas.py
57 58 59 60 61 62 63 64 65 66 67 68 | |
serialize_temperature
serialize_temperature(arrays: dict[CableKey, ndarray]) -> dict[str, list[float]]
Serialize numpy arrays to lists for JSON compatibility.
Source code in cable_thermal_model/model/schemas/state_schemas.py
70 71 72 73 | |
deserialize_temperature
deserialize_temperature(value: dict[str | CableKey, list[float] | ndarray]) -> dict[CableKey, ndarray]
Deserialize lists back to numpy arrays.
Source code in cable_thermal_model/model/schemas/state_schemas.py
75 76 77 78 79 80 | |
StateSoil
Bases: State
Extends upon the base State class. Includes additional attribute mutual_heating_contribution and its validation.
Attributes:
| Name | Type | Description |
|---|---|---|
mutual_heating_contribution |
dict[CableKey, ndarray]
|
dict[CableKey, np.ndarray]: A dictionary containing the temperature increase inside a cable due to mutual heating from other cables in the environment. This is stored as a dict with CableKey as key and an array of temperature increases per grid point as value. |
serialize_mutual_heating_contribution
serialize_mutual_heating_contribution(arrays: dict[CableKey, ndarray]) -> dict[str, list[float]]
Serialize mutual-heating arrays to lists for JSON compatibility.
Source code in cable_thermal_model/model/schemas/state_schemas.py
102 103 104 105 | |
deserialize_mutual_heating_contribution
deserialize_mutual_heating_contribution(value: dict[str | CableKey, list[float] | ndarray]) -> dict[CableKey, ndarray]
Deserialize lists back to numpy arrays for mutual-heating.
Source code in cable_thermal_model/model/schemas/state_schemas.py
107 108 109 110 111 112 | |
validate_mutual_heating_contribution
validate_mutual_heating_contribution()
Validate that mutual_heating_contribution keys match cable keys.
Source code in cable_thermal_model/model/schemas/state_schemas.py
114 115 116 117 118 119 120 121 122 123 124 | |
StateAir
Bases: State
StateAir has no added attributes on top of State.
However, we want to make sure there is only one circuit (check for a unique circuit_name).
validate_single_circuit
validate_single_circuit()
Ensure that all cable keys in StateAir belong to the same circuit.
Source code in cable_thermal_model/model/schemas/state_schemas.py
133 134 135 136 137 138 139 140 | |