Restoration fault when splitting component into two seperate components (Dymos) #3225
Unanswered
TidoHoutepen
asked this question in
Q&A
Replies: 1 comment 1 reply
-
Thanks for your question! Could you please share your code so that we can take a look and help? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I have been building an optimal control simulation using dymos, similar to the racecar example from the documentation (https://openmdao.org/dymos/docs/latest/examples/racecar/racecar.html). In my simulation there is a vehicle dynamics model that calculates the accelerations in the vehicle reference frame, based on the forces produced by the tires and the current velocities of the vehicle.
The tire forces are calculated by a second component that takes the vehicle velocities (states) and applied torques (controls) using simple linear relations (longitudinal force scales linearly with torque, lateral force scales with slip angle). Finally there is a third component that calculates the grip limits of the tire based on a friction circle. See the XDSM below:
When I try to run this I get a restoration failure from IPOPT. Checking the total derivatives against complex step gives me this output:
I have checked all the partials using the complex step method as was done in the baristochrome example and they should all be correct.
When I merge the vehicle dynamics and tire force calculation blocks into one block the optimisation runs great and there are no problems whatsoever. This led me to think that there might have been missing information about the partial derivatives of the slip angles that are used to caclulate the tire force, thus I tried moving the slip angle calculation to the TireForce component. This did not solve the issue though. What could cause this behaviour?
Beta Was this translation helpful? Give feedback.
All reactions