Skip to content

Commit

Permalink
Update OMSimulator (#7686)
Browse files Browse the repository at this point in the history
  • Loading branch information
lochel committed Jul 13, 2021
1 parent e9f86ba commit eaee7a2
Show file tree
Hide file tree
Showing 23 changed files with 87 additions and 82 deletions.
2 changes: 1 addition & 1 deletion OMSimulator
Submodule OMSimulator updated 128 files
12 changes: 6 additions & 6 deletions testsuite/omsimulator/DualMassOscillator.mos
Expand Up @@ -31,7 +31,7 @@ oms_addConnection("DualMassOscillator.root.system1.a1", "DualMassOscillator.root
//simulation settings
oms_setResultFile("DualMassOscillator", "DualMassOscillator.mat", 100);
oms_setStopTime("DualMassOscillator", 0.1);
oms_setFixedStepSize("DualMassOscillator.root", 1e-5);
oms_setVariableStepSize("DualMassOscillator.root", 1e-12, 1e-12, 1e-3);

oms_instantiate("DualMassOscillator");
oms_setReal("DualMassOscillator.root.system2.s2_start", 2.5);
Expand Down Expand Up @@ -65,15 +65,15 @@ unloadOMSimulator();
// ""
// "DualMassOscillator.System2.fmu"
// ""
// info: maximum step size for 'DualMassOscillator.root': 0.100000
// info: maximum step size for 'DualMassOscillator.root': 0.001000
// info: Result file: DualMassOscillator.mat (bufferSize=100)
// info: Initialization
// info: system1.s1: 1.0
// info: system2.s2: 2.5
// info: Simulation
// info: system1.s1: 0.9106854898769722
// info: system2.s2: 1.956251983576969
// info: system1.s1: 0.9107619945231425
// info: system2.s2: 1.956167802753965
// info: Final Statistics for 'DualMassOscillator.root':
// NumSteps = 656 NumRhsEvals = 911 NumLinSolvSetups = 120
// NumNonlinSolvIters = 910 NumNonlinSolvConvFails = 0 NumErrTestFails = 57
// NumSteps = 679 NumRhsEvals = 851 NumLinSolvSetups = 100
// NumNonlinSolvIters = 850 NumNonlinSolvConvFails = 0 NumErrTestFails = 35
// endResult
14 changes: 7 additions & 7 deletions testsuite/omsimulator/DualMassOscillator_me.mos
Expand Up @@ -23,8 +23,8 @@ oms_addConnection(\"DualMassOscillator.root.system1.a1\", \"DualMassOscillator.r

oms_setResultFile(\"DualMassOscillator\", \"\")
oms_setStopTime(\"DualMassOscillator\", 0.1)
oms_setFixedStepSize(\"DualMassOscillator.root\", 1e-4)
oms_setTolerance(\"DualMassOscillator.root\", 1e-6)
oms_setVariableStepSize(\"DualMassOscillator.root\", 1e-12, 1e-12, 1e-3)
oms_setTolerance(\"DualMassOscillator.root\", 1e-6, 1e-6)

oms_instantiate(\"DualMassOscillator\")
oms_setReal(\"DualMassOscillator.root.system2.s2_start\", 2.5)
Expand Down Expand Up @@ -64,17 +64,17 @@ val(system2.s2, {0.0,0.1});
// true
// ""
// 0
// "info: maximum step size for 'DualMassOscillator.root': 0.100000
// "info: maximum step size for 'DualMassOscillator.root': 0.001000
// info: No result file will be created
// info: Initialization
// info: system1.s1: 1.0
// info: system2.s2: 2.5
// info: Simulation
// info: system1.s1: 0.9112797974079
// info: system2.s2: 1.9556338147396
// info: system1.s1: 0.91127925119695
// info: system2.s2: 1.9556343729061
// info: Final Statistics for 'DualMassOscillator.root':
// NumSteps = 1301 NumRhsEvals = 1545 NumLinSolvSetups = 138
// NumNonlinSolvIters = 1544 NumNonlinSolvConvFails = 0 NumErrTestFails = 49
// NumSteps = 1353 NumRhsEvals = 1633 NumLinSolvSetups = 179
// NumNonlinSolvIters = 1632 NumNonlinSolvConvFails = 0 NumErrTestFails = 62
// "
// record SimulationResult
// resultFile = "DualMassOscillator.CoupledSystem_res.mat",
Expand Down
5 changes: 5 additions & 0 deletions testsuite/omsimulator/Makefile
Expand Up @@ -43,6 +43,11 @@ test:
@echo OPENMODELICAHOME=" $(OPENMODELICAHOME) "
@$(TEST) $(TESTFILES)

baseline:
@echo
@echo Updating baselines...
@$(TEST) -b $(TESTFILES)

# Cleans all files that are not listed as dependencies
clean :
@echo $(DEPENDENCIES) | sed 's/ /\\|/g' > deps.tmp
Expand Down
Expand Up @@ -14,7 +14,7 @@ readFile("Pendulum_systemCall.log");
// "Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum.fmu"
// ""
// 0
// "info: maximum step size for 'model.root': 0.100000
// "info: maximum step size for 'model.root': 0.001000
// info: Result file: model_res.mat (bufferSize=10)
// info: Variable model.root.fmu.body.cylinder.shapeType will not be stored in the result file, because the signal type is not supported
// info: Variable model.root.fmu.body.sphere.shapeType will not be stored in the result file, because the signal type is not supported
Expand All @@ -37,7 +37,7 @@ readFile("Pendulum_systemCall.log");
// info: Variable model.root.fmu.world.z_label.cylinders[2].shapeType will not be stored in the result file, because the signal type is not supported
// info: Variable model.root.fmu.world.z_label.cylinders[3].shapeType will not be stored in the result file, because the signal type is not supported
// info: Final Statistics for 'model.root':
// NumSteps = 53 NumRhsEvals = 69 NumLinSolvSetups = 13
// NumNonlinSolvIters = 68 NumNonlinSolvConvFails = 0 NumErrTestFails = 3
// NumSteps = 1004 NumRhsEvals = 1009 NumLinSolvSetups = 55
// NumNonlinSolvIters = 1008 NumNonlinSolvConvFails = 0 NumErrTestFails = 1
// "
// endResult
10 changes: 5 additions & 5 deletions testsuite/omsimulator/initialization.mos
Expand Up @@ -57,18 +57,18 @@ readFile("initialization_systemCall.log");
// true
// ""
// 0
// "info: maximum step size for 'test.root': 0.100000
// "info: maximum step size for 'test.root': 0.001000
// info: No result file will be created
// info: Initialization
// info: A.x_start: 1.5
// info: A.x: 1.5
// info: A.w: 1.5
// info: Simulation
// info: A.x_start: 1.5
// info: A.x: 1.9080371522852
// info: A.w: 2.3160743045704
// info: A.x: 1.9994990009999
// info: A.w: 2.498998002
// info: Final Statistics for 'test.root':
// NumSteps = 37 NumRhsEvals = 83 NumLinSolvSetups = 39
// NumNonlinSolvIters = 82 NumNonlinSolvConvFails = 0 NumErrTestFails = 18
// NumSteps = 1001 NumRhsEvals = 1002 NumLinSolvSetups = 51
// NumNonlinSolvIters = 1001 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// "
// endResult
2 changes: 1 addition & 1 deletion testsuite/omsimulator/initialization2.mos
Expand Up @@ -56,7 +56,7 @@ readFile("initialization2_systemCall.log");
// true
// ""
// 0
// "info: maximum step size for 'test.root': 0.100000
// "info: maximum step size for 'test.root': 0.001000
// info: No result file will be created
// info: Initialization
// info: A.y: 2.3
Expand Down
2 changes: 1 addition & 1 deletion testsuite/omsimulator/initialization2_omc.mos
Expand Up @@ -63,7 +63,7 @@ unloadOMSimulator();
// ""
// true
// ""
// info: maximum step size for 'test.root': 0.100000
// info: maximum step size for 'test.root': 0.001000
// info: Result file: test_res.mat (bufferSize=10)
// info: Initialization
// info: A.y: 2.3
Expand Down
10 changes: 5 additions & 5 deletions testsuite/omsimulator/initialization_omc.mos
Expand Up @@ -68,17 +68,17 @@ unloadOMSimulator();
// ""
// "initialization.fmu"
// ""
// info: maximum step size for 'test.root': 0.100000
// info: maximum step size for 'test.root': 0.001000
// info: Result file: test_res.mat (bufferSize=10)
// info: Initialization
// info: A.x_start: 1.5
// info: A.x: 1.5
// info: A.w: 1.5
// info: Simulation
// info: A.x_start: 1.5
// info: A.x: 1.908037152285186
// info: A.w: 2.31607430457037
// info: A.x: 1.999499000999917
// info: A.w: 2.498998001999992
// info: Final Statistics for 'test.root':
// NumSteps = 37 NumRhsEvals = 83 NumLinSolvSetups = 39
// NumNonlinSolvIters = 82 NumNonlinSolvConvFails = 0 NumErrTestFails = 18
// NumSteps = 1001 NumRhsEvals = 1002 NumLinSolvSetups = 51
// NumNonlinSolvIters = 1001 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// endResult
10 changes: 5 additions & 5 deletions testsuite/omsimulator/outputState.mos
Expand Up @@ -58,16 +58,16 @@ readFile("outputState_systemCall.log");
// true
// ""
// 0
// "info: maximum step size for 'test.root': 0.100000
// "info: maximum step size for 'test.root': 0.001000
// info: No result file will be created
// info: Initialization
// info: A.y: 1.5
// info: B.u: 1.5
// info: Simulation
// info: A.y: 0.5
// info: B.u: 0.5
// info: A.y: 0.50000000000006
// info: B.u: 0.50000000000006
// info: Final Statistics for 'test.root':
// NumSteps = 12 NumRhsEvals = 13 NumLinSolvSetups = 3
// NumNonlinSolvIters = 12 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// NumSteps = 1001 NumRhsEvals = 1002 NumLinSolvSetups = 51
// NumNonlinSolvIters = 1001 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// "
// endResult
10 changes: 5 additions & 5 deletions testsuite/omsimulator/outputState_omc.mos
Expand Up @@ -65,15 +65,15 @@ unloadOMSimulator();
// ""
// "sink.fmu"
// ""
// info: maximum step size for 'test.root': 0.100000
// info: maximum step size for 'test.root': 0.001000
// info: Result file: test_res.mat (bufferSize=10)
// info: Initialization
// info: A.y: 1.5
// info: B.u: 1.5
// info: Simulation
// info: A.y: 0.4999999999999998
// info: B.u: 0.4999999999999998
// info: A.y: 0.5000000000000554
// info: B.u: 0.5000000000000554
// info: Final Statistics for 'test.root':
// NumSteps = 12 NumRhsEvals = 13 NumLinSolvSetups = 3
// NumNonlinSolvIters = 12 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// NumSteps = 1001 NumRhsEvals = 1002 NumLinSolvSetups = 51
// NumNonlinSolvIters = 1001 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// endResult
6 changes: 3 additions & 3 deletions testsuite/omsimulator/reset.mos
Expand Up @@ -70,20 +70,20 @@ readFile("reset_systemCall.log");
// info: A.x: 1.0
// info: Simulation
// info: A.x_start: 1.0
// info: A.x: 0.3486784401
// info: A.x: 0.36769542477096
// info: No result file will be created
// info: Initialization
// info: A.x_start: 1.5
// info: A.x: 1.5
// info: Simulation
// info: A.x_start: 1.5
// info: A.x: 0.52301766015
// info: A.x: 0.55154313715645
// info: No result file will be created
// info: Initialization
// info: A.x_start: 1.5
// info: A.x: 1.5
// info: Simulation
// info: A.x_start: 1.5
// info: A.x: 0.52301766015
// info: A.x: 0.55154313715645
// "
// endResult
8 changes: 4 additions & 4 deletions testsuite/omsimulator/resetWithLoops.mos
Expand Up @@ -54,20 +54,20 @@ readFile("resetWithLoops_systemCall.log");
// 0
// "Instantiate
// Initialize
// info: maximum step size for 'model.root': 0.100000
// info: maximum step size for 'model.root': 0.001000
// info: Result file: model_res.mat (bufferSize=10)
// Reset
// info: Final Statistics for 'model.root':
// NumSteps = 0 NumRhsEvals = 0 NumLinSolvSetups = 0
// NumNonlinSolvIters = 0 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// Initialize
// info: maximum step size for 'model.root': 0.100000
// info: maximum step size for 'model.root': 0.001000
// info: Result file: model_res.mat (bufferSize=10)
// Simulate
// Terminate and Delete
// info: Final Statistics for 'model.root':
// NumSteps = 1 NumRhsEvals = 5 NumLinSolvSetups = 2
// NumNonlinSolvIters = 4 NumNonlinSolvConvFails = 0 NumErrTestFails = 1
// NumSteps = 23 NumRhsEvals = 42 NumLinSolvSetups = 14
// NumNonlinSolvIters = 41 NumNonlinSolvConvFails = 0 NumErrTestFails = 4
// Success
// "
// endResult
6 changes: 3 additions & 3 deletions testsuite/omsimulator/reset_omc.mos
Expand Up @@ -77,19 +77,19 @@ unloadOMSimulator();
// info: A.x: 1.0
// info: Simulation
// info: A.x_start: 1.0
// info: A.x: 0.3486784401
// info: A.x: 0.3676954247709639
// info: Result file: test_res.mat (bufferSize=10)
// info: Initialization
// info: A.x_start: 1.5
// info: A.x: 1.5
// info: Simulation
// info: A.x_start: 1.5
// info: A.x: 0.5230176601500001
// info: A.x: 0.5515431371564458
// info: Result file: test_res.mat (bufferSize=10)
// info: Initialization
// info: A.x_start: 1.5
// info: A.x: 1.5
// info: Simulation
// info: A.x_start: 1.5
// info: A.x: 0.5230176601500001
// info: A.x: 0.5515431371564458
// endResult
6 changes: 3 additions & 3 deletions testsuite/omsimulator/testDirectionalDerivatives.mos
Expand Up @@ -55,14 +55,14 @@ readFile("directionalDerivatives_systemCall.log");
// true
// ""
// 0
// "info: maximum step size for 'test.root': 0.100000
// "info: maximum step size for 'test.root': 0.001000
// info: Result file: directionalDerivatives.csv (bufferSize=1)
// info: Initialization
// info: system1.C1.v: 0.0
// info: Simulation
// info: system1.C1.v: 0.0
// info: Final Statistics for 'test.root':
// NumSteps = 12 NumRhsEvals = 13 NumLinSolvSetups = 3
// NumNonlinSolvIters = 12 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// NumSteps = 1001 NumRhsEvals = 1002 NumLinSolvSetups = 51
// NumNonlinSolvIters = 1001 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// "
// endResult
14 changes: 7 additions & 7 deletions testsuite/omsimulator/testLoopsOverFMUs.mos
Expand Up @@ -125,23 +125,23 @@ val(D.x_out, 0.1, "loopsOverFMUs.mat");
// ""
// "warning: Alg. loop (size 3)
// warning: Alg. loop (size 2)
// info: maximum step size for 'loopsOverFMUs.root': 0.100000
// info: maximum step size for 'loopsOverFMUs.root': 0.001000
// info: Result file: loopsOverFMUs.mat (bufferSize=1)
// warning: Alg. loop (size 3)
// warning: Alg. loop (size 2)
// warning: Alg. loop (size 3)
// warning: Alg. loop (size 2)
// info: Final Statistics for 'loopsOverFMUs.root':
// NumSteps = 10 NumRhsEvals = 15 NumLinSolvSetups = 6
// NumNonlinSolvIters = 14 NumNonlinSolvConvFails = 0 NumErrTestFails = 1
// NumSteps = 101 NumRhsEvals = 102 NumLinSolvSetups = 7
// NumNonlinSolvIters = 101 NumNonlinSolvConvFails = 0 NumErrTestFails = 0
// info: 6 warnings
// info: 0 errors
// "
// 0.6354248688886293
// 0.6354248688935413
// -1.8
// 1.164575131109139
// 1.164575131106459
// 2.0
// 2.443067244571996
// 2.442813485479551
// 2.0
// 2.443067244215552
// 2.442813485479604
// endResult
Expand Up @@ -80,8 +80,8 @@ val(rev.w, 1.0, "Pendulum_dynamic_res.mat"); getErrorString();
// ""
// 0.0
// ""
// -2.697256534092101
// -2.591643977798211
// ""
// 3.193698935005398
// 3.178793199957203
// ""
// endResult
Expand Up @@ -81,8 +81,8 @@ val(rev.w, 1.0, "Pendulum_static_res.mat"); getErrorString();
// ""
// 0.0
// ""
// -2.697256534092101
// -2.591643977798211
// ""
// 3.193698935005398
// 3.178793199957203
// ""
// endResult
Expand Up @@ -161,8 +161,8 @@ val(v, 1.0, "BouncingBallFMI20_res.mat"); getErrorString();
// ""
// 0.0
// ""
// 0.2929513314967939
// 0.2323155070000016
// ""
// -2.061090909090879
// -2.255319000000001
// ""
// endResult
8 changes: 4 additions & 4 deletions testsuite/openmodelica/omsi/omsic/problem2.mos
Expand Up @@ -49,7 +49,7 @@ compareSimulationResults("problem2_OMS_res.mat",
// ""
// record SimulationResult
// resultFile = "problem2_res.mat",
// simulationOptions = "startTime = 0.0, stopTime = 1.0, numberOfIntervals = 500, tolerance = 1e-006, method = 'dassl', fileNamePrefix = 'problem2', options = '', outputFormat = 'mat', variableFilter = '.*', cflags = '', simflags = ''",
// simulationOptions = "startTime = 0.0, stopTime = 1.0, numberOfIntervals = 500, tolerance = 1e-06, method = 'dassl', fileNamePrefix = 'problem2', options = '', outputFormat = 'mat', variableFilter = '.*', cflags = '', simflags = ''",
// messages = "LOG_SUCCESS | info | The initialization finished successfully without homotopy method.
// LOG_SUCCESS | info | The simulation finished successfully.
// "
Expand All @@ -61,11 +61,11 @@ compareSimulationResults("problem2_OMS_res.mat",
// ""
// 0
// ""
// "info: maximum step size for 'model.root': 0.100000
// "info: maximum step size for 'model.root': 0.001000
// info: Result file: problem2_OMS_res.mat (bufferSize=1)
// info: Final Statistics for 'model.root':
// NumSteps = 48 NumRhsEvals = 66 NumLinSolvSetups = 14
// NumNonlinSolvIters = 65 NumNonlinSolvConvFails = 0 NumErrTestFails = 3
// NumSteps = 1004 NumRhsEvals = 1009 NumLinSolvSetups = 54
// NumNonlinSolvIters = 1008 NumNonlinSolvConvFails = 0 NumErrTestFails = 1
// "
// {"Files Equal!"}
// endResult

0 comments on commit eaee7a2

Please sign in to comment.