Issue for setting multiple ChLinkMotorRotationSpeed

84 views
Skip to first unread message

Chao Zhang

unread,
Feb 16, 2023, 3:53:27 AM2/16/23
to ProjectChrono
Hi everyone,
I am using chrono to test the performance of multiple specified axes of rotation by implementing a rotation motion of the Earth while orbiting the Sun, but when I use two ChLinkMotorRotationSpeed applied to the rigid body of the Earth, the results of the simulation are not satisfactory.
For two or more ChLinkMotorRotationSpeed constraints, how can I achieve accurate results for multiple ChLinkMotorRotationSpeeds on a rigid body by having some of them move with the rigid body?
Any suggestions would be appreciated!

Chao

Chao Zhang

unread,
Feb 16, 2023, 10:12:44 PM2/16/23
to ProjectChrono
Here is my code and attached files
imposed_motion_rotation.py
egg_modify.obj
cup.obj

Dan Negrut

unread,
Feb 18, 2023, 10:38:07 AM2/18/23
to Chao Zhang, ProjectChrono

Chao – it might be that the numerical integration formulas that we’re using in Chrono are not the best fit for you. If you look at celestial mechanics, I imagine you’d need symplectic integrators, perhaps high order. We don’t have that.

I would give the HHT integrator a shot. I would set alpha to zero to get a trapezoidal integration formula, which in principle doesn’t dissipate energy and is second order. Not clear if that would work, but give it a shot and let us know if it made any difference.

Good luck.

Dan

--
You received this message because you are subscribed to the Google Groups "ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email to projectchron...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/projectchrono/2f1c760b-08ff-4e96-ae59-b0259877d8e0n%40googlegroups.com.

Chao Zhang

unread,
Feb 19, 2023, 9:26:42 PM2/19/23
to ProjectChrono
Dan

First of all, thank you very much for your advice!
I have tried HHT integrator and set its parameter alpha to 0.0, unfortunately, the result still appears unphysical.
However, I have just implemented a different way to simulate this problem. The general idea is to set two ChLinkMotorRotationSpeed. (1). When Initialize the revolution of egg, define a virtual rigid body as Master Frame, COG of cup as Slave Frame, and the speed as egg revolution speed. (2). For the rotation of egg, we define COG of cup as Master Frame, COG of egg as Slave Frame, and the speed as the egg rotation speed. In this way, the egg inherits the rotation of the cup and thus has the effect of revolution. It is worth noting that the COGs of virtual rigid body and cup are in the same projection point in the direction of rotation axis.

Best wishes

Chao
Reply all
Reply to author
Forward
0 new messages