Documente Academic
Documente Profesional
Documente Cultură
by
Iakov Nakhimovski
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.
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
1
3.5 Imposing Constraints for Rigid Body Motion . . . . . . . . . . . . 45
3.6 Reducing the Number of Flexible States . . . . . . . . . . . . . . . 46
3.7 Volume Integration . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6 Verification 60
6.1 Long Beams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.2 A Thin Ring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
9 Conclusions 82
10 Future Work 84
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.
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’.
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
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
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
viscose stress tensor.
(M
elastic stress tensor.
Lame’s constants.
Poisson’s ratio.
infinitesimal rotation angles.
7
Chapter 1
Introduction
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.
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
Out2In
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.
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.
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.
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.
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)
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
l m f l W Q ! g m 7 ! ) (2-5)
f g
f ff f ff ff g f
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
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.
t N ÁÅ ÇÊc t
É (2-11)
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
-
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) ª
gm (b)
g (b)
g ¤ (b) (b)
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
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´²
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.
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
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
g g m g Ü
(g)
e (2-47)
f
where e is the global position of point © of the deformable body. Let the position
.
(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
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
g g Ü
(g) (b)
P/b (2-52)
f
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:
«M¬
where the fact that 6
¬µ}« was used to simplify the equations.
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)
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.
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
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 ] .
¬
]
-
- - - - ¬ - ª Ü 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.
+k +j
f,y f,z
+j +i
f,x f,y
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
ª (2-70)
ª ª ª 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)
Note that the equations above do not specify the coordinate system where the
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
+ ² 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 ! + + * ; ] %
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
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.
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
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)
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)
± 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.
ß n + + wx| á
Equation 2-30:
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.
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.
48
v
kÌ k k k
Figure 3-2: A profile curve used to define a rotation symmetry body.
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
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
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.
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:
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.
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
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 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.
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)
j - d ff f
gf ff f ff ff f g
(5-1)
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)
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
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).
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:
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)
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.
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
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].
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.
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
2 1..n
Contact
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.
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.
66
Model
1..n 1..n
2
Body Connection
1..n 1..n
2
Segment Contact
1..n 1..n
2
CtlPoint PointTie
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.
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:
68
Body FlexBody IntFlexBody
CylShpFunc CartShpFunc
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.
69
bER
bIR
bER‘s3
bER‘ctl
cB‘ctl
bIR‘s1
cBbER‘SD
contact bIRbER‘s1s3
70
cB.ctl:
CtlPoint
TwoRings:
Model
cBbER: cBbER.SD:
Connection SDPointTie
bIRbER‘s1s3:
Contact
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 UT
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
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.
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.
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.
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.
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.
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
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"
tklC
Lz:zL\z}kPz}wmnPz;wmnk:zLmnkPzZxzs;zCzLwz
jtnnlxtqqmxlqjmnrlmqrl
mq
¡wq;o£¢Kuz¤
¥jtLo¦¢Ku `§
wq;o£¢Ku jt;o£¢Ku ° ³
w;oJny}z¥¢¨y}zª©«y@uE"
¬®¯¯¯ jt;o£¢Ku ±/wq;o¦¢Ku ° ¶ wx·oJnz¸¢Pz¹©,u1v
¯¯ ° ° ² ´ µµµ
µµ
º»¼½ p ¾¿@oJw;ÊoJ˨nÑ z¸ ÍÒÏ P
¢ ª
z `
©
u 1
u v
s9
}À(ÁÂ À`ÅÇÆUÈÉÀ|ÊÌËÁÎÍÐÏ Ã Ä Ã Ã nOÓPnRÓ¢}Ó©v
Ã Ä Ã Ã Ã
à Äà à à à Äà Ã
º»¼½ p¾¿@oÔÕstkl¤Ôzsuv
Ö
{OsCv
º»¼½ p¾Â ¿@oÔÕmÊËÑ Ö ÍÒÏ Ôzu1v
²×
}À(ÁÃ Ä ÃÂ Ã À`Å ÆUÈ ÀØÊÌËÁÎÍÐÃ Ï Ã Ä Ã Ã { nÙwq;o£¢KuzLnÙjt;o£¢?u1z)©'nÙÓ:nOÓ¢bÓ©'v
à Äà à à à Äà Ã
º»¼½ p¾¿@oÔ²@ÚÔzL²Ûu1v
kÜÂ
ÊÌËÑ ÍÒÏ
ÀÁÎÂ À`ÅÇÆUÈÉÀØÊÌËÁÎÍÐÃ Ï Ã Ä Ã Ã {·ÝrlnCoJ¿l:z nÙwq;o£¢KuÞz}nÙjt;o£¢KuÞzß©'z
Ã Ä Ã Ã
à Äà à à à Äà Ã
nRwqCo£¢?u1zLnOjtLo¦¢Ku1z)©,Uu_nOÓ:nÙÓ¢}Ó©v
º»¼½ p¾¿@oÔk@ÚÔz;kuv
à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ý
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|OG XV¡ 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 - ëýùúöò+
ññ "!#§ëýùúöò+ö ö %' ( û
uî
) û
((
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/EFGH.IJKI>LK?M+CD/EFGH+IL KIJKON
CD/EFGH.ILKI>PK?M+CD/EFGH+IP KILKON
CD/EFGH.IPKI>JK?M+CD/EFGH+IJ KIPK
QR
ST/UVW/XY/Z\[^]CD/EF_`bac]/N7CD/EF_`ed R
f^g Zh/_jiklm/kn_nopqk`roh/_
l/Eppsl/EoFtuvh/Ew/_sD/__njiklmx/o_yzEoroh/tp
m/ktno|{~}EHix/HEotnx/EyFEotiw/_Hkito|{ g
tHy_97G_/EoFtu[ d R
o
oJ otHy_{ otHy_ R
w/F oJ|{oJ otHy_|{D/EF|{<w/u` R
ST/UVW/XY/Z\[^] w/Fba]/N w/Fed R
w9M f CD/EF__b{ M+CD/EF__yko|{ M 7 f CD/EF_`b{=w/u` &R
ST/UVW/XY/Z\[^] wa]/N wd R
w/`
M oJI>tKIK f CD/EFGHItKIK?D/EFGH+ItKIK{u` M
, 1-
J otHy_ItKI¡K¢D/EFGH.ItKI¡K|{<w/u` R
,- 1
ST/UVW/XY/Z\[^] w/`ba]/N w/`ed R
W/_ox/Fn\[£B¤mm/_ny}kHxl/npb[
¤mm/_nyW/k/p\[=lWW7N7ZFEnpm/kp_[¥otHy_o2d&N7D/EF2d&N
¤mm/_nyW/k/p\[¥otHy_oONCD/EF__8NCD/EF_`2d&N¤mm/_nyW/k/p[
ZFEnpm/kp_b[¥D/EFed&N7ZFEnpm/kp_\[¥CD/EF_`2d&N|l/¦¦Od§d&N
¦HEoo_n\[£ w/F.N wON 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Ç©Êîù¾Òǹ&º
¶úÌ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
9M/NPOQSROUTVTW GIHYX $&[Z'\' HLK
;]O/NPM^_ GIHJ` 6'$aZ_'b
%6 HLK
. dceOO4 GIH ''f$'6%g HLK
3%
hO/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
rtrsrt r r
*,
((\l O O 'Mw *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
=>| vR/N H RO_P (+R/N H RO¡P (¢vM/N H ROLP (+OxEF
`
6$%/C=i'% %ad(k=>)F
?=>| vR/N H RO_¤£¥(+R/N H RO_¤£¥(¢vM/N H RO_¤£¥(+OxEU
`
6$%/C=¦?'6%gu'% %adm(§?=>
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ªµÈÐ
ù
ûû
ûû
ûû
ú
ù
ûû
ûû
ûû
ú
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
§ 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
[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.
[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.
[9] A.E. Green and W. Zerna. Theoretical elasticity. Oxford University Press,
Amen House, London, 1954.
101
[13] Patrik Nordling. The Simulation of Rolling Bearing Dynamics on Parallel Com-
puters. Licentiate thesis, Linkoping University, Sweden, 1996.
[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.
[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.
[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.
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.
[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
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.