0% found this document useful (0 votes)
14 views72 pages

09 Rigid Bodies

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views72 pages

09 Rigid Bodies

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 72

Prof. Dr.

Jan Bender
Physically-Based Animation
 Physical properties
 Basics
 Equations of Motion
 Simulation of Joints

2
 A particle has 3 degrees of freedom.
 In contrast to a particle a rigid body has a volume and therefore a
rotation. This means that a rigid body has 3 additional degrees of
freedom for the rotation.
 Example:

3
 Mass

 Center of mass

 Velocity

4
 Inertia tensor

 Rotation

 Angular velocity

5
 Center of mass of n mass points

 Center of mass for homogenous mass distribution

 Center of mass for continuous mass distribution

6
 Describes the inertia of the body with respect to rotations

7
8
 The inertia tensor is symmetric and the entries of the matrix are
defined as:

where is the Kronecker symbol:

9
 Inertia tensor for a body with continuous mass distribution and
density function

10
 Inertia tensor of an axis-aligned cuboid with edge lengths a, b and
c:

11
 By a main axis transformation we get a tensor in diagonal form:

 In general the coordinate system of a body is chosen so that the


inertia tensor has a diagonal form and the center of mass lies in the
origin.

12
 The inertia tensor is constant in the local coordinate system
 The transformation from local to global coordinates is performed
with the current rotation matrix of the body R:

13
 Euler Angles
 Rotation Matrix
 Unit Quaternion

14
 Euler angles represent a sequence of 3 rotations about 3 axes (the
order of the rotations is important).
 3 rotational degrees of freedom are represented by 3 values → no
redundancy
 Problems
 Not unique
 Glimbal lock
 Not suited for computations in a simulation

15
 Rotation about x-, y- and z-axis

16
 Total rotation

17
 A sequence of 3 rotations about 3 axes (the order of the rotations is
important).
 3 rotational degrees of freedom are represented by 9 values →
redundancy
 Well-suited for computations in simulation
 Rotation matrix is orthonormal
➢ This property must be maintained during a simulation.

18
19
 Sir William Rowan Hamilton 1843

20
 The quaternion algebra is often denoted by (Hamilton). The
system of quaternions extends the complex numbers.
 Conjugate quaternion:

 A unit quaternion has the property:

21
 Rotations can be represented by unit quaternions:

 A point a is rotated by

22
 Addition

 Subtraction

23
 Multiplication

➢ A quaternion product requires 16 multiplications and 12 additions


(→ cheaper than a matrix product with 27 *, 18 +)

24
 Inverse element

➢ In case of a unit quaternion:

25
 Conversion of a unit quaternion to a rotation matrix:

26
27
28
 Conversion of a rotation axis and a rotation angle to a unit
quaternion

29
30
 Unit quaternions represent 3 rotational degrees of freedom by 4
values → redundancy.
 Well-suited for computations in simulation
 Quaternions must be normalized
➢ This property must be maintained during a simulation.

31
 Quaternion are less redundant
➢ Differential equation in simulation “only” four-dimensional
➢ Numerical error is smaller
 Rotation matrix must be orthonormalized, unit quaternion only
requires normalization
 The computation of a sequence of rotations is cheaper using
quaternions, a rotation of points is less expensive using rotation
matrices

32
 Angular velocity is represented by a 3D vector
 Its direction is the rotation axis
 Its magnitude the velocity (rad/s)

33
 Physical properties
 Basics
 Equations of Motion
 Simulation of Joints

34
 Each cross product can be written as matrix product by using the cross
product matrix :

35
 The velocity of a point a in a rigid body k is defined as:

with the position vector .

36
 If a force/momentum acts on a point a which does not lie in the
center of mass, we get a torque/angular momentum:

right-hand rule

Quelle: Wikipedia

37
 Physical properties
 Basics
 Equations of Motion
 Simulation of Joints

38
 Mass:

 Position:

 Velocity:

39
 The change of a position vector

in a rigid body k is described by the following differential equation:

40
 The change of the rotation matrix of a rigid body k is described by
the differential equation:

41
 Angular momentum:

 Derivative:

where

42
 The inverse inertia is determined by:

 Derivative:

where

43
 The cross product matrix is antisymmetric which yields

 Substituting in the equation for yields

44
 Substituting in the equation for the angular acceleration yields:

45
 Inertia tensor:

 Rotation matrix:

 Angular velocity:

46
 Inertia tensor:

 Quaternion:

 Angular velocity:

47
particle_system_rb.html

https://interactivecomputergraphics.github.io/physics-simulation/examples/particle_system_rb.html
48
 Physical properties
 Basics
 Equations of Motion
 Simulation of Joints

49
 External forces act from the outside on a whole system of bodies
(e.g. gravitation).
 Internal forces act between the single bodies of a system (e.g. if the
bodies are linked by joints).
 The energy in a multibody system must stay constant. Therefore,
the sum of all internal forces must be zero.

50
 We can constrain the degrees of freedom of a body by defining
and enforcing so-called constraint functions.
 We differentiate between holonomic and non-holonomic
constraints.

51
kinematic
constraints

holonomic nonholonomic
constraints constraints

scleronomic rheonomic inequality velocity


constraints constraints constraints constraints

52
 A holonomic constraint limits the motion of a body by enforcing an
implicit function:

 This function can only depend on the current position of the bodies
and the time parameter t.
 Example:

53
 A holonomic constraint reduces the degrees of freedom of the
body system.
 Each scalar linear equation eliminates exactly one degree of
freedom.
 Example:

➢ This constraint eliminates 3 translational degrees of freedom


between body 1 and 2.

54
 All other constraints are called non-holonomic.
 The most important non-holonomic constraints are:
 Velocity constraints
 Inequality constraints

55
 A non-holonomic constraint has no direct and permanent
relationship to the degrees of freedom of the system.
 A constraint which does not explicitly depend on the time
parameter is called scleronomic, otherwise it is called rheonomic.

56
 Joints reduce the degrees of freedom if the multibody system
permanently.
➢ A joint defines a holonomic constraint.

57
ball joint

hinge joint

slider joint

58
59
60
 Goal: Enforce the holonomic constraints of the joints by forces,
impulses or position changes.
 Methods:
 Penalty method
 Lagrange multiplier method
 Reduced coordinates
 Position-Based Rigid Body Dynamics
 In the following the penalty method is introduced.

61
 The penalty method adds a force to the multibody system when a
constraint is violated.
 This force must counteract the violation.
 The magnitude of the force is proportional to the magnitude of the
violation.

62
 Since the gradient of the constraint function gives us the direction
in which the constraint violation rises most quickly, we use the
negative gradient as force direction.
 In the following the penalty method is introduced for constraints
which do not depend on the rotation of the body. Extending the
method for rotation constraints is straightforward but requires the
derivatives with respect to the rotational degrees of freedom.

63
 For a holonomic constraint

a simple penalty force is determined as:

with the stiffness parameter k and Jacobian

64
 The penalty force

is equivalent to a spring force with spring constant k.


➢ Overshooting problem

65
 Considering the temporal derivatives of the constraint,
improves the method:

with Jacobian and parameters .

66
 The temporal derivatives of the constraint function improve the
stability.
 The parameters can be interpreted as strength, natural
frequency and damping ratio of a spring.

67
 The force of a velocity condition

is determined as:

68
 The penalty forces are added to the external forces and then the
equations of motion can be solved numerically.

69
 Advantages:
 Easy to implement
 High performance

 Disadvantages
 Constraints are fulfilled approximately
 More accurate results are only possible for a large value of but this
leads to stiff differential equations
 Good choice of parameters is hard

70
 Other simulation methods:
 Lagrange multipliers
 Reduced coordinates
 Impulse-based method
 Position-based rigid body dynamics

71
 David Baraff, „Physically Based Modeling“, Siggraph 2001 course
notes, http://www.pixar.com/companyinfo/research/pbm2001

 Herbert Goldstein, Charles P. Poole und John L. Safko, „Klassische


Mechanik“, 2006

 Ken Shoemake, „Animating rotation with quaternion curves”,


Siggraph 1985

72

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy