Skip to content

Commit 09c7624

Browse files
committed
[ModelicaSystem] improve setInputs() - reduce spaces / cleanup
1 parent 971add6 commit 09c7624

1 file changed

Lines changed: 29 additions & 28 deletions

File tree

OMPython/ModelicaSystem.py

Lines changed: 29 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1303,36 +1303,37 @@ def setInputs(
13031303
inputdata = self._prepare_input_data(raw_input=name)
13041304

13051305
for key, val in inputdata.items():
1306-
if key in self._inputs:
1307-
if not isinstance(val, str):
1308-
raise ModelicaSystemError(f"Invalid data in input for {repr(key)}: {repr(val)}")
1309-
1310-
val_evaluated = ast.literal_eval(val)
1311-
1312-
if isinstance(val_evaluated, (int, float)):
1313-
self._inputs[key] = [(float(self._simulate_options["startTime"]), float(val)),
1314-
(float(self._simulate_options["stopTime"]), float(val))]
1315-
elif isinstance(val_evaluated, list):
1316-
if not all([isinstance(item, tuple) for item in val_evaluated]):
1317-
raise ModelicaSystemError("Value for setInput() must be in tuple format; "
1318-
f"got {repr(val_evaluated)}")
1319-
if val_evaluated != sorted(val_evaluated, key=lambda x: x[0]):
1320-
raise ModelicaSystemError("Time value should be in increasing order; "
1321-
f"got {repr(val_evaluated)}")
1322-
1323-
for item in val_evaluated:
1324-
if item[0] < float(self._simulate_options["startTime"]):
1325-
raise ModelicaSystemError(f"Time value in {repr(item)} of {repr(val_evaluated)} is less "
1326-
"than the simulation start time")
1327-
if len(item) != 2:
1328-
raise ModelicaSystemError(f"Value {repr(item)} of {repr(val_evaluated)} "
1329-
"is in incorrect format!")
1330-
1331-
self._inputs[key] = val_evaluated
1332-
self._inputFlag = True
1333-
else:
1306+
if key not in self._inputs:
13341307
raise ModelicaSystemError(f"{key} is not an input")
13351308

1309+
if not isinstance(val, str):
1310+
raise ModelicaSystemError(f"Invalid data in input for {repr(key)}: {repr(val)}")
1311+
1312+
val_evaluated = ast.literal_eval(val)
1313+
1314+
if isinstance(val_evaluated, (int, float)):
1315+
self._inputs[key] = [(float(self._simulate_options["startTime"]), float(val)),
1316+
(float(self._simulate_options["stopTime"]), float(val))]
1317+
elif isinstance(val_evaluated, list):
1318+
if not all([isinstance(item, tuple) for item in val_evaluated]):
1319+
raise ModelicaSystemError("Value for setInput() must be in tuple format; "
1320+
f"got {repr(val_evaluated)}")
1321+
if val_evaluated != sorted(val_evaluated, key=lambda x: x[0]):
1322+
raise ModelicaSystemError("Time value should be in increasing order; "
1323+
f"got {repr(val_evaluated)}")
1324+
1325+
for item in val_evaluated:
1326+
if item[0] < float(self._simulate_options["startTime"]):
1327+
raise ModelicaSystemError(f"Time value in {repr(item)} of {repr(val_evaluated)} is less "
1328+
"than the simulation start time")
1329+
if len(item) != 2:
1330+
raise ModelicaSystemError(f"Value {repr(item)} of {repr(val_evaluated)} "
1331+
"is in incorrect format!")
1332+
1333+
self._inputs[key] = val_evaluated
1334+
else:
1335+
raise ModelicaSystemError(f"Data cannot be evaluated for {repr(key)}: {repr(val)}")
1336+
13361337
return True
13371338

13381339
def _createCSVData(self) -> pathlib.Path:

0 commit comments

Comments
 (0)