@@ -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