25.07.2013 Views

On the Convergence and Correctness of Impulse-Based Dynamic ...

On the Convergence and Correctness of Impulse-Based Dynamic ...

On the Convergence and Correctness of Impulse-Based Dynamic ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

- 12 -<br />

PMSs can be imagined where <strong>the</strong> iterative correction <strong>of</strong> velocity does not converge even though<br />

Rank( M ) = m is true, since <strong>the</strong> iterative procedure <strong>of</strong> velocity correction solves <strong>the</strong> SLE with a<br />

variant <strong>of</strong> <strong>the</strong> Gauß-Seidel method, which does not guarantee convergence even if <strong>the</strong> SLE can be<br />

uniquely solved. It is <strong>the</strong>refore appropriate to solve <strong>the</strong> SLE for <strong>the</strong> velocity correction noniteratively.<br />

This also has <strong>the</strong> advantage that <strong>the</strong> parameter v max is <strong>of</strong> no use anymore. The matrices<br />

M are usually sparse <strong>and</strong> <strong>the</strong>refore permit faster solutions <strong>of</strong> <strong>the</strong> equation systems, see [Baraff<br />

1996] for details.<br />

5. Integration steps by Newton’s method<br />

To carry out an integration step, we usually assume that <strong>the</strong> PMS is in a consistent state (time t = 0)<br />

<strong>and</strong> has to be simulated in <strong>the</strong> forward direction for a time interval <strong>of</strong> length h . However, this<br />

condition is not always satisfied if higher order formulae [Schmitt et al. 2005] are used. In <strong>the</strong>se<br />

cases we start with a purely ballistic forward motion with time intervals <strong>of</strong> length h/2, h/3, h /4<br />

etc. The resulting dynamic state is nei<strong>the</strong>r D-consistent nor V-consistent. It is <strong>the</strong>refore necessary to<br />

examine <strong>the</strong> general case <strong>and</strong> not to assume that D-consistency or V-consistency exists. In <strong>the</strong><br />

following, we do not deal with halve stepping as described above but always use full time steps <strong>of</strong><br />

length h as it was done in (2.6).<br />

Without <strong>the</strong> application <strong>of</strong> correction impulses <strong>the</strong> motion is ballistic (see also (2.5)):<br />

2<br />

(5.1) Pr( h): = Pr(0) + h⋅ P& r(0) + 0.5 grh = LA( Pr(0), h)<br />

Using <strong>the</strong> abbreviation A ( h): = ( P ( h) − P ( h))<br />

we introduce <strong>the</strong> constraint functions<br />

k jk ik<br />

k k k<br />

2 2<br />

k<br />

f ( X): = ( A ( h) + h⋅∆w ( X)) − d ( k = 1,2,..., m)<br />

.<br />

We have to determine impulse strengths ( 1, 2,...,<br />

) T<br />

X = x x xmwhich,<br />

when applied at time t = 0,<br />

satisfy <strong>the</strong> following equations<br />

(5.2) fk ( X) = 0 ( k = 1,..., m)<br />

at time t = h.<br />

This is because f k already includes <strong>the</strong> additional velocities caused by <strong>the</strong> still unknown impulses<br />

(terms ∆ wk( X)<br />

) which should establish D-consistency again at time h .<br />

In order to calculate an approximate solution X for <strong>the</strong> system (5.2) <strong>of</strong> quadratic equations, we<br />

apply a step <strong>of</strong> Newton’s method with <strong>the</strong> start value 0 (0,0,...,0) T<br />

X = . With <strong>the</strong> m× m matrix<br />

(Jacobi matrix)<br />

⎛grad( f1( X )) ⎞<br />

⎜ ⎟<br />

⎜<br />

grad( f2( X ))<br />

⎟<br />

(5.3) M( X)<br />

: = ⎜..... ⎟,<br />

⎜ ⎟<br />

⎜..... ⎟<br />

⎜grad( fm( X )) ⎟<br />

⎝ ⎠<br />

where <strong>the</strong> gradient is defined by

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

Saved successfully!

Ooh no, something went wrong!