- Does that initial body rotation rate element of 1 affect the results at all? That is, if you changed that to [0, 0, 0], does the effect go away?
- If it is more of a numerical error, you could try going to the Solver settings and reducing the time step, increasing the tolerances, etc. Maybe this could help.
Unexpected velocity component in aerospace block set 6dof euler equations
3 views (last 30 days)
Show older comments
I'm using the 6DoF equations of motion block and seeing a growing velocity component that I don't expect to see.
Initial conditions are:
- Initial position in inertial axes [Xe,Ye,Ze]: 0, 0, 0
- Initial velocity in body axes [U,v,w]: 25, 0, 0
- Initial Euler orientation [roll, pitch, yaw]: 0, 0, 0
- Initial body rotation rates [p,q,r]: [ 0, 0, 1]
- Initial mass: 1
- Inertia: Identity matrix [eye(3)]
Inputs:
- F_xyz: 0 0 0
- M_xyz: 0 0 0
All outputs are as expected except for a growing velocity term in V_e along the east (y) axis. This velocity term is gradually increasing as I run the simulation. I expect V_e to be [25, 0, 0] but instead I see [25, 5e-7, 0]. This also causes an error in the position X_e along the east (y) axis.
My guess is that this error is creeping in to the blockset equations from floating point error during the calculation of body acceleration (A_b) and then transformation and removal of the Coriolis effect to calculate NED velocity.
As a side note, Coriolis term in the body acceleration is half what I expect it to be. Any thoughts on either of this issues would be appreciated!
0 Comments
Answers (1)
Sebastian Castro
on 27 Mar 2015
First 2 things I would try out:
- Sebastian
See Also
Categories
Aerospace
Aerospace Blockset
Standard Workflow Procedures
Coordinate Systems
Equations of Motion
3DOF
Show more
Find more on Unit Conversions in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!