Angular Accleration

36 views
Skip to first unread message

Kishor Bhalerao

unread,
Sep 27, 2019, 3:35:32 PM9/27/19
to ProjectChrono
I was just wondering if the implementation of ChFrameMoving::GetWAcc_par() is correct? Isn't the term roughly equivalent to d Gw / dt times coord_dt.rot missing from it?

I set up a simple test with a single cylinder attached to ground and driven by a constant torque. I expect a constant angular acceleration. When I plot the angular velocity (obtained using GetWvel_par()) with time, obtained using GetWvel_par(), the plot is a straight line as I expect. But when I plot the GetWacc_par() called on ChBody, I get a value that increases exponentially instead of being more or less constant. Hence the question.

Specifically, I am comparing the acceleration calculation on this line

which I expected to be a time derivative of the angular velocity calculation on this line.

Or am I calling the wrong methods?

Kishor.

Alessandro Tasora

unread,
Sep 27, 2019, 5:48:48 PM9/27/19
to Kishor Bhalerao, ProjectChrono

Hi Kishor

One possible explaination: the angular acceleration might deviate and grow (slightly) from the expected constant value if time integration error accumulates. Try using smaller time steps and tell me if the acceleration plot is the same, or gets better.

Alessandro

--
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 projectchrono+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/projectchrono/25e99713-0430-4987-ab42-f1557a05f31b%40googlegroups.com.

Kishor Bhalerao

unread,
Sep 27, 2019, 6:30:50 PM9/27/19
to ProjectChrono
Was just about to post. Do you expect the errors in angular acceleration to also be dependent on the magnitude of angular velocity in that calculation? Or just the time step? From the simple test I had set up, at lower angular velocities, I get acceptable values for angular acceleration, but as the angular velocity grows, the growth in acceleration error is exponential.

And yes, reducing the time step does reduce the errors in acceleration I expect to see. So I take my original comment back. I suspect I need to peer at the code a bit more to understand whats the internal implementation.

On Friday, September 27, 2019 at 2:48:48 PM UTC-7, Alessandro Tasora wrote:

Hi Kishor

One possible explaination: the angular acceleration might deviate and grow (slightly) from the expected constant value if time integration error accumulates. Try using smaller time steps and tell me if the acceleration plot is the same, or gets better.

Alessandro

Il 27/Set/2019 21:35, "Kishor Bhalerao" <kish...@gmail.com> ha scritto:
I was just wondering if the implementation of ChFrameMoving::GetWAcc_par() is correct? Isn't the term roughly equivalent to d Gw / dt times coord_dt.rot missing from it?

I set up a simple test with a single cylinder attached to ground and driven by a constant torque. I expect a constant angular acceleration. When I plot the angular velocity (obtained using GetWvel_par()) with time, obtained using GetWvel_par(), the plot is a straight line as I expect. But when I plot the GetWacc_par() called on ChBody, I get a value that increases exponentially instead of being more or less constant. Hence the question.

Specifically, I am comparing the acceleration calculation on this line

which I expected to be a time derivative of the angular velocity calculation on this line.

Or am I calling the wrong methods?

Kishor.

--
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 projec...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages