5.11. CONCLUSION 45
1
h
3
2
x
nC1
2x
n
C
1
2
x
n1
D v
nC1
1
h
3
2
v
nC1
2v
n
C
1
2
v
n1
D M
1
f
nC1
:
(5.25)
e nonlinear force term is discretized like we’ve already seen in Equation (5.3). Rear-
ranging and grouping terms will result in a system that can be solved to find either x or v
depending on the way the equations are combined. For completeness, the system that solves for
x is given by
I h
2
3
M
1
@f
@v
h
2
4
9
M
1
@f
@x
x D
1
3
.
x
n
x
n1
/
C
h
9
.
8v
n
2v
n1
/
C
4h
2
9
M
1
f
n
@f
@
v
v
n
2h
9
M
1
@f
@
v
.
x
n
x
n1
/
(5.26)
with x D x
nC1
x
n
. is is again a sparse symmetric matrix that can be solved using a conju-
gate gradient method. As a final example, a fourth-order Runge-Kutta method has been applied
to cloth simulation by Eberhardt et al. [1996].
5.11 CONCLUSION
is ends our discussion of implicit integration for cloth simulations using mass-spring systems.
We have shown how forces can be computed as the negative gradient of potential energies.
ese forces will accelerate the particles. is approach results in much more stable simulations
compared to explicit methods which allows us to take larger time steps at the cost of more
computation time. Implicit integration will require more work since we will have to solve a
linearized system. e system can be stored in block compressed row storage format for an
efficient in memory representation. e system was then iteratively solved using a modified
conjugate gradient solver that allows us to implement constraints on the particles.
Despite the additional cost, having stable simulations is extremely important in computer
graphics. Unstable results are completely unusable. For this reason, you will almost always want
to opt for something more complex than a fully explicit solver. Explicit Euler typically overes-
timates the energy of the true solution resulting in unstable simulations. In contrast, implicit