Anda di halaman 1dari 4

Model warping in subspace and full space.

Uchenna Ezeobi
Dept of Electrical and Computer Engineering
The University of New Mexico
Albuquerque, NM 87131-0001, USA
ezeob002@unm.edu
Abstract This paper compares the real time simulation of
large rotation of a deformable body in subspace and full
space. The use of modal analysis due to linear strain was
used to obtain the infinitesimal deformation of the body.The
integration rotation of parts at each nodes was carried out to
account for large rotation of the deformable bodies. Full
space and subspace method were compared for small and
large deformation. Also the stimulation time and realism of
the deformed bodies for both methods were compared to
accurately examine which was better. Cholesky direct LLt
method, Cholesky direct LDLt method, Conjugate method
and Sparse LU method were implemented in C++ to solve
the linear equation obtained from Finite Element Analysis.
We developed position and orientation constraints that
would drag and twist the model to check the realism after
large deformation. From the Experiment it showed that the
subspace method was more efficient, it reduced the number
of computation thereby improving the stimulation speed and
also maintained the realism of the object.
Keywordsmodel reduction, FEM, deformable objects, modal
warping.

I. INTRODUCTION
Every object in the universe experiences deformation by
collision or any sort of impact with the surrounding. For these
objects to withstand such an impact, it is highly important to
be able to stimulate the effects that deformation has on every
object. In this paper we are comparing two ways of
stimulating large rotational deformation of an object, which
are the subspace and full space model. Large deformation of
bodies is mostly solved by greens theory; which handles the
linear and nonlinear part of the deformation. However, the
nonlinear calculation of the nonlinear part is very expensive to
implement, which has reduced the use of these application in
computer animation. Further studies have been made to reduce
the cost of implementing the large deformation of bodies.
The main goal in designing a mechanics to study the
deformation of bodies is to improve the stimulation time and
as well maintain the realism of the object. Both factors
compensate each other. To increase the stimulation time we
need to consider only the linear part and to maintain the
realism the nonlinear part has to be considered. The modal
analysis based on linear strain tensor reduces the
computational load but the realism of the object is relatively
large when twisting and bending is applied to the object. The
method to be considered in this paper overcomes the

unrealistic large change in shapes of objects. It keeps track of


an infinitesimal rotation tensor of each node in an object and
non-linear part is omitted during the initial step. And finally at
each time step modal warping is done to the object. The
subspace which only incorporates the high frequencies or
dominant m columns of the modal displacement 3n x m is
compared with full spaces that uses all the matrix 3n x 3n. The
final step taking in this paper were to solve the matrix Ax=b
using different solver to compare the best method. And finally
we render the solution to compare realism and stimulation
time for all method.
II. RELATED WORKS
For the realism of the object, grains strain tensor would be
used to model the linear and non-linear part of deformation.
But high computational of the nonlinear part makes this
method too expensive to implement. Linear modal analysis is
another method being employed to increase the speed of the
stimulation. However, it only models the linear parts and does
not account for the rotation of the objects. Due to these large
artifacts are seen when large rotation are applied to the
objects.
III. BACKGROUND
These section introduces the basic principles and equations
needed to stimulate the deformation of objects.
A. Kinematics of infinitesimal Deformation
In other to study the deformation of an object, we have to
understand the basic kinematics and formula involved in
analyzing the stimulation of the object. The final infinitesimal
deformation formula is shown below:

da = dx + dx + w dx

(1)

Where dx represents the strain and w dx represents the


rotation. For full derivation refer to Choi and Ko [1]. From
these we could deduce that the infinite deformation depends
on the rotation and strain.
B. Finite Element Analysis
The Equation for the finite Element methods is shown
below:
..

M u+ C u+ Ku = F

(2)

where M is the mass, C is the damping, K is the stiffness


Matrix and F(t) is the external forces applied the object.
u(t) is a 3n-dimensional vector that shows the
displacements of n nodes from their original position. M,
C and K are constructed using the finite Element method.
The Mass is constructed using the following formula:

M =

(m) H (m) H

(m)

dV (m)

(3)

m V (m)

(m)

(m)

Where
is the mass density, H
is the
displacement interpolation matrix and dV(m) is the change
(m)

in volume. The choice of H


depends on the element
geometry, number of element nodes/degree of freedom and
the convergence requirements. For more details refer to
[4]. And then the C is constructed using the following
equation

C =

(m)

H (m) H

(m)

dV (m)

(4)

m V (m)

Where k(m) is the damping property parameter of the


element m. But in practice this is highly impossible to
compute, therefore C was obtained using the following:

C = M + K
Where and are scalar factors.

E. Large deformation
To accommodate for large deformation in K(u) is replaced
with K in eqn(1). The finally equation for the method is shown
below:
..

M u L + C u L + Ku L = RT F

For full derivation refer to [1]. The difference between (1) and
(2) is that the external force acting on each node needs to be
rotated about its co-ordinate frame. Then position and
orientation constraints were added to drag and twist the object.
Refer to [1]
This equation is solved using the New mark method; so the
final equation breaks down to the following:
"
t
t 2 %
t
t 2
K ' an+1 = f C(vn + an ) K(Un + tvn +
an )
$M + C +
2
4 &
2
4
#
Where the following equation has the form of Ax=b. Finally
these matrix is solved using four sparse solver to compare
which solver is faster.
IV. FLOW CHART
Design

Finally the K matrices is constructed using the following


formula:

K =

(m)

B (m) C (m) B dV (m)

(5)

m V (m)

Construct Mass, Stiffness and


Damping Matrix using FEM

Where B(m) is the strain-displacement matrix. B(m) is


obtained by differentiating and combining rows of H(m).
For more details refer to [2].
C. Modal displacements
If the M, K are not diagonal Matrix, then they could be
diagonalized using the following ODE equation:

Solve Matrix for


+ + =
Using Sparse Solver

u(t) = q(t)

(6)
where is the modal displacement matrix and q(t) is the
vector containing all the modal amplitude. Substitute (5) into
(1) yields the following equation:
..

M q q+ Cq q+ K q q = T F

(7)

For more details refer to [1].

Integrate
! + ! + ! =

D. Modal Rotation
The governing equation for rotation is shown below:

w(t) = Wq(t) = q(t)


(8)
where is the modal rotation matrix. Both the modal

displacement matrix and modal rotation matrix are only used


for small deformation.

Render Mesh

V. ALGORITHM
The following algorithm were used to solver the linear system
equation Ax=b. These methods would be compared to check
which works best for the solving a linear equation problem at
a fastest rate.
A. Sparse cholesky direct LLT factorization method
This method is used to solve any linear equation in the form of
Ax=b. The A matrix should be sparse positive definite matrix.
For any A there is a lower triangular matrix L such that
A=LLT. The pseudo-code is shown below.

LU ALGORITGHM PSUEDOCODE
for j = 1,, n
for i = 1,, j
t=Aij
if i> 1 then
for k = 1, , i-1
t= t Aik*Akj
Aij = t
for i = j+1, , n
t=Aij
for k=1, , j-1
t=t Ajk*Akj
Aij = t/Ajj

CHOLESKY LLT ALGORITGHM PSUEDOCODE


For k=1:n

Akk

Akk=

for i=k+1 to n
Aik= Aik/ Akk
end
for j=k+1 to n
for i=j:n
Aij= Aij AikAjk
end
end
end
B. Sparse cholesky direct LDLT factorization method
This Algorithm is similar to LLT Algorithm expect that we
introduced a positive definite D. The pseudo code is shown
below:
CHOLESKY LDLT ALGORITGHM PSUEDOCODE
Integer i,j,n,v; real array (Aij)1:n x 1:n, (lij) 1:n x 1:n, (di)1:n
For j=1 to n
lij = 1

VI. EXPERIMENT
A. Data Set
The data set used for this project was obtained from the
subspace and full space implementation. The full space
method has 3n x 3n matrix for , while the subspace
contains only the dominant columns of 3n x m.All the
code for collecting the data were done with Matlab.
B. Method Comparisons
The subspace and full space are two methods that could be
used to stimulate the deformation of an object. The stimulation
time and realism of object of these two methods were
compared. Also four different sparse solver would be
compared to see which method that would work better.
C. Preliminary result
I.
Subspace Method:
Realism of the elephant model for the subspace is shown

j1

di = Ajj -

d l

2
v jv

v=1

for i= j+1 to n
lji =0
j1
#
&
lji = % Aij liv dvl jv ( / d j
$
'
v=1

end for
end for
C. Conjugate Gradient
This is general method for solving Ax=b. for more details
refer to [3]
D. Sparse LU Solver
This method of LU decomposition is similar to Gaussian
Elimination. It factors the original matrix into lower and upper
diagonal matrix. This implies that Ax=Lux=b, which then
turns out to be Ux=b. The pseudo code is shown below.

FIGURE1: SUBSPACE MODEL (From Steven)

TABLE I.

COMPARISON OF TIME FOR SUB SPACE

TYPE OF SOLVER

TIME
STIMULATION(SEC)

SPARSE CHOLESKY DIRECT LLT

39.91

OF

FACTORIZATION METHOD[5]

SPARSE CHOLESKY DIRECT


LDLT
FACTORIZATION
METHOD[5]

37.5077

CONJUGATE GRADIENT[5]

37.7418

SPARSE LU SOLVER[5]

24.32

Figure 3: Volume of object not preserved (From Steven)

II.
Full space Method:
The Realism of the object for the full space is shown
below:

Figure 4: Volume of object not preserved


CONCLUSION
FIGURE 2: SUBSPACE MODEL
TABLE II.

COMPARISON OF TIME FULL SPACE

This method is an efficient way of stimulating the real time


deformation of an object but they do not preserve the volume
of the object.
ACKNOWLEDGMENT

TYPE OF SOLVER

TIME OF STIMULATION(MIN)

SPARSE CHOLESKY DIRECT


LLT
FACTORIZATION
METHOD[5]

1.25

SPARSE CHOLESKY DIRECT


LDLT FACTORIZATION[5]

1.15

CONJUGATE GRADIENT[5]

1.18

[2]

SPARSE LU SOLVER[5]

0.75

[3]

The author would like to thank Prof. Mario Pattichis, Dr.


Yin Yang and Steven Garcia for the motivation and
encouragement provided through the course of these project.
REFERENCES
[1]

[4]
[5]

FUTURE WORK FOR BOTH METHOD


Both methods do not preserve the volume of the object when a
great amount of force is applied to each node. The diagram is
shown below.

G. Min Gyu Choi and Hyeong-Seok Ko


Modal Warping: Real-Time
Simulation of Large Rotational Deformation and Manipulation. IEEE
Trans. ON Vis. Comp. Graph.
M. Muller ,J. Dorsey,L.McMillan, R. jagnow, and B. Culter. Stable
real-time deformations. In Proc. ACM SIGGRAPH Symp. Computer
Animation 2002,pg. 49-54 2002.
Jorge Nocedal, Stephen J. Wright, Numerical Optimization, Second
ed. , Springer, 2006.
Thomas J. R. Hughes, Finite Element Method, First ed. , Dover
Publications,Inc. Mineola, NewYork , 2000.
Eigen Library, Sparse Solver[Online document] March 26 2008,
[2014
December
05],
Available
at
FTP:
http://eigen.tuxfamily.org/dox/group__TopicSparseSystems.html

Anda mungkin juga menyukai