About torque

Started by
15 comments, last by spiffgq 19 years, 11 months ago
quote:Original post by spiffgq
How can I generalize this in my engine''s physics sub-system such that I don''t need to keep track of forces and torques as separate things?

With a vector and a quaternion. A vector gives you direction and magnitude for the linear acceleration, and a quaternion gives you a moment of rotation and magnitude.

Note that when physics is involved the magnitude is important (where as the magnitude is normalized for geometric placement).

...
quote:Original post by Anonymous Poster
quote:Original post by spiffgq
However, the linear acceleration won''t be as strong as if a force of the same magnitude was acting through the center of mass.

Yes, it will. Many people find this counter intuitive, but that''s the way it is.


I think you''re talking about two different things - you''re both right.
- The trade-off between price and quality does not exist in Japan. Rather, the idea that high quality brings on cost reduction is widely accepted.-- Tajima & Matsubara
Advertisement
Hmmm? I''m pretty sure that if you apply the same force on the same object twice, but one on CM and the other one somewhere else, the resulting linear acceleration will be different...
I mean, put a pen on your desk and hit it with another pen, once its center, other time its end. You will see the difference. I also think that if you hit your pen on the very end of it, you could possibly make it spin without chaning it''s position...

The other thing is conservation of energy: if we apply the same force but it now not only moves the same way but also spins - where does it take the extra energy to spin from? It has to give up some of it''s energy produced by the force on spinning, therefore making its linear motion slower...

unless I''m a retard...
Comrade, Listen! The Glorious Commonwealth's first Airship has been compromised! Who is the saboteur? Who can be saved? Uncover what the passengers are hiding and write the grisly conclusion of its final hours in an open-ended, player-driven adventure. Dziekujemy! -- Karaski: What Goes Up...
quote:Original post by szinkopa
The linear acceleration will be the same as before, provided the masses are the same.
Read my previous post again.


quote:Original post by Anonymous Poster
quote:Original post by spiffgq
However, the linear acceleration won''t be as strong as if a force of the same magnitude was acting through the center of mass.

Yes, it will. Many people find this counter intuitive, but that''s the way it is.


Okay. Thanks for the clarification. I was not aware ...

quote:Original post by shadow12345
That''s one of the things that I have been most confused about. I supposed I can trust you though because you seem to know what you are talking about (my last post here asked about that).

quote:
There will be no torque since the force is acting through the center of mass. However, the distance r is not zero since the force is applied at the edge of the object (say an engine or a contact impulse or something).

I don''t know if this has been answered, but this is something I understand. The distance you are takling about is really the ''perpendicular'' distance from the center of pass onto the direction of the force.

Mathematically you could do it like this(although Im not sure if this is really a good implementation):

Normalize the direction in the force.
The projection of the center of mass onto the force is just:
PerpPoint = ForceDirection * DotProduct(ForceDirection,centerofmass)

Then the actual distance is:
PerpDistance = sqrt((PerpPoint - CenterOfMass)^2)
EDIT:
and the reason that there is no torque produced in your picture is because the center of mass *IS* the projection of the center of mass onto the force direction, meaning the perpendicular distance must be zero.


I understand. Lemme digest this for a bit.

Hmm.

Okay. I guess what you''re saying is the difference between the following two situations:


In the above image, the vector R is pointing to the "line of force".


In the above image, the vector R is pointing to the point of application of the force F.

The cross product in both images will be in the same direction but will differ in magnitude.

I assume the first image is the correct situation. And as that force moves inward toward the center of mass, assuming the line of force remains parallel to its current orientation, the R vector will go to zero.




I guess my question boils down to this: what is the best way to store forces and torques for a (non-point) mass? Since all forces acting on an object will linearly accelerate the mass and since all forces can (depending on the line of force) rotationally accelerate the mass, it seems like one can store them together somehow.

Let me think about this. One can probably just add the forces together to get the net external force. Torques work the same way. However, a force applied through the center of mass won''t create a torque, so the torque will be zero. Therefore, one must store the force vectors. And the force vector in and of itself is not enough to describe the torque. One also needs the distance from the center of mass.

So would the best way to store forces and torques be as an array of individual forces and their points of application? Kind of something like:

struct Torque{	Vector3d force;	Vector3d position;}; 


Then, during physics updates, one can iterate over the array, add up the forces, and get the total net external force for linear acceleration. Then one can iterate over the array, calculate the torque via a cross product, and add them up to get the net external torque for rotational acceleration. (Actually, it seems that the Torque:osition attribute will have to be "correct" to point to the line of force instead of the point of application.)

What do you think? That y''all for your help. This discussion has been most illuminating for me.
SpiffGQ
quote:Original post by Magmai Kai Holmlor
I think you''re talking about two different things - you''re both right.


What two things?


quote:Original post by Koobazaur
Hmmm? I''m pretty sure that if you apply the same force on the same object twice, but one on CM and the other one somewhere else, the resulting linear acceleration will be different...
I mean, put a pen on your desk and hit it with another pen, once its center, other time its end. You will see the difference. I also think that if you hit your pen on the very end of it, you could possibly make it spin without chaning it''s position...

The other thing is conservation of energy: if we apply the same force but it now not only moves the same way but also spins - where does it take the extra energy to spin from? It has to give up some of it''s energy produced by the force on spinning, therefore making its linear motion slower...

unless I''m a retard...


Maybe it has something to do with the difference between the linear acceleration of the mass as a whole and the linear acceleration of a point on the mass near the point of application. Because the instantaneous velocity (and I assume acceleration) of a point on a mass is the sum of both the mass''s linear velocity and the mass''s rotational velocity times the point''s distance from the center of mass. Therefore, if the mass is spinning and moving, a point some distance away from the center will have a greater instantaneous velocity than the mass as a whole.
SpiffGQ
quote:Original post by Magmai Kai Holmlor
With a vector and a quaternion. A vector gives you direction and magnitude for the linear acceleration, and a quaternion gives you a moment of rotation and magnitude.


I don't understand what a "moment of rotation" is? Is that another name for torque? Or moment of inertia? Thanks for your help.

EDIT: Nevermind. I looked it up (gasp!) and it seems to be the same thing as moment of inertia. But I thought one should store MOI as a tensor (a 3x3 matrix) rather than a quaternion. Where am I going wrong? Thanks.

[edited by - SpiffGQ on May 7, 2004 11:46:32 PM]
SpiffGQ
quote:Original post by Koobazaur
Hmmm? I''m pretty sure that if you apply the same force on the same object twice, but one on CM and the other one somewhere else, the resulting linear acceleration will be different...
I mean, put a pen on your desk and hit it with another pen, once its center, other time its end. You will see the difference. I also think that if you hit your pen on the very end of it, you could possibly make it spin without chaning it''s position...

That''s why I say many find this counter intuitive. The pen probably doesn''t help you either, since it is very small and light, so it is hard to apply a constant force to it using your bare hands. Try using a bigger object, and make sure the friction is as small as possible. (An object floating on an air-hockey table would be ideal for the experiment.)

quote:The other thing is conservation of energy: if we apply the same force but it now not only moves the same way but also spins - where does it take the extra energy to spin from? It has to give up some of it''s energy produced by the force on spinning, therefore making its linear motion slower...

The "extra energy" is coming from the fact that the force is acting on the object for a longer distance. Work is force times distance, you know?
quote:Original post by Anonymous Poster
That''s why I say many find this counter intuitive. The pen probably doesn''t help you either, since it is very small and light, so it is hard to apply a constant force to it using your bare hands. Try using a bigger object, and make sure the friction is as small as possible. (An object floating on an air-hockey table would be ideal for the experiment.)

[snip]

The "extra energy" is coming from the fact that the force is acting on the object for a longer distance. Work is force times distance, you know?


I think I understand now. It''s all in conservation of linear momentum and conservation of kinetic energy. Thanks for your help.
SpiffGQ

This topic is closed to new replies.

Advertisement