Skip to content

Commit bd25e91

Browse files
committed
Add old methods
1 parent 93cdbee commit bd25e91

1 file changed

Lines changed: 55 additions & 17 deletions

File tree

flixopt/results.py

Lines changed: 55 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -181,22 +181,22 @@ def from_file(cls, folder: str | pathlib.Path, name: str) -> Results:
181181
)
182182

183183
@classmethod
184-
def from_calculation(cls, calculation: Calculation) -> Results:
185-
"""Create CalculationResults from a Calculation object.
184+
def from_optimization(cls, optimization) -> Results:
185+
"""Create Results from an Optimization instance.
186186
187187
Args:
188-
calculation: Calculation object with solved model.
188+
optimization: The Optimization instance to extract results from.
189189
190190
Returns:
191-
Results: New instance with extracted results.
191+
Results: New instance containing the optimization results.
192192
"""
193193
return cls(
194-
solution=calculation.model.solution,
195-
flow_system_data=calculation.flow_system.to_dataset(),
196-
summary=calculation.summary,
197-
model=calculation.model,
198-
name=calculation.name,
199-
folder=calculation.folder,
194+
solution=optimization.model.solution,
195+
flow_system_data=optimization.flow_system.to_dataset(),
196+
summary=optimization.summary,
197+
model=optimization.model,
198+
name=optimization.name,
199+
folder=optimization.folder,
200200
)
201201

202202
def __init__(
@@ -1122,6 +1122,21 @@ def __init__(self, *args, **kwargs):
11221122
)
11231123
super().__init__(*args, **kwargs)
11241124

1125+
@classmethod
1126+
def from_calculation(cls, calculation):
1127+
"""Create CalculationResults from a Calculation object.
1128+
1129+
DEPRECATED: Use Results.from_optimization() instead.
1130+
Backwards-compatible method that redirects to from_optimization().
1131+
1132+
Args:
1133+
calculation: Calculation object with solved model.
1134+
1135+
Returns:
1136+
CalculationResults: New instance with extracted results.
1137+
"""
1138+
return cls.from_optimization(calculation)
1139+
11251140

11261141
class _ElementResults:
11271142
def __init__(self, calculation_results: Results, label: str, variables: list[str], constraints: list[str]):
@@ -2079,14 +2094,22 @@ class SegmentedResults:
20792094
"""
20802095

20812096
@classmethod
2082-
def from_calculation(cls, calculation: SegmentedCalculation):
2097+
def from_optimization(cls, optimization):
2098+
"""Create SegmentedResults from a SegmentedOptimization instance.
2099+
2100+
Args:
2101+
optimization: The SegmentedOptimization instance to extract results from.
2102+
2103+
Returns:
2104+
SegmentedResults: New instance containing the optimization results.
2105+
"""
20832106
return cls(
2084-
[calc.results for calc in calculation.sub_calculations],
2085-
all_timesteps=calculation.all_timesteps,
2086-
timesteps_per_segment=calculation.timesteps_per_segment,
2087-
overlap_timesteps=calculation.overlap_timesteps,
2088-
name=calculation.name,
2089-
folder=calculation.folder,
2107+
[calc.results for calc in optimization.sub_calculations],
2108+
all_timesteps=optimization.all_timesteps,
2109+
timesteps_per_segment=optimization.timesteps_per_segment,
2110+
overlap_timesteps=optimization.overlap_timesteps,
2111+
name=optimization.name,
2112+
folder=optimization.folder,
20902113
)
20912114

20922115
@classmethod
@@ -2378,6 +2401,21 @@ def __init__(self, *args, **kwargs):
23782401
)
23792402
super().__init__(*args, **kwargs)
23802403

2404+
@classmethod
2405+
def from_calculation(cls, calculation):
2406+
"""Create SegmentedCalculationResults from a SegmentedCalculation object.
2407+
2408+
DEPRECATED: Use SegmentedResults.from_optimization() instead.
2409+
Backwards-compatible method that redirects to from_optimization().
2410+
2411+
Args:
2412+
calculation: SegmentedCalculation object with solved model.
2413+
2414+
Returns:
2415+
SegmentedCalculationResults: New instance with extracted results.
2416+
"""
2417+
return cls.from_optimization(calculation)
2418+
23812419

23822420
def plot_heatmap(
23832421
data: xr.DataArray | xr.Dataset,

0 commit comments

Comments
 (0)