10.08.2013 Views

thesis - Computer Graphics Group - Charles University - Univerzita ...

thesis - Computer Graphics Group - Charles University - Univerzita ...

thesis - Computer Graphics Group - Charles University - Univerzita ...

SHOW MORE
SHOW LESS

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).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!