How do I solve the inverse kinematics of a nonlinear differential equation?

1 view (last 30 days)
I am simulating a ball that is thrown with certain initial conditions: qp0=(q10,q20,qp10,qp20,omegap0) ; q10 and q20 being the initial positions of the ball in x and y, qp10 and qp20 being the initial velocity in x and y direction and omegap0 bein the initial angular momentum of the ball. The differential equation describing the throw looks like this: D(q)q¨ + C(q, qp)qp + g(q) = τ(q,qp) . D and C are matrices dependent on q and qp, g is a vector dependent on q and τ is a vector dependent on q and qp. q is the a vector with the general coordinates of my system. q1 is the x coordinate, q2 is the y coordinate and omega is the current angel of the ball relativ to its vertical achsis. The ball is supposed to bounce 2 times and the second time should be when the simulation stops. The task is to find the inverse kinematics of the system so that for a given end position at the second contact with the floor I can calculate the necessary initial conditions fo the system.
I would need help asessing how to solve the nonlinear differential equation numerically so that it can find an equation that gives me the inverse kinematics as described above.
Thanks for any help in advance.direction, ball.png

Answers (1)

Star Strider
Star Strider on 13 Sep 2019
You can use the techniques in: Parameter Estimation for a System of Differential Equations. You can likely optimise with respect to the initial conditions, without needing to optimise any of the other parameters.

Products


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!