Superquadrics and Model Dynamics For Discrete Elements in Interactive Design

Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

ENGINEERING COMPUTATIONS, VOL.

9, 115-127 (1992)

SUPERQUADRICS AND MODAL DYNAMICS FOR DISCRETE


ELEMENTS IN INTERACTIVE DESIGN

JOHN R. WILLIAMS AND ALEX P. PENTLAND


Intelligent Engineering Systems Laboratory, Department of Civil Engineering, Massachusetts Institute of Technology,
1-272, Cambridge, MA 02139, USA

ABSTRACT
This paper discusses advances in interactive discrete element simulation for use in computer-aided concurrent
design. We highlight the computational problems of creating a 'virtual world' populated by objects which
behave much as real world objects and propose a system based on a new class of volumetric models, called
superquadrics. These functions have significant advantages for calculating multibody interactions, and by
coupling volumetric representation to a modal decomposition method for the physical dynamics we have
been able to gain up to two orders of magnitude in efficiency. The modal method allows us to trade off
high order modes for improved stability, time step magnitude, temporal aliasing and speed of response,
and so provide almost real time feedback to the designer. We believe that virtual manufacturing systems
will be especially useful in conceptual design, in design for manufacture and in the new thrust in concurrent
design.

KEYWORDSModal dynamics Superquadrics Design Virtual reality

SIMULATION AND DESIGN


The traditional goal of numerical modelling is to predict the response of physical systems and
to determine when and how they fail. Although numerical models can, and should, be used to
guide design decisions, they are more often used as a quality assurance check on the adequacy
of a design, based on hand calculations, empirical formulae and experience. Present design
methods inhibit innovation because there are few tools to explore radically different solutions,
resulting in incremental improvements of 'old' designs. The cost of simulation in mantime and
machine-time is so great and the process so inflexible that it is rarely used as a means of exploring
the design space. We believe that numerical simulation should be used to guide design, especially
during the early conceptual design phase, when decisions have the greatest impact. To improve
the design process we must provide tools that are interactive, agile and easy to use. The aim of
this paper is to show how we can exploit fundamental changes in object representation to achieve
real time simulation based on discrete element modal methods.

Accuracy for design


We, as humans, do much of our creative thinking with very little recourse to accurate models.
We often visualize systems in our mind's eye, and seek solutions by manipulating these models
according to a set of qualitative physical rules. The emphasis in these mental models is on
mechanistic correctness rather than on absolute accuracy. We believe that the computer tools
for supporting conceptual design should emphasize interactivity and agility rather than absolute

0264-4401/92/020115-13$2.00
© 1992 Pineridge Press Ltd Received March 1991
116 JOHN R. WILLIAMS AND ALEX P. PENTLAND

solution accuracy. Towards this goal we have developed algorithms which allow us to trade off
interactivity and accuracy in an optimum manner. In this paper we examine two critical areas
of multibody dynamical simulation, namely (1) rigid and deformable body dynamics, and (2)
contact detection.
The design and programming of a conceptual design system presents many problems spanning
the fields of CAD, computer graphics, human-machine interface, and simulation. The goal we
have set ourselves is the production of a system for what we term 'virtual manufacturing'1,2.
The prototype design tool encompasses an agile CAD system with tightly coupled physics. The
three-dimensional CAD system, based on a superquadric representation3,4, allows objects to be
deformed and moulded, much as one might mould clay. This is tightly coupled to a discrete
element based simulation system which, using a modal approach5,6, calculates dynamic
deformations and stresses.

DYNAMICS OF MOTION
We require algorithms to solve for the dynamic motion and deformation of multiple interacting
bodies. First, we consider the response of a single body where the interactions are represented
as external boundary forces on the body.
The dynamic equilibrium equations* can be written for a body characterized by displacements
u as:
(1)
where [M] is the n x n mass matrix, [K] the n x n stiffness matrix, and {F} the vector of
applied forces, including interaction forces. (The damping matrix [C] will be neglected in further
discussions for clarity but it can be included, using either mass or stiffness proportional damping,
or by a perturbation method if damping forces are small compared to stiffness forces.) We note
that for free bodies the stiffness matrix [K] is singular and is not invertible. If we wish to use
implicit time stepping techniques we must remove the singularity which is due to the rigid body
motion. In static finite elements this is achieved by specifying boundary conditions to fix the
body in space. In dynamics, inertial relief condenses out the rigid body motion, leaving a
non-singular stiffness matrix. The approach taken here is to avoid inverting [K] by using an
explicit time stepping technique.
An explicit time stepping solution for {u} is obtainable if [M] is invertable so that:

where the superscript refers to time station n, etc. Usually [M] is taken as a diagonal (lumped
mass) matrix leading to a straightforward solution scheme. This approach is used in DYNA3D7
and in PARADYN8, both of which use a variety of linear and quadratic, solid and shell finite
elements to represent deformations. We note that deformable discrete element methods can be
based on standard finite element orfinitedifference solution procedures. The advantage of using
finite elements is that a range of well behaved linear and quadratic solid, plate and shell elements
are available.

* Here we gloss over some of the details of the dynamics of deformable bodies, especially with respect to the definition
of co-rotational axes and large strain. The Appendix gives a brief overview of the general theory of deformable body
dynamics for a modal formulation.
SUPERQUADRICS AND MODAL DYNAMICS 117

MODAL DECOMPOSITION
If we are solely interested in accurate solutions for continuum regions these standard finite
element or finite difference methods are perfectly adequate. However, because we seek solution
schemes which allow varying degrees of approximation, modal decomposition offers great
advantages. Let the displacements {»} be expanded in terms of an orthogonal set of basis
functions {φi}. Substituting {u} = [φ]{q}, in (1) and pre-multiplying by [φ] T we get:
(2)

It should be noted that (2) provides a prescription for the calculation of generalized masses and
forces for any basis functions φ, whether or not they are eigenmodes. For example by choosing
φ to be equivalent to element shape functions n1 we can recover a standardfiniteelement scheme6.
If {φi} is an eigenvector of the equation,

where λ, is the corresponding eigenvalue, we can form a set of decoupled equations;

where qi, is the modal participation factor of the ith mode and Mi and Fi are the generalized
mass and generalized force respectively. The non-linear material behaviour can still be modelled
by combining the modes at the end of each time step, to recover the full strain and stress state
of the body.
Here we have transformed {u} using a set of eigenfunctions {φ} which span the solution
space. It is emphasized that any other set of basis functions, which span the sapce, can also be
used9, e.g. Fourier components, Legendre polynomials, shape functions etc.

Reduced basis and Raleigh-Ritz techniques


In dealing with complex multibody systems we note that the large numbers of degrees-of-
freedom in the analysis of complex structural systems are often dictated by their topology rather
than by the expected complexity of the behaviour. For example, a curved object will usually
require more elements to match its surface geometry than a square-shaped object. In such cases
it can be more efficient to use a Raleigh-Ritz approximation, in which the solution is
approximated over the whole body. Since the effectiveness of the solution depends on the choice
of the Raleigh-Ritz approximation functions, this approach has been referred to as a reduced
basis technique10.
We chose to use the free body eigenmodes as our basis functions, reducing the basis by choosing
only the low frequency modes. The reduced basis now has, instead of say N vectors, only M
vectors so that:
118 JOHN R. WILLIAMS AND ALEX P. PENTLAND

and a typical term such as [ φ ] T [ K ] [ φ ] now has the form:

Advantages of eigenmodes
The accuracy of any reduced basis technique depends on choosing basis vectors that are a
good approximation to the full solution. The advantage of eigenmodes is that they provide a
method of ranking the importance of each basis vector's importance to the solution. In general
high frequency modes contribute less to the solution than low frequency modes, because they
require more energy to excite, and also damp out far quicker. Thus, by taking the eigenvalue of
the modes, we can decide a priori whether or not it is likely to contribute significantly to the
solution. Furthermore, we have efficient techniques for calculating modes in order of increasing
eigenvalue, so that even if we discretize the body with, say 100 unknowns, we need only calculate
the M lowest modes.
Discarding high frequency modes also has a beneficial effect on the time step, because the
critical time step length is inversely proportional to the highest eigenvalue. (The critical time
step can only be calculated approximately from the theoretical wave speed c = √(E/ρ) and the
size of the smallest element side.)
Solution accuracy
A measure of the solution accuracy of a reduced basis technique can be obtained by substituting
the solution {u} = [φ]{q}, which contains the full N unknowns, obtained from the reduced
basis (M unknowns), back into the full matrix equation (1), to calculate the residual force {R}.
{R} = [M]{ü} + [ K ] { u } - { F }
Having obtained an approximate solution, we are in a good position to obtain better
approximations using perturbation techniques10. It is also noted that a modal approach in which
we solve for successively higher modes has similar beneficial properties to a multi-grid scheme.
(We are presently researching the exact relationship between these methods.)
Calculating modes
Discrete element methods based on simply deformable elements11,12 often assume the modes
to be equivalent to the constant strain deformations of an element. This has some advantages
in that this leads to analytic expressions for quantities such as generalized mass, but has been
shown6,9 to be theoretically incorrect because it leads to coupling between the shear strain and
the rotation modes. For linear elements6 and some quadratic elements9, it is possible to write
analytic expressions for eigenmodes. However, there is really no need to derive analytic expressions
for the eigenmodes because they are easily calculated for any order element using a numerical
solution, such as sub-space iteration.
For simple bodies (bodies which are represented by a single element) we use in Thing World
either a linear or a parabolic finite element which is matched to the body's geometry (we are
SUPERQUADRICS AND MODAL DYNAMICS 119

also implementing plate and shell elements). We calculate the element's eigenmodes using a
numerical algorithm based on sub-space iteration. Depending on the application we retain a
given number of modes for determining deformations with time. At this stage we could use the
finite element representation for all phases of the calculation. However, because contact detection
using this type of wire-frame boundary representation is difficult, we have adopted an alternative
approach using volumetric functions, called superquadrics.

CONTACT DETECTION
6
In discrete element problems with large numbers of bodies, as much as 80% of the computational
time is spent in detecting and tracking the contact between bodies. The problem is especially
severe because the algorithm is of order 0(nm) operations, where n is the number of polygons
and m is the number of points to be checked for interference. Mostfiniteelement implementations7,8
avoid automated checking by having the user input contacting surfaces, but this is only possible
when these surfaces can be predicted a priori. Here we consider the general problem of reasoning
about spatial relationships, including contact detection, when they must be resolved by the
computer program. The method we present uses a hybrid approach in which the geometry of
the object is represented by superquadric functions while the internal deformation energy are
interpolated using standard linear or parabolic shape functions.

SUPERQUADRICS AND HYPERQUADRICS


Superquadrics and hyperquadrics 4,13-15 are examples of representations where a single analytic
expression defines the complete bounding surface of an object. The general equation of a
three-dimensional superquadric is given by:

(3)

where a, b and c, determine the lengths of the principal axes and ε1, ε2 and ε3 are powers, such
that 0 < ε < ∞.
The properties of the superellipse or superquadric equation were first investigated by the
Danish designer Peit Hein16. When ε = 2 we recover the equation of an ellipsoid. By varying
a, b and c we can stretch the body continuously in any direction. By varying ε from infinity to
zero we obtain the curves shown in Figure 1.
A particularly useful facet of volumetric expressions is the so called 'inside-outside' property.
To determine if the point (x, y, z) is inside or outside the body we substitute the point into the
function F(x, y, z). If F, is greater than zero the point is outside the body, if F is equal to zero
the point is on the surface, and if F is less than zero the point is inside the body. Furthermore,
we note that for ε = 2, |F| is the square of the distance of the point from the surface. In general
(3) provides a non-Riemann measure of the distance of the point (x, y, z) from the superquadratic
surface.
120 JOHN R. WILLIAMS AND ALEX P. PENTLAND

The superquadric family can also be represented parametrically by latitude and longitude
parameters as:

(4)

where is a three-dimensional vector containing the x, y, z components of the surface point. We


note that the superquadric has a uniquely defined outward normal at all points on its surface,
providing unique interaction force directions everywhere while avoiding the problem of corner
'hang-up'.
The inside-outside function defines the superquadric surface in a body centred coordinate
system. To locate the body at an arbitrary position in global coordinates, points are transformed
using a homogeneous coordinate transformation T, where T is of the form:

and n, m, l are the direction cosines of the local body axes with respect to the global axes, and
d, is the translation vector to the loal body axes origin.
Thus,
[r]{x local } = {xworld} where {x}T = {x,y,z,l}

Deformations, not directly controlled by superquadric parameters, can be imposed by using


extended Jacobians to deform physical space, e.g.

defines a form tapered along the z axis. In order to deform the superquadric function the Jacobian
must be defined at all boundary points on the body, which is achieved by defining the Jacobian
as a polynomial function of body coordinates. Thus the deformation gradient [F] and the
Jacobian [ J ] can be written:
SUPERQUADRICS AND MODAL DYNAMICS 121

where u = a0 + a1x + ..anxn. We shall see in the next section that we can relate this polynomial
expansion to deformations calculated from the modal basis functions.

Hyperquadrics
It is estimated that 80% of solids can be represented by superquadric functions. Solids which
cannot be represented directly can be derived from superquadrics in higher dimensions, i.e.
hyperquadrics. The hyperquadric equation for n dimensions can be written:

where where x1 = x,x2 = y, etc. and e is included to be completely


general.
We can define new volumes by intersecting four-dimensional hypercubes with three-
dimensional hyperplanes, to give us three-dimensional shapes. To find the equation of the
intersecting surface, we transform global coordinates X, to a new local basis x, such that the
orthonormal vectors of x lie in the intersecting plane. The intersection of a hyperplane with
normal n, with the hypercube is given by:

where a.b = a.c = a.d = b.c = b.d = c.d = 0. Calculating a 4-vector orthogonal to three other
4-vectors, say a, b, n is accomplished by choosing the coefficients A, B, C, D as the cofactors of
i, j, k, and l in the determinant below;

where I is the unit vector in the 4th dimension. This gives the required transformation from
global to local coordinates oriented normal to, and in, the hyperplane:

The corresponding parametric equations are:

Figure 2 shows a number of three-dimensional shapes formed by intersecting a hyperquadric


with a hyperplane. The normal to the surface is the gradient of the equation at the given point,
122 JOHN R. WILLIAMS AND ALEX P. PENTLAND

given by:

where

SUPERQUADRICS AND MODAL DYNAMICS


In finite elements we use a single representation for both geometry and internal energy, while
here we have two representations, namely the superquadric for surface geometry, and the finite
element for internal energy.
The problem which confronts us is keeping these representations 'in step', i.e. transforming
between representations. Fortunately, the transformation proves to be relatively simple.
Consider the displacement u, in one dimension to be some polynomial of coordinates, x, such
that;

In the modal decomposition we have also chosen u, such that;

Thus
For unit displacement q, of each mode,
(5)
This relationship allows us to define a Jacobian for each basis mode φ, whose terms are simple
functions of coordinates. For example, for a two-dimensional square element, the volumetric
deformation mode {—d,d,—d,—d,d,—d,d,d} corresponds to the deformation u = d, x, v =d,y.
SUPERQUADRICS AND MODAL DYNAMICS 123

The corresponding Jacobian is:

Once the eigenmodes and their corresponding Jacobians are calculated initially, the two
representations are easily kept in step as follows:
(1) each body is represented by a superquadric and the Jacobian [J 0 ] which takes us from
the spherical superquadric to stress free object shape is calculated;
(2) a parabolic finite element is matched to the superquadric and the eigenmodes are calculated
using sub-space iteration, i.e. {u} = [φ]{q};
(3) the polynomial coefficients for the unit deformation Jacobians corresponding to each mode
are calculated via:

(4) the generalized mass and generalized force for each mode are calculated using numerical
integration from the terms in (1) e.g.∫ v [φ] T [M][φ]dV;
(5) each modal equation is integrated in time using a central difference explicit time stepping
scheme to calculate the participation factors {q} and hence {u} = [φ]{q};
(6) the internal stress is calculated from the combined modes, and any plasticity iteration for
stress relief, applied;
(7) the total deformation Jacobian formed from the pariticpation factors applied to the Jacobian
for each mode, is applied to the superquadric, such that {xnew} = [jtotal] {x}

EXAMPLES
Two examples of analyses using the Thingworld system based on superquadrics are shown in
Figures 3 and 4. The first analysis shows the dynamic impact of a ball on a 2 x 4 piece of wood.
Constant, linear and quadratic strain modes were analysed, allowing very rapid calculation of
the response.
124 JOHN R. WILLIAMS AND ALEX P. PENTLAND

Figure 4 shows a design analysis of a chair constructed from a number of superquadric


elements. Each component is formed interactively on the screen with the parameters being
controlled either by the mouse or by specification in a parameter window. Components are fixed
to others by using constraints based on Penalty functions. These allow parts to be grouped into
hierarchies so that resizing or moving one part causes others to adjust automatically. This model
took only 180 parameters to define, illustrating the compact representations available using
superquadrics. The dynamics of the chair are tested by sitting a dummy (from our parts library)
on the chair.

ACKNOWLEDGEMENTS
This work was funded by US Army URI Program Grant No. DAAL-03-87-0005 and by a
Nippon Telephone & Telegraph Data Corporation grant to IESL.

REFERENCES
1 Pentland, A. P. and Williams, J. R. Virtual constructions, Construction, 3, No. 4, MIT (1988)
2 Williams, J. R. and Pentland, A. P. Interactive, integrated design - object representation and modal analysis, Human
Comput. Interface Int. '89. Boston (1989)
3 Pentland, A. P. and Williams, J. R. Good vibrations: modal dynamics for graphics and animation, SIGGRAPH
'89; ACM Comput. Graph., 23, (4), 215-222 (1989)
4 Barr, A. Superquadrics and angle-preserving transformations, IEEE Comput. Graph. App., 1, 1-20 (1981)
5 Williams, J. R., Mustoe, G G. W. and Hocking, G. The theoretical basis of the discrete element method, NUMETA
85, Swansea, Balkema, Rotterdam (1985)
6 Williams, J. R. Contact analysis of large numbers of interacting bodies using discrete modal methods for simulating
material failure on the microscopic scale, Eng. Comput., 5, 198-209 (1988)
7 Hallquist, J. O. A numerical treatment of sliding interfaces and impact, Computational Techniques for Interface
Problems, (Eds Park and Gartling), Vol. 30, ASME, New York (1978)
8 Rockfield Software Ltd, PARADYNE Users Manual, Swansea Innovation Centre, Swansea (1988)
9 Mustoe, G. G. W. Higher order discrete elements based on Legendre polynomials, 1st US Conf. Discrete Elements,
Golden, CO (1989)
10 Noor, A. K. and Peters, J. M. Reduced basis technique for nonlinear analysis of structures, AIAA, 18, 455-462 (1980)
11 Hocking, G., Mustoe, G. G. W. and Williams, J. R. Validation of the CICE discrete element code for ice ride-up
and ice ridge/cone interaction, ARCTIC '85. San Francisco, ASCE, New York (1985)
12 Cundall, P. A. and Hart, R. D. Development of generalized 2-D and 3-D distinct element programs for modeling
rock joints, US Army Engineers Waterways Experimental Station, Final Technical Report (1983)
13 Barr, A. Global and local deformations of solid primitives, Comput. Graph. 18, (3), 21-30 (1984)
14 Pentland, A. Perceptual organization and the representation of natural form, Art. Intell. J., 28, (2), 1-38 (1986)
15 Hanson, J. A. Hyperquadrics: smoothly deformable shapes with convex polyhedral bounds, Comput. Vision, Graph.
Image Process., 44, 191-210 (1988)
16 Gardiner, M. The superellipse: a curve that lies between the ellipse and the rectangle, Scient. Am. (Sept.) (1965)
SUPERQUADRICS AND MODAL DYNAMICS 125

APPENDIX: MOTION OF A DEFORMABLE BODY


The description of the motion of a deformable body requires careful attention to the definition
of frames of reference. We shall be concerned with two frames, namely (1) an inertial or fixed
frame, which we shall call I, and (2) a frame X, which is both translating and rotating with
respect to I. Figure A1 provides the basic notation, where R locates a typical material point in
the body with respect to I, and

where RX locates the origin of X in frame I. The material point is then located by r or by
where is the vector to the undeformed position. In general, we shall prefix the vector with the
frame of reference in which the vector is measured, so that IR means that R is measured with
respect to frame I. The postscript refers to the point or frame being defined by the vector. Thus
I x
R means the vector defining point X* measured with respect to frame I. Similarly Iωx means
the angular velocity of frame X in frame I.
The linear momentum of a deformable body, in inertial frame I, is given by:

The linear momentum of a deformable body, in inertial frame I, is given by:

The angular momentum for a deformable body, in an inertial frame I, with respect to an arbitrary
moment centre X* is given by:

Let M x =∫s(rx t) dS +∫v(rx f) dV and let IHx be the total angular momentum of the system
126 JOHN R. WILLIAMS AND ALEX P. PENTLAND

in inertial frame I with respect to point X*, such that:

If the moment centre X* is taken to coincide with the mass centre B* of the body then

We now have two vector equations, namely the linear momentum equation and the angular
momentum equation, for three vector unknowns, the velocity of the centre of mass of the body
B* in I(IvB), the angular velocity of X in I, (Iωx), and the deformation vector u. The orientation
of the frame X with respect to I is resolved using Euler parameters. The additional vector
equation needed relates to solution for the deformation.
We must make a clear distinction between quantities in the indeformed body (the reference
configuration) and quantities in the deformed configuration. In considering the dynamic
equilibrium of the body we solve the equations at time step t + Δt, in the deformed state (Figure
A1). We introduce the second Piola-Kirchhoff pseudo stress tensor S, related to the true stress
σ by:
S = JF-1.σ.F-T

where J = det(F), the determinant of the deformation gradient matrix. The following relationship
is defined to exist between the surface traction referred to dS0, T, and the pseudo stress S:
T = N.S.FT

Using this in the momentum balance equation gives:

Using the definition of the Green-Lagrange strain tensor:

gives

which is the desired result.


Conditions on moving frame
For a rigid body is is possible to choose the moving frame such that the displacement field
relative to this frame is zero. For a deformable body it is not possible to make all displacements
SUPERQUADRICS AND MODAL DYNAMICS 127

zero, and we choose to minimize them in a global sense, such that:

It should be noted that other principles are equally valid, e.g. minimizing the kinetic energy.

Modal form for displacements


Let φn be a mode of the body and αn be the participation factor of this mode in the solution.
The displacement of the deformed point u, can then be written:

where u0 are the rigid body translations, θ are the rigid body rotations and φ are a finite set of
vibration modes of amplitude α. The vibration modes can be chosen as the eigenmodes or any
set of modes which are orthonormal. We choose the modes to be mass normalized, such that:

The modes have the property that

Since the modes do not contribute to the linear momentum of the body, the rigid body linear
momentum equation can be used to determine the translational motion of the centroid. The
global angular momentum for a deformable body is given by:

Deformation equations
Substituting the modal expansion for the displacements u gives:

where

The second Piola-Kirchhoff stress tensor depends on the constitutive equations for the material
property at R, and are functions of the eigenfunction amplitudes α. The generalized inertia
(generalized mass) term can be expanded as follows:

This is thefinalequation required relating the modal inertia terms to known quantities. It should
be noted that these equations are totally general for both large rotations and large strains.

You might also like