thesis - Computer Graphics Group - Charles University - Univerzita ...
thesis - Computer Graphics Group - Charles University - Univerzita ...
thesis - Computer Graphics Group - Charles University - Univerzita ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
6.3. VELOCITY-LEVEL CONSTRAINTS 65<br />
large magnitudes exerted during the period of the collision change the body velocity 7 . Since<br />
this would be hard to simulate (the corresponding ODE would have to be integrated with an<br />
extremely small time step) we will postulate a concept of impulsive force and torque (impulses)<br />
that will allow to change body velocities instantly without producing stiff ODEs. The collision<br />
in our example could then be treated as if its time duration was zero.<br />
Impulsive Force and Torque<br />
Let us assume that we have a rigid body with the center of mass at the world-space position<br />
x(t) and P (t) and L(t) are the body linear and angular momentum. Impulsive force (impulse)<br />
JF is postulated as a force with “units of momentum”. When JF is applied to the body at the<br />
world-space position r, then the linear momentum P (t) and the angular momentum L(t) change<br />
by ∆ P (t) and ∆ L(t), where<br />
∆ P (t) = JF<br />
∆ L(t) = Jτ<br />
Jτ = (r − x(t)) × JF<br />
(6.21)<br />
and Jτ is the impulsive torque due to impulsive force JF exerted on the rigid body at the worldspace<br />
position r. More precisely if P − (t) and L − (t) is the linear and angular momentum before<br />
the application of the impulse, then the linear and angular momentum P + (t), L + (t) after the<br />
application of the impulse equals P + (t) = P − (t) + JF and L + (t) = L − (t) + (r − x(t)) × JF .<br />
Similarly to forces, JF can be imagined as if it acted at the rigid body’s center of mass ( JF<br />
affects the linear momentum only) and Jτ as capturing the rotational effects due to JF actually<br />
exerted at r ( Jτ affects the angular momentum only).<br />
Impulsive forces and torques can be seen as “ordinary” forces and torques that change the<br />
body’s linear and angular momentums directly, instead of affecting their time derivatives. Remember<br />
that if Ftotal(t) and τtotal(t) are the total external force and torque exerted on the body,<br />
then ∂<br />
∂t P (t) = Ftotal(t) and ∂<br />
∂t L(t) = τtotal(t). In the case of impulses, however, the impulsive force<br />
JF and impulsive torque Jτ change the linear and angular momentums directly, ∆ P (t) = JF and<br />
∆ L(t) = Jτ . Note the correspondence of the impulsive torque Jτ = (r −x(t)) × JF due to the impulsive<br />
force JF exerted on the body at the world-space position r to the torque τ = (r−x(t))× F<br />
due to the force F exerted on the body at the world-space position r.<br />
Notation<br />
We will extend our notation of generalized quantities by<br />
• generalized momentum F total<br />
imp<br />
A block vector F total<br />
of a body<br />
consisting of two blocks storing the rigid body’s linear momentum<br />
imp<br />
P ∈ R3 and angular momentum L ∈ R3 , F total<br />
imp = ( P , L) ∈ R6 . Generalized momentum<br />
serves the same purpose like the linear momentum P of particles.<br />
The reason for naming the generalized momentum in this way will become clear soon.<br />
• generalized impulsive force (impulse) Fimp exerted on a body<br />
A block vector Fimp consisting of two blocks storing the impulsive force JF ∈ R 3 (imagined<br />
as acting at the body’s center of mass) and impulsive torque Jτ ∈ R 3 due to JF , Fimp =<br />
( JF , Jτ ) ∈ R 6 .<br />
7 The restoration forces can be imagined as constraint forces due to ¨ Cp(r(t)) ≥ 0 constraints with position<br />
stabilization terms like in (4.8).