Skip to content

Commit 78c6198

Browse files
committed
[ModelicaSystem] add plot() function; see #144
1 parent 07eb621 commit 78c6198

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

OMPython/ModelicaSystem.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1132,6 +1132,28 @@ def simulate(
11321132

11331133
self._simulated = True
11341134

1135+
def plot(
1136+
self,
1137+
plotdata: str,
1138+
resultfile: Optional[str] = None,
1139+
) -> None:
1140+
"""
1141+
Plot via OMC.
1142+
"""
1143+
1144+
if resultfile is None:
1145+
# default result file generated by OM
1146+
plot_result_file = self.getWorkDirectory() / f"{self._model_name}_res.mat"
1147+
elif os.path.exists(resultfile):
1148+
plot_result_file = pathlib.Path(resultfile)
1149+
else:
1150+
ModelicaSystemError("No resultfile available - either run simulate() before plotting "
1151+
"or provide a result file!")
1152+
1153+
expr = f'plot({plotdata}, fileName="{plot_result_file.as_posix()}")'
1154+
1155+
self.sendExpression(expr=expr)
1156+
11351157
def getSolutions(self, varList: Optional[str | list[str]] = None, resultfile: Optional[str] = None) -> tuple[str] | np.ndarray:
11361158
"""Extract simulation results from a result data file.
11371159

0 commit comments

Comments
 (0)