- Index
- » Usage and Applications
- » OpenModelica Usage and Applications
- » Infinite simulation time
Infinite simulation time
Infinite simulation time
Hi,
I am trying to create a model of a 3 phase AC EMF component similar to the Modelica.Electrical.Analog.Basic.EMF component.
The EMF3 component, as I have named it, seems to work until the component reaches steady state (emf31.w stabilizes).
The component reaches steady state when simulation time has passed 10s.
This means that when running simulate from OMEdit with stopTime = 10, then the simulation returns with a result.
But if you run the same simulation, only now with stopTime = 11s the OMEdit Simulation dialog newer returns, but instead hangs forever.
See https://docs.google.com/folder/d/0B-y_X … huX1U/edit for the files (for some reason I cannot attach files therefore this link instead).
Can someone explain why OMEdit does not return when stopTime = 11s?
/Klaus
Re: Infinite simulation time
Hi,
I ran the executable from command line
./EMF3Test.exe -lv LOG_SOLVER,LOG_EVENTS
and it seems the solver enters into some sort of loop with the event handling generated by zero crossings from these 2 equations:
Code:
bearingfriction1.startForward = pre(bearingfriction1.mode) == 0 and (bearingfriction1.sa > bearingfriction1.tau0_max or pre(bearingfriction1.startForward) and bearingfriction1.sa > bearingfriction1.tau0) or pre(bearingfriction1.mode) == -1 and bearingfriction1.w_relfric > bearingfriction1.w_small or initial() and bearingfriction1.w_relfric > 0.0;
bearingfriction1.startBackward = pre(bearingfriction1.mode) == 0 and (bearingfriction1.sa < (-bearingfriction1.tau0_max) or pre(bearingfriction1.startBackward) and bearingfriction1.sa < (-bearingfriction1.tau0)) or pre(bearingfriction1.mode) == 1 and bearingfriction1.w_relfric < (-bearingfriction1.w_small) or initial() and bearingfriction1.w_relfric < 0.0;
Why this happens only the back-end and simulation runtime developers can answer (hopefully soon).
Part of the problem might be in the tau_pos = [0,0.001;5,0.005]. I changed it to tau_pos = [0,0.001;5,1] and then it works fine, but I'm not a modeler so I don't know.
Cheers,
Adrian Pop/
- adrpo
- 885 Posts
Re: Infinite simulation time
Hi Adrian,
Thanks for your reply.
Unfortunately the fix of changing the friction is not applicable as the motor does not have a friction of 1nm (effect of changing tau_pos = [0,0.001;5,0.005] to tau_pos = [0,0.001;5,1]).
I am looking forward to a response from the backend developers you refer to :-)
/Klaus
Re: Infinite simulation time
Ok. I sent an email to the back-end developers and they will hopefully answer.
Note that we're quite busy with other things so it might take a while.
Cheers,
Adrian Pop/
- adrpo
- 885 Posts
Re: Infinite simulation time
Hi again,
We now added a bug report for this here:
https://trac.openmodelica.org/OpenModelica/ticket/1866
Hopefully it will be fixed soon.
Cheers,
Adrian Pop/
- adrpo
- 885 Posts
Re: Infinite simulation time
is fixed in r13555
- wbraun
- 75 Posts
- Index
- » Usage and Applications
- » OpenModelica Usage and Applications
- » Infinite simulation time