Sunteți pe pagina 1din 116

Linköping Studies in Science and Technology

Thesis No. 989

Modeling and Simulation of Contacting Flexible Bodies


in Multibody Systems

by

Iakov Nakhimovski

Submitted to the School of Engineering at Linköping University in partial


fulfilment of the requirements for the degree of Licentiate of Engineering

Department of Computer and Information Science


Linköpings universitet
SE-581 83 Linköping, Sweden

Linköping 2002
Modeling and Simulation of Contacting Flexible Bodies
in Multibody Systems
by

Iakov Nakhimovski

Dec 2002
ISBN 91-7373-559-0
Linköpings Studies in Science and Technology
Thesis No. 989
ISSN 0280-7971
LiU-Tek-Lic-2002:62

ABSTRACT

This thesis summarizes the equations, algorithms and design decisions necessary for dynamic
simulation of flexible bodies with moving contacts. The assumed general shape function
approach is also presented. The approach is expected to be computationally less expensive
than FEM approaches and easier to use than other reduction techniques. Additionally, the
described technique enables studies of the residual stress release during grinding of flexible
bodies.
The overall software system design for a flexible multi-body simulation system BEAST is
presented and the specifics of the flexible modeling is specially addressed. An industrial
application example is also described in the thesis. The application presents some results from
a case where the developed system is used for simulation of flexible ring grinding with
material removal.

This work has been supported by SKF Sweden AB, KK-stiftelsens företagsforskarskola i
Linköping and the ECSEL (Excellence Centre for Computer Science and Systems Engineering
in Linköping) Graduate School.

Department of Computer and Information Science


Linköpings universitet
SE-581 83 Linköping, Sweden
Acknowledgments
Many people contributed to the work presented in this thesis and essentially made
the thesis possible at all.
First, I would like to thank my supervisor Dag Fritzson at SKF Sweden AB who
has suggested many of the ideas realized in this work, encouraged me to tackle the
problems during the whole period of studies, and gave many important comments on
the text of the thesis.
Fredrik Berntsson from MAI, Linköping University deserves a special thanks for
helping me in understanding of some of the mathematical problems discussed in the
thesis.
I really appreciate the reviews of the thesis done by Peter Fritzson, the head of
PELAB (Programming Environments Laboratory) at Linköping University, and by
Claus Führer, associate professor in Numerical Analysis at Lund University. Theirs
comments helped to significantly improve the text.
Many thanks go to my fellow industrial PhD students at SKF Alexander Siemers
and Aleksandar Bogdanovski for sharing the exciting experience of studying and
working on BEAST at the same time.
I also want to thank all the other members of the BEAST team at SKF: Mikael
Holgersson, Håkan Båstedt, Lars-Erik Stacke, Leonid Gershuni, and Alexei Jolkin
as well as Daniel Lindgren from Xdin for many fruitful discussions and lots of use-
ful feedback. Special thanks to Lars-Erik Stacke for proof reading the thesis. Many
thanks also to all my colleagues at PELAB who have created a nice working atmo-
sphere at the University.
A special thanks goes to Bodil Mattsson-Kihlström for handling all the adminis-
trative work caused by my frequent travels to Gothenburg. Furthermore, I am grate-
ful to all the administrative staff at IDA, in particular Lillemor Wallgren, Britt-Inger
Karlsson, and Bodil Carlsson.
The work was financially supported by the SKF Sweden AB, ECSEL (Excel-
lence Center for Computer Science and Systems Engineering in Linköping) Graduate
School and KK-stiftelsen företagsforskarskola in Linköping.
Finally, I would like to thank my parents in Russia, and my relatives and friends
in different countries around the world for constant moral support and belief in my
ability to do the work and write this thesis.

Iakov Nakhimovski
Linköping, November 2002
Contents

Notation 4

1 Introduction 8
1.1 Simulation of Mechanical Systems . . . . . . . . . . . . . . . . . . 8
1.2 The BEAST Toolbox . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Model Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5 Thesis Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2 Key Equations 17
2.1 Flexible Body Motion and Shape Functions . . . . . . . . . . . . . 17
2.2 Generalized Newton-Euler Equation . . . . . . . . . . . . . . . . . 19
2.3 Mass Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4 Quadratic Velocity Vector . . . . . . . . . . . . . . . . . . . . . . . 22
2.5 Generalized Forces . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.5.1 Generalized Elastic Forces . . . . . . . . . . . . . . . . . . 23
2.5.2 Generalized Viscosity Forces . . . . . . . . . . . . . . . . . 24
2.5.3 Generalized External Forces . . . . . . . . . . . . . . . . . 27
2.5.4 External Point Force . . . . . . . . . . . . . . . . . . . . . 27
2.5.5 External Point Moment . . . . . . . . . . . . . . . . . . . . 28
2.5.6 External Volume Load . . . . . . . . . . . . . . . . . . . . 29
2.5.7 Generalized Forces from the Internal Stress Release during
Grinding . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.5.8 An Interpolation Method for Forces with Discontinuities . . 31
2.6 Rotation of a Material Particle due to Deformation . . . . . . . . . 34
2.7 Using Intermediate Coordinate System . . . . . . . . . . . . . . . . 34
2.8 Calculating Jacobian . . . . . . . . . . . . . . . . . . . . . . . . . 36

3 General Shape Functions 40


3.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.2 Choice of Shape Functions . . . . . . . . . . . . . . . . . . . . . . 41
3.3 Separation of Elastic and Rigid Body Motion Modes . . . . . . . . 42
3.4 Special Shape Functions for Solid Bodies in Cylindrical Coordinates 44

1
3.5 Imposing Constraints for Rigid Body Motion . . . . . . . . . . . . 45
3.6 Reducing the Number of Flexible States . . . . . . . . . . . . . . . 46
3.7 Volume Integration . . . . . . . . . . . . . . . . . . . . . . . . . . 48

4 Modeling Ideal Connections with Control Points 51


4.1 Control Points and Flexible Bodies . . . . . . . . . . . . . . . . . . 51
4.2 Boundary and Loading Conditions . . . . . . . . . . . . . . . . . . 53
4.3 An Example of Control Points Usage . . . . . . . . . . . . . . . . . 54

5 Static, Eigenmode and Quasi-static Single Body Analysis 56


5.1 Static Loading Cases . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.2 Eigenmode Analysis . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.3 Quasi-static Analysis . . . . . . . . . . . . . . . . . . . . . . . . . 58

6 Verification 60
6.1 Long Beams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.2 A Thin Ring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

7 Simulation System Design 63


7.1 System Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
7.2 Rigid Body Model Classes . . . . . . . . . . . . . . . . . . . . . . 64
7.3 Flexible System Design . . . . . . . . . . . . . . . . . . . . . . . . 66
7.3.1 Limitations of the Rigid Body Model Design . . . . . . . . 66
7.3.2 Implementation of the Control Point Architecture . . . . . . 66
7.3.3 Object-Oriented View of Shape Functions . . . . . . . . . . 68
7.3.4 Flexible Body Class Design . . . . . . . . . . . . . . . . . 68
7.4 A Simple Model Example . . . . . . . . . . . . . . . . . . . . . . 69
7.5 Solution Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . 70
7.5.1 RHS Evaluation . . . . . . . . . . . . . . . . . . . . . . . 70
7.5.2 Jacobian Evaluation . . . . . . . . . . . . . . . . . . . . . 72

8 Dynamic Simulation of Grinding 73


8.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.2 Need for Grinding Simulation . . . . . . . . . . . . . . . . . . . . 73
8.3 Grinding Machine Model . . . . . . . . . . . . . . . . . . . . . . . 74
8.4 Modeling Tribological Contacts with Material Removal . . . . . . . 75
8.5 Grinding simulation results . . . . . . . . . . . . . . . . . . . . . . 76
8.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

9 Conclusions 82

10 Future Work 84

A Shapes Generated by General Functions 85

2
B Example Acceleration Calculations for a Flexible Ring 88

Bibliography 103

3
Notation

The notation used throughout the thesis is described below. The section can be used
as a reference when reading the equations presented in the thesis.
The notation used here is both the direct matrix notation of vectors and tensors,
and the vector-dyadic notation. Therefore, the basic quantities and some formulas
are given in both notations. The orthonormal right-handed rectangular Cartesian
coordinate system is used.
For further reading we refer to [9, 7, 11, 8] or other well-known standard publi-
cations.

Variables & basic definitions


 transformation matrix from coordinate system 1 to system 2.
 a scalar.
 
a vector or first-order tensor on which vector transformation
rules can be applied.

 
a unit vector.
a  
skew symmetric matrix constructed from the components
of 3-element vector . That is a matrix:
   
   
    
     

   
The important properties of a skew symmetric matrix are:

        
 T

    " !

# 
$
normally a second-order tensor or matrix, in some cases an array.

&%' % a second-order tensor or matrix.
 ( 
T T
transpose of  
and .

4
 (c)
a 3-element vector expressed in component form in coordinate

  ) * (,+  
system ’c’.

+.-0// time derivative of a vector with respect to coordinate system c.


c
/ c
If no coordinate system is specified then the global inertial coor-

 ! 1 '6 ! 1  ) dot product of two vectors


dinate system is assumed.
  2 %435%
   1 (or

  ! 1
cross product of two vectors
2 %43 %'
 !87 2 %43 %59,  9
:  ; 
dot product of two matrices
a constant that gives the relative stiffness between object 1 and
object 2.
7
83 <'=>3 -?  3 -? 
damping matrix.
3@< .
ff

a control point defined in the coordinate system



A  ( A  ( AB ( ADC
unit base vector in a rectangular Cartesian axis system
Euler parameters
E elastic (Young’s) modulus.
E , GE F
H   ;
matrices of elastic and viscous material constants.
a external force refering to object 1
I ext

J  
an identity matrix

J   , K M9 L (OJ N 9PL
moment of inertia for object 2 relative to coordinate system 1
some of the inertia shape integrals defined by the equations 2-9,
2-10 and 2-13 respectively.
Q stiffness matrix.
R ff

S
length or width

S   ; 1/c a moment relative to the origin of system c refering to object 1

S
ext an external force couple, i.e. moment, refering to object 1
1,2 a force couple, i.e. moment, refering to object 1 and caused by
interaction with object 2
S complete symmetric mass matrix of a body as used in Newton-
Euler equations.
SUTVT ( X
S WYW ( S ff sub-blocks of complete mass matrix . The subscipts specify
S
the degrees of freedom (DOF) corresponding to the particular
Z
sub-block. ’ ’ specify the three translational DOFs, ’ ’ the three A
rotational DOFs and ’ ’ - [ \^]
elastic DOFs. The nondiagonal

5
blocks of the matrix use mixed subscripts, e.g., stands for
S_T`W
the sub-block defining inertia coupling between the translational
and rotational DOFs.
ab (Mc d
mass and mass density of object . The subscript is omitted if d
the discussion clearly indicates a single object.
e a/b a “point”, i.e. the vector between a and b. If b is a coordinate
system, then it refers to the origin of system b.
e (b)
a ”point” vector expressed in the coordinate system b.
fe
g9
f
(b)
an element of the point vector associated with the axis . Axes h
i j k
f
are named ’ ’, ’ ’, ’ ’ or ’1’, ’2’, ’3’ in different equations as

l
appropriate in the particular context.
total generalized force tensor as appears on the right hand side

fl T ( fl ( fl


of the Newton-Euler equation defined in 2.2.
g ng m g f parts of a generalized force vector corresponding to transla-

l W
tional, rotational and elastic DOFs respectively.

lp o
external generalized force tensor.

l  rq
quadratic velocity tensor.
generalized force due to internal residual stress release.
s   the location of the origin of coordinate system 2 relative to the
origin of coordinate system 1
t a shape matrix, that is a 3 u\^] t 9
matrix representing the deforma-
tion field of a flexible body. is used to denote the -th row h
of the matrix, that is the row associated with the -th Cartesian h
0t  v
coordinate axis.
a dynamic inertia shape vector defined by the Equation 2-15.
tN one of the inertia shape integrals defined by Equation 2-11.
t N 9PL nine inertia shape integrals defined by Equation 2-12. The sub-
h ?
scripts and specify corresponding coordinate axes.
wx9 e
h h f < (zy{(  f i ( j ( k
components of the deflection vector f(b) in the direction of co-
ordinate axis . Where is one of or f}| (z~( g k
for a g
Cartesian coordinate system and one of for a cylindrical g
coordinate system.
€ f the tensor of the generalized elastic coordinates of a flexible
body.
 volume.
‚ velocity.

6
ƒ ( ƒ „ ( ƒ…W
†    *
potential energy, strain energy and work of external forces.
a angular acceleration of ’a’ relative system 1 differenciated in sys-
tem 2. If no system 2 is specified then system 1 is assumed.
‡ rotation angle.
ˆ  a first order tensor containing three angles representing the ro-
tation of coordinate system 2 relative to system 1. This tensor

‰  
cannot be expressed in a coordinate system.
the angular speed of coordinate system 2 relative to coordinate

Š  
system 1 .
the angular speed of “a” relative to coordinate system 1.
‹Œ
a

d -th vibration mode frequency [radians/second].



Ž
elastic strain tensor.


viscose stress tensor.

 (M‘
elastic stress tensor.
Lame’s constants.
’
“
Poisson’s ratio.
infinitesimal rotation angles.

7
Chapter 1

Introduction

1.1 Simulation of Mechanical Systems


Simulation technology becomes more and more important to industry. Simulation
systems can be seen as virtual test rigs that allow for replacement of long and costly
experiments on a real test rig with faster, cheaper, and more detailed simulations on
a computer.
Mechanical systems are obvious candidates for simulation for many reasons,
some of them are listed here:
” Building a prototype mechanical system just to test a new design is very ex-
pensive and time consuming. Sometimes manufacturing of a small slightly
modified part at a factory or workshop requires several weeks.
” Many machines may be dangerous to use without simulation in advance. Sim-
ulation nowadays is a must, e.g. an airplane or car design.
” Some measurements in a real dynamic system are very hard or even impossible
to perform. However in a simulation all the variables are accessible.
” Tuning the system parameters is much easier for a simulated system than in
the real machine.
” Some particular effects that in real systems are obscured by some other phe-
nomena can be isolated and carefully studied in a simulation. On the other
hand, in other situations such small effects can be completely neglected to al-
low more careful study of the main relations.

Historically, two main types of simulation of mechanical systems have been dom-
inating:
” Multi-body dynamics simulations typically deals with systems of intercon-
nected rigid bodies. In many cases the connections are limited to idealized

8
joints (e.g., revolute, prismatic, etc) and traditional force elements (e.g., spring,
damper, external load). Multiple dynamic contacts are often important parts of
the model and a relatively simple contact model is most often employed for
performance reasons. Multi-body systems are mostly used for time domain
dynamic simulations.
” Finite element tools are mostly used for static and quasi-static (with constant
angular velocities) analysis of systems and components as well as for modal
analysis of structures. They are also used for detailed simulations of very small
and specific parts of a system, e.g., a single contact. Finite element analysis
generally requires more computational effort than multi-body analysis.

The general development of simulation software goes in the direction of simula-


tion of complete systems with more and more detailed and accurate analysis. This
means that multi-body systems now include deformable bodies and more detailed
analysis in the models. At the same time finite element tools are beginning to be
used for the dynamic simulations.
This thesis contributes to this process on the multi-body systems side. It dis-
cusses the floating-frame of reference formulation which is gradually becoming the
standard way to simulate flexible bodies in the context of a multi-body simulation.
To further narrow the field of the research we limit our development to multi-body
systems specializing in detailed contact analysis. An example of such a system is
the BEAST (BEAring Simulation Tool) described in the next section. The toolbox is
used industrially at SKF - the world’s leading rolling bearing manufacturer.
An industrial simulation system is always the result of interdisciplinary research
where contributions from different fields are integrated into a single generally useful
system. In the case of flexible multi-body simulation system contributions from me-
chanics, numerical analysis, and computer science are necessary. Here, mechanics
provide the mathematical models of physical phenomena in the form of equations;
numerical analysis comes up with the methods and algorithms for the solution of the
equations, and computer science gives the design guidelines for the efficient imple-
mentation of the model on a computer.
The aim of this thesis is to describe an approach for building a flexible multi-
body simulation system as an extension to the existing rigid body one (BEAST).
Therefore all aspects of the system development have to be considered. The thesis
discusses the necessary mathematical model for deformable bodies simulation, pro-
vides some important numerical algorithms, and discusses the object-oriented design
of the computer implementation.

1.2 The BEAST Toolbox


BEAST (BEAring Simulation Tool) is a fully three-dimensional simulation program
developed at SKF and originally used to perform simulations of bearing dynamics

9
on any bearing type. This has enabled studies of internal motions and forces in a
bearing under any given loading condition. The bearing could be loaded in any way
the user required. BEAST has been seen as a virtual test rig where the user has full
insight into the dynamic behavior of the bearing components.
The toolbox development in terms of design generalization has widened the ap-
plication area of the program. Later versions of BEAST include models of grinding
machines, experimental engines, transmissions, etc. BEAST can now be seen as a
general multi-body simulation tool specialized in detailed contact analysis.

Beauty

Input Input
Animations Output

Output Input Input

ViewBeast RunBeast BEAST

2D plots Output Output

Output Input

Out2In

Figure 1-1: Programs in the BEAST toolbox.

The BEAST toolbox includes a set of tools that are interacting with each other
by means of different kinds of files. Figure 1-1 shows the programs in the toolbox
and their interactions with the file storage. The tools are:
Beauty is an advanced 3D graphical tool designed for setting up the model and sim-
ulation parameters in the input files and visualizing the output files. Some of
the features of the tool include animating the simulated sequence from differ-
ent viewpoints, visualization of force vectors and surface associated data (such
as pressure distribution). The visual representation of the simulation results in
Beauty in an easily understandable way contributes to a quicker interpretation
of the result and popularity of the complete toolbox among the users. Fig-
ure 1-2 shows a snapshot of the Beauty working on an input file for a grinding
machine model.
ViewBeast is specially designed for 2D plot presentation and analysis. In addition

10
Figure 1-2: A snapshot of the Beauty displaying a grinding machine model.

to the basic functionality, i.e., curve plotting, different operations on the simu-
lation results are possible. For example, the user can apply Fourier transforms
to a variable or specify his/her own function on several variables.

RunBeast is a remote simulation interface system. Its architecture is described in


[22]. The tool provides a user-friendly interface for submitting a simulation on
a remote computation server which is often a parallel computer.

BEAST is the main simulation program. It reads in a model specification from input
files, performs the simulation and generates a set of output files containing
the results. Most of the developments of this thesis were realized within the
framework of this tool.

Out2In is a small utility that allows generation of new input files from the simula-
tion output files. In this way the user is given a chance to interrupt the simula-
tion, modify some parameters, and continue the simulation from the moment
where the previous run was terminated. This means that is the results of one

11
simulation can be used as the initial conditions for another.

From the mathematical point of view the BEAST system solves the simultane-
ous system of Newton-Euler equations of motion for every body in the mechanical
system. The Newton-Euler equations are formulated as second order ordinary dif-
ferential equations (ODEs) on explicit form. The second order differential equations
system is rewritten as a first order system. Typical characteristics of such ODEs are:
mathematical stiffness, very high numerical precision of the solution required by the
application, and computationally expensive evaluation of the derivatives. See Sec-
tion 2.8 and [13] for more details. The tool uses a modified version of the CVODE
[4] differential equation solver for the numerical solution of the resulting system of
equations. This solver is one of the most well known free implementations of the
implicit backward differentiation formulas (BDF) integration scheme. The most im-
portant features of this solver are:
” A variable order multi-step method that requires high continuity of the deriva-
tives.
” Adaptive time step changes based on a local error estimate.
” Efficient use of the solver requires a fast procedure for the system Jacobian
calculation (i.e., the matrix of partial derivatives of the state derivatives with
respect to the state variables).

The original solver has been extended to handle special kinds of Jacobians (block
diagonal with borders and sparse) and to perform a simultaneous RHS and Jacobian
calculation [13].
For the work described in this thesis, the BEAST system has been the assumed
implementation platform. All the ideas for the modeling, the algorithms, and the de-
sign decisions were tried for applicability and usability in this system. Hence we can
say that the system has become a test implementation of the presented approaches.
Its successful industrial usage validates the correctness of the decisions taken.

1.3 Model Requirements


The main aim of this thesis is to provide the elastic body model suitable for dynamic
simulations involving multiple moving contacts. The main issue is an efficient model
of the overall structural deformation. Local deformation in a contact is covered by
the contact model discussed in other reports on the BEAST (BEAring Simulation
Tool) and GRIT(GRInding simulation Tool) systems [6, 23, 12].
The requirements on the model can be subdivided into three equally important
groups. They are: the computational performance or efficiency, the accuracy, the
potential to incorporate the analysis needed for grinding.

12
” The computational complexity of a flexible system model depends mostly on
the number of state variables used for the flexible body. Hence, an efficient
model should use as few states to describe flexibility as possible. The system of
ODE (ordinary differential equations) that is generated in the dynamic contact
analysis problems is in most cases mathematically stiff. The commonly used
type of numerical integrator for such systems is multi-step variable time step
solver. Important consideration for such solvers is the length of the time step
in the integration. Longer time steps means less computations and shorter
simulation times. That is why an efficient flexible body model for the case
of moving contact should not force the numerical solver to take significantly
smaller time steps compared to the same model with rigid components. That
is, the higher frequencies in the system are expected to be associated with the
contact forces calculations and not with the flexible body eigenfrequencies.
” Let us provide a very simple example to illustrate the need for accuracy. In
Figure 1-3 a rotating elastic ring pressed between two plates is shown. From
the physical point of view the radial stiffness of the ring is independent of its
orientation. Hence assuming the constant force acting on the ring the elastic
deflection, measured as the distance between the plates, should become con-
stant after some transient process. When simulating this in the time domain,
it is important that we do not introduce vibrations due to modeling errors or
numerical errors. The situation can get worse for a more complex model where
small, induced vibrations can occasionally resonate with some resonance fre-
quency of the system leading to completely unrealistic results.

Figure 1-3: A rotating flexible ring pressed between two plates.

” In the third group of requirements one can mention distortion, due to the initial
residual stresses in the surface layer combined with uneven material removal.

13
1.4 Related Work
A 3-D FEM model can be used to model flexible bodies. The required procedures
are described in a wide variety of articles and books. References [1, 5] provide ex-
tensive discussions of the methods. However, finite element methods for transient
analysis often suffer from long (days, weeks) computation times. Also, the radial
stiffness computed at the element nodes will slightly differ from the stiffness be-
tween the nodes. This is due to the fact that the deflection between finite element
nodes is normally computed using a low order interpolation scheme. For our simple
example described above, variation in radial stiffness leads to induced non-physical
vibration with the frequency dependent on the number of elements on the circumfer-
ence of the ring and rotational speed. Without doubt the effect can be minimized and
made negligible by using a large number of finite elements but that would lead to an
even longer computational time. The effects of the discretisation errors in dynamic
simulations are discussed in [16].
A commonly used approach to efficiently simulate structural elasticity is to em-
ploy some kind of reduction technique [5, 29, 30] from a detailed finite element
model. Reduction schemes often dramatically decrease the number of state variables
used in dynamic simulation. The reduction is done prior to the simulation using
a FEM-tool. The result of a reduction procedure is a set of assumed displacement
shape functions that is used in the dynamic simulation.
The main challenge of a reduction with modal synthesis is to select a small set of
superimposed mode shapes that give acceptable calculation precision for the simula-
tion. It is one of the most complicated and discussed problems in flexible multi-body
simulation (see [20]). The mode shapes are calculated using data from static mode
shapes and/or frequency response modes, and eigenmode shapes. These resulting
mode shapes can be calculated only for some specific boundary conditions, i.e., given
attachment or interface nodes.
However, in the case of a moving contact the boundary conditions are changing
dynamically. Interaction between any two points of the contacting surfaces is possi-
ble. Hence many nodes on the surfaces have to be marked as interface nodes. Large
number of interface nodes leads to the large number of state variables and makes the
dynamic simulation slower.
The reduced model still has the same vibration problem as the FEM model, due to
the discrete interface nodes on the contact surfaces. The solution to this is to employ
continuous shape functions for the interface motion, i.e., control the surface interface
nodes by the shape functions. This can be done directly in the reduction scheme [30],
or may be done as a separate transformation step after a standard reduction with all
interface nodes.
These reduced models cannot handle the requirements from the third group men-
tioned above in Section 1.3, i.e., non-linear effects due to initial stresses and material
removal.

14
1.5 Thesis Overview
The dynamic equations of motion for the rigid bodies in a multi-body system can
be defined in terms of the mass of the body, the inertia tensor, and the generalized
forces acting on the body. On the other hand, the dynamic formulation of the sys-
tem of equations of motion for linear structural systems requires the definition of the
system mass and stiffness matrices as well as the vector of generalized forces. This
thesis summarizes the equation of motion for deformable bodies that undergo large
translational and rotational displacements using the floating frame of reference for-
mulation. The set of the inertia shape integrals required for the equations is defined.
These inertia shape integrals, that depend on the assumed displacement field, appear
in the non-linear terms that represent the inertia coupling between the reference mo-
tion and the elastic deformation of the body. Some numerical procedures required to
perform a dynamic simulation involving flexible bodies including numerical volume
integration and Jacobian matrix evaluation are also described.
There are several kinds of analysis that are possible only for flexible body mod-
els. This thesis describes three general types of such analysis: free-body eigenmodes
analysis, body deformation under static load and under quasi-static conditions. Re-
sults of these kinds of analysis can be used to quickly assert the basic properties of
the flexible body model before running computationally heavy dynamic simulation.
There is also a discussion on a more specialized kind of analysis: ring distortion due
to the residual stress release during grinding.
The thesis also provides some examples that were used to verify the correctness
of the mathematical model presented.
The main intention of this thesis is to provide a complete and possibly compact
description of the equation and procedures necessary to perform a dynamic simula-
tion of a flexible multi-body system and some simpler kinds of single body analysis.
The thesis is therefore system implementation oriented and does not generally cover
the mathematical derivation of the presented equations. The complete derivation of
these equation can be found in most books on flexible dynamics (see [21]).
The thesis is structured into seven chapters and two appendixes.
” The first chapter provides an introduction and an overview of the thesis.
” The second chapter introduces the mathematical model of an elastic body using
the floating frame of reference formulation and assumed shape function. All
the important equations that define the model are listed and explained in this
chapter. Appendix B shows how the equations presented in this chapter can be
used for modeling of a flexible ring.
” The third chapter presents the set of general shape functions that are proposed
to be used as assumed mode shapes for elastic bodies of used in simulations
with detailed contact analysis. The necessary requirements and boundary con-
ditions as well as volume integration procedure applicable to the presented

15
shape functions are discussed in this chapter. Appendix A provides a compli-
mentary example for this chapter.
” Chapter four covers some design decisions that were made to provide an effi-
cient user interface to for specifying boundary and external loading conditions
in simulations involving flexible bodies.
” The fifth chapter describes some extra types of analysis that are possible for
elastic body models.
” Chapter six gives some simple example test cases that were used to verify
the accuracy of the flexible body modeling using floating frame of reference
formulation and general shape functions.
” Chapter seven focuses on the system architecture and design for a multi-body
simulation system that includes flexible components. We specially address the
problem of transition from a multi-body system that allows only rigid bodies
to the system with both kind of components.
” Chapter eight describes an application example for the simulation system dis-
cussed in the thesis. The importance of the structural flexibility and its influ-
ence on the simulation results for the particular application are discussed.
” The last two chapters summarize the results of the performed work and discuss
the possible directions for the continuation of the research and development in
this area.

16
Chapter 2

Key Equations

This chapter introduces the mathematical model of an elastic body using the floating
frame of reference formulation and assumed shape function. Appendix B shows how
the equations presented here can be used for modeling of a flexible ring. The chapter
is strongly based on the results of [21] and therefore no derivation for the most of
the presented equations is given. The relations that are developed in this thesis and
cannot be found in the reference above are:
” Representation in the different coordinate systems.
” Generalized viscosity forces and damping modeling.
” Generalized external moment.
” Generalized external body load.
” Generalized force from the residual stress release.
” An interpolation method for forces with discontinuities.
” Jacobian calculations.
” Explicit step-by-step calculation procedure as presented in Appendix B.
In the following sections the subscript that normally indicates the body number
will be omitted with the understanding the all vectors and matrices are associated
with some particular single body. Since the equations involve only two coordinate
systems - the global and body ones - one corresponding letter (’g’ or ’b’) will be used
to specify the coordinate system where the vector is expressed or differentiated.

2.1 Flexible Body Motion and Shape Functions


A rigid body in space has six degrees of freedom that describe the location and ori-
entation of the body with respect to the fixed frame of reference. On the other hand,

17
structural components such as beams, plates, and shells have an infinite number of
degrees of freedom that describe the displacement of each point on the component.
Since it is computationally impossible to deal with infinite spaces, classical approxi-
mation methods are employed wherein the displacement of each point due to elastic
deformation is expressed in terms of a finite number of coordinates:
fe L9›š 
 9 [ 9 , where [ 9  [ 9 f e  g £ ¤¤¥
fe g 
(b)
—
• ™
– ˜ (b)

 2 9Dž'9 , where žŸ9  žŸ9 f e 


f 0

g  O
œ – 
˜  9›š g ¤
 3z9B¢.9 , where ¢.9  ¢.9 f e  ¦ ¤
(b) (b)

fe f 0 (2-1)
f g  – ˜b¡9›š
(b)
g 0
(b)

e e
where f(b) gives the displacement of an arbitrary point that has coordinates 0(b) in
the undeformed state. The vector of displacement (or deformation vector) f(b) is e
space- and time- dependent. The coefficients , , and are assumed to depend 
9 2 9 3z9
only on time. The above equations can be written in the following matrix form:
e f
(b)  t ! € f (2-2)
t
[ 9 ( ž'9 ¢¨9 €  \§]
where is the three-rows -columns shape matrix whose elements are the func-
tions
`9 2 9 3z9
, and ; and f is the vector of elastic coordinates that contains the
time dependent coefficients , , and . The total number of elastic coordinates
(which is of course equal to the number of columns of the shape matrix ) should \§]
be determined heuristically depending on the simulation accuracy required and the
importance of the elasticity effects for the complete model.
By using the outlined approximations, the global position of an arbitrary point ©
of the body can be defined as

e (g)
P/g
 s (g)
b/g ª
p«P­¬ ! e  (b)
P/b (2-3)

where
s (g)
define the origin of the body reference;
b/g
®«M­¬ orthogonal rotation matrix;
e (b) e ª e
is equal to 0(b) (b) (b)  e  ª t ! € and gives the displacement of the point
©
P/b f 0 f
in the body coordinate system

Note that it is generally possible to specify the shape matrix in different coordi-
nate systems and transform it using rotation matrix and normal rules for coordinate
transformation. However, use of the body reference frame enables the most natural
and efficient choice of the shape functions. For this reason the shape matrix is al-
ways assumed to be calculated in the body coordinate system. Hence the coordinate
system needs to be specified for all the tensors in the following sections.

18
2.2 Generalized Newton-Euler Equation
The generalized Newton-Euler equation for the unconstrained motion of the de-
formable body that undergoes large reference displacement is given by:
 S_TVT p«P­¬ t   6v ®«M­¬ t N    s ±   l" ² «M³
   
(g)
  µ¬ ³ 
 ¯ aa°A J0| N WYW3 JON W ]   †  b/g

  l´l m ²
R

S € ±
(b)
 (2-4)
j - d ff f f

 «M³ f l  W ² «M³  f l  o ² «M³  


Where
 l´ ² ¬µ³     
l´ ²    f l  W g ² ¬µ³ f l  o g ¬µ³
 ª  f l  o g m² 
R R R

 l m  f l W  Q ! g€  m  7 ! €  ) (2-5)
f g
f ff f ff ff g f

Alternatively using body coordinate system for all vectors:


 S_TVT t   6v t N    s ±     l" ² ¬µ³  

 ² ¬µ³
(b)

O
J N }
W W J O
N W † 
 ¯ aa°A | 3 S ]   ±   l m  b/g
"
l R

€
(b)
 (2-6)
j - d ff f f

where
s ± * is the acceleration of the offset of the body reference coordinates relative to
b/g
g
the global coordinate system.
† (b)
is the angular acceleration vector of the reference of the deformable body de-
fined in the body coordinate system.
€± f
nates of the body f . €
second derivative of the vector of time-dependent elastic generalized coordi-

«M­¬ - orthogonal rotation matrix, which for the case of Euler parameters is defined

 <  y f A    y f AB  y f A  A    AB›ADC  y f A  AB A  ADC  


as:

«M­¬   y f A  A  g ABzADC g <  y f A   y f ABg  y f A  AB ª A  ADC gg   (


ª
y f A  AB  A  ADC g g g g
y f A  AB ª A  ADC g <  y f A  g  y f A  g
 ¶&¶ the four Euler rotation parameters, defined for the rotation about
where A C are
(2-7)
#
vector ¸ ·  ¸ · • ( ¸ · œ ( ¸ ·   $ on angle ~ as
A   ¸ · •Œ¹Mº¼»G½ ( A   ¸ · œ^¹Mº¾»¿½ (
AB  ¸ ·  §¹5º¼»G½ ( ADC ÁÀD ¹Ã½ Ä (2-8)

19
The other parameters of the equation are the mass matrix, the generalized forces
and quadratic velocity vector. The components of the mass matrix are defined in
the next section, generalized forces are discussed in Section 2.5, and the quadratic
velocity vector that includes the effects of Coriolis and centrifugal forces is defined
in Section 2.4.
The Newton-Euler equation given in this section can be further simplified by
using the shape functions that satisfy mean-axis condition. See Section 3.3 for further
development and an efficient solution approach.

2.3 Mass Matrix


Even though the mass matrix is highly nonlinear, the deformable body inertia can
be defined in terms of a set of constant inertia integrals that depend on the assumed
displacement field.
J   ÆÅÈÇ c e  
(b)
É (2-9)
¬µ³ ¬µ³
0

9K PL  ÅÈÇÊcOË Ì² ; 9 Ë Ì² ; L É  ( h ( ?  < (›y{(  (2-10)

t N ÁÅ ÇÊc t 
É (2-11)

t N 9PL  Å@Ç c t 69 t L  ( h ( ?  < z( y{( 


É (2-12)
µ
¬ ³
J N 9PL ÆÅ Ç cÍË Ì² ; 9 t L 
É ( h ( ?  < (zy{(  (2-13)

where
e 0
(b)
is the undeformed position of an arbitrary point on the deformable body;
c is the mass density of the body;
 is the volume of the body;
t 9 h t
is the -th row in the body shape matrix , defined by Equation 2-2.

Note that in the special case of rigid body analysis the shape integrals are given by
Equations 2-9 and 2-10 only.
The mass matrix components now can be defined:
S_T{T ÏÎ Ç c I   a I I ¿…
- É , where - is the identity matrix for the spatial
case, m - mass of the body. For the case of conservation of mass this matrix is
the same for both cases of rigid and deformable bodies.

20
t   v
- is given by   — Ð v ;  Ð v ;   
 ÐÐ vv ;;  Ð  v ;  —Ð  v ;   (2-14)

where
t0 v  # Ð v ;  ( Ð v ;  ( Ð v ; M$  J   t N ! €  ]
ª (2-15)
JON W}W ¿… symmetric matrix with¬µ³the elements
 f Ë Ñ² µ¬ ­ ³ ¬Y;   f Ë Ñ² ¬µ­³ ¬Y;   ¬µ­³ ¬Y;  given by¬µ­³ ¬Y; ¬µ­³ ¬Y; 
- is a
 ­
 Y
¬
Ë Ñ² Ë Ñ² ;  Ë Ñ²  Ë Ñ² 
 g ª g µ
¬ ³ µ
¬ ³ 
ÅÇ c 
f Ë Ñ² ­¬Y;  f Ë Ñ² ­¬Y;    Ë Ñ² ¬µ­³ ¬Y;  Ë Ñ² ¬µ­³ ¬Y;  
 ¯ aa°A | 3 g ª g
f Ë Ñ² ¬µ­³ ¬Y;   f Ë Ñ² ¬µ­³ ¬Y;    É
j - d g ª g
(2-16)
Let us now show how this matrix can be calculated efficiently by using pre-
calculated inertia shape integrals. First we will analyze the components of the
¬µ³ ¬µ³
Î Ç c r# f Ë Ñ² ­¬Y; 9 g  $ É   Î Ç c r# f Ë Ì² ; 9 ª t 9 ! €  ] g  $ É 
diagonal elements:

¬µ³ ¬µ³
 ÎÇ c #rf Ë Ì² ; 9 g  ª €  6] ! t 69 ! t 9 ! €  ] ª y ! Ë Ì² ; 9 ! t 9 ! €  ] $ É 
¬µ³
 ÎÇ c f Ë Ì² ; 9 g  É  ª €  6] !@Î Ç c # t 69 ! t 9z$ É  ! €  ]
y Î Ç c # Ë Ì² ¬µ; 9³ ! t 94$  ! € 
ª É ]
 K 9P9 ª yGJ N 9P9 ! €  ] ª €  6] ! t N 9P9 ! €  ]
(2-17)
Using the procedure similar to the one shown above we can come up with the
JON W}W
following compact expressions for the diagonal and non-diagonal members of
: Ò
K Ò W}W ; 9P9  ˜ L K LÓL ª y f ˜ L J N LÓL g ! €  ] ª €  6] ! f ˜ L t N LÔL g ! €  ]
K W}W ; 9PL   f K LÓ9 ª f J N LÓ9 ª J N 9PL g ! €  ]  t 
ª € 6] ! N LÓ9 ! € ] g (2-18)
where h ( ?  < (zy{( VÕ ?× Ö h

and so the matrix is constant.


JN WYW
Note that for the case of rigid body analysis the elastic coordinates are zero

-
JON W ] has three rows defined as follows
 €  6] ! f t N    t N      f J N    J N    
JON W ]   €  6] ! f t N    t N   g   f J N    J N   g 
€  6] ! f t N Y  t N   gg ª f J N Y  J N   gg
(2-19)

21
-
S ]z] is independent on the generalized coordinates of the body and, therefore,
constant:
S ]z]  t N n t N n t N n
ª
(2-20) ª

2.4 Quadratic Velocity Vector


The quadratic velocity vector can be defined as
l  o  #rf l  o 6T f l  o 6 f l  o 6] $ 6
g gm g (2-21)

In the three-dimensional analysis the components of the vector


pl  o are defined as
f lp o T² «M³   b«M­¬ ! #Øf Š   t0N v y Š  t N €  ) $ £ ¤¤¥
g g ª
f lp o   Š   f JN WYW ! Š   J)N WYW ! Š   Š   f JN W ] ! €  ) ¤ (2-22)
f

gm (b)
g (b)
g ¤ (b) (b)

f l  o ]   Î Ç c.Ù t 6 #Øf Š   ! e   ! e ) $}Ú 


f

g g ª y ! Á
Š É
(b) ¦ f
(b)

where Š

Š is a skew issymmetric
(b)
the angular velocity vector defined in the body coordinate system. and
matrix given by
   Š  Š 
Š™ Š    Š    Š 
(b) (b)
(b) 3 2

 Š Š 
(b) (b)
3 (2-23) 1
(b) (b)
2 1

The quadratic velocity vector includes the effect of Coriolis and centrifugal forces as
f lp o ]
nonlinear functions of the system generalized coordinates and velocities.

f Š
In order to express g
in terms of the shape integrals we need to evaluate the
symmetric matrix: g
  fMf Š   f Š    Š Š 
f Š    Š g Šª 
(b)
g g  fMf Š  Š  Š f Š  
(b)
Š  Š 
(b) (b) (b) (b)

f Š  
3 2 1 2 1 3
g Š Š 1
(b)
2
(b)
Š  g Šª  g g  fMf Š 
1
(b)
3
(b)
3
(b)
2
(b)
(b) (b)
g ª
(b) (b)
g g (b) (b)

o
1 3 3 2 1 2
f l (2-24)
The g ] part in the explicit form is given below:
    Ò
f l o ]   Û Û f Š   % f J N %6 t N &% ! €   y ! Û Û Š  % Ð % €  )
g rš  %5š  g ª g rš  %Mš  f (2-25) f
Ò
 rš  %5 š  Š  % Ð &% €  )
The term ˜ ˜ can be further simplified to
f

Š  f t N Y  t N   g ! €  ) ª Š  f t N    t N   g ! €  ) ª Š  f t N    t N   g ! €  ) (2-26)
3
(b)
f 1
(b)
f 2
(b)
f

22
2.5 Generalized Forces
2.5.1 Generalized Elastic Forces
The virtual work due to elastic forces can be written as
Ü ƒ„   Å Ç × 6 Ü   
É (2-27)
 
where and are the stress and strain tensors, and is the virtual work of the
Ü ƒÝ„
elastic forces. Since the rigid body motion corresponds to the case of constant strains
and since we defined the deformation with respect to the body references, there is no
loss of generality in writing the strain displacement relations in the following form:
  ÏÞ e  f
(b)
(2-28)

where Þ is a differential operator defined according to:



ß %  y< f ¨w ; % ª `w % ; ª Û  xw 9 ; ¼wx9 ; % g ( w¨ ; %  + w¨% ( d (­à  < (›y{( 
9›š +i (2-29)

or, in case of cylindrical coordinate system with coordinates (z~( k g


f}| (see [24]):
ß n  + w¨| á
+
ß n  |< f + w ~ w¨á
+ ½ ª g
ß n  +   w
+k
ß Y  |< f + w¨~ á  w g ª + w | ½ (2-30)
+ +
ß   + w¨á + w |   ½
+k ª +
ß   |< + w ~   + w
+ ª + k½
For a linear homogeneous isotropic material, the constitutive equations relating
the stress and strains can be written as
   E  (2-31)
 # ß n ( ß n ( ß n ( ß Y ( ß   ( ß  P$ 6 ,    &# â n  ( â n ( â n ( â Y ( â   ( â  P$ 6 , E
where   is the
symmetric matrix of elastic coefficients, introducing the material properties.
Substituting Equation 2-31 into Equation 2-27 we can get:
Ü ƒÝ„   €  ! Q T ! Ü € (2-32)
f ff f

where
Q ff
ÏÅ Ç f Þ t g 6 E Þ t É  (2-33)

23
Q ff is the symmetric positive semidefinite stiffness matrix associated with the elastic
states of the body. Boundary conditions discussed in Section 3.3 ensure that the
stiffness matrix becomes a positive definite one.
Since the virtual work of the elastic forces does not depend on the rigid body
states the corresponding components of the generalized force vector are zero. The

 l´ ² «M³    


resulting vector is therefore given by:

  ¬µ³   
l´²  
 l m    Q ! €  
R
(2-34)
ff f

E
f

To complete the description we show how the matrix can be expressed in terms

   
of Lame’s constants:
    
 ª  Ÿy ‘  yŸ‘     
  ª      
E     ª  yŸ‘ 8y ‘    (2-35)
  



 8y ‘ 
  Ÿy ‘ 

’
The Lame’s constants are related to the engineering constants ã - Young’s mod-
ulus and - Poisson’s ration with the following equations:
ä¤ ‘ f  yŸ‘ ä¤
å¤ ã   ª ª ‘ g å¤ ‘  y f ’ ã ª < g
æ ’   æ  
f <  y ’ã ’ f < ’
(2-36)
y f ª ‘ g g ª g
It is important to mention that the stresses and strains we were describing above
are the second Piola-Kirchhoff stress and Green-Lagrange strain tensors. The most
important observation about these two measures is that the components of the ten-
sors do not change under rigid body translation and rotation and so they provide a
natural material description for the case of large rigid body motion but small elas-
tic deflection and strain analysis. The observation is of practical importance since
Hook’s law is applicable only to small strains and because in the particular problems
we are interested in the condition of large rigid body motion, accompanied by small
strains holds.

2.5.2 Generalized Viscosity Forces


We start the description by mentioning a big similarities between the elastic and vis-
cosity forces and the related laws. For instance, for a linear homogeneous isotropic
material, the constitutive equations relating the rate of strain change and viscosity
stress can be written as
Ž   EGF   ) (2-37)

24
ç
”Mass proportional” damping

ç
 ¡ ”Stiffness proportional” damping

‹
‹
 ¡
Figure 2-1: Damping coefficient as a function of frequency.

7
And so following the procedure outlined in the previous subsection we can compute
Q
constants’ matrix
EF
the damping matrix ff similarly to the stiffness matrix ff . However, the material
is often not so well known for damping and so we will describe
one of the approximation techniques - Rayleigh damping. This damping model is
discussed in more details for the case of finite-element analysis in [1]. The damping
matrix in this case is calculated as:
7 Áèé! S
ff ff ªëê !
Q ff (2-38)
è ê
where (1/sec) and (sec) are constants to be determined from two given damping
‹ ‹
ratios that correspond to two unequal frequencies of vibration. Assuming that for two
vibration frequencies and we know the damping ratios and respectively
ç ç
(in fractions of critical damping), the Rayleigh coefficients can be found from the
equations: ì è ‹  ! ê  y ‹  ! ç 
è ªª ‹  !ê  y ‹  !ç (2-39)

Similar to the previous section the resulting generalized force vector can be for-
mulated as:  lé ² «M³     
  µ¬ ³ 
l"² R
   ) 
 l m   7 ! € (2-40)
ff f

Note that given the è


f

and ê coefficients one can establish the damping ratio that

25
‹í : 
ç  è î ! ‹
is specified at a value of
ª y ê ‹í (2-41)
The general view of this curve is shown in Figure 2-1.
ç ðï é
è !ê ‹ òñ ôè ó ê
Simple analysis of this curve tells us that damping coefficient has its minimum
value
 ¡ at the frequency
 ¡
and that the coefficient grows
linearly for higher and hyperbolically for lower frequencies. In fact, one of the fea-
tures of Rayleigh damping is that the higher modes are considerably more damped
than the lower modes, for which Rayleigh constants have been selected.
è
The solution of the linear system Equation 2-39 gives the following relations for
ê
the and coefficients:
ä¤ è    y  ‹  ! ‹  f ç  ! ‹   ç  ! ‹ 
å¤  ‹ ‹ g
æ   y  fç  ! ‹   ç  ! ‹  (2-42)
ê ‹  ‹ g
è
When choosing the damping ratios and frequencies it is important to make sure that
ê
the resulting and coefficients are positive. The negative value of one of the
coefficients leads to the negative damping ratio for a range of flexible body frequen-
cies. Thus the system will become non-dissipative and generate vibrations during the
simulation.
ç ‹  ç ‹
tions follow from Equation 2-42 if we assume : ‹ O õ ‹ 
Since all the parameters used ( , , and ) are positive the following condi-

å äæ ç  ! ‹   ç  ! ‹ 0õ 
ç  ! ‹   ç  ! ‹ 0õ  (2-43)

or, alternatively:
‹  ç ‹ 
‹ ®ö ç ÷ö ‹  (2-44)

In practice, the values of the coefficients are often selected based on the experi-
è
ence with simulation of similar structures when the results of a simulation were fitted
ê
to the same experimental results. That is the same and are used in the analysis
of similar structures. The magnitude of the Rayleigh coefficients is to large extent
determined by the energy dissipation characteristics of the construction, including
the material.
Another use of Rayleigh damping might be to improve the numerical perfor-
mance of the simulation by damping high frequency vibrations outside the frequency
çW ‹W
band that the user is interested in. For example, suppose that only one damping ratio
‹ùø
for the first body eigen-frequency is known. Then, it might be reasonable to
çø
select some high frequency that limits the frequency band and set the correspond-
çW çø
ing damping ration to one thus damping out all the high frequencies. Having the
è
two damping ratios and for two distinct frequencies the Equation 2-42 can be
ê
used to obtain the and coefficients.

26
2.5.3 Generalized External Forces
The virtual work of all external forces acting on a body can be written in compact
form as Ü ƒéW  l  6W Ü € 
l W
(2-45)
where is the vector of generalized external forces associated with the body gen-
eralized coordinates. In a partitioned form, the virtual work can be written as
 Ü s  
Ü ƒéW  #rf l  6T f l  W 6W f l  W 6] $ Ü ú 
(g)

g g g  Ü € 
(g)
e (2-46)
f

f l  T and f l  W W are the generalized forces associated, respectively, with the


g g f l  W ] is
(g)
where e
translational and rotational coordinates of the selected body reference, and g
the vector of generalized forces associated with the elastic generalized coordinates
€
of the body. Generalized forces may depend on the system’s generalized coordinates
, velocities, and on time.
“ fl W
Later in this section in order to provide simpler and more compact equations the
small angles and actual moments vector
ú  gm
are used instead of generalized
f l  W 6W
rotational coordinates (Euler parameters) and associated part of the generalized
force g
. That is we will use:
 Ü s   
  
ƒ W  #rf l 6T f l W 6 f l W 6] $ Ü “ 
Üé
(g)

g g m g  Ü € 
(g)
e (2-47)
f

2.5.4 External Point Force


Let us assume that a force
H (g)  H  f € ( - g
acts at point
(g) e (g)
of the deformable
body.
The virtual work of this force is defined as
Ü ƒéW  f H  6 Ü e 
g
(g) (g)
(2-48)

P/g

where e is the global position of point © of the deformable body. Let the position
 .
(g)

of the point be defined by the vector e


P/g
(g)

e   s  ª b«M­¬ ! e 
(g) (g)
(2-49) (b)

 is the local position of point © with respect to the body coordinate system.
P/g b/g P/b

where e (b)
Ü  is then defined as
The virtual change e
P/b
(g)

Ü e  Ü s # «P­¬ ! e  $ ! Ü “  «M­¬ ! t ! Ü €  
P/g

ª + + “ ª
(g) (g) (b)
P/g b/g P/b f

Ü s   «M­¬ ! e   ! Ü “  «P­¬ ! t ! Ü €  (2-50)


ª
(g) (b)
P/b f

27
The vector
Ü e (g)
can be written in a partitioned form as
P/g

 Ü s   
Ü e 
 # I (  P« ­¬ ! e  ( «M­¬ ! t $  Ü “  
(g)
(g) (b)
P/g P/b
Ü € (2-51)
f

where the shape matrix


t defined at point © . Thus the virtual work
Ü ƒéW is defined
as  Ü s   
Ü ƒéW  f H  6 # I (  M« ­¬ ! e   ( f M« ­¬ ! t $ Ü ú 
(g)

g g  Ü € 
(g) (b)
P/b (2-52)
f

and so the generalized forces in Equation 2-47 can be recognized as

fl T H  ( f l  W  e   ! µ¬ }« ! H  ( f l  W ]  t 6 ! ¬µ}« ! H  (2-53)


g  ng m g
(g) (g) (b) (g) (g)
e P/b

eî   e   6 «M­¬ µ¬ }« were used to simplify the equations.


where the facts that and 6 

2.5.5 External Point Moment


S  S f € ( -
g e ©
(g)
Let us assume that an external moment is applied at point of
the deformable body. Let the position of the point be defined by the vector (g) . The
virtual work of this moment is defined as
Ü ƒéW  f S  Ü “
g6
(g) (g)
(2-54)

where
Ü “ (g)
is a virtual change of the the global orientation of the point © . Since
vector rules apply to the infinitesimal rotations one can write:

Ü “ (g)  Ü “ ª
(g) «M­¬ ! Ü “  (b)
(2-55)
r f

Ü “ (g)
where r is the virtual change of the reference frame orientation and f is the
Ü “ (b)

virtual change of the material particle orientation inside the flexible body as defined
in Section 2.6.
In terms of the generalized coordinates the virtual orientation change is then de-
fined as:

“   Ü s   
Ü “  #  ( b«M­¬ ( p«M­¬ + €  $  Ü “  
(g)
(b)
(g)
+ Ü €
f
(2-56)
f
f

28
“
û €
(b)
where f is a pÝ\§]
matrix calculated by differentiation of Equation 2-68 with
f û
respect to the elastic states:
 + t  + t    
 + k œ + t j 
“+  <  + t 
 + • 
(b)

+ €
f
y +i  +k (2-57)
f
 +t •  +t œ 
+j +i
t  #t 6 ( t 6 ( t 6 $6 ©
• œ   is the shape matrix defined at point .
Finally the resulting generalized force can be recognized as:

fl T  fl ¬µ}« ! S  “


g  ( W ng m  ( f l  W g ]  f + €  g 6 ! ¬µ}« ! S 
(b)
(g) (g) (g)
+
f
e (2-58)
f

«M­¬
where the fact that 6 
¬µ}« was used to simplify the equations.

2.5.6 External Volume Load


In this subsection we will analyze the external loads acting on all of the particles
of the body. The most common cases of such loads are gravity, magnetic and elec-
ü

trostatic forces. For generality we will assume that some load vector with the

dimension N/m (Newton per cubic meter) is acting on each volume particle
c ! ý.
ý É
c
For the case of gravity this load is given as , where is the gravity acceleration
constant vector and is the mass density of the body. Using the equations developed

generalized body load :


lÿ þ
in Section 2.5.4 and integrating over the volume we can get the components of the

f l° þ T  ÈÅ Ç ü  ² «M³   ü  ² «P³ ÅÈÇ   ü  ² «M³ ! 


g É É (2-59)

f l° þ  Å  Ç e   ² µ¬ ³ ! b¬µ}« ! ü  ² «P³    Å Ç e   ² ¬µ³   ! ¬µ}« ! ü  ² «M³  < t  v ! ¬µ}« ! ü  ² «M³
gnm É É c
f l° þ ]  ÅÈÇ t 6 ! ¬µ}« ! ü  ² «M³    Å@Ç t 6  ! ¬µ}« ! ü  ² «M³  < t N ! ¬µ}« ! ü  ² «M³
(2-60)
g É É c
t0  v and t N were defined in Section 2.3. For the case of the gravity force (2-61)

equations can be further simplified considering that a  c ! :


where
 the

f l   T  a ! ýô ² «P³
f l   g  t0  v ! ¬µ}« ! ý  «P² «M³ ³
f l   gm]  t N ! ¬µ}« ! ýô ² (2-62)
g
29
Note that the derivation as presented in this section can easily be generalized for
other kinds of loads that do not depend on the elastic states. That is as long as the
load (force) vector does not depend on the point position within the body one can
sum (or integrate) over the points once at the start up and use the precalculated shape
integrals during the simulation. One useful application of this approach is area load,
where a constant load acts over a surface area.
From the user interface design point of view, the body and area loads rise an issue
of sub-volume and sub-area specification in the input. That is a simulation tool needs
to provide some means to define the geometry to be integrated. Both for the area and
volume specification two approaches are possible.
Closed boundary A sub-volume can be defined by a set of surfaces and a sub-area
- by a set of curves on the surfaces. In both cases the boundary must be closed
to make integration possible.
Parametric specification The sub-volume and sub-area can be specified by coordi-
nate or parametric intervals. This approach is essentially a special case of the
closed boundary specification where the boundaries have simple configuration.
For some cases, e.g., when the specified sub-volume is completely inside the
body, the parametric specification simplifies the integration procedures since
the integration ranges become constant.

2.5.7 Generalized Forces from the Internal Stress Release during


Grinding
The structural elasticity model presented in this thesis was incorporated into a grind-
ing simulation tool [12]. One of the special effects that is of interest for this sim-
ulation is the internal stress release during grinding of rings. The internal residual
stresses in the material can be caused by material phase changes in the hardening
process. When stressed material is removed the released stresses result in elastic dis-
tortion of the body. These distortions are especially significant for large rings where
they often cause manufacturing problems and therefore should be incorporated into
the flexible model [10].
The internal stresses do not affect the elastic behavior of the body as long as the
material is intact. When the material is removed they result in additional generalized
force that affects the generalized elastic coordinates but does not influence the rigid
body part of the system. Following the procedure described in Section 2.5.1 we can
get:
l  q ÁÅ Ç
× 6 Þ t  « (
É (2-63)
«

where the volume integration is done over the material volume that is ground away
during the simulation and stands for the residual stress tensor.
For simulation purposes it is often possible to assume that all the surface particles
are subjected to the same treatment and only a thin layer of material is removed

30
during grinding. That is why it is realistic to model the internal stress tensor as 
a constant tensor in the surface layer when the local coordinate system (s) normal

matrix
„ ­¬
to the surface is used to calculate the strains and stresses. Assuming that a rotation
transforms the body coordinates into the local surface coordinates one
can perform integration of the shape matrix independently:
³
l  ² q  f   ² „ ³ 6 Å Ç
Þ ² „ ³ f „ ­¬Mt  «
´
g gÉ (2-64)
f | (›~Œ( k
„ ­¬
Note that for the case of ring grinding where a cylindrical coordinate system g
~
is used as the body coordinate system the matrix does not depend on the angle
.
l q
fact that the volume
«
The problem with the evaluation of the generalized force comes from the
representing the ground material changes with time. In a

keeps the value of the height ¢ « fw (¸ g


simulation the ground surface is described by a mesh. Every node of this mesh
ground at the point
fw (¸
g
on the surface. The

During a grinding simulation the values ¢ « fw (¸ g


integration in Equation 2-64 should obviously be performed over this surface mesh.
are updated only once for every
ODE solver time step and are kept constant when the solver does trial time steps
during internal solver iterations. It means that the generalized force can also be
l q
steps. The values ¢ « fw (¸ g
evaluated only once per time step and can not be accurately evaluated between the
are accumulated during the simulation run and can not be
directly computed from the state variables. Therefore the extrapolation procedures
inside the solver can not predict the change of the resulting force. Hence, from the
ODE solver point of view the force changes discontinuously. For a high-order solvers
with adaptive time step size like CVODE force discontinuity results in convergence
problems and shorter time steps, leading to much longer simulation times.
In order to avoid this discontinuity problem an interpolation procedure was de-
veloped. The procedure is actually general and can be used for smoothing of any
kind of force input that causes numerical problems. The procedure is discussed in
Section 2.5.8

2.5.8 An Interpolation Method for Forces with Discontinuities


Some non-linear effects modeled in dynamic simulations make it impossible, or very
hard, to evaluate the force function at every time instant. In such cases some extrapo-
lation or interpolation procedure must be used to provide a continuous force function
in time domain. High order ODE solvers used for dynamic simulations assume high
continuity of all the functions involved in the problem. Some experiments done in
the BEAST tool show that at least second time derivative’s continuity is needed in
order to get reasonably large time steps in the solution.
The interpolation procedure described here can be used for the forces which are
changing with lower frequencies than some other fast processes in the simulated sys-
tem. The main idea of this procedure is to delay the real force value for a small time

31
 f- g

- Interpolation
between and - - ª Üv  f-g

f- , ) f- ,± f-

g g g
f
Figure 2-2: Force interpolation as af filter block. A continuous force function  - g
generated for the discreet input  - g .
is

interval and to use cubic interpolation to get a smooth change of the force function
between the current and the delayed values.
Before using the procedure the interpolation time delay parameter must be se-
Üv
lected. The only requirement on this parameter is to be larger than the maximum
possible time step of the ODE solver. Initial value of the force variable to be interpo-
lated must be given. The initial first and second time derivatives of the variable are
normally assumed to be zero if no other information is available.

 f- g
The interpolation procedure can be seen as a filter block shown in Figure 2-2.

 ] - ª Üv
The only input for the block is the calculated force . This value is delayed and

-  - ö f - ª Ü v g
assigned to the variable which is seen as the expected force value for time .
-
So, at every time , such that the interpolation block is using the
following four variables:
” Force variable current approximating value    f- g;
” First and second time derivatives  )   ) f - g and  ±   ± f - g ;
” Delayed value of force  ] .

calculate the approximate value  f-g


Having the four parameters above (two values and two derivatives) it is possible to
by using cubic interpolation:
 f - g   f <  Ü < v f -    ] Ü < v f -  - g 
- g g ª
)f  f  Ü < v f -  -    ± y <Ü v f -  -  f -  -  Ü v
ª  - - g <
(2-65)
g g g g
32

 ]  

¬
       ]
-

- - -   - ¬ - ª Ü v -   ª Ü v

- ¬  
Figure 2-3: One dimensional force interpolation. The values of the force variable
-
  ]    ]  
for the time instances and are calculated using third order interpolation between
and for and between and for . 

 f-g
Note that is a continuous function which is the essential output of the interpo-
lation block and should be used instead of the discreet values .  f- g
-    ]  
When the numeric ODE solver has done some iteration and decided the step
size and state variables values for the time the force variable value can be
  -   
calculated. In order to move to the next time step and to interpolate the values for
     • f -   g
  )  
times between
 ±   -
and we need to evaluate and the derivatives

 
and according to the equations:
f  f 
 )       -  Ü  v - g ª   ] -  Ü  v - g
) f <  f -   Ü   - g   ± f    f <   f -  Ü v  - g
ª  v ª - -g y
f  f 
 ±      -  Ü v  - g ª   ] -  Ü v  - g
(2-66)

   ) f -    Ü v  - g  ± f <   f -  Ü  v  - g
 ª g

- ] - )  
Figure 2-3 shows an interpolation scenario where the ODE solver evaluates one
-
of the force variable 
extra time instance between two time step and
is interpolated from , ,
. The corresponding value
and using the procedure    ±
above.

33
The interpolation procedure described in this section provides continuity of the
second time derivative of the force vector which is sufficient for most cases. It is cer-
tainly possible to achieve higher order continuity by using higher order interpolation
methods.
The interpolation procedure can be applied element-wise to vector variables and
hence can be used for generalized forces’ interpolation.

2.6 Rotation of a Material Particle due to Deforma-


tion
In general during the deformation of a body, any element is changed in shape, trans-
lated, and rotated [24]. In order to analyze systems with rotational springs and
dampers it is necessary to be able to calculate the orientation of a material point in
the deformed body. In order to calculate the orientation of a material particle for the
case of large deformations one has to use the properties of the deformation gradient
[1]. However for the case of small deformations where only linear terms are taken
into account the rotation can be analyzed as infinitesimal. The rotation matrix that
performs the rotation of a particle from the undeformed state to the infinitesimally
deformed orientation can be calculated as (see [21]):
     
] Ì  I       œ 
ª      • (2-67)
œ •
I f  
where is an identity matrix and • ( œ (   g are three small angles corresponding to
the rotations around the three respective coordinate axes. The angles can be calcu-
 + e  
 + e  
lated as:
(b) (b)

     +k +j 
f,y f,z

•  <  + e   + e  


 œ  y  +i (b)
f,z
(b)
f,x
+ k  (2-68)
   + e  + e 
(b) (b)

+j +i
f,x f,y

2.7 Using Intermediate Coordinate System


It is sometimes convenient, and/or more efficient, for the numerical solver to observe
the motion of a body in a coordinate system other than the inertial one. For example
if the simulated body is a part of a complex system and it is desirable to analyze the
body movements from a certain known position in the system. From the mathemat-
ical point of view, this known position is a coordinate system with known motion.
In such a case a special care must be taken when working with time derivatives of

34
position and orientation of a body. Below, the transformation rules for taking time
derivatives with respect to different coordinate systems, are given.
To be more specific let us assume that two coordinate systems are involved in the
analysis.
” System 
is the inertial coordinate system where the Newton-Euler equations
are valid.
”  s! "  $s ±   "
System
tion vector
is a coordinate system with know motion in
, linear speed
#s )  " " *
. That is, the posi-
, and linear acceleration as well "*
" ‰  "
acceleration
%‰  )  " " *
as rotation matrix
are known.
, relative angular velocity and relative angular

s
s ) " *  s ) * ‰   "  s 
Then for a physical vector the following transformation is valid:

ª (2-69)

Applying Equation 2-69 on the relative angular velocity vector shows that the

‰  )  " " *  ‰  )  " * ‰   "  ‰   "  ‰  ) " *


time derivative is invariant with respect to these two systems:

ª (2-70)

Therefore the coordinate system where differentiation


the specification the angular acceleration vector .
‰  ) " is done can be omitted from
Using the same Equation 2-69 twice we arrive to the relation for the second time

s ±  " *  s ±  * ‰% )  "  s  y ‰%  "  s ) * ‰%  "  f ‰% "  s 


derivative:

ª ª ª g (2-71)

Now we will consider a body coordinate system  3  defined relative to the inter-
mediate coordinate
s  and itssystem    . That is the position of the body is defined with the
vector orientation with a rotation matrix
. Hence the position of
 & is defined as
s  "  s$ " s  
the body in the coordinate system

ª (2-72)
Then Equation 2-69 leads to the following expression for the linear velocity of
the body:
s )  " " *  !
s )  " " * s )  * ‰   "  s  
ª ª (2-73)

s ±   " " *  s ±   " " * s ±   * ‰  ) " 


Equation 2-71 gives the transformation for the linear acceleration:
s 
ª ª
y ‰  "  s )  * ‰   "  f ‰  "  s  
g
(2-74)
ª ª
35
Similarly, for the angular speed of the body Š  " and angular acceleration †   " " * :
Š   "  ‰   " ª Š  
†  " " *  Š  )  " " *  ‰  ) " ª †   * ª ‰   "  Š  
(2-75)
(2-76)

Note that the equations above do not specify the coordinate system where the

'  " ( ' 


components of the vectors are expressed. Therefore appropriate transformation ma-
trices (e.g., ) may be necessary to apply to bring all the vectors in the
same coordinate system (e.g., ’B’).

2.8 Calculating Jacobian

k )  [ f k ( - g *
Jacobian computation is an important procedure that influences the efficientcy of an
implicit solver. The ODE solver receives the differential equation that
represents the mechanical system behavior and it requires the partial derivatives û)*  (
û
*, + order
in
Ù €  ( to‚  Ú construct the Jacobian. From the application point of view, knowing that
it is convenient to view the partial derivatives as a set of four matrices:
 + €  ) + €  )  
+ €  ) + ‚  ) 
+‚ +‚
+ € + ‚

where € includes all the translational, rotational and elastic coordinates, ) and ‚ con-

tains all the velocity terms. The blocks in the first row of this matrix ( ++ €  and + + ‚  )
€ € )
) 
part € + ‚ , the ”elastic” parts
can be
+ € ) computed analytically. Since for the+ € elastic ) f f

of + €  are zero and corresponding parts of + ‚  are an identity matrix.


‚ )
Calculation of the second row blocks ( ++ €  and ++ ‚  ) is more complicated and
‚ )
involves differentiation of the acceleration terms with respect to the state variables.
Let us rewrite the Newton-Euler equations presented in Section 2.2 for some body d :
¬µ³ ¬µ³
S ! ‚  ) ²  lé ² (2-77)
* 
) ¬µ³  ¬µ³
Differentiating both parts of the equation by the complete state vector we get:

+ ‚  ²  S -  /! .0 + l" ²  + S  ! ‚  ) 2 ¬µ³
² 13
+* +* +* (2-78)

The term involving the mass matrix derivatives introduces the specifics of flexible
¬µ³
body analysis where the mass matrix is not constant. Another property of the elastic
case is the dependency of the generalized force vector on the elastic states.
l  ²
"
36
A ; 9CBD7
>< ; =8? 7 < ; 8= ? 9
x <; @ ?7 >< ; @ ? 9
y x
46587 E ; FIHKJ B FIHIL
G 465:9
y

x
y
cG
Figure 2-4: A simple force acting between two flexible bodies.

Obviously the derivatives of the velocity states are nonzero only when differen-
tiated with respect to the same body states or with respect to the states of a directly
interacting body. In this context interaction means existence of a force acting be-
tween the bodies. Figure 2-4 illustrates the case of a force acting between points
d à
calculate partial derivatives of the ‚ )
fixed in the material of the elastic bodies and . Let us describe the procedure to
vector with respect to the states of the both
bodies.
For the application efficiency the most important aspect is to minimize the num-
ber of the force function calculation. This is done by using chain differentiation rules
H
and using force function only to compute a low-dimensional matrix ûMO TVNQPSU R , where
M  % ²  ³ is the relative motion tensor, that includes the distance between theû points,
P
rel-
ative orientation and relative speeds of the points including the effects of structural
deformation.
‚ d Ö à
The procedure for calculating , when ûW*  ( T P
(mixed sub-Jacobian) differs from
the case d à . û
k%
We will first describe the simpler algorithm that is used for mixed sub-Jacobians.
For this case in Equation 2-78 only the generalized force vector is dependent on
and we can immediately write the differentiation chain:
) ) 
+ ‚   +  ‚  ! + l   %
+ * % + l % + * % (2-79)

where
l % is the contribution to the generalized force
l from the force acting on

37
d à 
l  
ûXl ‚ ( P  S -
body from body . Note that from the differentiation of Equation 2-77 with respect
to %
û P UYT
it follows that the matrix is a constant matrix that needs to be
computed only once.
Continuing the expansion we get:
³ ³ ³
l+ … ²  % + lé ²  % + H  ²  % + M  % 
 ³ ³
+ * % + H  ²  % ! + M  % ²  ! + *  % (2-80)

MZ KT NQPSU R P
The partial derivatives *  T reflect both the motion caused by rigid body motion of
û
û à and the elastic deflection motion of the material point
the geometry center of body
due to the changes of the elastic states.
Current implementation uses forward differences to calculate the partial deriva-
tives on the right hand side of Equation 2-80.
‚
Differentiation with respect to the same body state, i.e., the calculation of the
û *  ( PP , is more complicated for the following two reasons:
derivatives
û
” Mass matrix S is a function of the state tensor * 
” Generalized force is a function of both applied force and the state tensor * .
Recall, for instance, from Section 2.5.4 that the generalized external point force
 H  
l  %   f [  Ì ; [  ; % H  % 
can be written as:

 t 6 ª f [  Ì ;] g ! H  % 
(2-81)
g
and so the partial derivatives for the elastic states become (all vectors and matrices
d
are in the body geometric coordinate system):

 H %  

  + * ; á 
+ l  ;  %   t f [  Ì ; H   % 
f [  Ì ; [  ] ;  + *  ; % 
H 
+* ] g  ª ªH   g + ] (2-82)
 t 6 f [ Ì ; g ! + + *  ; ] % 

general rule. Given some general function  fž fk g (k g


Currently, in order to get a possibly simple implementation we use the following
the partial derivatives with
k
respect to can be calculated as:
f f žf Ì f f
+  f ž f k Ì g ( k Ì g   ž k Ì g ª + + k k g ! Ü k Ü( k Ì ª Ü k g   ž k Ì g ( k Ì g
+k k (2-83)

38
H l   % f H   % ( * ] ;
M  %  f * ( * % g
So, having computed û M  PTKUYU T g
P
and having functions and
û l  UYT
we can construct a function for numerical differentiation that computes *  P q . The
û
pseudo code for the function follows:
P \
;
For each component of * ]0k 9 do:
Choose an increment delta for forward differences
Ük
^kM  9]   k 9 ª  Ü k f   *  ]
Calculate:

%] `_ %  * ] ( * % g
, compose

H  ]  %  + M H    % ! f M  % ]   M  % Ì  H  Ì  %
% gª
l ]  %  l +   % f H  ]  % ( * 
l+   % f l    l  ]Ì  g Ü
 ] % % g ó k
+ * ;]

39
Chapter 3

General Shape Functions

3.1 Motivation
We observed that there is a large class of applications with bodies that are constrained
by surfaces that can have a contact. The essence of these constraints is the need to
have a continuous shape function description for deflection of each of such potential
contact surface.
Having considered the limitations with the reduction techniques we decided to
use the classic approximation method and sets of general functions to approximate
the deflection. Particularly we used Chebyshev polynomials to model deformation in
radial and longitudinal directions and Fourier series for the circumference direction
of rotating bodies. We use the proposed set of functions to describe the deforma-
tion through the material. The use of the well-known analytical functions enables
efficient calculation of deformation shapes. The series are known to be efficient in
approximating smooth functions and we can expect the real deformation shapes to
be smooth and so accurately represented even with low order polynomials and small
number of waves. In [19] it was pointed out that the same deflection solution can
be obtained using different sets of eigenmodes as mode shapes with high accuracy.
Since general functions are able to accurately approximate any set of eigenmodes
this assertion also supports the idea of using general shapes.
The flexible model that employs general shape functions is easy to use since no
interaction with other tools are needed, and the flexibility is controlled by a few input
parameters. An additional attractive feature of the approach is the ability to select
specific elastic degrees of freedom in an easy way and disable the deformations that
are known to be insignificant.
The shape function integrals are automatically calculated at start up since we
have a full geometric description of the body. The integrals may be modified during
the simulation. Thus, it makes it possible to include effects of initial stresses and
material removal.
Since we have a continuous description of the deformation field, we can have
contact or connections anywhere on the body, and there will be no induced vibrations

40
due to modeling errors.
Of course, there is a practical limit when this technique is not suitable, i.e., for
components with very little constrained, complex geometry, but those limits are yet
to be found. In such cases standard reduction techniques will be more suitable. We
believe that different complementing methods need to be available within a large
general purpose MBS system.
” For bodies with well defined interfaces the mode shapes should be selected
using eigenmode, static and frequency response analysis as described in [18,
29, 28].
” In the case of small area of potential contact for a body with complicated geom-
etry one should complement the reduction method with the continuous shape
function description for the contacting surface [30].
” For the case of multiple contacting surfaces and relatively simple geometry
the general shape functions approach presented in this thesis should be used.
This is also the only approach known to work in simulations of prestressed
structures during material removal.

3.2 Choice of Shape Functions


For the majority of real-life problems the exact deflection shape functions are not
known and different methods to select shapes that provide the best approximation of
the exact solution are often discussed in the literature. It is also known that differ-
ent sets of functions give approximately the same results when sufficient number of
degrees of freedom is included in the system.
The approach taken in this work was to use series of general functions that are
known to approximate any continuous function. The approach is based on the idea
first suggested in [30] for the representation of interface surface deformation shape
only. In this work the same set of functions was used to represent deformation field
through the entire volume of elastic body.
Specifically, when working in cylindrical coordinate system series of Chebyshev
polynomials were used for the radial and axial directions and Fourier series for the
circumferential direction. That is the deflection shape along certain coordinate direc-
h
tion (radial, tangential or axial) is approximated as:
¬µ³
e  ]² ; 9  wx9  ¡:Û a \ b ¡dÛ c \ b ¡:Û e \ b ; ;
šÌ šÌ šÌ i ] a ; 9 c e ! ž8 a f Ë Ì ; á g ! ¹5º¼» f d ½ Ë Ì ; ½ g ! žŸ e f Ë Ì ;  4g
a c e
Û \b Û \b Û \b ; 9 ;    ; ! ž8 f Ë ; á !ÈÀ  f Ë ; ! ž8 f Ë ;
ª ¡ aš Ì ¡ c š Ì ¡ eš Ì i ]a c e a Ì g ¹ d ½ Ì ½ g e Ì   g (3-1)
a c e
41
Where \ á ;9 ( \ ½ ;9 ( \   ;9 à € ]
give the number of functions used in each direction, is the žD%
Chebyshev polynomial of order and is the vector of elastic coordinates.
For the case of Cartesian coordinates Chebyshev polynomials were used for all
the three coordinate directions. Hence the real deflection shape along certain coordi-
h i j
nate direction ( , or ) is approximated as: k
¬ µ; ³
e ]² 9  wx9  ¡dÛ f \ b ¡dÛ g \ b ¡ Û e \ b i ] f ; 9 ; g ; e ! ž8 f Ë Ì ; •8g ! ž8 f Ë Ì ; œDg ! ž8 f Ë Ì ;  4g (3-2)
šÌ šÌ šÌ f g e
; ;9 ( \ f; 9 g e
where \ • 9 ( \ œ   give the number of polynomials used in each direction.
An important property of the both orthogonal polynomials and Fourier series is
the availability of the recurrent relations providing a way for fast series calculation.
For instance, for the Chebyshev polynomials the relation is given below:
ä¤ f
å ¤æ žž Ì f i g  <
ž fi i g g  i y i ž -  f i g  ž -  f i g (3-3)
  
Note that having the recurrent relation for the polynomials we can easily get recurrent
relations for the derivatives of the polynomials as well. These derivatives are required
for the strain and stress calculation. Again using the Chebyshev polynomials as an
example: 䤤 É ž Ì f i g  
å ¤ ž É  if i g  <
¤æ É ž É i f f f (3-4)
É  i i g  y fž -  fi g ª i É ž  -i i g g  É ž  -i i g
É  É É
3.3 Separation of Elastic and Rigid Body Motion
Modes
Typically in an assumed mode shape method the selected mode shapes always satisfy
some specific boundary conditions. This is not true for the general mathematical
functions used in this work. Thus we have to impose some extra conditions in order
to make the selected set of mode shapes admissible for the problem.
In this thesis the case with no fixed external boundary conditions is considered
- all the bodies have all the degrees of freedom. That means the only condition
imposed on the shape field is the absence of rigid body motion degrees of freedom
in the elastic deformation [18].
­³
w • f i ( j g  i ]² Ë œ
In order to understand the importance of this condition consider a small example
 ³
w œ f i ( j g  i ]² Ë •
in 2D. Suppose that only two deflection functions are selected:
and
ƒ f /€  h  ‘ ' f i ] i ] 
. If we follow the standard procedure for calculating the strain
‘ ­³ ³
g ª g
i ]²   i ]²
energy of an object we will get: where is the Lame ma-
'
terial constant and - area of the body. The relation means that when

42
no strain energy is created. The immediate conclusion that this shape combination
corresponds to the rigid body motion is only partially correct. In Figure 3-1 we show
the changes to a simple square when the shape coefficients are . It is €/ h # < (  <D$
obvious that the area of the square grows, for our example it is doubled. The example
shows that the use of general functions without proper condition will not just slow
down the simulation, but can result in some non-physical effects. The discussed ex-
ample, for instance, would lead to the ’explosion’ of a body, since the change of the
area doesn’t create any energy and consequently doesn’t provide any stiffness.
x x

2 A 2
B 1 A 1
y y
1 2 B 1 2D
C D

Figure 3-1: Use of shape functions without boundary conditions.

The conditions that were chosen to remove the rigid body motion terms from the
deflection functions correspond to elastic body mean-axis condition for the reference
frame. The mean-axis conditions are obtained by minimizing the kinetic energy
with respect to an observer stationed on the flexible body [18, 19, 26]. The stronger
version of the mean-axis conditions can be formulated in term of the precomputed
integrals (see Section 2.3). The total of six conditions can be partitioned into the
three conditions for the translational degrees of freedom:
J   t N ! € ]  
ª (3-5)

And three conditions for the rotational degrees of freedom:


 f J N    J N    
g
 ff JJ NN Y  JJ NN    g  ! €  ]   (3-6)
g
Note that the conditions effectively attach the reference frame to the mass centre
of the body allowing simplifications to the dynamic equations described in Chapter 2.
The mass matrix simplifies to (using body coordinate system for all vectors):
 S_T{T  t N  
S   JN WYW J N W ] 
¯ j aa°A - | d 3 S ff
(3-7)

43
f lp o T
And the quadratic velocity term also becomes zero. g
condition
t N ! € ±  
Having the mass matrix simplified and noting that from the no mass centre motion
one can also avoid the inverse of the complete mass matrix when
f
finding the acceleration tensor from the Newton-Euler equation and get:

s ±  a < l 
(b)

†   f J N WYW  JN W ] ! S -  ! J N 6W ] g -  f l  m  OJ N W ] ! S -  f ! l   t N 6 ! s ±  gMg


m/g r
(b)
(b) (3-8)

€ ±  S -  ! f l   J N 6W ] !@è  t N 6 ! s ±  g
ff ff f m/g
(b)
f ff f m/g

Even though the expressions in Equation 3-8 might look more complicated than the
original equation in Section 2.2 one should note that the simplified expression require
inverse only of two matrices: a constant matrix ff and a small i matrix to find ÷…
 
j f\ ] g j f\ ] g
the angular acceleration. Hence the time for the solution of this linear system grows
as instead of in the original case with full mass matrix.

3.4 Special Shape Functions for Solid Bodies in


Cylindrical Coordinates
One problem with the general shape functions concerns the use of cylindrical coor-
dinate system as a body coordinate system, which is quite natural for the bodies with
rotation symmetry. The problem here is the singular point in the centre of the coordi-
nate system. This point is not important for the bodies with no material at the centre
(rings and hollow shafts), but it is unavoidable for the solid bodies (solid shafts).
Let us recall the deflection to strain equations for the cylindrical coordinates in

ß n  + + wx| á
Equation 2-30:

ß n  |< f + w ~ ½ ª wxá g


+
ß n  + w  
+k
ß Y  |< f + w¨~ á  w + w| (3-9)
+ g
½ +ª ½
ß    + wxá ª + w |  
+k +
ß   |< + w ~   + w
+ ª + k½
ß n , ß Y and ß   to be finite in the centre of the
In order for the strain components
coordinate system, that is for
|   , the following equation must be satisfied for any

44
angle ~lk #  z( ynm $ and for any cross-section cut k :
+ w ~ w¨á  
+ ½ ª
+ w¨~ á  w  
+ ½ (3-10)
+ w~    
+
From the physical point of view the Equation 3-10 require the continuity of the
displacement functions for every point on the centre line of the body.
In order to realize this constrain both sets of shape functions defined in Equa-
tions 3-1 and 3-2 were used. The cylindrical shape functions were used to describe
the deflection shape of the cross-section and the Cartesian shapes were dedicated to
the central line deflection. That is, the cylindrical shape functions were modified so
that they never result in a deflection of the centre line of the body. This is done by
removing the constant term from the Chebyshev polynomials that have as an ar- Ë Ì ;á
gument. At the same time the Cartesian shape functions were restricted to the centre
ž f Ë Ì ; z  g i j
line deflections by removing the dependency of the and coordinates thus leaving
only a single polynomial in the series. The Cartesian shapes were then trans-
formed into the cylindrical coordinates by using ordinal coordinate transformation:
 w¨á    DÀ  ~ ~     w •  
¹ ¹ M ¼
º »
 ww ½     ¹5 º¼» ~ ÀD  ¹ ~ <  !  ww œ  (3-11)
   
3.5 Imposing Constraints for Rigid Body Motion
There are several possible approaches to impose boundary conditions discussed ear-
lier in this chapter on the shape functions. The three most popular methods are men-
tioned in this section. They are: elimination method, Lagrange multipliers method
and penalty method.
a
a
The elimination method is based on the idea that the set of boundary conditions
can be used as a set of equations to express the values of some elastic state vari-
ables as functions of other states of the body. In this case corresponding degrees of a
freedom can be considered as redundant and may be safely removed from the system.
However it is in general very hard or impossible to determine which degrees of free-
dom can be eliminated in a large simulation model. That is why this approach is in
practice limited to the simplest cases when a boundary condition explicitly specifies
the value of some of the state variables.
Lagrange multipliers method is very popular in multi-body simulation tools [1,
21]. It provides a general way to deal with boundary conditions. In this method
one extra state variable is associated with every boundary condition. These extra
state variables are called Lagrange multipliers. A Lagrange multiplier becomes non-
zero if the boundary condition is active and results in a reaction force that forces

45
the condition to be satisfied. The drawback of this method is the necessity to have
extra state variables and keep larger mass matrix and force vector. If the number
of constraints is large (comparable to the number of the elastic shape functions) the
number of extra state variables becomes comparable to the total number of elastic
degrees of freedom. That is the size of the system of ODE becomes significantly
larger and makes the simulation slower.

o ¬
The idea of a penalty approach is to represent each boundary condition as a spring

o ¬
with very high stiffness [1, 3]. The stiffness matrix of the elastic body and the
force vector are modified to incorporate the effect of this spring. By choosing the
parameter large enough it is possible to get sufficiently accurate solution, i.e., a solu-
tion where the error in boundary condition lies within the numerical tolerance. The
penalty approach is general and simple to implement. That is why it was chosen for
the implementation in the BEAST system. The detailed description of the approach
is given below.
A general linearized boundary condition can be written as:
p  6 ! €  2 Ì
´
p
f (3-12)
where elements of
p
are known constants. In reality, constraints often restrict only
a few variables and so the vector is sparse.
The modified stiffness matrix is given by:
QN  Q ¬ p´ 6 p 
ff ª o ! !
ff (3-13)

l  ¬  o ¬ !È2 Ì ! p 
and an extra reaction force vector can be computed as:
(3-14)
The large boundary condition spring constant is typically chosen to be several
Q
orders of magnitude higher than the maximum diagonal element of the original stiff-
ness matrix ff . In this case boundary constraints introduce frequencies that are
much higher than the body’s eigenfrequencies and are in practice completely damped
out when even a small stiffness proportional Rayleigh damping is used.
It must be noted that the introduction of multiple constraints with the penalty
approach results in large diagonal elements of the stiffness matrix. The drawback

o ¬
of this, according to [3] is the sensitivity of the results to the computational errors.
To avoid this problem the constant should not be set to extremely high values
and double precision arithmetics must be used. In out test runs it was noted that the
numerical error introduced by the penalty constants is several order of magnitude
lower than the general modeling error and other kinds of computational errors.

3.6 Reducing the Number of Flexible States


The series defined by the Equations 3-1 and 3-2 provide a complete mathematical set
of functions suitable for approximation of any continuous deformation shape. How-
ever in a real simulation only some specific deformation shapes determined by the

46
flexible body geometry and boundary conditions are present. That is why contribu-
tions of some of the general shape functions to the particular solution are small. By
detecting such shape functions and eliminating the state variables associated with
them we can reduce the number of flexible states for a body and speed up the simula-
tion. Note that this approach is fundamentally different from the traditional reduction
techniques. We do not try to find the most suitable shapes and change the functional
basis, instead we just eliminate some of the shape functions in the complete series.
Let us define a characteristic set of shape vectors to be the set elastic state vectors
corresponding to the deformation shapes typical for the specific simulation. The
characteristic set can be constructed using static, eigenmode, or quasi-static analysis
(see Chapter 5), or using a relatively short trial simulation in the following ways:
Static shapes The state vectors corresponding to the static solutions of a typical
boundary conditions problem should be a part of the characteristic set.
Eigenvectors If the user specifies a frequency band then the eigenvectors corre-
sponding to the free body eigenfrequencies in this band should be included into
the characteristic set. Alternatively a user might want to specify the number of
eigenmodes (e.g., specify that only first three eigenmodes are of interest). In
such a case just the specified number of eigenvectors should be included into
the characteristic set.
Quasi-static shapes In rolling-bearing applications simulation for a certain speci-
fied angular velocity is common task. The solution vectors for the correspond-
ing quasi-static case should be included into the characteristic set.
Trial simulation In a rotating machinery simulations there are often some periodic
processes where the difference between the two periods is relatively small. For
instance, two complete revolutions of the workpiece in a grinding simulation is
an example of such a repetition. In such cases a trial simulation of exactly one
revolution can be run and all the state vectors during this trial simulation can be
recorded into the characteristic set. Note that the vectors generated during the
simulation often correspond to the same shape with different amplitude. Then,
after the reduction, the following revolutions of the machine can be simulated
faster with smaller number of elastic states.

ß
Having selected the state vectors into the characteristic set and for a specified
relative threshold (which is an input parameter) the filtering algorithm given below
should be applied.
” Mark all the elastic states as inactive
” For each state vector in the characteristic set
– Calculate the threshold:
< q
ri q  ß !ts ^\ ] Û ¡ * xi ] ; * u
rš  (3-15)

47
– Remove the inactive mark for the elastic states that have the absolute
value larger than . irq
Note that it is assumed that all the shape functions are scaled with the real geometrical
dimensions of the body and therefore all the state variables has the same dimension
(meters) and can be directly compared.
As the result of the algorithm only the states that have very small contributions
to the vector in the characteristic set retain the inactive mark. Those states have
therefore become the candidates for the reduction. The choice of the threshold is ß
ß <ÈA  y ó ^\ ]
normally determined by the anticipated modeling error. That is, if one percent error
is acceptable, then can be set to .
Assuming that the contributions of the states with inactive mark are negligible
they can be safely eliminated from the problem. Elimination of an elastic state d
means removal of the i-th element from all the vectors that have a part associated with
€ ] € ) ]
the elastic states. Hence the i-th element should be removed from the elastic state
€ ± ]
forces vector ]l
vector , velocity vector , acceleration vector
and precomputed integrals and
tN
as well as from the generalized
J N 9PL
. Besides the i-th row and i-th
S ]z] Q ]z] 7 z] ]
, , and .
t N 9PL
column should be removed from all the matrices associated with the elastic states:

The technique has not yet been used in the production runs. However some of
our test runs showed that up to the half of the elastic states generated by the general
functions from Equations 3-1 and 3-2 for the user-specified number of degrees of
freedom can be eliminated later on by using the presented reduction approach. This
is due to the fact that the general interpolation series introduce many shapes that
correspond to very high frequencies for the particular body.

3.7 Volume Integration


Volume integrals representing the stiffness, damping and inertia properties of elastic
objects are needed for simulation.
f}| (z~( k
Here, most work has been done on integration of bodies defined with a rotating
profile curve. Cylindrical system g
is said to be the ’natural’ coordinate system f |Vf w z( ~ ( k f w (z~
~
for such bodies. To define rotating profile body a profile curve must g Mg g
w
be given for any angle . The profile curve is defined piecewise and each segment has
a separate parameter going along the curve. We assume that the curve is continuous
both in value and derivatives within each segment.
The integrals are calculated in the cylindrical space and not in the profile curve
parameters’ space, since the deformation shape functions that we integrate are de-
fined in the physical space and are not related to the boundary parameters’ spaces.
The integration of rotating profile bodies has to be performed in cylindrical co-
ordinates for accuracy reasons. Integration of a rotating profile body, that often has
some kind of rotation symmetry, in Cartesian coordinates gives low accuracy and

48
v

kÌ k k k
Figure 3-2: A profile curve used to define a rotation symmetry body.

asymmetric stiffness matrix which results in non-physical vibrations in simulation


output.
Integration is performed first in the radial direction, then in longitudinal direc-
tion and finally in circumferential direction. There are two basic ideas behind this
ordering. First, we want to put the most varying boundary (radial) into the innermost
integral to simplify the implementation and be able to use high precision integration
scheme for it. Secondly, having integral in circumferential direction as outermost en-
sures the rotational symmetry properties of the resulting matrices. We use extended
Simpson’s (trapezoidal) integration scheme in circumferential direction since it is
known to give good results for periodic functions and we have Fourier series as a
basic set of functions in this direction. Both in radial and longitudinal direction we
use modified Clenshaw-Curtis quadratures [15].
The complete algorithm follows. We will refer to Figure 3.7 to illustrate the
algorithm. The figure shows a six segments profile curve with four straight and two
curved segments.
1. Select the number of integration points in circumferential direction. The num-
ber of points must be more than the double of the number of waves used in the

tion bounds are


#  mô( m $
shape functions or in geometry deviation in circumferential direction. Integra-
.
~
2. For each angle we have a cylindrical sector to integrate. We start by going
~
through all the segments of the profile curve and evaluating the boundary for
k
the specified . Our purpose is to find minimum and maximum coordinate
for each segment as well as the edge values between the segments. These
k
values are used to define integration intervals in direction. In Figure 3.7 we

49
kÌ k k k
would find 3 integration intervals with bounds , , and . In the general
case we might get several non-adjacent integration intervals.

k
3. For each integration interval in direction, calculate abscissas and weights ac-
cording to the quadrature formula. The order of integration (number of points)
is double the highest order of polynomial used as a deformation shape in lon-
gitudinal direction. Note that each integration interval is treated separately.

4. We need to go through all the segments once again to find the radii for each
k abscissa detected in the previous step. An ordered list of radii is build for
each abscissa. If the closed volume condition is satisfied then the number of
elements in every radii list will be even for hollow bodies and odd for bodies
with material in the centre of a cross-section. Every pair of radii in the lists
define an integration interval in radial direction and quadrature formula can be
applied again to get the radial abscissas and weights. Note that since we have
split the integration along z axis in intervals the number of integration intervals

kÌ k
in radial direction will be constant within each z interval. In the example,

k k
Figure 3.7, we have just one radial integration interval between and and
two intervals between and

Having computed the set of integration points and weights as described above we
can approximate all the required integrals with the weighted sums of function values
computed at the specified points multiplied with the corresponding weights.
There are still some uncertainties regarding the integration process. How does the
complexity of the boundary geometry affects the accuracy of the integrals? How do
we select the optimal number of integration points? Is adaptive strategy necessary?

50
Chapter 4

Modeling Ideal Connections with


Control Points

4.1 Control Points and Flexible Bodies


The BEAST system design uses continuous definitions of the complete surface ge-
ometry. No explicit interface nodes are predefined. This is in contrast with most
other tools where some joint attachment points are included in the basic model de-
sign or FEM-based tools where joints and force elements can be connected only to
the finite element mesh nodes.
However ideal joints and force elements are often used in multi-body modeling.
The older version the rigid-body subsystem of BEAST allowed such forces to be
introduced in the geometrical centres of the bodies or in a single control point be-
tween the bodies. The user of the system had to translate the combination of forces
and moments acting between two bodies to the bodies geometry centres or the single
control point. Since in the rigid body dynamics the force and moment couple applied
at one point of a body can easily be translated to any other point (including the ge-
ometry centre of the body), this feature provided enough modeling freedom until the
introduction of flexible components.
For a flexible body the relation between the generalized force tensor and applied
force is more complicated (see Section 2.5). That is why we cannot require the user
to translate the force to the body’s geometry centre or any specific coordinate system
by hand. Instead, there must be a method to specify any material particle inside the
body volume as the point where the force vector is applied. The control point design
discussed in this section resolves this problem.
Control points provide a way to specify a particle’s position, orientation and
speed inside a body (relative body geometrical centre), or in the model reference
frame (called cB coordinate system in the BEAST framework). Thus a control point
can be seen as an information data structure consisting of a position vector, orthogo-
nal rotation matrix as well as linear and angular velocity vectors of the particle. These
points can be used to study the elastic deformation of the specified material particle,

51
3 -? y
e  v L ­¬  „µW 
3 -? <
e  v L  «  e  v L ­ « ª e  v L ­¬  „µW 
e  v L ­ «  e  v L ­­¬  „µW 

cg

Figure 4-1: Control points.

and to apply forces at the specified locations (not only at the geometry centre).
First, the parent system of a control point must be selected. This is the coor-
dinate system where all the output components of the control point are calculated.
Generally, it can be any abstract coordinate frame. The two most common cases are
floating model reference frame and a body geometry centre.

” e  v L w  á W v  e  ¬  „ W w  á W v ª e  v L ­¬  „µW The position of the control point which is
For each control point the following relations are defined:

normally¡ written in the¡ output file. Every component of this relation should
be understood as a combinations of position vector, rotation matrix and speed
e  v L w  á W v
vectors. The plus operator represents a complete coordinate transformation

¡
(translation, rotation and velocity). The tensor provides a common
interface to all the different types of control points described below. Parent
w W v³
e  ² v L  w á  á¡ W v
coordinate system (model reference frame or geometry centre of a body) gives

” e  ¬  „ W w  á W v defines the beginning (base coordinate¡ system) for the e  v L ­¬  „ W ten-
the coordinate system where the output is calculated.

¡ by this control point. e  ¬  „µW  w  á W v tensor itself can be a control


¡ points. Such chains can be
sor introduced
point making it possible to build ’chains’ of control
efficiently used to specify complex motion as shown in the example section of
this chapter.
” e  v L ­¬  „µW
is the relative motion defined by the control point. The specific of this
vector calculation determines the type of the control point (see below).
The example Figure 4-1 shows two control points defined in a body. Both control
points have body geometry centre as the parent coordinate system. The first control

52
3 -? <
point
e  v L ­­¬  „ W  3 -? y
is defined relative to the body coordinate centre and so the output for it is
equivalent to the . The second control point is defined relative to the
first control point thus forming a ’chains’ of two points.
Currently three types of control points are available in BEAST. They are:

Fixed control point. The e  v L ­¬  „ W


tensor for this kind of control point is constant
and so the velocity components are zero. It is semantically identical to a time
dependent control point (see below) with all the time dependent parts set to
zero. Compared to the time dependent control point the fixed control point is
faster to process, requires less input and memory.

Time dependent control point. The components of the tensor are func- e  v L ­¬  „ W
tions of time. Note that it is impossible to specify both velocity and position
as independent time functions and so user must either prescribe the position
- letting the program to calculate velocity or provide the velocity and let the
program compute the trajectory.

Flexible control point. This type of control points can be used only within flexible
bodies. They provide a mean to examine the deflection of a specific material
particle. Unlike the two other types of control points the flexible control point
does not have any input and it must be the last control point in a chain. That
e  v L ­¬  „ W
is it is not allowed to define other control points having the flexible control
point as a base. The vector is computed by BEAST and gives the
e  v L w  á W v
deflection vector and deflecting speed and the output tensor specifies
e  ¬  „ W w  á ¡W v
¡
the deflected position of the material point that had coordinates in
the undeformed body. In the current implementation we do not calculate the

tensors: ¯ - |  d}\
and ¯ - | A@¯@¯
orientation of the deflected point. Flexible control point define extra output
. They are the second Piola-Kirchhoff stress and
Green-Lagrange strain tensors discussed earlier in Section 2.5.1.

4.2 Boundary and Loading Conditions


Stiffness-dampers, force-moment, and simple parametric bearings can be used to set
the boundary and loading conditions for flexible bodies. The required input is identi-
cal to the one needed to set the conditions for rigid bodies. Special attention however
must be paid to the type of control point where the force is applied. The reason for
that is the different deflections caused by the same force applied to different parts of
a flexible body. If some loading or boundary condition should cause deflections then
it needs to be applied at a flexible control point in the body. If some specific loading
should only influence rigid body motion then it should be applied at a time dependent
or fixed control point.

53
4.3 An Example of Control Points Usage
Figure 4-2 shows an example model that uses control points to apply complicated
loading conditions on a flexible ring. The purpose of this model is to force satellite-
like motion of the ring and deform it elliptically in the same time.
Eight control points are used in the model. Four of them have the model reference
frame ’cB’ as parent and four others are defined in the ring. In both cases chains of

The 3  =Ô3 -? <


control points are used.
point is a time dependent control point that defines a reference frame
Š 
with constant translation relative to the cB system and rotation with constant angular
3  >= 3 - ? <
velocity . Thus all the control points that follow
around this control point position. The next control point,
in the chain will rotate
, has as the 3  =Ô3 -? y 3  >= 3 - ? <
Š  3  =Ô3 -?  3  =>3 -?yx
base system. It is also a time dependent control point with constant translation and
constant velocity rotation given by . Both
points having base system in 3  =>3 -? yand are fixed control
. Since they have the same base system an
imaginary line segment between the two points will not change the length but will
follow the satellite-like motion as specified by the velocities and . Having Š  Š 
arranged this motion it is now necessary to relate the control points to the material
particles of the ring.
2 Z >= 3 - ? < 2 Z Ô= 3 - ? y
The structure of the control points’ chains used inside the ring is simple. Just two
2 Z Ô= 3 - ? [ <
and 2 Z >= 3 -? [ y
fixed control points ( and ) and two flexible control points (
) are used. The fixed control points define the positions of the material
particles inside the ring in the undeformed state. The flexible control points that are
based on the respective fixed control points follow the deformation of the ring.
It is shown in Figure 4-2 that flexible control points are connected to the con-
trol points in cB system. This connection can be of different nature. Most often a
combination of springs and dampers is used to prescribe a body motion with certain
stiffness and damping coefficients.
The discussed example shows how a complicated loading condition can be de-
scribed with the control points. It must be noted, however, that some experience is
required from the user in order to understand all the features of the control points and
apply them correctly and efficiently.

54
cB.ctl3

bR.ctlf1

bR.ctl1
Š  Š 
cB.ctl2 bR.cg bR
cB.ctl1

bR.ctl2

bR.ctlf2

cB

cB.ctl4

Figure 4-2: Specifying loading conditions with control points. Object-oriented nota-
tion is used. The coordinate system cB and body bR are the parent objects and the
control points and geometry centre ’cg’ are the child objects.

55
Chapter 5

Static, Eigenmode and Quasi-static


Single Body Analysis

Before running a complete multi-body dynamic simulation with flexible bodies it is


often useful to perform some simple analysis on a single body model. This analysis
can help answering the question of the required number of deformation shapes for the
particular big simulation case. Note that the presented analysis types are only mean-
ingful for flexible bodies models. None of them deals with the rigid body motion and
mass.
Three kinds of single body analysis were implemented in the BEAST system.
They are:

” Static loading. In this analysis some constant (time independent) loads are ap-
plied on the body and body’s deformation in the equilibrium is studied. Since
the loads are static no inertia forces are active in the equilibrium state. The
discussion of this case later in this chapter shows that only the properties of the
stiffness matrix and deformation field can be studied with static loading. Note
that in order to perform static analysis the applied loads must be balanced so
that no rigid body acceleration is necessary to resolve them.

” Eigenmode analysis. Free body eigenfrequencies and eigenmodes are com-


puted in this analysis mode. In case of general shape functions some addi-
tional boundary conditions can be implicitly introduced by the selection of the
shapes. For instance, specifying no (or too few) shape functions in a certain
coordinate direction results in implicit ’fixed-ends’ boundary condition. This
happens since lack of shapes reduces the number of degrees of freedom for the
material particles of the body, often resulting in eigenfrequencies much higher
than anticipated. Eigenmode analysis helps in studying the properties of both
mass and stiffness matrices of the body as well as the properties of the selected
deformation field but does not give any information about the centrifugal forces
acting on the body.

56
” Quasi-static analysis. Generally this kind of analysis assumes constant ve-
locity analysis. The most interesting cases are constant angular velocity rev-
olutions around different rotations axes. This analysis helps the study of the
centrifugal forces as well as mass matrix, stiffness matrix and deformation field
of a body.
It must be clearly understood that no time domain integration is required to perform
single body analysis. That makes the analysis much less computationally demand-
ing than complete simulations. Hence, users are strongly recommended to care-
fully study the results of single body analysis before performing the computationally
heavy time domain runs.
The following sections discuss the equations necessary to perform the all three
kind of analysis described above. They all are based on the generalized Newton-
Euler equation that was discussed in Section 2.2. The equation with all the vectors
and matrices computed in body’s local coordinate system is repeated below for con-
 SUTVT t   6v t N    s ±    
venience:
fl    f lb o  
f g f lp o g
(b) (b)

 ¯ aa°A J| N WY3W S J N W ]   †  ±    f l  W  Q l ! W € g m  7 ! €  )  ª  f lp o gm 


b/g e R R
(b)

j - d ff f
€ gf ff f ff ff f g
(5-1)

5.1 Static Loading Cases


The equilibrium equation for the static analysis can be derived from Equation 5-1
by setting all the accelerations and velocities to zero, and further assuming that no
rigid-body motion is required to resolve the loading case. The resulting equation
follows:
  f l  W  Q ! €
f g ff f (5-2)
This is a linear equation for the elastic state vector that has a unique solution:
€  z Q - ! fl W
f
f
l W ff g f (5-3)
The generalized external force vector g gives the specific of the loading case
f
and normally stands for superposition of several point forces and body loads. See
Sections 2.5.4 and 2.5.6 for the calculation procedure for these cases.
Typical example static load cases for rings include symmetrical -point loads and \
for beams they are point or distributed loads acting on a simply supported beam.

5.2 Eigenmode Analysis


The eigenmode analysis discussed in this section is limited to the discussion of the
free-vibration equilibrium analysis with damping neglected. More discussions on
eigenmode analysis can be found in [1, 5].

57
Since rigid body frequencies (which are always zero for a free body) are not
interesting to analyze, Equation 5-1 reduces to:
S ff
! € ±   Q
f ff
! € f (5-4)

In vibration analysis it is assumed that the solution of this equation is represented in


the form:
€     M¹ º¾» ‹ - (5-5)

f

where is a vector with the number of elements equal to the number of degrees
‹
of freedom (or number of elastic coordinates) f used in the system, is the time \ -

variable and is a constant identified to represent the frequency of vibration (ra-

‹
dians/second) of the vector . In most cases the vector is called eigenmode and
the associated constant is called eigenfrequency. Substituting Equation 5-5 into
Equation 5-4 a generalized eigenproblem is obtained, from which and must be  ‹
determined:
Q !   ‹  S
! 
f  
(5-6)
eigensolutions ‹ (  g , where eigenvectors are M-
ff ff

The eigenproblem yields the \ f


ä
! S !   %  å æ < (( d  à
orthonormalized, i.e.,:
  6 à
ff
d Ö (5-7)

and
  ‹   ‹  ™=¾=Ør=  ‹
 ¡ (5-8)
The vector  is called the d -th mode shape vector, and ‹í is the corresponding vibra-
f

tion frequency. In order to calculate the positions  of material particles for a certain
 one just need to substitute the vector ' !  (' is an arbitrary real constant)
€
frequency
for in deflection calculations (Equations 2-2). A typical eigenmode vibration visu-
'
f
alisation procedure should repeat this calculations for different values of obtaining
an eigenvibration animation sequence.
The numerical algorithms for the solution of eigenproblems have attracted large
attention in numerical analysis. Most numerical packages include these algorithms.
In case only algorithms for the solution of standard eigenvalue problem are included
in the package it is possible to transform the generalized eigenproblem into the stan-
dard form (see [1] for the discussion).

5.3 Quasi-static Analysis

s ) € )
The quasi-static equilibrium equation is derived from Equation 5-1 by setting the
(b)
acceleration vector, the velocity vectors b/g and f , and the external force vectors
to zero. Then for a given, constant angular velocity : ‹
   Q ff
! €  ª f l o g
f f (5-9)

58
This linear equation can be used to get approximate solution for the static case. Such
solution is quite accurate for the cases with weak coupling between the elastic de-
formation and quadratic velocity vector, and can be considered satisfactory for most
cases.

  Ò
To obtain the exact solution it is necessary to recall Equation 2-25:
 
f lp o ]   Û Û f Š   % f J N %6 t N % ! €   y ! Û Û Š  % Ð % €  )
g r š  %Mš  g ª g r š  %Mš 
f f (5-10)

Substituting Equation 5-10 into Equation 5-9 and simplifying, we come to a linear

Û  Û  f Š    
equation:
fQ
ff ª š  %Mš  g % t N % g ! €    Ûr š  %5Û š  f Š 
f
g &% J N %6 (5-11)

If the equation above is solvable then the solution vector gives the deformation shape
for the analyzed quasi-static situation. Absence of the solution indicates coupling
between the specified rotation and some of the elastic states’ time derivatives f . In € )
such a case no unique general solution exists to the quasi-static problem.

59
Chapter 6

Verification

In order to verify the theory described in this thesis some simple test cases with
known analytical solutions had to be selected. We have chosen to verify the solutions
for the following cases:

1. Static deflection of a simply supported beam.

2. First eigenfrequency of a free beam.

3. Thin ring under symmetric point force load.

4. Eigenfrequencies of a free ring.

6.1 Long Beams


Distributed gravity load abžacts on a simply supported beam (see Figure 6-1). The
value of the maximum deflection of the beam centre in equilibrium can be computed
analytically [32]. For our case (both ends simply supported, distributed load) the
maximum deflection is given:
 a ž R
j   • x|{ ãG} (
 (6-1)

where a is the mass of the beam, ž - gravity constant,


R - length of the beam,ã
- Youngs’ modulus, and } - moment of area, which for a round cross-section with

abž
j •
Figure 6-1: Distributed gravity load acting on a simply supported beam.

60
 Ü

Z 


_ T
Figure 6-2: Symmetric constant forced acting on a thin ring.

|
|C
} m
radius is given by

x (6-2)

The error in the model can be measured in percents as


W  vW
ß  j t ~€ L v ø W áj ø ~ á œ <  ƒ‚
j ~ œ  (6-3)

We were interested to get error below one percent. To get the correct results for
the complete 3D model with volume integration we had to use second order poly-
nomial in radial direction, two-waves in circumferential direction and the 4-th order
polynomial for the axial direction.
Note that the same test cases were verified for the beams with the rectangular
cross-section where Chebyshev polynomials were used all three coordinate direc-
tions.

6.2 A Thin Ring


Two symmetric constant forces act opposite to each other in the plane of the ring.
The forces are applied at the middle of the cross-section one from the top of the ring
downward and other from the bottom of the ring upward (see Figure 6-2). Theoretical
solution for the maximum radial deflection value exists for this load case and is given

Ü   = ƒ„ ƒx x  Z T
by:

ã !C… !n_  ó < y (6-4)

61
 Z  ã
where
…
- stands for applied force in radial direction,
_ T
- medium radius,
Young modulus, - width of the ring cross-section in axial direction,
-
- thickness
of the cross-section.
Free body eigenfrequencies in the plane of the ring are given by:

 ˆ ‡ † ã ! f< ªà g
[ ‡ c !Z (6-5)

à à
where is used to compute th eigenfrequency.
For the verification we used model with second order shapes in radial and axial
directions and Fourier series up to 8-waves on circumference. The error in static
solution became 0.3%, errors in eigenfrequencies up to the 8th in the plane of the
ring were also below 1%. The total number of flexible states used in the model was
460.
Due to the large number of states required for verification at higher eigenfre-
quencies we had to reduce the order of polynomials used in our model. We used only
linear term in radial direction keeping second order in axial direction and extended
Fourier series up to the 30 waves. The total number of elastic coordinates in the
model become 1189. The model resulted in a higher error in static solution (8.6%)
but we were able to calculate up to the 30th eigenfrequecy. The relative error in the
highest eigenfrequecy was 2.5%.
We have to mention that the solution close to the theoretical one for the higher
eigenfrequencies could be achieved only for very thin rings (cross section width of
about 1% of the ring diameter). We believe that the reason for that is the simplifica-
tion used in theoretical approach for thin rings that only allows cross-section rotation.
Such simplifications becomes inaccurate for the higher eigenshapes in thicker rings
and consequently leads to deviations in eigenfrequecies solution.

62
Chapter 7

Simulation System Design

In this chapter the software design of the simulation system is discussed. Note that
the class and object diagrams presented in this chapter follow the standard UML
(Unified Modeling Language) notations [14].

7.1 System Overview


In this section a general overview of the system is provided. This overview is quite
general and is applicable to most multi-body systems, not only to the BEAST system.
The concepts described in this section do not change when transferring from rigid to
flexible modeling.
The BEAST system uses object-oriented design and programming concepts. The
ideas behind the object-oriented implementation of a multi-body simulation system
were developed in a close collaboration with the ObjectMath project [27].

start time, parameters initialize


Simulation
parameters,
time & state model type
create for output
time,
state input data
Solver start state Model Input/output
output data
RHS, Jacobian

Figure 7-1: Collaboration of components in the simulation system executable. Ar-


rows denote information flow.

The main components of the complete simulation system are shown in Figure 7-1
and described below:

63
Simulation This component manages the dynamic simulation process. During the
setup phase the class initializes the input/output classes, reads in the model
type and general simulation parameters (such as tolerance, start and end time,
etc). Then the numerical solver is setup and the specific model object is cre-
ated and initialized. As the simulation runs the simulation class monitors the
progress, issuing the commands to calculate the output for some time steps and
to terminate the simulation when the user specified end time is reached or an
error occurs.
Solver This is the numerical ODE solver component of the system which is accessed
through a set of wrapper routines providing interface between the standard
CVODE numerical solver and the system.
Model This is an object created by the Simulation object. This object essentially
defines the multi-body system to be simulated. From the mathematical point
of view, its responsibility is just to evaluate the time derivatives of the state
variables during ODE’s RHS (right-hand side) evaluation and Jacobian matrix
for the Newton iterations inside the solver. Note that there is a special mode of
RHS calculation when the data is not returned to the solver but written on the
disk via the input/output classes. The internal structure of a model object will
be discussed later in more detail.
Input/output These objects are responsible for the file I/O interface. They provide
the functionality for reading the simulation parameters and model input data
and for writing the simulation output data.
The differences in the rigid and flexible modeling conceptually affect the Model
object only. However, in a real implementation some details must be checked when
going into flexible modeling. It must be ensured that none of the objects rely on
the constant number of the state variables inside every body in the model. Such an
assumption could be used in a multi-body simulation tool with rigid bodies only for
the optimal implementation of different service routines transferring data between the
Model object and other components of the system. Flexible bodies have a variable
number of state variables and therefore can not be handled by such service methods.

7.2 Rigid Body Model Classes


The class diagram of the conceptually most important classes in a multi-body model
is shown in Figure 7-2. The explanation of the responsibilities and purpose of each
class follows.

The Model class. The general Model class is inherited by all other model classes.
It is an abstract class providing the interface to any model from other parts of the sys-
tem. The class implements necessary standard operations for data exchange with the

64
CtlPoint

Model

SD
1..n 1..n

Body Connection
FML
2
1..n

Segment BBConnection cBConnection SPB

2 1..n

Contact

Figure 7-2: Rigid Body Model Classes.

numerical solver and with the input/output classes. The child classes of this abstract
class are specific models containing specific sets of bodies and specific connections
between the bodies.

The Body class. This class has attributes, such as inertia characteristics and ma-
terial properties, describing those properties of a physical body that are not depen-
dent on the interactions with other bodies. The methods of this class implement the
Newton-Euler equations.
The Body class is also an abstract class. Specific body classes contain particular
kinds of segments. For instance, a Ring class contains several rotational segments.

The Segment class. Segment is another important abstraction in BEAST. A seg-


fw (¸
ment represent a continuous surface that can get in contact with other surfaces. The
surfaces are normally defined in parametric space g
. There are functions eval-
fw (¸
uating the geometric point coordinates in the body coordinate space and functions
that for any point in space can find the g
parameters of the nearest point on the
surface which is an important feature for contact forces calculations. The geometry
of every body in BEAST is defined by a set of segments.

65
The Connection class This class is a container class that encapsulates all the ob-
jects acting between two bodies or between a body and an abstract coordinate sys-
tem defined in the model space. The purpose of such a collection is to accumulate
all the forces acting between the two bodies or between the body and the exter-
nal coordinate system. The two child classes represent the two cases that we just
defined. The BBConnection class represents a connection between two bodies
and cBConnection class represents a connection to a coordinate system. Only
BBConnection class will be discussed later in the text, since cBConnection
can be seen as a simplification of the BBConnection class (where there are no
contacts and motion of one of the bodies is known) .

The CtlPoint class. This class represent a single control point or coordinate system
as discussed in Chapter 4. The position, orientation and speed properties of the point
are provided by the user. The single control point notion provided enough modeling
power for the case of rigid body modeling.

The SD, FML and SPB classes. These classes represent simple force element:
stiffness and damping, force and moment loading, as well as simple-parametric bear-
ing respectively. The SPB is essentially a non-linear kind of spring that is parameter-
ized in the typical bearing terms, such as clearance and radial stiffness.

7.3 Flexible System Design


7.3.1 Limitations of the Rigid Body Model Design
The transition to the flexible body model revealed some limitations of the original
system design. First, the single control point in a connection between two bodies is
not sufficient as we discussed earlier in Chapter 4. Other changes concern the Body
class design that should now implement the equations for the flexible model case and
work with the shape functions. Our design solutions to these problems are presented
in the rest of this section.

7.3.2 Implementation of the Control Point Architecture


Figure 7-3 shows the class diagram that illustrates the more general design suitable
for the flexible case. Comparing to the original design presented in Section 7.2
the most important change is the transfer of the ControlPoint class from the
Connection class to the Body class and generalization of the simple forces into
the PointTie class.
The PointTie class generalizes the concept of a force element acting between
two points. The general characteristic of such a force element is its locality. That

66
Model

1..n 1..n

2
Body Connection

1..n 1..n
2
Segment Contact
1..n 1..n

2
CtlPoint PointTie

Figure 7-3: Flexible Body Model Classes.

is, the resulting force and moment at a given time instant depend only on the rela-
tive position, orientation and speeds of the two points that the PointTie connects.
The nature of the points and the state of the bodies are not relevant for such a force
element. The typical example of such force elements are springs and dampers (both
translational and rotational). The PointTie class is therefore an abstract class with
a single abstract method that evaluates the force and moment acting at the connected
points for the specified relative motion of the points and time. The generic class is re-
sponsible for the necessary coordinate transformations and numerical differentiation
of the forces for the Jacobian calculations.
In the context of the BEAST tool, the PointTie abstraction was realized in the
three child classes that correspond to the SD, FML and SPB classes discussed earlier
for the rigid body system in Section 7.2:
” SDPointTie encapsulate the force and moment calculation for general
springs and dampers connecting the specified points.
” FMPointTie generates forces and moments that are pure functions of time
and do not depend on the relative motion of the points.
” SPBPointTie (Simple Parametric Bearing tie) normally used to connect
centres of two bodies that are joined by a bearing. It is essentially a non-
linear kind of spring that is parameterized in the typical bearing terms, such as
clearance and radial stiffness.

67
The obvious benefit of the generalization of the simple forces is the ability to
add new kind of force elements in an easier way without concern for the rest of the
system. For instance, a new HydroStaticBRGTie was recently introduced into
the system. The new tie is similar to SPBPointTie, but has a different set of
parameters.

7.3.3 Object-Oriented View of Shape Functions


During a simulation the shape function conceptually only need to provide the follow-
ing output:
” t
The shape matrix for any given point in the body coordinate system accord-
ing to Equation 2-2.
” The strain operator Þ t defined in Section 2.5.1.

Therefore the shape function can be designed as an abstract interface class with only
two methods as described above.
Specific shape functions can actually work in different coordinate systems (i.e.,
cylindrical or Cartesian) and use different kind of evaluations. For the purposes of
this work, two specific classes of the shape functions were defined:

CylShpFunc is the cylindrical shape function implementing the series defined in


Equation 3-1 and the strain operator calculations defined by Equation 2-30.

CartShpFunc is the Cartesian shape function implementing the series in Equa-


tion 3-2 and the differentiation operator according to Equation 2-29.

7.3.4 Flexible Body Class Design


Figure 7-4 shows the class diagram illustrating the design of the body class in the
flexible modeling part of the system.
The most general FlexBody class implements all the time dependent equations
described in Chapter 2 and the analysis on the single flexible body as discussed in
Chapter 5. It cannot, however, be used directly since it relies on the child classes for
the initial calculation of the inertia integrals as well as stiffness and damping matri-
ces. This class actually can be used in the future to interface the shapes and integrals
generated by other systems, e.g., via the data structures defined in the FEMMBS tool
[28].
Note that once the integrals are available all the analysis can be done on the
abstract FlexBody class without accessing the child objects.
The IntFlexBody class defines the initialization step for the FlexBody class with
the volume integration procedures based on weighed integration points. Many nu-
merical integration schemes, including the scheme described in Section 3.7, generate

68
Body FlexBody IntFlexBody

ShapeFunc FlexRing FlexSqBeam

CylShpFunc CartShpFunc

Figure 7-4: Flexible Body Classes.

a set of integration points with weights. The initialization procedure of the IntFlex-
Body calculates the integrals defined by Equations 2-9 to 2-13 using such sets of
integration points.
The descendants of the IntFlexBody class are specific body classes where geom-
etry is defined by a set of segments. The responsibility of these classes is to produce
the set of integration points required by the IntFlexBody class. Note that only two
child classes are shown in the class diagram in Figure 7-4 just to provide an exam-
ple of the most simple kinds of bodies. More classes are needed in a real system to
accommodate for the variety of different geometries.

7.4 A Simple Model Example


This section gives a simple example of a specific model consisting of two rings as de-
picted in Figure 7-5. Even though the model is very small all the important elements
of larger, more complicated models are present.
The model is called TwoRing. Figure 7-6 presents an object diagram for this
model.
The TwoRing model consists of two bodies: the outer ring bER and the inner
ring bIR. The outer ring is guided relative to the cB system by use of the stiffness
and damping forces cBbER‘SD between the control points cB‘ctl and bER‘ctl.
The rings have a potential contact between the outer segment of the inner ring
bIR‘s1 and the inner segment of the outer ring bER‘s3.

69
bER

bIR
bER‘s3

bER‘ctl

cB‘ctl
bIR‘s1

cBbER‘SD
contact bIRbER‘s1s3

Figure 7-5: A Simple Multi-body Model.

7.5 Solution Procedure


As was mentioned in the beginning of this chapter the Model object is responsible
for the evaluation of the RHS vector and Jacobian matrix during the solution of the
system of ODE describing the motion in the multi-body system. This section dis-
cusses the mapping of the dynamic equations of motion onto the software classes
and the computations flow between the classes. The differences between the mod-
els with rigid bodies only, and the newer models with flexible bodies, are specially
addressed.

7.5.1 RHS Evaluation


The evaluation starts by transferring the state variable values from the solver to the
objects realizing the Body class. At this point the complete state vector as seen by the
CVODE is decomposed into variables representing the motion: position, orientation
and velocity.
Having the motion state data the Body objects perform the calculations indepen-
dent of the external loading. That includes the terms caused by centrifugal forces and
coordinate system transformations. In the newer system design the motion of all the
ControlPoint objects can also be calculated at this stage.
Th next step is done by the objects of the Connection class. Each
Connection object calculates the relative motion between the two bodies the
object connects. Note that in case of rigid bodies all the forces from the interaction
between the two bodies only depend on the calculated relative motion. Absolute
position and velocity is not important for the interaction force calculations. However,

70
cB.ctl:
CtlPoint
TwoRings:
Model
cBbER: cBbER.SD:
Connection SDPointTie

bIR: bER: bER.ctl:


FlexRing FlexRing CtlPoint
bIRbER:
Connection
bIR‘s1: bER‘s3:
Segment Segment

bIRbER‘s1s3:
Contact

Figure 7-6: Object Diagram for a Simple Specific Model.

this is not the case for the flexible body interaction. The resulting force for a flexible
body always depends on the elastic state variables. Therefore it can be said that the
relative motion between to flexible bodies can be described by the relative motion of
the floating reference frames and the elastic state variables of the both bodies.
For the calculated relative motion variables the force elements in the Connection
object and corresponding Contact objects evaluate the forces and moments acting
between the bodies. These forces and moments are transformed to the local coordi-
nate system of every body. Note that transformation to the local coordinate system
for a flexible body includes the evaluation of the elastic part of the generalized force
vector as discussed in Section 2.5. All the (generalized) forces acting between two
bodies are accumulated by the Connection object before they are passed to the Body
objects.
Body objects receive the generalized forces from the Connection object, accumu-
late them, add the contribution from the centrifugal forces calculated earlier, and use
the Newton-Euler equation to calculate the acceleration tensor.
Finally the vector of derivatives is assembled by the Body objects and send to the
numerical solver. The RHS evaluation is completed.
In the case of output RHS evaluation some extra output variables (such as power
dissipation in a contact) may be computed at different stages of the RHS evaluation
algorithm. These variables are then written to the simulation output file.

71
7.5.2 Jacobian Evaluation
The Jacobian calculation follows the procedures described in Section 2.8. The use
of chain differentiation rules leads to the clear separation of several stages in the
evaluation where at each stage a different partial derivative used in Equations 2-79
and 2-80 are calculated.
The instances of the Body class are responsible for evaluation of all the partial
derivatives which involve the particular body states. The analytical part of the Ja-
³
) l  ²  ³ %
…
cobian is also evaluated by the objects of Body class. The following matrices are
+  ‚  ² ³
calculated in a body d : l…
+  .
+ % + H ²  %
and

The instances of the Connection class are responsible for the partial differenti-
ation of the forces acting between the bodies with respect to each of the two involved

³à
bodies state variables. These objects are also calculating the mixed sub-Jacobians.
³
)‚  + ‚  ) % d + l" ²  %
That is, if an object is a Connection between bodies and then it is responsible
l+  % ² % 
"
+
for the evaluation of the following matrices: + *  % , + *  , + *  % and + *  .
The numerical differentiation algorithm with respect to the relative motion vari-

+M  H ²  ³ .
ables is implemented in the Connection class and calculates the most computa-

+ %
tionally expensive derivatives

Recall that one of the main differences of the flexible body model compared to
the rigid body model is the dependency of the applied force or moment to generalized
force conversion from the flexible body states leading to a more complicated partial
derivatives evaluation. To resolve this problem the the Body class in the flexible case
l NQPSR
collaborates with the Connection class to implement the algorithm for the evaluation

of û *  P q U‰T
PThere
\ described at the end of Section 2.8.
are also some technical implementation details that need to be mentioned.
The rigid body model uses the same number of states for every body in the model
whereas the number of flexible states varies for different bodies. For the partial
derivatives matrices it leads to the necessity to deal with arbitrary size matrices. The
software developer should therefore carefully consider memory allocation and data
transfer issues.

72
Chapter 8

Dynamic Simulation of Grinding

8.1 Overview
The results presented in this chapter were earlier presented in the article ’Dynamic
Simulation of Grinding with Flexibility and Material Removal’ [12]. The approach
presented in this thesis was used to model the workpiece flexibility. In fact, this was
the first industrial application of the developed technique.

8.2 Need for Grinding Simulation


The grinding process is important in many high precision manufacture industries.
For SKF as a manufacturer of high precision rolling bearings it is about a third of the
total manufacturing cost. Thus, continuous development and research in the grinding
process is needed. The purpose is quality improvement and cost reduction.
For several reasons it is suitable to study the grinding process with simulations.
First, it is very hard or even impossible to measure some characteristics of such a
dynamic process as grinding. Second, most machines cannot be dedicated to research
activities for sufficiently long periods of time.
Simulation of the grinding process requires simultaneous modeling of several
phenomena including:
” Multi-body system dynamics. Since the grinding machine is a complex dy-
namic system, a general MBS modeling framework is necessary, in order to
perform the simulation. Detailed and accurate geometric description is needed
to model all the local variation in geometry of un-ground rings, as well as the
geometry changes during grinding.
” Tribological contacts with material removal. The dynamic behaviour of the
grinding machine is primarily determined by the contacts between the work-
piece and parts of the machine (various supports and the grinding wheel).
Hence detailed contact modeling was necessary. The grinding contact needs

73
Figure 8-1: A model of the grinding machine including most of the parts of the ma-
chine.

special treatment since it results in material removal from the workpiece, thus
changing the original geometry of the body.
” Elastic deformation. Large forces are applied to the workpiece during grinding
and the structural elastic deformation of thin rings is in the same order of mag-
nitude as instantaneous material removal. Hence in such cases the structural
deformation must be included.
” Distortion. Initial stress distribution in the surface layers in combination with
uneven material removal will cause distortion. The stress distribution is created
by material phase changes in the hardening process.
The examples presented in this chapter are concerned with microcentric grinding.
Microcentric ring grinding is one of the most common grinding processes in SKF and
so the investigations were started with this process. Microcentric arrangement means
that the workpiece (bearing ring) is clamped to the drive plane, e.g., with a magnetic
force, and driven by friction forces. The drive plane centre has a small offset distance
(microcentric) relative to the ring. There are at least two shoes that support the ring
and the microcentric forces are holding the ring in position.

8.3 Grinding Machine Model


A grinding machine is a complex and large system consisting of many components.
One example of a complete model of a grinding machine is shown in Figure 8-1.
However, some parts of the machine can be reduced to a fever number of important
bodies for which the movements also can be measured and analysed. The models are
used in complete grinding cycle simulations, so efficient computation is essential.

74
In our example an external ring grinding machine has been modeled. This ma-
chine has few major eigenfrequencies and so a limited number of bodies can accu-
rately describe the dynamic behaviour. A measurement of the dynamic response of
the grinding machine can identify these dominating eigenfrequencies.
The shoe support arrangement is an essential part of the machine. Detailed def-
inition of the geometry of this arrangement is crucial for the correct modeling of
machine dynamics. Even a small deviation can result in malfunction of the arrange-
ment with microcentric forces pushing the simulated ring out of the machine. Shoe
supports are also responsible for some filtering effects that minimise the effect of
certain imperfections of a ring.
It is important to mention that different complexity levels of the model should be
used depending on the purpose of a simulation case. If only the effect of geometrical
filtering is of interest it is enough to use pure kinematics. If instead the machine
stability and chatter are the only interesting phenomena, a pure dynamic analysis is
satisfactory. But if the purpose is to simulate the total grinding cycle and the effects
of machine dynamics on the final output shape, a complete model such as the one
suggested here is necessary.
Further, it is of importance to include the flexibility of the bodies in order to get
accurate results. Flexibility and stress analysis are also very important if effects such
as stress release of internal stresses during grinding are of interest.
One significant difference of our models, compared to what is common in other
grinding simulations [2], is the use of fully three-dimensional structures.

8.4 Modeling Tribological Contacts with Material


Removal
In this section we will outline the most important phenomena that can be observed
in a grinding contact. Consider a rotating solid grinding wheel and a rotating ring.
Both of them have constant but different rotational speeds. There is a rich supply
of cutting fluid (mixture of oil and water) at the contact inlet. Slowly (i.e., without
impact) we move the two rings toward each other. The contact is in a different regime
depending on the gap between the rings:
” The fluid fills the gap. It is the hydrodynamic regime and a pressure is built up
which gives a rolling resistance moment and normal force. However, they are
small due to the low viscosity and large gap.
” With smaller gap the fluid pressure causes some elastic deformation and the
contact is going into the beginning of the elastohydrodynamic (EHL) regime.
Small material damping due to rolling resistance also shows up. However, in
the case with a grinding wheel that have quite a rough surface we will quite
early get asperity contacts. The load will be shared between the asperities and

75
the fluid film. The asperity contacts also result in a fast growth of friction
forces.
” The ”gap” becomes negative, i.e., there is an intersection. The elastic deforma-
tion is significant and we are well into the EHL regime. However, due to the
low viscosity the film is very thin and nearly all load is carried by the asperities.
We have large friction forces.
” At a certain load the grains of the grinding wheel have sufficient pressure to
start to cut. The cutting will result in a certain amount of the material removed
and, consequently, surface geometry changes. Three different mechanisms are
active: some viscous rolling resistance with very thin film building up, elastic
deformation, and material removal due to cutting. Each of these phenomena is
a non-linear function of load. Besides, the film build up and material removal
are also non-linear functions of speed.
” With even more negative gap (larger load), the material removal rate is nor-
mally increasing faster than the other parameters, e.g., local deformation and
film thickness.

In a more general dynamic situation the velocities normal to the contact surface must
also be considered. They will result in additional pressure/forces, e.g., viscous damp-
ing, material damping, squeeze film build up, cavitation, etc.
All the physical phenomena mentioned above are modeled and included in the
tribological used contact model.
In the literature one can find two directions regarding grinding contact model-
ing. One direction takes a very detailed look at the cutting of individual grains [31].
However, this is not suitable for dynamic simulations. Another trend is to have quite
simple macroscopic models, in many cases linear, for the material removal [17, 25].
Our approach is on the macroscopic level. However, we include some important
non-linear behaviour in the model to have good correlation to our experimental data.
We also include the EHL part.

8.5 Grinding simulation results


The output from a grinding simulation can be any type of forces and movements.
However, it is the shape of the ground piece that is one of the most important outputs.
The most typical problem encountered in the final product is waviness of the ground
surface. With our simulation tool the shape of the workpiece can be animated for
the entire grinding cycle, and it is possible to see how the shape develops during the
process. Grinding simulation has now been used for a wide range of investigations
and some example studies are presented below.

76
Figure 8-2: Microcentric shoe support system. The material removal height is shown
by color.

Chatter
Chatter is a regenerative wave creation on the rings. It interacts with the dynamics
and eigenfrequencies of the machine. A grinding machine that is not stable enough
will produce non-circular, wavy, rings. In Figure 8-2 a snap-shot of a ground ring is
shown. The ring and part of the grinding wheel, as well as the shoe support system,
can be seen. The colours on the ring surface show the waviness of the ring at this
time instance. Another example is shown in Figure 8-3, were the form of the ring
and a FFT analysis of the waviness of the ring is shown. In the beginning of the
grinding cycle small waves starts to grow on the ring. As the grinding continues
these waves becomes bigger and bigger in a regenerative way. It is noticed that the
characteristic wave number is 23. This wave number could be correlated to the first
(lowest) eigenfrequency of the machine.
The simulations also showed that just an increase in the stiffness or the damping
of the machine to a certain level, would make the machine stable. Such a machine
will produce much better, rounder rings. This is an example of how this simula-
tion tool can be used to investigate and improve grinding machines with instability
problems.

Unbalance
It is very hard to get perfect balance of the grinding wheel, even if the grinding
machines have automatic balancing units. If there is a small unbalance this will im-
mediately have an effect on the ring. If the unbalance is too large the waves will
become big and the ring will not be approved. These effects have been investigated
with this simulation tool. It is not only the unbalance itself that is dangerous to the
grinding. The unbalance will create an excitation frequency into the system depend-

77
Figure 8-3: The shape of the ring and FFT analysis of ring waviness.

78
ing on the speed of the grinding wheel, and if this frequency lies near some of the
eigenfrequencies of the machine, large vibration problems will arise. Thus, it is very
important to avoid an unbalance that is interacting with other wave creating effects.

Geometrical Filtering
The grinding machine that is exemplified here uses a microcentric support system.
For such a system there will be a filtering effect, which means that some waviness
on the ground piece is suppressed, but it also means that another waviness may even
be magnified. These wave numbers are depending on the position of the shoes in the
shoe support system and of the contacting angles of these shoes.

Wave creation on the ring


From these investigations it was seen that the particular machine had three major
effects that affected the waviness on the ground rings. Those were unbalance, eigen-
frequencies and geometrical filtering. It was also seen that it is very critical if any of
these effects are allowed to interact with each other so that they together create the
same wave numbers. Thus it is very important to be able to predict and eliminate
such interaction when the machine and its operating conditions are designed.

Feed rates

Figure 8-4: Material removal height for the models with rigid ring in one case and
flexible ring in the another one.

79
Figure 8-5: Deformation and stresses of a ring that is being ground. The deformation
is magnified.

For rings that are not very stiff it is important that the ring flexibility can be in-
cluded in the simulations. An example is a set of simulations to find optimum feed
rates for the grinding cycles. In Figure 8-4 the material removal is shown for a case
with drastic difference between a rigid and a flexible ring. When the grinding wheel
is fed toward the ring during grinding a normal force arise between the workpiece and
the grinding wheel. At a certain force level the friction in the grinding contact over-
comes the friction on the drive plane for the rigid ring. The ring rotation speed starts
to grow when the drive plane loses its grip due to the driving force from the grinding
contact. As the ring rotates faster the relative speed in the grinding contact becomes
smaller and the material removal rate goes down. However when using flexible ring
model an extra effect comes into play: the workpiece gets deformed which means the
same feed rate of the grinding wheel results in lower forces in the grinding contact
and it will not accelerate. This example clearly shows the importance of flexibility
in grinding modeling in some cases. In Figure 8-5 the deformation of a ground ring
can be seen (magnified) as well as the effective stresses that are shown as a colour
diagram on the ring surface.

Flexibility is also of great importance when the effects of stress release during
grinding are investigated.

80
8.6 Summary
A simulation tool capable of dynamic modeling of the grinding process has been
developed and the author contributed to the development with the implementation of
the structural elasticity model. The process model used in the tool covers most of the
important factors of the grinding process. Completely three-dimensional modeling
is used. All the essential components of a grinding machine are modeled as a multi-
body system. Detailed models for the contacts between the workpiece and other parts
of the machine, as well as models for material removal have also been implemented.
The tool enables detailed studies of a complete grinding cycle. It provides an
efficient way to investigate possible optimisation of both the machine design and
grinding process parameters. The tool is now actively used at SKF for parametric
studies of different grinding schemes.

81
Chapter 9

Conclusions

Dynamic equations of motion of flexible bodies when using the floating frame of
reference formulation were presented in this thesis. Some approaches to simplify
these equations by choosing the coordinate system for the solution of the equations
were discussed. The generalized force vector was defined and procedures to calculate
the generalized forces for different kind of loading were presented. In particular
generalized elastic forces, generalize viscosity forces (with special focus on Rayleigh
damping), generalize external force and body load were presented. Special attention
was given to the analysis of the generalized force resulting from the residual stress
release during grinding.
A set of assumed mode shapes for modeling deflection of bodies with relatively
simple geometrical shapes was introduced. The proposed mode shapes use well
known series of mathematical function as the basis for the modes set. The advantage
of using the well known mathematical functions in terms of calculation efficiency and
ease of use were demonstrated. The necessary boundary conditions for the proposed
mode shapes were discussed and the methods to enforce these boundary conditions
were compared. The penalty approach for enforcing the boundary conditions was
chosen as the most suitable method for the discussed case.
The system design that provides the necessary features to specify the external
boundary and loading conditions was discussed. Some examples were used to
demonstrate how complicated loading conditions can be easily specified using the
proposed design.
Additional analysis types (eigenmode and quasistatic) for flexible bodies that are
normally found only in finite-element packages were discussed. The procedures nec-
essary to perform these types of analysis inside a dynamic simulation tool were pre-
sented.
Finally, some of the single body analysis procedures were used to verify the ac-
curacy of simulations when the proposed set of deformation modes was used. The
verification also provided an insight on how to select the number of functions in the
function series that are used as the assumed mode shapes.
The developed model was implemented in a real simulation system. The thesis

82
describes the system architecture and class design. The issues that are specific for
the flexible multibody systems as compared to the system with only rigid bodies are
specially addressed.
The system has been successfully used in industrial simulation of the grinding
process [12].

83
Chapter 10

Future Work

One of the important features of the BEAST system is the ability to run on parallel
computers. The algorithms used by the system were published earlier [13]. The main
idea of the parallelization is to define the contact forces evaluations as computational
tasks and use master-slave approach to compute those tasks at each RHS or Jacobian
evaluation. Since the transfer to the flexible modeling was done with relatively small
changes to the overall system design the same algorithms could be used to perform
parallel simulations involving flexible bodies.
However, the use of flexible bodies in real models has uncovered some limitations
of such a straight forward transition. The contacts with flexible bodies are more
computationally expensive. Therefore the time to evaluate a single ’flexible’ contact
defines the lower time bound for a single RHS evaluation effectively limiting the
possible speedup on a parallel computer. In many systems only few contacts involve
flexible bodies while the rest of the system is composed of the rigid bodies with
cheaper ’rigid’ contacts. Hence to improve the scalability of the system to the larger
number of processors such flexible contact calculation tasks need to be decomposed
into several smaller sub-contacts.
The operations on a single flexible body with large number of states requires
manipulation of large matrices and vectors. That means the amount of time spent
in linear algebra computations grows very fast. More investigations are needed to
improve the performance of these calculations.
The approach with the general shape functions that include Fourier series and
Chebyshev polynomials proved to be efficient for the grinding simulations. The ques-
tion that remains open is the search for other kinds of general mathematical functions
that might be more suitable for different geometries. The possible candidates include
spline functions and wavelets.

84
Appendix A

Shapes Generated by General


Functions

This appendix is a supplement to Chapter 3. It provides some basic examples of the


general shape functions deformation modes for the case of a ring structure.
The most general representation of the deformation shape functions used in
BEAST for rotation symmetry bodies can be written as:
䤤 w ] ; á f [  Ì Vf   Df Vf ”
å¤ w ] ; f [ Ì g
 ˜ ¡ a \ a ˜ %:¡ a \ c ˜ ¡9 a \ e Š ƒ‹‰Œ » ƒ ºŽ ‹ fV Ì ( º g !n¨Âƒ‘  º’  f ~ Ì (y“ g ! Š ƒ‹YŒ » ƒ ºŽ ‹ f—” Ì D( • g
¤æ w ; ½ f [  g
 ˜ ¡dc \ a ˜ %–¡ c \ c ˜ d¡9 c \ e Š ƒ‹YŒ » ƒ ‰º Ž ‹ fV Ì ( º g !nxÂ^‘  º‰’ 4f ~ Ì (—“ g ! Š Â^‹‰Œ » ƒ º Ž ‹ fV” Ì (D• g
]   Ìg  ˜ ¡ e \ a ˜ %d¡ e \ c ˜ ¡9 e \ e Š ƒ‹YŒ » ƒ º Ž ‹ Ì ( º g !n¨Âƒ‘ º‰’ ~ Ì (—“ g ! Š ƒ‹‰Œ » ƒ º Ž ‹ Ì ( • g
(1-1)
where
” [ Ì vector represents undeformed position of a material point. That is in cylin- f | Ì (z~ Ì ( k Ì
drical coordinates it has components: . g
” [ ]
w ] ;á ( w ] ; w ] ; 
the deflection vector of the material point. The components of this vec-
tor, i.e. and
½
, represent deflections in radial, tangential and axial
directions. The resulting position of the material point is obviously: . [ Ì ª [ ]
” d
¨Âƒ‘  º’  f ~(—“ g
Polynomial(x, i) generates a Chebyshev polynomial of order
generates sine and cosine pair for the -th wave. à and

” \ á ; á , \ á ; , \ á ;   , \ ; á , \ ; , \ ;   , \   ; á , \   ; and \   ;   are the nine parameters of the


shape functions½ ½ specify
that ½ ½ ½ the length½ of each series.
Examples of pipe deformation shapes that can be represented by the modes de-
fined in Equation 1-1 are shown in Figure 1-1. The following parameters should be
specified to the series in order to enable these shapes:
”
\ á ;á õ 
(a) Ring expansion/compression is a deflection in radial direction as a function
of radius. Setting can give such shapes. Note that for a realistic free

85
a) b)

c) d)

e) f)
Figure 1-1: Examples of deformation shapes. (a) Ring expansion/compression. (b)
Rotation of ring cross-section. (c) Taper like deformation. (d) Ovality mode of a
ring. (e) Pipe torsion. (f) Conical deformation.

86
\   ; 
ring radial expansion mode is normally coupled with changes in axial direction
so that ring volume does not change under the deformation. That is why
parameter should also be set greater then zero for this case.
”
\ ½ ;á õ  \ ½ ;½ õ 
(b) Rotation of ring cross-section is a result of tangential displacement with
respect to the radius and angle. Setting and enable such
deformation.
”
\   ;á õ 
(c) Taper like deformation can occur when axial deflection is a function of
radius. Set to enable it.
” (d) Ovality mode of a ring. To get this mode one should set \ á ; á õ  , \ á ; õ 
y , \ ; á õ  , \ ; y . In general to simulate a -waves deflection \ á ; and½ \ ;
must½ be at least ½ %½ equal
˜ to a . ½ ½½
” (e) Torsion of a pipe is enabled when both \ ; á and \ ;   are greater then zero.
” (f) Conical deformation shown in the figure ½ is a combination
½
; ;
enabled by non-zero parameters \ á   and \    
of deformations

To give a real usage example let us assume that we need to simulate a relatively
stiff ring. We only expect ovality mode from it and we don’t expect much deforma-
tions through the cross-section. The minimal reasonable combination of the input
values will be
” \ á ; á  < allow radial expansion/compression
” \ á ;  y two waves correspond to the ovality mode
” \ á ;  ½   for a narrow ring taper shape is not important
” \ ; á  < ( \ ;  y`( \ ;     - symmetry with radial parameters to get stress-
½ central ½ line
free ½ ½
” \   ; á   ( \   ;   - narrow ring has practically no deformation of this kind
½
” \   ;    < - allow axial expansion

The parameters specify a model which is stiffer than the real body but can simulate
the ovality mode and will run fast due to the low number of shapes used.
In practice it is often worthwhile to try different combinations of shape functions
parameters and check the results of single body analysis described in Chapter 5 to se-
lect the minimal number of modes satisfying the particular simulation requirements.

87
 
  
 
! "#$%&' () "#*+&, '-/.10
23457698:0
*; <35$=>8?.10
35$=>8@ A+BBC.ED"6;=FC <2345:;; G+ ..10

H I

*; J+K.10
+; <2+#BLLMBC.ED"6
! 2+#ONPMRQTSUSJVXWZYLN:MK[\N]SJVT^_MK[[`
2+#aQTSJYbNcSJVX^ZM?[[1-0

ded
f
f
g

h i

jklmn;oJpqrstk?u1v
pqrstk;oJwxyLz@{|y}zL~ybz_€ybz;ybz ‚|y}z;ƒy;uE„"…‡†tˆklC‰
Š €Lz‡€‹‹:zLŒ\z}ŒkPz}wŽmnPz;wŽmnk:zLŒŽmnkPzZx zs;z€CzLw‘“’”z
•—– jtnnl˜xtq™qš›˜œmxl˜™qjmnrl˜™mq˜ž˜rl€
m˜˜ˆ€™qš Ÿ …¡w™q;o£¢Ku”z¤ž …¥jt˜Lo¦¢Ku –`§
w™q;o£¢Ku jt˜;o£¢Ku ° ³
w‘;oJny}z¥¢¨y}zª©«y@uE„"…­¬®¯¯¯ jt˜;o£¢Ku ±/w™q;o¦¢Ku ° ¶ wx·oJnz¸¢Pz¹©,u1v
¯¯ ° ° ² ´ µµµ
µµ
º»¼½ p ¾¿@oJw‘;ʗoJ˨nÑ z¸ ÍÒÏ P
¢ ª
z `
© 
u 1
u v
s9…}À(Á À`ÅÇÆUÈÉÀ|ÊÌËÁÎÍÐÏ Ã Ä Ã Ã nOÓPnRÓ¢}Ӑ©v
Ã Ä Ã Ã Ã
à Äà à à à Äà Ã
º»¼½ p¾¿@oÔÕstkˆ€l‡„¤Ôzs u”v
€Ö… {OsCv
º»¼½ p¾ ¿@oÔՆm˜ʗ˘ Ñ „Ö ÍÒÏ Ôz€u1v
Œ²×…}À(ÁÃ Ä Ã à À`Å ÆUÈ ÀØÊÌËÁÎÍÐÃ Ï Ã Ä Ã Ã { Š nÙw™q;o£¢Ku”zLnÙjt˜;o£¢?u1z)©'’nÙÓ:nOÓ¢bÓ ©'v
à Äà à à à Äà Ã
º»¼½ p¾¿@oÔŒ²@„ÚÔzLŒ²Ûu1v
ŒkÜ … ÊÌËÑ ÍÒÏ
ÀÁΠÀ`ÅÇÆUÈÉÀØÊÌËÁÎÍÐÃ Ï Ã Ä Ã Ã {·ÝˆrlnCoJ¿™€l˜:z Š nÙw™q;o£¢KuÞz}nÙjt˜;o£¢KuÞzß©'’z
Ã Ä Ã Ã
à Äà à à à Äà Ã
Š nRw™qCo£¢?u1zLnOjt˜Lo¦¢Ku1z)©,’Uu_nOÓ:nÙÓ¢}Ó ©v
º»¼½ p¾¿@oÔŒk@„ÚÔz;Œk“u”v

àeá
é ð—ñ¨ôÎòÒó
ê ëê ê êêêê
âãäåÜæbç(èUé ç1ìAíÎîïçØðÌñèUòÐó ëKõ âö;÷Jåøbù“ø)ú,û\åÙü:åÙü:ùbü ú'ý
ê ëê ê ê ê ëê ê
þÿ ÷
âãäå é ø;âãäåÛðÌû1ñôÎý òÒó
êêê êê êêê
âãäåÜæ  äãçèUë é ç`ìAíÎîÉçØðÌñèUòÒó ë?õ åC÷  :øLâö;÷Jåø}ùPø)ú`û“ø
ê ëê ê ê ê ëê ê ê
âö;÷Jåø}ùPø)ú,ûKû\åÙü:åOüùbü ú(ø!":ø$#ø%'&”ø("ø#ø$%'&*)`ý
þÿ ÷
âãäå + øLâö  ,  - ö./å  ÷JâãäåPø$0“ûû”ý
þÿ ÷
â1    å1ö2ö ×âãäå;÷3ÛûP÷
“û/ææ  åä,4/C÷JâãäåC÷3“ûÛ÷3“ûû6578 ø  äãC÷
â  4 - 1@÷Jâãäå9
:; ææ  åä,4/@÷ âãäå9;: ûû1ø
"ø$#:ø$%'&Þø!":ø$#é ø%'&Uûû”ðÌý ñô òÒó
êêê êê êêê
< ãäåÜæ  äãç è ë é ç ì íÎîÉç ðÌñè òÒó ë?õ åOâ  ,L÷JùKû1ø;å>=/C÷£ùKû1ø·ú?&;
ê ëê ê ê ê ëê ê ê
âöL÷ åøbù“ø)ú,û
båRü“åÙüù}ü úø("ø#ø$%'&Þø!":ø$#ø%'&@)`ý
þÿ ÷
< ãäå + øLâö  ,  - ö./å  ÷ < ãäåPø$0“ûû”ý
 æ AB ,    1Cä  å D ÷E%“û1ý
þÿ ÷
 ø  û1ý
M
 ..ÜæGF âãäå::
Pý þÿ ÷N  .. O ø  ..“û”ý
HJILK
þ â4·÷JåP}ø}ùQPbø·úRP;ûS "æ
TVUXW â4·÷Jåø}ùPø)ú,û#Pø
U*Y â4)÷ åøOùÛøßú,ûZ0 â4·÷Jåø}ùPø)ú`û#
[\[\[\[\[][\[\[\[\[][\[\[\[\[\[][\[\[\å [\[\[][\[\[\[\[\[][\[\[\][\[\[\[\[\[ \[ ^ [][\[\[\[\[\[][\[\[\[\[\[][\[\[ \å [\[\[\[][\[\[\[\[\[][\[\[\[ \[\[ [ ø
UX_ â4·÷Jåø}ùPø)ú,û%Pø
UXW â4·÷Jåø}ùPø)ú,û0`5
â4)÷Jå:øbùPø·ú,û0; U@Y â4)÷Jå:øbùPø·ú,û#;
[\[\[\[\[][\[\[\[\[][\[\[\[\[\[ \å [][\[\[\[\[\[][\[\[\[\[\[]\[ ][\[ [ ^ [\[][\[\[\[\[\[][\[\[\[\[\[][\[\[\[\[\å [][\[\[\[\[][\[\[\[\[\][]\[\[\[\[\[][ \[ [ ø
U@Y ÷Jåø}ùPøßú1û%
UX_ â4·÷Jåø}ùPø)ú,û0 [\[\[\[\[][\â[\[\4a [\[][\[\[\[\[\[][\[\[\å [\[\[][\[\[\[\[\[][\[\[\][\[\[\[\[\[ \[ ø
^
UX_ â4·÷Jåø}ùPø)ú,û# UXW â4·÷Jåø}ùPø·ú,û%;ba`ý
^
þÿ ÷
 /äå þ âc/4åä  /åd (ø þ â4·÷Jåø}ùPø)ú`ûû1ý

eNf Cä  å  äö/,  ä,   ä  å D fg


h ö×æi
Nj 0lkømj_ømjZønøGnPøGn'&ø
NjZøm^ j 0lk:ømjZønøGnPøGn'&ø
NjZømj_øm^ j 0lkønøGnPøGn'&ø
"nø$n:ø$nø^ kø$n:ø$n'&Þø

oqp
r"s:t$sut$s:ts:t$vut$s'w;t
r"s:t$sut$s:ts:t$sut$v'w
w;x
yz{|~}3€ t‚ € t~ƒ €„S…‡†
ˆ‰Š‹|˜ Œ‹z }ŽžN |~¥ }3¢¦ £ tG'tƒ „X„‘“’” “|~}3 tG'tƒ „ x
™™™ ™™™™
y|O†G•—–š ˜ •›“œXV•Ÿž¡ J–@¢¤£ š yz{|~}E t‚'t~ƒ „§©¨'>¨  ¨ ƒx
™ š™ ™ ™ ™ š™ ™
ª«¬­®¯ˆm}
°J±²³³Šz‹‹µ´‰±²¶ …+° t y|·„ x
­z±¸Šm} r ´­­ t ´¹¹ t$º§tº» { t ¼‰ t ¼‰ » { t$º ¼‰ » { t y| w „ x
½ x

¿ {z‰}3 » zÀÁ‰±²¶Â„ x
s É Ã}}EÊ˄„ Ã}}3Ì̈́„
 » zÀÁ‰±²¶m}ŽÃ€Ä„S…‡†ÆÅÇÈÈÈ  à }}3Ê̈́„ s É
à }}EÎ˄„ x
ÈÈ É Ã}}ÏÌ˄„ Ã}}3Α„„ s ÑÐ ÒÒÒ
ÒÒ

¿ {z‰}ŽÔŠ¹zzªŒÕÔ„ x
ÔŠ¹zzªŒÕÔm}3ÖJ€ t ¶³€ t ö³€ t(r ´­­€ t ´¹¹€ t
º € tGº» {€ t ¼‰€ t ¼‰ » {€ tGº ¼‰ » {€ t y|€ w „S…‡†
ÁŒÕ¸{zÄ× r ÁÁ t ­Ø t ± t ±²{Õz± t$º ¼‰zz tº ¼‰zzÕŒ± t
º ¼‰z³ t ÖX±²{Õz t ÖX±Ì tÙ Ã tÙ ÃbÚ t$٠ó wt
±Û† º ÎÝܧ¼‰ Þ¶³ x

߇à
áâãäåæçèméNêëìmí+êîëìËïZð
ëìñòóôì(õëöô÷øùìúñûmé3ëìËïð
üýùúôôþÿ$éEö GîGò mïSí‡õdø  ó òô î
æ
Ï
ö ò:î
   
 üöòNññ "!$#§üöòNöö &
 %' ((
 ((

  
,- üýùúöò.ñ ñ/!$#§üýùúöòö.ö&%' (( û

)+* (( 0


  
1 - ëýùúöò+
ññ "! #§ëýùúöò+ö ö  %' ( û

) û
((
0  ( 0
  
# üöò+ ò ö ) üýùúöò.ò.ö ) üýùúöò
öò "! û
)
0
û
ëýùúöò+ò ö û
2!
3 0 0
3 ð
üýùúôô(õèùýòôé3üýùúôôþÿ$éEö:î$òËïî4"öuî 5:î768î9"ò:î75:î 68@ïZð
áâãäåæçèméNêüýùúôô í+êîüýùúôôÍïZð
üýùúôôó  ì(õÄèùýò7ô 
æ
Ïö õõò:î

  
,  üýùúöò+
ññ "!$#§üýùúöò+ö ö%' ((( û

* )
 (:0<;

  
û
1 - ëýùúöò+
ññ "!$#9ëýùúöò+ö ö%' (( û
)
; 0  ((:0

  
û
,- ëýùúöò+ñ ñ/!$#§ëýùúöòö.ö '% ((
(
û

0  ( 0<;
  
üýùúöòò ö ) üýùúöò.ö
ò"! û

# )
0=;
û
ëýùúöò+
òö  û
)

;
û
ë0 ýùúö+ò ò ö  0 û
"!
0
3 î4ö: î 5u î 68;4
î "ò:7 î 5:7 î 680< ; 3 ð
áâãäåæçèméNêüýùúôôó  ì í+êî$üýùúôôó  ìÂïZð
üýùú ô

 
û
ëýùúöò * >6?#9ëýùúöò+6  * /!î
0 
û
 ëýùúö ò 6>5?#9ëýùúöò+5  6/!î

0
û
ëýùúöò 5 * ?#9ëýùúö+
ò * 5/!
0

) 

@BA
CD/E F G H.IJKI>LK?M+CD/E F G H+IL KIJKON
CD/E F G H.ILKI>PK?M+CD/E F G H+IP KILKON
CD/E F G H.IPKI>JK?M+CD/E F G H+IJ KIPK
QR
S T/U VW/XY/Z\[^]CD/E F _ `bac]/N7CD/E F _ `ed R
f^g Zh/_ji kl m/k n _ n o pqk `roh/_
l/E p psl/E o F t uvh/Ew/_sD/_ _ nji kl m x/o _ yzE oroh/t p
m/k t n o|{~} E H ix/H E o t n €x/E y F E o t i‚w/_ H k i t o ƒ|{ g…„
† t H y _9‡7ˆ G _‰ Š/E o F t u[ † d R

o
† o J‡ † o t H y _‹{ † o t H y _ R
Œ w/F‡ † o J|{ˆ oŽJ † o t H y _|{ˆD/E F|{<w/u ` R
S T/U VW/XY/Z\[^] Œ w/Fba]/N Œ w/Fed R
Œ w’‘9‡“M †” f CD/E F _ _b{ † „ M+CD/E F _ _ y k o|{ † M †7” f CD/E F _ `b{=w/u ` „&R
S T/U VW/XY/Z\[^] Œ w’‘‹a]/N Œ w’‘’d R
Œ w/`‡
™ ™
M • • † o JI>tKI›œK f CD/E F G HItKI›žK?ˆD/E F G H+It KI›žK‹{u ` „ M
–,—˜ š1—-˜
™ ™
JŸ• • † o t H y _ItKI¡›žK¢ˆD/E F G H.ItKI¡›žK|{<w/u ` R
–,—-˜ š1— ˜
S T/U VW/XY/Z\[^] Œ w/`ba]/N Œ w/`ed R
W/_ ox/F n\[£B¤ m m/_ n y } k Hx l/n pb[
¤ m m/_ n yW/k‰/p\[=l W W7N7Z F E n pm/k p _[¥ˆ o t H y _ o2d&N7ˆD/E F2d&N
¤ m m/_ n yW/k‰/p\[¥ˆ o t H y _ oON CD/E F _ _8N CD/E F _ `2d&N‹¤ m m/_ n yW/k‰/p[
Z F E n pm/k p _b[¥ˆD/E Fed&N7Z F E n pm/k p _\[¥CD/E F _ `2d&N|l/¦ ¦Od§d&N
¦ H E o o _ n\[£ Œ w/F.N Œ w’‘ON Œ w/`ŽM"¨ m©{u ` Q d Q d R
ª R

« «

¬B­
® ¯ ° ± ²7³¥´ ° µ ¶ · ² ¸ °’¹&º
´ ° µ ¶ · ² ¸ °\³»,¶ ¼½$¾¿¶ À½$¾ ¶/Á1½7¾û²½¢¾¢Ä½$¾ÅÁ1½Â¾$ÆÇ ½ ¾È¼ ɽ\¹ËÊÍÌ
Î · ÏÐ/¯ °Ñ»,¶¾ÒÇb¾ Î ¾|Ç/Ó ¸.¾7Ô É8¾
Æ Û µ³¥± µ Öe¹ ® · Ü7³¥± µ Ö2¹ Ý à
Ç/Ó ¸7³Õ± µ Ö½7¹ŸÌØÙÚÚ× ® · ܳ¥± µ Öe¹ Þ:Æ Û µ7³¥± µ Öe¹ Ý º
ÚÚ
Ú Ý Ý ß á âââ
ââ
Æ ¸7³¥² ²½$¾¿± µ Ö½ ¾ãÁ Á1½\¹ËÊÍ̏Ç/Ó ¸ ³Õ± µ ÖO¹’äÆÇųղ ²¾å± µ Ö¾sÁ Á湺
ç è ´ éê/ëì/í\³>îï® ± ² ð ° Ü Û ± µjÜñ/±Ç/°bÊòî/¾7Æ ¸ ³¥².¾óÄ8¾sÁæ¹ ¹&º
ÇôÌ9»,²õÆ Û µ7³-Ē¹&¾¿²õ® · Ü7³ Ä2¹&¾ÅÁæö÷Æ ¸7³¥²¾ÈÄ8¾sÁæ¹2ä¼ É.º
ç è ´ éê/ëì/í\³>î ç ° É · ²ø/° ÏãÇ/· Ü Û ð Û · µ· Ésǩʐîù¾ÒNj¹&º
¶úÌ9»¶ ¼¾¿¶ À.¾ ¶/Áæº
Π̏ÇÅû ¶ºËü^ýÈø/·ø/° µ ðþý…ÿ
Ô ÉúÌí ² ± µ ÜÇ/· Ü °\³¥Æ ¸7³¥²¾$Ä8¾ÅÁæ¹ ¹2䶺þü^ýs° ¯ ± Ü ð Û ¸ Ç/± ² ðý…ÿ
ê/° ðÐ/² µ\³¥¶ ¯ ± ð ð ° µ³» »,¶ ¼.¾ ¶ À.¾ ¶/Áæ¾ Î ¾ Ô ÉO ¹ ¹º
 º


 
 
 
 
"! #$%&
 ')(+*,-(/.0(+12(03%
4(536$$
4(03(+3(
3'2(/70(+82(09:(+;2(+<4(+=>4(@?=>4(  (03A*2( BC2( DD)EF(
GIH #$,%J, 
 %
' HLK
9 M/NPOQSROUTVTW GIHYX $&[Z'\' HLK
;]O/NPM^_ GIHJ` 6'$aZ_'b
 %6 HLK
. dceOO4 GIH  ''f$'6%g HLK
3%
h O/NPR4 GIH %
i
6$&i
 6' HLK
36$$
jkO/Nl^m GIH 6$$
i
6$&f
 6' HLK
G 3%
poq36$$
K
3n rsrtrtrtrtrtrsrtrtrtrtrtrsrtrtrtrtrsrtrtrtrtrtrsrtrtrtrtrtrstrtrtrtrsrtrtr tr rtr  GIH 6 $u
 6' HLK
M
3 53%
pvw36$$
x GIHky u%z6D{$'' HLK
GIH 'z ,u>$D%6$f'D 6$&J, 
 %
HLK
3'|53%
4
1}dO/NPOM4 GIHdy 6%z >f%zi
6$& HLK
GIH D$?
%u%i1 iD$'% $%' HLK
7@(+8xE~ 1  90(+;
`
6$%/ €‚7 f€(-7@(ƒ€_(d8 f€(k8)
GIH…„ ''b'z ,f>6 HLK
’ R O O ˜
rt“•rsrt” r r
šš
*,† ‡
ˆ‰(‹ŠŒˆ‰(\lˆŽ‘‘ O O ' ‡M–Šw *6$+ —M–Š šš 
‘‘ šš
‘‘ O
‘ O O O ™š

GIHJ` 
>
f?f6$%&
 %6$ HLK
! #$%&
 'h #$% !  —*,/(/.0(+12(03 ( 3 (/70(+8)F
GIH *D%u $& 
›?D6%gu 
$
%zf
6$&-Zm'i =6' HLK
<| O2( O2(+ROOO)EF
`
6$%/ € „ $& 
‹?'6%gad€(œ<
GIH ''u'i6$6%6 f>D%6$'% % HLK
=>| vžR/N H RO_ŸP ž(+R/N H RO¡ŸP ž(¢vžM/N H ROLŸP ž(+OxEF
`
6$%/ €C=i'% %ad€(k=>)F
?=>| vžR/N H RO_Ÿ¤£¥(+R/N H RO_Ÿ¤£¥(¢vžM/N H RO_Ÿ¤£¥(+OxEU
`
6$%/ €C=¦?'6%gu'% %ad€m(§?=>
GIH D D %%z\ ''

¨©
ª«¬­®¯f«°±³²¯¬²­°«´f´µ«±³¶­²²¸·¹º¼»L½
¾"¿¿‰À ·¹º)ÁÃÂ0ÄÅ°Æ­²²Çµ±Å-ÈÊÉ À ¯¶ À@Ë ¯¶ ÀaÌ µ´Í°¬²Î­«´ÏqÐÑ
Ò ­®°¬/ÈÓ ¿ «ÏÏYª«¬­®¯aÔdÓ À
ºÕ®²°¬®¶®ÕƵ­ªÃÈ ¿¿+À Ö Ð–
× × ¿ «¬­®¯Æµ­ª@ÐÑ
Ò ­®°¬/ȁÓÆ­²²Jص±Ŧ·¹º-ÔdÓ À  · ¹ºÙ×× ¿ «¬­®¯Æµ­ª0ÐÑ
Ú »JºÅªª²¬­®՝´µ«±³µ¶iÛÜÜYݲެµ°Ïf¶­µª
¬µß¼«°±Øµ¬¬µª «¬i¬à²\ª²±®«°f­«±®áÏ|»L½
â ÆÙ ⠲°Æµ­Õ²/È ¾äã ÛÜÜ À Ü À ÜxÁ Àå¾ ·ª À æ × Ö4À ÜxÁ À ºß À ¯¶)Ðç
â ²°Æµ­Õ²/È ¾ ÛÜÜ À Ü À ÜxÁ Àå¾ ·ª À¢ãèæ × Ö4À ÜxÁ À ºß À ¯)¶ ÐFÑ
Ò ­®°¬/ÈÓ â ²°²­«´®é²U±f¶µ­Õ²-ÔêÓ À â Æ]×× ¿ «¬­®¯Æµ­ªëÐÑ
·¹ºÙç â ÆxÑ
Ú »Jì«´Õá´«¬²«ÕÕ²´²­«¬®µ°¬²°Ïµ­}»L½
«ÕÕÙ í®°²«­ºµ´ Ë ²-È ¿¿‰À ·¹ºÐÑ
Ò ­®°¬/ȁӕîÕÕ²´²­«¬®µ°ƒ¬²°Ïµ­-ÔêÓ À «ÕÕÙ×× ¿ «¬­®¯Æµ­ªëÐFÑ
ï Ñ

IJªµ ÈÐ

ðëñ ò óôó õöñ ò óø÷

ù ü ýøþèÿ ý þèÿ ýþ ÿ ý þèÿ ýøþèÿ ý þ ÿ 


ûû 
ûû ü ýøþ ÿ ýþ ÿ  ý þ ÿ ýøþ ÿ  ýþ ÿ ý þèÿ 
ûû 
ú 

 

ù  
ûû 
ûû  
ûû 
ú 


ù 
ûû 
ûû 
ûû 
ú 

 

  

   1  !45+ -.!$/6! 1 33  !8!9!8! 1 13


    "!$#% &'(!)# !*,+ -.!$/ 333  !
3  333 333
  , &' "! # &(! / !*,- .!$0 333  ! !45- .!$06! 33333  !8!9!8! 333 333
  333  3  !8!9!8! 333 333
  ! *
! 
 
-  
  
 ! 0 ! 333  5+ -("!7/%- (! 0 !8! 3333  333 333
  3 
  ,+ - "! / - (!)0 !*,- .!$0 23 ! ! !8! 2
3  !8!9!8! 2 333 3
 333
 
 ! !*,+" -.!$/6! 1 33 
 .! #  &'(! # ! +" -.! / 1 33  !8!9!8! 1 3333
 3 3  333 333



 ! !*,-" .! 0 ! 33333 
 , &'.!$#:&(!)/ ! -" .! 0 3333  !8!9!8! 333 333
333 333
3 33 


 + -(!)/%- (! 0
  !8! 3333 
 ! !4- (!)0 ! 3333  !8!9!8! 33 333
 ! ! !8! 2 3  2 3  !8!9!8! 2 3 333 3
 + -.! / - (! 0 !*,-" .! 0 33
  !;!9!8! 1  !8!9!;! 1  !8!9!8! 1 33333
  33  333  333 333
  !;!9!8! 33333  !8!9!;! 3333 

!8!9!8! 333 333
333 333
  !;!9!8! 333  !8!9!;! 333  !8!9!8! 33 33
  !;!9!8! 2 33  !8!9!;! 2 33  2 3 2 33
!8!9!8!

D G
FF II
< =>< = ?@? < < =>< =)=.ACB FF II
FF I
E HI

T WYX[Z]\$^`_bac"d[X _ \ ef^`_ba c"d,a d[X[g'\ hi^j_ba]k$l Wmand,adoX[g'\ hi^`_ba'kpd,al Wa d5ad,a d,al q
V V ss
J7K LNMPOQSR VVV Wma d,and[X]g]\ hi^j_ba k d,a,l WYX]Z]\$^`_ba c d[X(_ \ ef^`_"a c d,a d,g]\ hf^`_ba k l8Wa d5ad,a d,al ss
ss
VV VVU s
Wma d,and,ad,a5l Wadad,a d,al Wa d5ad,a d,al r ss

D A G
FF II
FF A II
FF I
E A HI

D A A G
FF II
FF A A II
FF II
FF A II
FF II
FE A HI

D G
FF II
FF t Axu w] II
FF u uv u u u u u ypu u z|u {>u uv u} u w]u u u ~ u u u u u w[
u u u €7u u bu u y7u v u } u w]
u u u ~nu u u  u II
FF II
FF II
FF II
FF I
FF A u €7u u bu u y7u u }u w] ~n A u ypu u z|u {‚u u u } u w]u u u~nu u u  u III
FF
FF v u u uu u u uu v II II
FF II
FF I
E HI

ƒ „
… 
‡‡ ˆ ‰ ŠP‹Œˆ ‰ ŠŠ ’’
‡‡ ’’
‡‡ ˆ ‰ ŠbŠŽˆ ‰ ŠS ’’
‡‡‡ ’’
‡‡ ’’
‡‡ ˆ ‰ ŠŠ ’’
‡‡ ’’
† ’
ˆ ‰ Š Š ‘

“ ”

“ˆ ‰ •5– ‰ •'– ˆ ‰ •– ”

“ˆ ˆ ”

“ ”

… ˆ ˆ 
‡‡ ’’
‡‡ ˆ ˆ ’’
‡†‡ ’
‘’
ˆ

… ˆ 
‡‡ ’’
‡‡ ˆ ’’
‡†‡ ’
‘’

… 
‡‡ ’’
‡‡ ’’
‡‡ ’
† ‘’

“ ”

— “ ˆ ”

“ˆ ‰ ˜ ˆ ‰ ™ ”

š ›
§ Nª «S¬ ­N®°¯±³² ± ± ± ±S¬ ±S¬ ± ± ± ± Å
©
©© ÇÇ
©© ±´ªµ«S¬ ­N®¶¯m± ² ± ±P¬ ± ±S¬ ± ± ± ± ÇÇ
©© ÇÇ
©© ± ±´ªµ«S¬ ­N®°¯±² P± ¬ ±S¬ ± ± ± ± ± ÇÇ
©© ÇÇ
©© ± ±S¬ ±S¬·ªµ¸S¬®¹¯±$º»ª>¼P¬ ½®°¯± ¾ ¿ ±S¬ ±S¬ ±S¬ ±P¬ ±S¬ ÇÇ
©© ÇÇ
±S¬ ± ±S¬iªµ¼S¬ ½b®¶¯m±$¾|¿ ª>¸P¬®¹¯± º ±S¬ ±S¬ ±S¬ ±P¬ ±S¬ ÇÇ
œž ŸŸ>¡, ¢ £ ¤ ¥¦ ©© ÇÇ
ÇÇ
©©© ±S¬ ±S¬ ± ±P¬ ±S¬fªÀ¯¬ Á®°¯±³² ±S¬ ±S¬ ±P¬ ±S¬ ÇÇ
©© ÇÇ
©© ± ± ± ±P¬ ±S¬ ±S¬fªÀ¯¬ Á®°¯± ¿ µª ¼S¬ ½b®¶¯m±³Â ± ±S¬ ÇÇ
©© ÇÇ
©© ± ± ± ±P¬ ±S¬ ±S¬fªµ¼S¬ ½®°¯±  µª «S¬ ­b®¶¯m±³² ± ±S¬ ÇÇ
©© ÇÇ
©© ± ± ± ±P¬ ±S¬ ±S¬ ± ±ÃªN¼S¬®°¯± ² ± Ç
¨ ± ± ± ±P¬ ±S¬ ±S¬ ±S¬ ±S¬ ±ÄªN¼S¬®°¯±² Æ ÇÇ

È Ï
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ Ë ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ Ë Ì Í ÑÑ
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ Ë Ì Î ÑÑ
ÊÊ ÑÑ
ÊÊ Ë ÑÑ
ÊÊ Ñ
É ÐÑ

È Ï
ÊÊ ÑÑ
ÊÊ ÑÑ
ÊÊ Ñ
É ÐÑ

Ò Ë Ì Ó5Ô Õ

È Ë Ë Ï
ÊÊ ÑÑ
ÊÊ Ë ÑÑ
ÊÊ Ñ
É ÐÑ

ÒË Ì Ó5Ô Õ

Ö Ö
× Û
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ Ú ÝÝ
ÙÙ ÝÝ
ÙÙ Ú ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ Ú ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ Ý
Ø ÜÝ

× Û
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ Ú ÝÝ
ÙÙ ÝÝ
ÙÙ ÝÝ
ÙÙ Ý
Ø ÜÝ

Þbß ß
Bibliography

[1] K.J. Bathe. Finite Element Procedures. Prentice-Hall Inc., 1996.

[2] J. Biera, J. Vinolas, and F.J. Nieto. Time-Domain Dynamic Modelling of the
External Plunge Grinding Process. Int. J. Mach. Tools Manufact., 37(11):1555–
1572, 1997.

[3] T.R. Chandrupatla and A.D. Belegundu. Introduction to Finite Elements in


Engineering 2nd ed. Prentice Hall, 1997.

[4] Scott D. Cohen and Alan C. Hindmarsh. CVODE User Guide. Netlib, 1994.

[5] R.D. Cook, D.S. Malkus, and M.E. Plesha. Concepts and Applications of Finite
Element Analysis 3rd ed. John Wiley & Sons, 1989.

[6] D. Fritzson, L.-E. Stacke, and P. Nordling. BEAST - a Rolling Bearing Simu-
lation Tool. Proc. Instn Mech Engrs, Part K, 213, 1999.

[7] Y.C. Fung. Foundations of solid mechanics. Int. series in dynamics. Prentice-
Hall Inc., Englewood Cliffs, New Jersey, 1965.

[8] H. Goldstein. Classical Mechanics. Addision-Wesley series in physics.


Addision-Wesley Publishing Company, Inc., 1988. Second edition.

[9] A.E. Green and W. Zerna. Theoretical elasticity. Oxford University Press,
Amen House, London, 1954.

[10] J. Carpinteiro and P. Cocaño. Distortion of Bearing Rings due to Residual


Stresses. Master’s thesis, Chalmers Univ of Tech, Sweden, 2001.

[11] G. Mase. Continuum mechanics. Schaum’s outline series. McGraw-Hill Inc,


New York, 1970.

[12] I. Nakhimovski, D. Fritzson, and M. Holgerson. Dynamic Sim-


ulation of Grinding with Flexibility and Material Removal. In
Proceedings of Multibody Dynamics in Sweeden 2001, page
http://www.sm.chalmers.se/MBDSwe Sem01/Pdfs/IakovNakhimovski.pdf,
2001.

101
[13] Patrik Nordling. The Simulation of Rolling Bearing Dynamics on Parallel Com-
puters. Licentiate thesis, Linkoping University, Sweden, 1996.

[14] OMG. UML Unified modeling language specification.


http://www.omg.org/uml, 2001.

[15] W.H. Press, B.P. Flannery, S.A. Teukolsky, and W.T. Vetterling. Numerical
Recipes in C. Cambridge University Press, 2nd edition, 1993.

[16] J.R. Rieker, Y.-H. Lin, and M.W. Trethewey. Discretization consideration in
moving load finite element beam models. Finite Elements in Analysis and De-
sign, 21:129–144, 1996.

[17] W.B. Rowe, M.N. Morgan, H.S Qi, and H.W. Zheng. The Effect of Deforma-
tion on the Contact Area in Grinding. Annals of the CIRP, 43(1), 1993.

[18] R. Schwertassek, O. Wallrapp, and A.A. Shabana. Flexible Multibody Simula-


tion and Choice of Shape Functions. Nonlinear Dynamics, 20:361–380, 1999.

[19] A.A. Shabana. Resonance Conditions and Deformable Body Coordinate Sys-
tems. Journal of Sound and Vibration, 192(1):389–398, 1996.

[20] A.A. Shabana. Flexible Multibody Dynamics: Review of Past and Recent De-
velopments. Multibody Systems Dynamics, 1:189–222, 1997.

[21] A.A. Shabana. Dynamics of multibody systems 2nd ed. Cambridge University
Press, 1998.

[22] A. Siemers and I. Nakhimovski. RunBeast- Managing Remote Simulations. In


Proceedings of SIMS 2001, pages 39–46, 2001.

[23] L-E. Stacke and D. Fritzson. Dynamic behaviour of rolling bearings: simula-
tions and experiments. Proc. Instn Mech. Engrs, part J, Journal of Engineering
Tribology, 215:499–508, 2001.

[24] S.P. Timoshenko and J.N. Goodier. Theory of Elasticity 3rd ed. McGraw Hill
Inc., 1987.

[25] H.K. Tonshoff, J. Peters, I. Inasaki, and T. Paul. Modelling and Simulation of
Grinding Process. Annals of the CIRP, 41(2), 1992.

[26] B.F. Veubeke. The Dynamics of Flexible Bodies. International Journal of


Engineering Sciences, 14:895–913, 1976.

[27] Lars Viklund. Contributions to a High-level Programming Environment for


Scientific Computing. Licentiate thesis, Linkoping University, Sweden, 1994.

102
[28] O. Wallrapp. Standardization of Flexible Body Modeling in Multibody System
Codes, Part I: Definition of Standard Input Data. Mech. Struct. and Mach.,
22(3):283–304, 1994.

[29] O. Wallrapp. Flexible Bodies in Multibody System Codes. Vehicle System


Dynamics, 30:237–256, 1998.

[30] J.A. Wensing. On The Dynamics Of Ball Bearing. PhD thesis, Univ. of Twente,
Enschede, The Netherlands, 1998.

[31] Xun Chen , Rowe, W.B., Mills, B., Allanson, D.R. Analysis and Simulation
of the Grinding Process Part IV: Effects of Wheel Wear. Int. J. Mach. Tools
Manufact., 38(1-2):41–49, 1998.

[32] W.C. Young. Roark’s Formulas For Stress & Strain 6th ed. McGraw Hill
International Edition, 1989.

103
Datum
Avdelning, institution
Date
Division, department

Institutionen för datavetenskap


Department of Computer 2002-12-18
LINKÖPINGS UNIVERSITET
and Information Science

Språk Rapporttyp ISBN


Language Report category 91-7373-559-0
Svenska/Swedish X Licentiatavhandling
ISRN LiU-Tek-Lic-2002:62
X Engelska/English Examensarbete
C-uppsats
Serietitel och serienummer ISSN
D-uppsats Title of series, numbering 0280-7971
Övrig rapport

Linköping Studies in Science and Technology


URL för elektronisk version
Thesis No. 989

Titel
Title
Modeling and Simulation of Contacting Flexible Bodies in Multibody Systems

Författare
Author
Iakov Nakhimovski

Sammanfattning
Abstract
This thesis summarizes the equations, algorithms and design decisions necessary for dynamic
simulation of flexible bodies with moving contacts. The assumed general shape function
approach is also presented. The approach is expected to be computationally less expensive than
FEM approaches and easier to use than other reduction techniques. Additionally, the described
technique enables studies of the residual stress release during grinding of flexible bodies.
The overall software system design for a flexible multi-body simulation system BEAST is
presented and the specifics of the flexible modeling is specially addressed.
An industrial application example is also described in the thesis. The application presents some
results from a case where the developed system is used for simulation of flexible ring grinding
with material removal.

Nyckelord
Keywords
flexible, mechanics, dynamic, simulation, floating frame of reference, elastic, multi-body, general shape functions
Department of Computer and Information Science
Linköpings universitet
Linköping Studies in Science and Technology
Faculty of Arts and Sciences - Licentiate Theses
No 17 Vojin Plavsic: Interleaved Processing of Non-Numerical Data Stored on a Cyclic Memory. (Available at:
FOA, Box 1165, S-581 11 Linköping, Sweden. FOA Report B30062E)
No 28 Arne Jönsson, Mikael Patel: An Interactive Flowcharting Technique for Communicating and Realizing Al-
gorithms, 1984.
No 29 Johnny Eckerland: Retargeting of an Incremental Code Generator, 1984.
No 48 Henrik Nordin: On the Use of Typical Cases for Knowledge-Based Consultation and Teaching, 1985.
No 52 Zebo Peng: Steps Towards the Formalization of Designing VLSI Systems, 1985.
No 60 Johan Fagerström: Simulation and Evaluation of Architecture based on Asynchronous Processes, 1985.
No 71 Jalal Maleki: ICONStraint, A Dependency Directed Constraint Maintenance System, 1987.
No 72 Tony Larsson: On the Specification and Verification of VLSI Systems, 1986.
No 73 Ola Strömfors: A Structure Editor for Documents and Programs, 1986.
No 74 Christos Levcopoulos: New Results about the Approximation Behavior of the Greedy Triangulation, 1986.
No 104 Shamsul I. Chowdhury: Statistical Expert Systems - a Special Application Area for Knowledge-Based Com-
puter Methodology, 1987.
No 108 Rober Bilos: Incremental Scanning and Token-Based Editing, 1987.
No 111 Hans Block: SPORT-SORT Sorting Algorithms and Sport Tournaments, 1987.
No 113 Ralph Rönnquist: Network and Lattice Based Approaches to the Representation of Knowledge, 1987.
No 118 Mariam Kamkar, Nahid Shahmehri: Affect-Chaining in Program Flow Analysis Applied to Queries of Pro-
grams, 1987.
No 126 Dan Strömberg: Transfer and Distribution of Application Programs, 1987.
No 127 Kristian Sandahl: Case Studies in Knowledge Acquisition, Migration and User Acceptance of Expert Sys-
tems, 1987.
No 139 Christer Bäckström: Reasoning about Interdependent Actions, 1988.
No 140 Mats Wirén: On Control Strategies and Incrementality in Unification-Based Chart Parsing, 1988.
No 146 Johan Hultman: A Software System for Defining and Controlling Actions in a Mechanical System, 1988.
No 150 Tim Hansen: Diagnosing Faults using Knowledge about Malfunctioning Behavior, 1988.
No 165 Jonas Löwgren: Supporting Design and Management of Expert System User Interfaces, 1989.
No 166 Ola Petersson: On Adaptive Sorting in Sequential and Parallel Models, 1989.
No 174 Yngve Larsson: Dynamic Configuration in a Distributed Environment, 1989.
No 177 Peter Åberg: Design of a Multiple View Presentation and Interaction Manager, 1989.
No 181 Henrik Eriksson: A Study in Domain-Oriented Tool Support for Knowledge Acquisition, 1989.
No 184 Ivan Rankin: The Deep Generation of Text in Expert Critiquing Systems, 1989.
No 187 Simin Nadjm-Tehrani: Contributions to the Declarative Approach to Debugging Prolog Programs, 1989.
No 189 Magnus Merkel: Temporal Information in Natural Language, 1989.
No 196 Ulf Nilsson: A Systematic Approach to Abstract Interpretation of Logic Programs, 1989.
No 197 Staffan Bonnier: Horn Clause Logic with External Procedures: Towards a Theoretical Framework, 1989.
No 203 Christer Hansson: A Prototype System for Logical Reasoning about Time and Action, 1990.
No 212 Björn Fjellborg: An Approach to Extraction of Pipeline Structures for VLSI High-Level Synthesis, 1990.
No 230 Patrick Doherty: A Three-Valued Approach to Non-Monotonic Reasoning, 1990.
No 237 Tomas Sokolnicki: Coaching Partial Plans: An Approach to Knowledge-Based Tutoring, 1990.
No 250 Lars Strömberg: Postmortem Debugging of Distributed Systems, 1990.
No 253 Torbjörn Näslund: SLDFA-Resolution - Computing Answers for Negative Queries, 1990.
No 260 Peter D. Holmes: Using Connectivity Graphs to Support Map-Related Reasoning, 1991.
No 283 Olof Johansson: Improving Implementation of Graphical User Interfaces for Object-Oriented Knowledge-
Bases, 1991.
No 298 Rolf G Larsson: Aktivitetsbaserad kalkylering i ett nytt ekonomisystem, 1991.
No 318 Lena Srömbäck: Studies in Extended Unification-Based Formalism for Linguistic Description: An Algo-
rithm for Feature Structures with Disjunction and a Proposal for Flexible Systems, 1992.
No 319 Mikael Pettersson: DML-A Language and System for the Generation of Efficient Compilers from Denotatio-
nal Specification, 1992.
No 326 Andreas Kågedal: Logic Programming with External Procedures: an Implementation, 1992.
No 328 Patrick Lambrix: Aspects of Version Management of Composite Objects, 1992.
No 333 Xinli Gu: Testability Analysis and Improvement in High-Level Synthesis Systems, 1992.
No 335 Torbjörn Näslund: On the Role of Evaluations in Iterative Development of Managerial Support Sytems,
1992.
No 348 Ulf Cederling: Industrial Software Development - a Case Study, 1992.
No 352 Magnus Morin: Predictable Cyclic Computations in Autonomous Systems: A Computational Model and Im-
plementation, 1992.
No 371 Mehran Noghabai: Evaluation of Strategic Investments in Information Technology, 1993.
No 378 Mats Larsson: A Transformational Approach to Formal Digital System Design, 1993.
No 380 Johan Ringström: Compiler Generation for Parallel Languages from Denotational Specifications, 1993.
No 381 Michael Jansson: Propagation of Change in an Intelligent Information System, 1993.
No 383 Jonni Harrius: An Architecture and a Knowledge Representation Model for Expert Critiquing Systems, 1993.
No 386 Per Österling: Symbolic Modelling of the Dynamic Environments of Autonomous Agents, 1993.
No 398 Johan Boye: Dependency-based Groudness Analysis of Functional Logic Programs, 1993.
No 402 Lars Degerstedt: Tabulated Resolution for Well Founded Semantics, 1993.
No 406 Anna Moberg: Satellitkontor - en studie av kommunikationsmönster vid arbete på distans, 1993.
No 414 Peter Carlsson: Separation av företagsledning och finansiering - fallstudier av företagsledarutköp ur ett agent-
teoretiskt perspektiv, 1994.
No 417 Camilla Sjöström: Revision och lagreglering - ett historiskt perspektiv, 1994.
No 436 Cecilia Sjöberg: Voices in Design: Argumentation in Participatory Development, 1994.
No 437 Lars Viklund: Contributions to a High-level Programming Environment for a Scientific Computing, 1994.
No 440 Peter Loborg: Error Recovery Support in Manufacturing Control Systems, 1994.
FHS 3/94 Owen Eriksson: Informationssystem med verksamhetskvalitet - utvärdering baserat på ett verksamhetsinrik-
tat och samskapande perspektiv, 1994.
FHS 4/94 Karin Pettersson: Informationssystemstrukturering, ansvarsfördelning och användarinflytande - En kompa-
rativ studie med utgångspunkt i två informationssystemstrategier, 1994.
No 441 Lars Poignant: Informationsteknologi och företagsetablering - Effekter på produktivitet och region, 1994.
No 446 Gustav Fahl: Object Views of Relational Data in Multidatabase Systems, 1994.
No 450 Henrik Nilsson: A Declarative Approach to Debugging for Lazy Functional Languages, 1994.
No 451 Jonas Lind: Creditor - Firm Relations: an Interdisciplinary Analysis, 1994.
No 452 Martin Sköld: Active Rules based on Object Relational Queries - Efficient Change Monitoring Techniques,
1994.
No 455 Pär Carlshamre: A Collaborative Approach to Usability Engineering: Technical Communicators and System
Developers in Usability-Oriented Systems Development, 1994.
FHS 5/94 Stefan Cronholm: Varför CASE-verktyg i systemutveckling? - En motiv- och konsekvensstudie avseende ar-
betssätt och arbetsformer, 1994.
No 462 Mikael Lindvall: A Study of Traceability in Object-Oriented Systems Development, 1994.
No 463 Fredrik Nilsson: Strategi och ekonomisk styrning - En studie av Sandviks förvärv av Bahco Verktyg, 1994.
No 464 Hans Olsén: Collage Induction: Proving Properties of Logic Programs by Program Synthesis, 1994.
No 469 Lars Karlsson: Specification and Synthesis of Plans Using the Features and Fluents Framework, 1995.
No 473 Ulf Söderman: On Conceptual Modelling of Mode Switching Systems, 1995.
No 475 Choong-ho Yi: Reasoning about Concurrent Actions in the Trajectory Semantics, 1995.
No 476 Bo Lagerström: Successiv resultatavräkning av pågående arbeten. - Fallstudier i tre byggföretag, 1995.
No 478 Peter Jonsson: Complexity of State-Variable Planning under Structural Restrictions, 1995.
FHS 7/95 Anders Avdic: Arbetsintegrerad systemutveckling med kalkylkprogram, 1995.
No 482 Eva L Ragnemalm: Towards Student Modelling through Collaborative Dialogue with a Learning Compani-
on, 1995.
No 488 Eva Toller: Contributions to Parallel Multiparadigm Languages: Combining Object-Oriented and Rule-Based
Programming, 1995.
No 489 Erik Stoy: A Petri Net Based Unified Representation for Hardware/Software Co-Design, 1995.
No 497 Johan Herber: Environment Support for Building Structured Mathematical Models, 1995.
No 498 Stefan Svenberg: Structure-Driven Derivation of Inter-Lingual Functor-Argument Trees for Multi-Lingual
Generation, 1995.
No 503 Hee-Cheol Kim: Prediction and Postdiction under Uncertainty, 1995.
FHS 8/95 Dan Fristedt: Metoder i användning - mot förbättring av systemutveckling genom situationell metodkunskap
och metodanalys, 1995.
FHS 9/95 Malin Bergvall: Systemförvaltning i praktiken - en kvalitativ studie avseende centrala begrepp, aktiviteter och
ansvarsroller, 1995.
No 513 Joachim Karlsson: Towards a Strategy for Software Requirements Selection, 1995.
No 517 Jakob Axelsson: Schedulability-Driven Partitioning of Heterogeneous Real-Time Systems, 1995.
No 518 Göran Forslund: Toward Cooperative Advice-Giving Systems: The Expert Systems Experience, 1995.
No 522 Jörgen Andersson: Bilder av småföretagares ekonomistyrning, 1995.
No 538 Staffan Flodin: Efficient Management of Object-Oriented Queries with Late Binding, 1996.
No 545 Vadim Engelson: An Approach to Automatic Construction of Graphical User Interfaces for Applications in
Scientific Computing, 1996.
No 546 Magnus Werner : Multidatabase Integration using Polymorphic Queries and Views, 1996.
FiF-a 1/96 Mikael Lind: Affärsprocessinriktad förändringsanalys - utveckling och tillämpning av synsätt och metod,
1996.
No 549 Jonas Hallberg: High-Level Synthesis under Local Timing Constraints, 1996.
No 550 Kristina Larsen: Förutsättningar och begränsningar för arbete på distans - erfarenheter från fyra svenska fö-
retag. 1996.
No 557 Mikael Johansson: Quality Functions for Requirements Engineering Methods, 1996.
No 558 Patrik Nordling: The Simulation of Rolling Bearing Dynamics on Parallel Computers, 1996.
No 561 Anders Ekman: Exploration of Polygonal Environments, 1996.
No 563 Niclas Andersson: Compilation of Mathematical Models to Parallel Code, 1996.
No 567 Johan Jenvald: Simulation and Data Collection in Battle Training, 1996.
No 575 Niclas Ohlsson: Software Quality Engineering by Early Identification of Fault-Prone Modules, 1996.
No 576 Mikael Ericsson: Commenting Systems as Design Support—A Wizard-of-Oz Study, 1996.
No 587 Jörgen Lindström: Chefers användning av kommunikationsteknik, 1996.
No 589 Esa Falkenroth: Data Management in Control Applications - A Proposal Based on Active Database Systems,
1996.
No 591 Niclas Wahllöf: A Default Extension to Description Logics and its Applications, 1996.
No 595 Annika Larsson: Ekonomisk Styrning och Organisatorisk Passion - ett interaktivt perspektiv, 1997.
No 597 Ling Lin: A Value-based Indexing Technique for Time Sequences, 1997.
No 598 Rego Granlund: C3Fire - A Microworld Supporting Emergency Management Training, 1997.
No 599 Peter Ingels: A Robust Text Processing Technique Applied to Lexical Error Recovery, 1997.
No 607 Per-Arne Persson: Toward a Grounded Theory for Support of Command and Control in Military Coalitions,
1997.
No 609 Jonas S Karlsson: A Scalable Data Structure for a Parallel Data Server, 1997.
FiF-a 4 Carita Åbom: Videomötesteknik i olika affärssituationer - möjligheter och hinder, 1997.
FiF-a 6 Tommy Wedlund: Att skapa en företagsanpassad systemutvecklingsmodell - genom rekonstruktion, värde-
ring och vidareutveckling i T50-bolag inom ABB, 1997.
No 615 Silvia Coradeschi: A Decision-Mechanism for Reactive and Coordinated Agents, 1997.
No 623 Jan Ollinen: Det flexibla kontorets utveckling på Digital - Ett stöd för multiflex? 1997.
No 626 David Byers: Towards Estimating Software Testability Using Static Analysis, 1997.
No 627 Fredrik Eklund: Declarative Error Diagnosis of GAPLog Programs, 1997.
No 629 Gunilla Ivefors: Krigsspel coh Informationsteknik inför en oförutsägbar framtid, 1997.
No 631 Jens-Olof Lindh: Analysing Traffic Safety from a Case-Based Reasoning Perspective, 1997
No 639 Jukka Mäki-Turja:. Smalltalk - a suitable Real-Time Language, 1997.
No 640 Juha Takkinen: CAFE: Towards a Conceptual Model for Information Management in Electronic Mail, 1997.
No 643 Man Lin: Formal Analysis of Reactive Rule-based Programs, 1997.
No 653 Mats Gustafsson: Bringing Role-Based Access Control to Distributed Systems, 1997.
FiF-a 13 Boris Karlsson: Metodanalys för förståelse och utveckling av systemutvecklingsverksamhet. Analys och vär-
dering av systemutvecklingsmodeller och dess användning, 1997.
No 674 Marcus Bjäreland: Two Aspects of Automating Logics of Action and Change - Regression and Tractability,
1998.
No 676 Jan Håkegård: Hiera rchical Test Architecture and Board-Level Test Controller Synthesis, 1998.
No 668 Per-Ove Zetterlund: Normering av svensk redovisning - En studie av tillkomsten av Redovisningsrådets re-
kommendation om koncernredovisning (RR01:91), 1998.
No 675 Jimmy Tjäder: Projektledaren & planen - en studie av projektledning i tre installations- och systemutveck-
lingsprojekt, 1998.
FiF-a 14 Ulf Melin: Informationssystem vid ökad affärs- och processorientering - egenskaper, strategier och utveck-
ling, 1998.
No 695 Tim Heyer: COMPASS: Introduction of Formal Methods in Code Development and Inspection, 1998.
No 700 Patrik Hägglund: Programming Languages for Computer Algebra, 1998.
FiF-a 16 Marie-Therese Christiansson: Inter-organistorisk verksamhetsutveckling - metoder som stöd vid utveckling
av partnerskap och informationssystem, 1998.
No 712 Christina Wennestam: Information om immateriella resurser. Investeringar i forskning och utveckling samt
i personal inom skogsindustrin, 1998.
No 719 Joakim Gustafsson: Extending Temporal Action Logic for Ramification and Concurrency, 1998.
No 723 Henrik André-Jönsson: Indexing time-series data using text indexing methods, 1999.
No 725 Erik Larsson: High-Level Testability Analysis and Enhancement Techniques, 1998.
No 730 Carl-Johan Westin: Informationsförsörjning: en fråga om ansvar - aktiviteter och uppdrag i fem stora svens-
ka organisationers operativa informationsförsörjning, 1998.
No 731 Åse Jansson: Miljöhänsyn - en del i företags styrning, 1998.
No 733 Thomas Padron-McCarthy: Performance-Polymorphic Declarative Queries, 1998.
No 734 Anders Bäckström: Värdeskapande kreditgivning - Kreditriskhantering ur ett agentteoretiskt perspektiv,
1998.
FiF-a 21 Ulf Seigerroth: Integration av förändringsmetoder - en modell för välgrundad metodintegration, 1999.
FiF-a 22 Fredrik Öberg: Object-Oriented Frameworks - A New Strategy for Case Tool Development, 1998.
No 737 Jonas Mellin: Predictable Event Monitoring, 1998.
No 738 Joakim Eriksson: Specifying and Managing Rules in an Active Real-Time Database System, 1998.
FiF-a 25 Bengt E W Andersson: Samverkande informationssystem mellan aktörer i offentliga åtaganden - En teori om
aktörsarenor i samverkan om utbyte av information, 1998.
No 742 Pawel Pietrzak: Static Incorrectness Diagnosis of CLP (FD), 1999.
No 748 Tobias Ritzau: Real-Time Reference Counting in RT-Java, 1999.
No 751 Anders Ferntoft: Elektronisk affärskommunikation - kontaktkostnader och kontaktprocesser mellan kunder
och leverantörer på producentmarknader,1999.
No 752 Jo Skåmedal: Arbete på distans och arbetsformens påverkan på resor och resmönster, 1999.
No 753 Johan Alvehus: Mötets metaforer. En studie av berättelser om möten, 1999.
No 754 Magnus Lindahl: Bankens villkor i låneavtal vid kreditgivning till högt belånade företagsförvärv: En studie
ur ett agentteoretiskt perspektiv, 2000.
No 766 Martin V. Howard: Designing dynamic visualizations of temporal data, 1999.
No 769 Jesper Andersson: Towards Reactive Software Architectures, 1999.
No 775 Anders Henriksson: Unique kernel diagnosis, 1999.
FiF-a 30 Pär J. Ågerfalk: Pragmatization of Information Systems - A Theoretical and Methodological Outline, 1999.
No 787 Charlotte Björkegren: Learning for the next project - Bearers and barriers in knowledge transfer within an
organisation, 1999.
No 788 Håkan Nilsson: Informationsteknik som drivkraft i granskningsprocessen - En studie av fyra revisionsbyråer,
2000.
No 790 Erik Berglund: Use-Oriented Documentation in Software Development, 1999.
No 791 Klas Gäre: Verksamhetsförändringar i samband med IS-införande, 1999.
No 800 Anders Subotic: Software Quality Inspection, 1999.
No 807 Svein Bergum: Managerial communication in telework, 2000.
No 809 Flavius Gruian: Energy-Aware Design of Digital Systems, 2000.
FiF-a 32 Karin Hedström: Kunskapsanvändning och kunskapsutveckling hos verksamhetskonsulter - Erfarenheter
från ett FOU-samarbete, 2000.
No 808 Linda Askenäs: Affärssystemet - En studie om teknikens aktiva och passiva roll i en organisation, 2000.
No 820 Jean Paul Meynard: Control of industrial robots through high-level task programming, 2000.
No 823 Lars Hult: Publika Gränsytor - ett designexempel, 2000.
No 832 Paul Pop: Scheduling and Communication Synthesis for Distributed Real-Time Systems, 2000.
FiF-a 34 Göran Hultgren: Nätverksinriktad Förändringsanalys - perspektiv och metoder som stöd för förståelse och
utveckling av affärsrelationer och informationssystem, 2000.
No 842 Magnus Kald: The role of management control systems in strategic business units, 2000.
No 844 Mikael Cäker: Vad kostar kunden? Modeller för intern redovisning, 2000.
FiF-a 37 Ewa Braf: Organisationers kunskapsverksamheter - en kritisk studie av ”knowledge management”, 2000.
FiF-a 40 Henrik Lindberg: Webbaserade affärsprocesser - Möjligheter och begränsningar, 2000.
FiF-a 41 Benneth Christiansson: Att komponentbasera informationssystem - Vad säger teori och praktik?, 2000.
No. 854 Ola Pettersson: Deliberation in a Mobile Robot, 2000.
No 863 Dan Lawesson: Towards Behavioral Model Fault Isolation for Object Oriented Control Systems, 2000.
No 881 Johan Moe: Execution Tracing of Large Distributed Systems, 2001.
No 882 Yuxiao Zhao: XML-based Frameworks for Internet Commerce and an Implementation of B2B
e-procurement, 2001.
No 890 Annika Flycht-Eriksson: Domain Knowledge Management inInformation-providing Dialogue systems,
2001.
Fif-a 47 Per-Arne Segerkvist: Webbaserade imaginära organisationers samverkansformer, 2001.
No 894 Stefan Svarén: Styrning av investeringar i divisionaliserade företag - Ett koncernperspektiv, 2001.
No 906 Lin Han: Secure and Scalable E-Service Software Delivery, 2001.
No 917 Emma Hansson: Optionsprogram för anställda - en studie av svenska börsföretag, 2001.
No 916 Susanne Odar: IT som stöd för strategiska beslut, en studie av datorimplementerade modeller av verksamhet
som stöd för beslut om anskaffning av JAS 1982, 2002.
Fif-a-49 Stefan Holgersson: IT-system och filtrering av verksamhetskunskap - kvalitetsproblem vid analyser och be-
slutsfattande som bygger på uppgifter hämtade från polisens IT-system, 2001.
Fif-a-51 Per Oscarsson:Informationssäkerhet i verksamheter - begrepp och modeller som stöd för förståelse av infor-
mationssäkerhet och dess hantering, 2001.
No 919 Luis Alejandro Cortes: A Petri Net Based Modeling and Verification Technique for Real-Time Embedded
Systems, 2001.
No 915 Niklas Sandell: Redovisning i skuggan av en bankkris - Värdering av fastigheter. 2001.
No 931 Fredrik Elg: Ett dynamiskt perspektiv på individuella skillnader av heuristisk kompetens, intelligens, mentala
modeller, mål och konfidens i kontroll av mikrovärlden Moro, 2002.
No 933 Peter Aronsson: Automatic Parallelization of Simulation Code from Equation Based Simulation Languages,
2002.
No 938 Bourhane Kadmiry: Fuzzy Control of Unmanned Helicopter, 2002.
No 942 Patrik Haslum: Prediction as a Knowledge Representation Problem: A Case Study in Model Design, 2002.
No 956 Robert Sevenius: On the instruments of governance - A law & economics study of capital instruments in li-
mited liability companies, 2002.
FiF-a 58 Johan Petersson: Lokala elektroniska marknadsplatser - informationssystem för platsbundna affärer, 2002.
No 964 Peter Bunus: Debugging and Structural Analysis of Declarative Equation-Based Languages, 2002.
No 973 Gert Jervan: High-Level Test Generation and Built-In Self-Test Techniques for Digital Systems, 2002.
No 958 Fredrika Berglund: Management Control and Strategy - a Case Study of Pharmaceutical Drug Development,
2002.
Fif-a 61 Fredrik Karlsson: Meta-Method for Method Configuration - A Rational Unified Process Case, 2002.
No 985 Sorin Manolache: Schedulability Analysis of Real-Time Systems with Stochastic Task Execution Times,
2002.
No 982 Diana Szentiványi: Performance and Availability Trade-offs in Fault-Tolerant Middleware, 2002.
No 989 Iakov Nakhimovski: Modeling and Simulation of Contacting Flexible Bodies in Multibody Systems, 2002.

S-ar putea să vă placă și