Anda di halaman 1dari 106

Part III

Technical Manual

393

Chapter 1

Introduction
This manual presents the trajectory and collision models on which PC-Crash is based. As outlined in the user
manual, the reconstruction can be performed over a 2D or 3D drawing or digitized and rectified photograph in
an interactive graphical environment. For an effective presentation of the results, 3D animations can be created
directly from the calculated results.
Different vehicles, from a simple passenger car to multi-axle trucks and trailers, are considered. All algorithms
have been specially developed to simulate the vehicle movements during an incident.
A kinetic driving model allows the consideration of dynamic influences such as suspension characteristics, tire
characteristics and weight transfer. Additionally, different road conditions and different driver inputs can be taken
into account.
The automotive industry uses several simulation models to learn about the driving behavior of their vehicles. These
industrial vehicle dynamics simulation programs [104, 105, 106] are optimized to predict the driving behavior under
well-defined initial and boundary conditions. As a result these models require many input parameters. For the
reconstruction of a vehicle incident detailed knowledge regarding the suspension, tires and road conditions is
normally not available. In addition, the steering and the degree of braking is often not known. It is thus difficult
to use these simulation models for the reconstruction of vehicle incidents. PC-Crash is designed to assist the
expert in reconstructing the incident based on the available physical data.
Several computer programs have been developed specially for the reconstruction of vehicle accidents. They allow
the calculation of vehicle motion and collisions based on various physical models [107, 108, 109, 110, 111, 112,
113].
Collisions often result in suspension deformation and tire damage. PC-Crash takes these effects into account,
while keeping the number of input parameters as low as possible [114]. All required vehicle geometry inputs are
generally commonly available parameters. Comparisons have been made between PC-Crash results and staged
collisions [115, 116, 117].
The integrated trailer model is also based on a kinetic driving simulator. It was integrated by extending the kinetic
single vehicle driving model to include the influence of the trailer coupling forces. A method was chosen where
the coupling forces between vehicle and trailer are calculated at each time step. These forces are prescribed as
external forces to the equations of motion for tow vehicle and trailer. The equations for tow vehicle and trailer
are solved independently.
The chapters of this manual outline the analytical models on which PC-Crash is based. The models govern the
pre-impact, impact, and post-impact dynamics of the vehicles and trailers. PC-Crash allows simulations to be
performed in the forward (positive time step) or backward (negative time step) direction.
In Chapter 2 of this manual the trajectory model is derived. The external forces that influence the movement of
the vehicle are discussed and the numeric algorithms are shown.
In Chapter 3 the trailer model is derived. The different conditions for the different trailer types are discussed.
In Chapter 4 the impulse-restitution impact model is derived. The models for full and sliding impacts are discussed.
In Chapter 5 the multibody model is derived.
In Chapter 6 additional models, including the two forced-based impact models, are discussed.
In Chapter 9 several simulation examples are shown.

395

396

CHAPTER 1. INTRODUCTION

Chapter 2

The Trajectory Model


2.1
2.1.1

General
Forward Simulation

The forward simulation covers all vehicle motions with a positive time step. All vehicles can be moved either
with a positive (forward) or a negative (backward) time step. PC-Crash contains two models for the simulation
of vehicle movement - the kinematics model and the (default) kinetics model.
2.1.1.1

Kinematics Model

When the kinematics model is selected, dynamic vehicle forces are not taken into account. The kinematics model
assumes a mean acceleration which is calculated based on the following:
q
Fx i
a = gq
(2.1)
Fz i
where
g = acceleration of gravity
Fzi = normal load at each wheel
Fxi = brake (or acceleration) force at each wheel, with Fxi i Fzi i = friction coefficient at each wheel).
As long as the kinematics model is activated, all simulations are calculated based on these mean accelerations.
The vehicle velocity is calculated based on the following:
v = vo + a t

(2.2)

where
t = pre-defined time step
vo = velocity for the last time step
v = new calculated velocity
a = calculated mean acceleration
If the vehicle is driving along a curve using the kinematics model (either with a defined path or a steering sequence),
the radius of curvature will be calculated from the geometrical conditions, and the resultant of the lateral and
longitudinal tire forces may be higher than physically possible. The influence of the lateral slip angle is not taken
into account. The specified friction only influences the longitudinal tire forces in the kinematics model.
2.1.1.2

Kinetics Model

The kinetics (default) model takes all dynamic vehicle forces into account. With the kinetics model selected, the
simulation will be calculated based on the following rules:
The lateral and longitudinal tire forces are calculated from lateral slip angle and brake or acceleration forces.
The acceleration of the center of gravity and the rotational accelerations are calculated based on the external
forces. They are defined in the local (vehicle-related) coordinate system.
397

398

CHAPTER 2. THE TRAJECTORY MODEL


The accelerations are then transformed from the local coordinate system into the global system.

The equations of motion are numerically integrated over a pre-defined time step (default = 5ms).
The velocity change and the new coordinates of the center of gravity are calculated.

The new tire loads for all wheels are calculated, based on the parameters for the suspension.
These rules are explained as follows:
Tire Forces:

The tire forces are split into the following three components:
The normal tire load Fz is initially calculated from the static tire load due to the weight of the vehicle.
If a non-zero height is defined for the center of gravity, and/or if the vehicle is on a 3D surface, the
tire normal load can change due to dynamic effects.
The tire longitudinal force Fx depends on Fz , the specified brake force Fb , the slip angle S and the
coefficient of friction .
The tire lateral force Fy also depends on Fz , Fb , S and .
The kinetics model ensures that the lateral and longitudinal tire forces do not exceed the available local
friction:

Vehicle Accelerations

Fy2 + Fx2 Fz

(2.3)

The three components in the vehicle-related coordinate system are x, y, and z. The three axes meet at
the center of gravity of the vehicle.
PC-Crash solves for all components of momentum (Ix, Iy, Iz ) and moment of momentum (Jx Jy, Jz). All
components of the moments of momentum are related to the main axes of the vehicle. They are:
Jx = Component of moment of momentum about the vehicles longitudinal axis
Jy = Component of moment of momentum about the vehicles lateral axis
Jz = Component of moment of momentum about the vehicles vertical axis

Transformation from Local to Global Coordinate System

Before the equations of motion are integrated, they are transformed from the local vehicle-related coordinate
system to the global system.

Numerical Integration of the Equations of Motion

The differential equations are solved based on an explicit algorithm. PC-Crash uses a default 5ms (0.005
second) integration time step, with lower times selectable, mainly for the multibody model.

Calculation of New Center of Gravity Coordinates

As a result of the integration, the new velocities and the new coordinates of the vehicle are calculated.

Calculation of New Tire Loads

From the new rotation angle of the vehicle and the position of the center of gravity, PC-Crash calculates
the suspension travel distance and speed. From these values, and the suspension stiffness and damping
coefficients, the new tire loads are calculated.

2.1.2

Backward Simulation

2.1.2.1

Kinematics Model

The kinematics backward simulation is identical to the forward simulation, except that all calculations are based
on a negative time step.

2.2. THE COORDINATE SYSTEMS


2.1.2.2

399

Kinetics Model

To perform a backward simulation based on a kinetic simulation model, certain additional facts must be assumed.
Due to the non-linearity of the numerical equations, several solutions can exist that fulfill the same boundary and
initial conditions. It is necessary to find one that is physically plausible.
PC-Crash will give a good result for a backward Kinetic simulation in only two cases:
Sliding Vehicle

The model works only if all of the vehicles wheels are fully locked. If the wheels are not locked, the model
would be very sensitive, as slight changes of the lateral slip angle can make large changes in the direction
of the tire forces for partially braked wheels.

Driving Vehicle

This model works only if none of the vehicles wheels are sliding. The model is based on a predictor-corrector
algorithm.
Starting from the actual time step the values of the previous step are assumed. From this assumed position
a forward simulation is performed (predictor step).
In a second step the result of the forward simulation is compared to the correct position. Based on the
differences the assumption is corrected (corrector step).
This action is repeated until the difference between calculated and correct position is minimized.
PC-Crash does not guarantee that under all circumstances the correct backward simulation will be performed.
The user always has to check whether the result is reasonable or not.

2.2

The Coordinate Systems

The vehicle is defined as a rigid body that moves under the influence of external forces. To simplify the geometrical
definitions, three types of coordinate systems are used. There is a fixed global coordinate system xi , a second
coordinate system xi which is connected to the vehicle, and a third system xi for each of the vehicles wheels.
The origin and directions of each coordinate system are described as follows (see also Figure 2.1):
1. On initial start-up of PC-Crash, the origin of the global system xi is at the center of the computer screen,
in the ground plane. The coordinate directions are:
x-axis - positive towards the right of the computer screen
y-axis - positive towards the top of the screen
z-axis - positive upwards, in line with gravity.

2. The vehicles center of gravity defines the origin of the vehicle coordinate system xi . The coordinate
directions are:
x-axis - positive towards the front of the vehicle, in line with the pitched longitudinal vehicle axis

y-axis - positive towards the left of the vehicle, and is normal to the vehicles longitudinal plane of
symmetry
z-axis - positive in an upwards direction, and results from the orthogonality of the right-handed
coordinate system.
3. The point of contact between the tire and road surface defines the origin of the coordinate system xi for
each tire. The road surface can either be defined by the global x-y plane or by individual plane polygons
defined by the user. These polygons are identified by a point, a direction vector and a closed polygon
defining its outline. The coordinate directions are:
x"-axis - in the road surface, in line with the longitudinal axis of the tire, positive towards its front
y"-axis - also in the road surface, positive towards the left of the tire
z"-axis - normal to the road surface, positive upward.

The vector xm defines the position of the center of gravity for the vehicle in the global system. The rotation
of the vehicle is defined by the rotation matrix T, which is a combination of three rotations. The order of the
rotation is specified as follows:

400

CHAPTER 2. THE TRAJECTORY MODEL

Figure 2.1: The coordinate systems (vehicle-fixed coordinate system and inertial system)
1. The first rotation (3 ) is about the global z-axis
2. The second rotation (2 ) is about the rotated y-axis
3. The third rotation (1 ) is about the twice-rotated x-axis.

Figure 2.2: Vehicle model and rotations


The following rotation matrices define the transformation from the global system to the vehicle system:
1. Rotation: (z-axis) [3 ]

2. Rotation: (rotated y-axis) [2 ]

R
cos(3 ) sin(3 ) 0
T3 = asin(3 ) cos(3 ) 0b
0
0
1

(2.4)

(2.5)

R
cos(2 ) 0 sin(2 )
b
1
0
T2 = a 0
sin(2 ) 0 cos(2 )

2.3. EXTERNAL VEHICLE FORCES

401

3. Rotation: (x-Axis) [1 ]
Q
1
T1 = a0
0

R
0
0
cos(1 ) sin(1 )b
sin(1 ) cos(1 )

(2.6)

Rotation around all three axes, from the global system to the vehicle system is:
Q

c2 c3
T = as1 s2 c3 c1 s3
c1 s2 c3 + s1 s3

c2 s3
s1 s2 s3 + c1 c3
c1 s2 s3 s1 c3

R
s2
s1 c2 b
c1 c2

(2.7)

The inverse transformation (from the vehicle system to the global system) is:

T 1

c2 c3
= ac2 s3
s2

s1 s2 c3 c1 s3
s1 s2 s3 + c1 c3
s1 c2

R
c1 s2 c3 + s1 s3
c1 s2 s3 s1 c3 b
c1 c2

(2.8)

with the abbreviations:


s1 = sin(1 ), s2 = sin(2 ), s3 = sin(3 )
and
c1 = cos(1 ), c2 = cos(2 ), c3 = cos(3 )

2.3

External Vehicle Forces

In addition to vehicle collision forces, the following external forces are important for the movement of a vehicle:
1. Tire forces (normal, lateral, and longitudinal forces);
2. Air resistance;
3. Gravity;
4. Trailer hitch forces;
5. Multibody contact forces.

2.3.1

Tire Forces

The forces on each tire of a vehicle are split into three components, aligned with that tires x , y and z axes
as follows:
The tire normal force (z ) -direction) describes the component normal to the road surface at the idealized
tire contact point.
The direction of the tire lateral force (y ) - direction) results from a normal projection of the axis of rotation
of the individual wheel onto the road surface.
The direction of the tire longitudinal force (x ) -direction) results from the orthogonality of the three
components, using a right hand coordinate system.
Therefore, for each tire, and additional coordinate system is defined, which corresponds to the exact direction
of the circumferential force (x -direction), the lateral force (y -direction) and the vertical force (z -direction).

402

CHAPTER 2. THE TRAJECTORY MODEL

Figure 2.3: Coordinate system on the wheel

2.3.1.1

Tire Characteristics

In literature the tire longitudinal force is in most cases defined as a function of tire normal force, tire longitudinal
slip, and lateral slip angle. The longitudinal slip can be calculated from the absolute velocity component of the
wheel center in the longitudinal tire direction compared to the rotational speed of the wheel. Individual definitions
are given for acceleration and braking:
braking slip:

srx =

(vrx rr r )
vrx

(2.9)

srx =

(vrx rr r )
rr r

(2.10)

acceleration slip:

where
vrx
rr
r

the component of the absolute velocity of the wheel center in the wheels longitudinal direction (x ),
describes the wheel radius and
describes the angular velocity of the wheel.

The lateral tire force is mainly defined as a function of the lateral slip angle, which defines the angle between
the velocity vector for the wheel center and the direction of the tire longitudinal force.
tan(r ) =

vry
vrx

(2.11)

Most tire models define the relation between lateral and longitudinal tire forces for different parameters.
Measurements indicate that modern tires always show a very similar characteristic. Figure 2.4 shows the
measured relation between longitudinal slip (SL), lateral slip angle (AL), and the tire forces. Figure 2.4 on the
right shows the numeric calculation linear tire force model.
For the reconstruction of vehicle accidents the steering, braking or acceleration behavior of the vehicle driver
can usually only be estimated. It is important, however, that the limiting parameters for a sliding vehicle are
predicted correctly.
In addition, it should be possible to see the effects of parameter changes as well as the influence of individual
tire conditions. For this reason the default tire model in PC-Crash is a rather simple, linear quasi-stationary tire
model. The rotational moment of inertia of the tire is neglected. The tire circumference tension is not calculated
from the circumferential slip, but instead by defined braking or acceleration forces.

2.3. EXTERNAL VEHICLE FORCES

403

Figure 2.4: Characteristic diagram for a tire (measured left, numerical model right)
The tire model defines the relation between the lateral force and the lateral slip angle for a given tire longitudinal
force. PC-Crash ensures that the limits of the forces imposed by the available friction are not exceeded.

y
vr

Figure 2.5: The tire slip angle


2.3.1.2

The Linear Tire Force Model

PC-Crashs linear tire model assumes that the maximum horizontal tire force is independent of the moving direction
of the tire. The maximum possible horizontal tire force can be seen as a circle with the radius Fz (the "friction
circle"). Additionally, it has been assumed that there is no significant difference between the friction coefficient
of a rolling and a sliding tire.
The tire lateral forces initially depend on the lateral slip angle and the tires slip saturation angle. PC-Crash
assumes a linear increase of the lateral tire forces in the region where the lateral slip angle (S) is less than the
tires slip saturation angle (Smax ).
Fy = Fz

S
, f or S Smax
Smax

(2.12)

In PC-Crash, the tires slip saturation angle is defined based on a coefficient of friction of unity ( = 1.0). It
can be defined for each wheel individually. This value defines the lateral slip angle at which the maximum lateral
tire force is reached for an unbraked wheel. If this angle is exceeded the lateral tire force will be constant.
Because a tires properties are the same on a low-friction surface as on a high-friction surface, S will never
reach Smax on surfaces with a coefficient of friction < 1.0. PC-Crash linearly scales the slip saturation angle

404

CHAPTER 2. THE TRAJECTORY MODEL

with respect to the coefficient of friction. For example a specified 10 value with a specified = 0.6 will result
in an actual maximum S of 6 .
Therefore, for a local coefficient of friction of less than unity, the build up of the tire lateral forces can be
expressed as:
Fy = Fz

S
, f or S Smax
Smax

(2.13)

Tire lateral and longitudinal forces are always limited by the tire load and the local friction:

2 + F 2 F
Fy
z
x

(2.14)

In the case of a sliding unbraked wheel the lateral and longitudinal components are:
Fx = 0

(2.15)

Fy = Fz

(2.16)

Thus, for an unbraked wheel there are two regions: the region where lateral forces are increasing S < Smax );
and the region where the wheel is sliding sideways S > Smax ).
The Braked Wheel:

When a brake force (Fb ) is applied to a wheel, a tire longitudinal force component in direction x" is created.
Fx = Fb

(2.17)

The brake force is oriented in the negative x" direction. Once again the tire longitudinal and lateral forces
must not exceed the local available contact friction.

2 + F 2 F
Fy
z
x

2 + F 2 = F
Fy
z
x

(2.18)

In the case of the sliding wheel, the combination of the tires longitudinal and lateral forces matches the
available contact friction.

(2.19)

The sliding wheel can be locked or rolling depending on the tires brake force and slip angle. If a braked
wheel is sliding sideways but not locked, then Fb < Fz cos(S), and the longitudinal and lateral tire forces
are calculated based on the following formulas:

Fy =

Fx = Fb

(2.20)

2
2
(Fz ) Fx

(2.21)

If a braked wheel is sliding sideways and locked, such that Fb is larger than Fz cos(S), then the longitudinal
and lateral tire forces are calculated based on the following formulas:

2.3. EXTERNAL VEHICLE FORCES

405

Fx = Fz cos(S)

(2.22)

Fy = Fz sin(S)

(2.23)

For a braked wheel, the area where the tire lateral forces are linearly increasing depends on the lateral slip
angle, the tire saturation angle, and the longitudinal braking force as follows:

Fy

S
= Fz
, f or S Smax
Smax

2 F2
Fz
b
uFz

(2.24)

The Accelerated Wheel

When an acceleration force is applied to a wheel, a tire longitudinal force component in direction x" is
created.

Fx = Fa

(2.25)

The procedure for the accelerated wheel is the same as for the braked wheel, except that the direction of
the applied longitudinal force is reversed.
Anti Lock Brakes (ABS)

The wheel forces for vehicles where locking of the wheels is prevented by ABS are calculated as follows with
the linear tire model:
First the lateral tire force is calculated from the actual lateral slip angle:

Fy =

S
Fz
Smax

(2.26)

Then, the longitudinal tire force is reduced to the following value:

2
2
Fx = (Fz ) Fy

(2.27)

To take into account the fact that ABS never releases the brake completely PC-Crash assumes that the
minimum value of the brake force is defined by:

Fxmin = 0.6Fz

(2.28)

In this case the lateral tire force is determined by:

2
2
Fy = sign(S) (Fz ) Fxmin

(2.29)

406
2.3.1.3

CHAPTER 2. THE TRAJECTORY MODEL


The TM-Easy Tire Model

The TM-Easy tire model [106, 118] allows non-linear tire effects to be modeled, including differences between
lateral and longitudinal parameters. The values for lateral and longitudinal tire forces are based on the tire force
model curve - figure 2.6.

Figure 2.6: TM-Easy tire model


The y-axis of the tire force model curve is the normalized lateral or longitudinal tire force. The x-axis of the
lateral tire force graph is tan (), where is the lateral slip angle (i.e. 0.2 corresponds to 11.3 slip angle). The
x-axis of the longitudinal tire force graph is longitudinal tire slip (i.e. 0.2 = 20% slip). The tire force model curve
can be modified in shape and size to match the properties of any type of tire.
The following description of the model is taken from Rill (2005)[119]:
The longitudinal force as a function of the longitudinal slip Fx = Fx (sx ) and the lateral force depending on the
lateral slip Fy = Fy (sy ) can be defined by their characteristic parameters initial inclination dF0 x , dF0 y , location
sM x , sM y and magnitude of the maximum FM x , FM y as well as sliding limit sG x , sG y and sliding force FG x ,
FG y .
During general driving situations, e.g. acceleration or deceleration in curves, longitudinal sx and lateral slip sy
appear simultaneously. The combination of the more or less differing longitudinal and lateral tire forces requires
a normalization process. One way to perform the normalization is described in the following.

Figure 2.7: Generalized Tire Characteristics (Rill) [119]


The longitudinal slip sx and the lateral slip sy can vectorally be added to a generalized slip:
s=

sx
sx

42

sy
sy

42

(2.30)

where the slips sx and sy were normalized in order to perform their similar weighting in s. For normalizing, the
normation factors
sx and sy are calculated from the location of the maxima sM x , sM y the maximum values FM x ,
M
F y and the initial inclinations dF0 x , dF0 x .
Similar to the graphs of the longitudinal and lateral forces the graph of the generalized tire force is defined by
the characteristic parameters dF0 , sM , FM , sG and FG . The parameters are calculated from the corresponding
values of the longitudinal and lateral force:

2.3. EXTERNAL VEHICLE FORCES

407

!
"2
2
dF 0 = (dFx0 sx cos ) + dFy0 sy sin
1
2
1
2
sM =

sM
x
sx

cos

sM
y
sy

sin

!
"2
2
F M = (FxM cos ) + FyM sin
1
2
1
2
sG =
F

sG
x
sx

cos

sG
y
sy

sin

(2.31)

!
"2
2
(FxG cos ) + FyG sin

where the slip normalization have also to be considered at the initial inclination. The angular functions
sx /
sx
sy /
sy
sin =
(2.32)
s
s
grant a smooth transition from the characteristic curve of longitudinal to the curve of lateral forces in the range
of = 0 to = 90 .
The function F = F(s) is now described in intervals by a broken rational function, a cubic polynomial and a
constant FG .
When defining the curve parameters, one just has to make sure that the condition dF0 = 2 FM sM is fulfilled,
because otherwise the function has a turning point in the interval 0 < s = sM .
Longitudinal and lateral force now follow from the according projections in longitudinal and lateral direction
cos =

Fx = F cos

Fy = F sin

(2.33)

Hence, within TM-Easy the one-dimensional characteristics are automatically converted to a two-dimensional
combined characteristic.
Anti Lock Brakes (ABS)

Vehicles with ABS and the TM-Easy tire model have tire forces calculated differently than the linear tire
model. With the TM-Easy tire model, the longitudinal slip is examined each time step. When one wheels
slip S surpasses the longitudinal slip Smax (default = 20% slip) at which Fmax occurs, ABS reduces the
specified braking force Fx to that wheel.
When
S > Smax

(2.34)

Fx = 0.6 Fb

(2.35)

Fx = 0.6 Fb

(2.36)

the braking force is reduced to the lesser of

or

until the slip decreases to less than Smax , when the ABS will again allow full braking of the wheel.
Calculation of the Suspension Travel

The suspension travel at each wheel can be calculated from the position of the center of gravity, the vehicles
rotation about the three rotation axes, and the resulting intersection point between the z" axis and the
road plane. To allow the simulation of vehicle movement on complicated three dimensional road surfaces,
PC-Crash allows the specification of multiple plane areas to define the road surface.
For all real vehicles the displacement of the tire contact point in the x-y plane depends on the suspension
geometry. For simplicity, PC-Crash assumes that the suspension stroke does not cause any displacement of
the tire contact point in the x-y plane.
A zero spring displacement is defined for the loaded vehicle in its static position of equilibrium. The stroke
of the suspension at each wheel dj results from:

408

CHAPTER 2. THE TRAJECTORY MODEL


1. The vertical displacement

z of the vehicles center of gravity in the global system.

2. The rotation of the vehicle 1 and 2 about the x and y axes, and
3. The location of the tire contact point in the local road plane area.
As a first step the intersecting point between the z axis and the road plane areas is calculated. If the planes
are defined using their normal vectors and plane constants, the following holds true for every point P on
the plane:
(2.37)

ni P = ci
where
ni
P
ci

is the normal vector of the plane i


is the point on plane i, and
is the constant coefficient for plane i.

The tire contact point coordinates (xj ) are defined by:


Q

where
xm
xj

R
0
xj =xm +T xj + dj T a 0 b
1

(2.38)

the position of center of gravity


the coordinates of j th tires contact point in its static position of equilibrium in the vehicles
coordinate system

In this equation dj defines the suspension travel, which can be calculated by substituting P in eq. 6.6 with
xj . The coordinates of the tire contact point can be calculated by substituting dj in eq. 2.31.
As a next step the program checks if the intersection point lies within the local polygonal road plane. This
process is repeated for all local road planes until the first match is found. If no valid polygonal road plane
is found, the intersection with the x-y plane is calculated.
The suspension travel rate of the wheels is calculated from the first derivative of the suspension travel over
time. The suspension travel rate depends on the damping force of the shock absorber for each wheel.
Spring Suspension and Damping Forces

In PC-Crash the wheels and suspension are assumed to be free of mass. The tire forces in direction z
can therefore be calculated directly from the suspension travel distance and speed. A linear spring rate is
assumed:
Fiz (Spring) = ki di + Fiz 0

(2.39)

Where ki specifies the spring stiffness, which can be set individually for each wheel. di is the suspension
travel relative to the static condition where positive values of di represent extension and negative values
represent compression and Fiz 0 is the static tire normal force.
The damping force can be calculated from the suspension travel rate according to the following equation:
Fiz (damping) = ci di

(2.40)

Where ci defines the damping constant, which can be defined individually for each wheel. It is therefore
possible, for example, to take into account the influence of a damaged shock absorber, and di defines the
suspension travel rate of the individual wheel. Positive values of di represent an extending shock absorber
and negative values represent one that is compressing.

2.3. EXTERNAL VEHICLE FORCES

409

The total tire force (for each wheel) in direction z is given by:
Fiz (total) = Fiz 0 ki di ci di

(2.41)

Suspension Limits

In real vehicles the movement of the suspension is limited. This was taken into account by increasing
the spring constant when the spring is compressed below a certain value (dimin ). When the suspension
compresses beyond dimin , a jump in spring stiffness is assumed and the spring force is calculated by the
following equation:
Fiz (Spring) = Fiz 0 ki di min ki2 (di di min )

(2.42)

The value for dimin and the second ki2 , rigid spring constant ki2 are defined according to the following
relations:
di min = 10cm

(2.43)

ki 2 = 2ki

(2.44)

On the other hand the lifting of a wheel off the road must be considered. The condition:
Fiz (total) 0

(2.45)

must always be fulfilled. When the suspension extends to the point where Fiz ) = 0, the wheels will not
extend downwards any further.
To ensure numerical stability the suspension force was limited to:
Fiz (spring) 6 Fiz 0

(2.46)

Fiz (total) 24 Fiz 0

(2.47)

and

Transformation of Suspension Force into Tire Force

Figure 2.8: Tire contact forces

410

CHAPTER 2. THE TRAJECTORY MODEL


First the directions ex , ey and ez of the wheel in the global coordinate system are determined:
ez = ni

(2.48)

ex = T (Ti ey ) ez

(2.49)

ey = ez ex

(2.50)

where
nj
ey , ez
Ti

is the normal vector to the road plane at the wheel contact point
are directions in the vehicle coordinate system
is the transformation matrix due to the steering angle i of steered wheels. It is calculated
from

Ti

R
cos(i ) sin(i ) 0
= a sin(i ) cos(i ) 0 b
0
0
1

(2.51)

The tire normal forces Fiz can be calculated from the balance of forces in the direction of the suspension
travel:
Fiz = Fix ex ez + Fiy ey ez + Fiz ez ez

(2.52)

This results in

Fiz =

Fiz Fix ex ez Fiy ey ez


ez ez

(2.53)

In this equation the values for Fix and Fiy are taken from the last time step.
The new values for Fix and Fiy are then calculated according to the tire model described in the Tire Force
Model section.
Transformation of the Forces into the Global System

In PC-Crash the equations of motion of the vehicle are integrated in the fixed global system. This requires
that all forces must be transformed into the global system.
This is done using the transformation matrix between the vehicle-related coordinate system and the global
system:
The components of the tire forces are calculated as:
Fix = Fix ex ex + Fiy ey ex + Fiz ez ex

(2.54)

Fiy = Fix ex ey + Fiy ey ey + Fiz ez ey

(2.55)

Fiz = Fix ex ez + Fiy ey ez + Fiz ez ez

(2.56)

2.3. EXTERNAL VEHICLE FORCES

2.3.2

411

Air Resistance

PC-Crash now allows external air forces due to wind and vehicle speed to be taken into account, using the menu
option <Vehicle><Wind Resistance>. This model, off by default, takes horizontal and vertical air forces into
account.
The following parameters must be defined:
Cd A is the product of coefficient of drag and the projection area for front, side and rear projection of the car
is the air density. A value of 1.2kg/m3 is used.
The wind forces are then calculated according to:

Fw = cd A v 2
2

(2.57)

where v is the relative velocity between vehicle and air.


The longitudinal and lateral forces are calculated separately using the longitudinal and lateral drag values with
the corresponding components of the relative wind velocity.
The direction, strength and periodicity of the wind can be specified by the following parameters:
W =Angle of wind vector in the global coordinate system (0 means that the wind is blowing towards the right
side of the screen)
vw = Velocity of the wind in system units (e.g. km/h or mph)
dTon = Time period for which the wind blows at the defined strength
dTof f = Time period without wind
The current wind velocity components (wx , wy and wz ) in the global coordinate system can be calculated from:
t < dT on
wx = vw cos(W )
wy = vw sin(W )
wz =0

t > dT on
wx =0
wy =0
wz =0

(2.58)

where
t = remainder

t
dTon + dTof f

(2.59)

t = actual simulation time since start of simulation.

2.3.3

Gravity

The stationary global system x, y, z is always chosen such that the g vector is directly opposite to the global
z-axis.
F gz = mg

2.3.4

(2.60)

Trailer Hitch Forces

The calculation of the trailer hitch force H is derived in the following chapter. It is calculated explicitly by the
coupling algorithm. For the vehicle model the hitch forces are external forces given in the global system:
Q

2.3.5

Trailer Hitch Moments

R
Hx
H = a Hy b
Hz

(2.61)

In addition to the coupling forces a moment transfer across the hitch can be taken into account. The moment
transfer about each axis of the hitch can be specified independently.
Two different types of moments can be specified at the hitch - a frictional moment and a proportional moment,
as follows:

412

CHAPTER 2. THE TRAJECTORY MODEL


The frictional moment is constant and independent of the rotation angle between tow vehicle and trailer the direction of the friction moment is always in the opposite direction of the rotation.
The proportional moment is a linear function of the rotation angle between tow vehicle and trailer (curve a
in Figure 2.9). Additionally, a minimum rotation angle min can be specified below which no moment (or
only the frictional moment), is transferred (curve b).

Figure 2.9: Trailer hitch moment v. relative rotation


The hitch moment transfer is defined as follows, independently about the x, y or z axes:
M = S0 + ( min ) S D

(2.62)

where
S0 = Frictional moment
= Relative rotation angle
min = Angle at which S starts
S = Rotational stiffness coefficient
= Rotational velocity
D = Damping coefficient for stability purposes it is fixed at 10% of S (using metric units)
Hitch moments are applied to the vehicles before the coupling forces are calculated.

2.3.6

Multibody Contact Forces

For the vehicle model the multibody - vehicle impact forces are external forces given in the global system. The
calculations of these forces are derived in Chapter 5 "The Multibody Model".

2.4

The Equations of Motion for the Vehicle

After the determination of all external forces affecting the vehicle, the equations of motion can be summarized
as follows:
For the balance of forces,
p = m x
m =
which results in an equation for the acceleration
m =
x
respectively written in components:
x
m =

F
m

Fx
m

(2.63)

(2.64)

(2.65)

2.5. INTEGRATION OF THE EQUATIONS OF MOTION

ym =

zm =

413

Fy

(2.66)

Fz

(2.67)

The conservation of the moment of momentum results in:


L m =
or:

(2.68)

(2.69)

where c defines the mass tensor for the vehicle about its center of gravity. This tensor can be calculated in
the vehicle-related coordinate system:

Ix y
Iy
Iy z

Ix
= a Ix y
Ix z

R
Ix z
Iy z b
Iz

(2.70)

Since the vehicle-related coordinate system was selected such that the x z plane defines the vehicles axis of
symmetry, the y axis is a so-called main axis. Based on this, Ix y = 0 and Iy z = 0.
The moment of deviation Ix z will not disappear completely for a vehicle. However, in PC-Crash it is assumed
that, since the center of gravity of most vehicles does not differ greatly from the center of the vehicle and the
mass distribution in the longitudinal direction is relatively symmetrical, this component can also be taken as zero.
Based on the above, the mass tensor reduces to:

Ix
a
0
=
0

0
Iy
0

R
0
0 b
Iz

(2.71)

The system of differential equations is thus uncoupled and the individual equations can be solved independently:

2.5

Ix x =

Mx Iz y z + Iy y z

(2.72)

Iy y =

My Iz x z + Ix x z

(2.73)

Iz z =

Mz Iy x y + Ix x y

(2.74)

Integration of the Equations of Motion

For the integration of the equations an explicit Euler method was chosen. This method is suitable since all
differential equations are of similar stiffness. The selection of the integration time step can be changed with the
software (default = 5ms).
As a first step, the components of the acceleration of the center of gravity are calculated in the global
coordinate system from:
x
=

Fx
m

(2.75)

414

CHAPTER 2. THE TRAJECTORY MODEL

y =

z =

Fy

(2.76)

Fz

(2.77)

The new velocities of the center of gravity can be calculated from the following relations:
x (t+

t)

= x (t) + x
(t)

(2.78)

y (t+

t)

= y (t) + y(t)

(2.79)

z(t+

t)

= z(t) + z(t)

(2.80)

and the new position of the center of gravity can be calculated from the following relations:

x(t+

t)

= x(t) + x (t)

t+x
(t)

t2
2

(2.81)

y(t+

t)

= y(t) + y (t)

t + y(t)

t2
2

(2.82)

z(t+

t)

= z(t) + z(t)

t + z(t)

t2
2

(2.83)

where t defines the numerical integration time step.


The transformation of the velocities into the local coordinate system is calculated from:
v = T 1 v

(2.84)

The components of the angular acceleration vector in the vehicle-related coordinate system can be calculated
from:
x

q
( Mx Iz y z + Iy y z )
=
Ix

(2.85)

q
( My Iz x z + Ix x z )
=
Iy

(2.86)

q
( Mz Iy x y + Ix x y )
Iz

(2.87)

z =

The angular accelerations are now available for the vehicle-related coordinate system.
The new angular velocities in the vehicle-related coordinate system can be determined by numerical integration
over one time step, based on the assumption the angular acceleration is constant during t.
x (t+

t)

= x (t) + x t

(2.88)

2.5. INTEGRATION OF THE EQUATIONS OF MOTION

415

y (t+

t)

= y (t) + y t

(2.89)

z (t+

t)

= z (t) + z t

(2.90)

The new angular rotation angles in the vehicle-related coordinate system can be calculated from:
x (t+

t)

= x (t) t + x (t) t2 /2

(2.91)

y (t+

t)

= y (t) t + y (t) t2 /2

(2.92)

z (t+

t)

= z (t) t + z (t) t2 /2

(2.93)

The rotation angles that are now available for the global coordinate system must be transformed into the
coordinate directions coinciding with the originally defined rotation axis. They are specified in the Coordinate
Systems section. The orientation of the axis of rotation in the inertial system is:
Q

R
Q
R
Q
R
1
0
s2
e1 = a 0 b , e2 = a c1 b , e3 = a s1 c2 b
0
s1
c1 c2

(2.94)

The transformation of the angular velocities from the vehicle-related coordinate system to the 1,2,3 system
Q

1
T = a 0
0

R1
Q
0
s2
c2
1
a 0
c1 s1 c2 b =
c2
s1 c1 c2
0

s1 s2
c1 c2
s1

R
s2 c1
s1 c2 b
c1

(2.95)

Thus, the vector of the angular velocity can be transformed to the 1,2,3-system:
1,2,3 = Tx ,y ,z

(2.96)

In component form we thus obtain for the vector in the 1,2,3-system:


1 = x +

s1 s2
s2 c1
y +
z
c2
c2

(2.97)

2 = c1 y s1 z

(2.98)

s1
c1
y +
z
c2
c2

(2.99)

3 =

The modification of the vehicle rotation angle is calculated as such:


1 =

x +

s1 s2

c2

2 = c1

y +

y s1

s2 c1

c2

(2.100)

(2.101)

416

CHAPTER 2. THE TRAJECTORY MODEL

3 =

s1

c2

y +

c1

c2

(2.102)

If c2 = 0 the equation is indefinite. In this case and from the last time are used.
The new angles of rotation in the 1,2,3-system can thus be determined as follows:
1(t+

t)

= 1(t) +

(2.103)

2(t+

t)

= 2(t) +

(2.104)

3(t+

t)

= 3(t) +

(2.105)

Chapter 3

The Trailer Model


3.1

General

In PC-Crash the trailer model uses a force-based coupling between tow vehicle and trailer. During the simulation
the necessary coupling forces are calculated to ensure that the accelerations of trailer and tow vehicle are identical
at the hitch point.
The calculation process:
1. First the motions of tow vehicle and trailer are independently calculated without hitch forces.
2. Hitch moments, if they exist, are calculated. Refer to Trailer Hitch Moments in the External Vehicle Forces
section in the previous chapter.
3. Out of the solution of the equations of motion for tow vehicle and trailer the accelerations at the hitch
point are calculated.
4. The required forces at the hitch necessary to maintain a common hitch position for tow vehicle and trailer
are determined.
5. The additional accelerations at the hitch point due to these additional forces are calculated.
6. The following two conditions must be satisfied. The first condition is that the hitch forces on tow vehicle
and trailer must be equal and opposite in direction. The second condition is that the tow vehicle and trailer
hitch accelerations must be identical. From these conditions a system of linear equations is formulated.
This system can be inverted and the components of the hitch forces can be calculated immediately.
7. The motions of tow vehicle and trailer are modified by adding the acceleration components resulting from
the hitch forces to those of the unhitched tow vehicle and trailer.
As the motion of tow vehicle and trailer are calculated independently in PC Crash, slight differences may occur
due to numerical rounding. These errors are not automatically corrected. It is therefore possible that the tow
vehicles hitch point will not be in exactly the same position as the trailers at the end of a long simulation. If a
trailer is connected to a vehicle, a hitch force influences the movement of both vehicle and trailer. The direction
and magnitude of this force depends on the type of trailer and connection. For certain trailers (e.g. most steered
trailers) the direction of the hitch force depends mainly on the trailers geometrical configuration. For other types
of trailers the instantaneous motion also has a large affect. The acceleration of a point on a vehicle (such as the
hitch point) can be derived directly from the movement of the vehicle by:

where:
x
K
x
m

xKm

x
K = x
m + xKm + ( xKm )
the acceleration of the coupling point in the inertial system
the acceleration of the center of mass in the inertial system
the vector of the angular velocity of the vehicle
the vector of the angular acceleration of the vehicle
is the distance of the coupling point from the center of mass in the inertial system
417

(3.1)

418

CHAPTER 3. THE TRAILER MODEL

The translational and rotational accelerations of the center of gravity are calculated explicitly from the equations of motion for tow vehicle and trailer.

3.2

The Unsteered Trailer

For unsteered trailers no geometrical limitation regarding the direction of the hitch force exists. As the hitch point
is rigidly mounted to the trailer as well as to the tow vehicle the accelerations of this point can be calculated
directly. There is a linear dependency between the acceleration and connection force at the hitch. The following
linear equations, which define the relation between the accelerations of the hitch point and the connection forces,
are derived.

Figure 3.1: Unsteered trailer


The accelerations of the tow vehicle result from:
x
KZ = CxZ + CxxZ KxZ + CxyZ KyZ + CxzZ KzZ

(3.2)

yKZ = CyZ + CyxZ KxZ + CyyZ KyZ + CyzZ KzZ

(3.3)

zKZ = CzZ + CzxZ KxZ + CzyZ KyZ + CzzZ KzZ

(3.4)

x
KA = CxA + CxxA KxA + CxyA KyA + CxzA KzA

(3.5)

yKA = CyA + CyxA KxA + CyyA KyA + CyzA KzA

(3.6)

zKA = CzA + CzxA KxA + CzyA KyA + CzzA KzA

(3.7)

The accelerations of the trailer result from:

where
x
KZ , y
KZ , zKZ
x
KA , y
KA , zKA
KxZ , KyZ , KzZ
KxA , KyA , KzA
cxZ , cxxZ
cxA , cxxA

are
are
are
are
are
are

the
the
the
the
the
the

accelerations of the tow vehicles hitch point (defined in the global system)
accelerations of the trailers hitch point (defined in the global system)
components of the tow vehicles connection force
components of the trailers connection force
coefficients of the tow vehicles matrix
coefficients of the trailers matrix.

The coefficients of the matrix cZ and cA are derived by calculating the accelerations of the hitch point once
without and once with an assumed component of the hitch connection force. As these matrices include the
geometrical orientation of the tow vehicle and trailer, they have to be recalculated at every time step.

3.3. SEMI-TRAILERS

419

In addition the following conditions must be fulfilled for the connection forces:
KxA = KxZ

(3.8)

KyA = KyZ

(3.9)

KzA = KzZ

(3.10)

x
KZ = x
KA

(3.11)

yKZ = yKA

(3.12)

zKZ = zKA

(3.13)

as well as the equilibrium of the accelerations of tow vehicle and trailer at the hitch point.

They result in a system of 12 equations, which can be solved directly.


As a result the three components of the hitch force can be calculated. The hitch forces are treated as external
forces and the movement of the tow vehicle and trailer for the next time step can be calculated explicitly.
The integration is performed independently for tow vehicle and trailer. Identification of the position of the hitch
point is controlled automatically.

3.3

Semi-Trailers

In PC Crash, semi-trailers are under the category of unsteered trailers. The position of the 5th wheel hitch point
on the tractor is defined by a negative value for the hitch overhang on the tow vehicle. Moments about the hitch
can be specified, as detailed in the previous chapter in External Vehicle Forces - Trailer Hitch Moments.

Figure 3.2: The articulated vehicle

3.4

Steered Trailers

For steered trailers, the hitch point is not mounted to the trailer in a fixed position. A bogie, comprised of the
hitch, drawbar (length Ld), axle and two front wheels of the trailer, is connected to the trailer by a pivoting
trailer-bogie coupling located in line with the center of the bogies axle.
As the mass of the bogie and its components is normally relatively small compared to the total mass of the
trailer, the masses of these components are not considered separately from the trailer. When calculating the force

420

CHAPTER 3. THE TRAILER MODEL

balance for the bogie, its mass is ignored. If the user wants to consider the mass of the bogie or moments about
the bogie pivot, the steered trailer must be defined as two unsteered trailers one with a normal hitch comprising
the bogie and one with a 5th wheel hitch comprising the rest of the trailer.

Figure 3.3: Steered trailer


In the case where both front wheels of the trailer have identical brake forces, no moment can be transferred
through the bogie. The hitch force components can be related to resultant force H that is in line with the
drawbars longitudinal axis vector d . This can be formulated by the following relation:
Hd = Hd

(3.14)

For the tow vehicle the accelerations at the hitch can be calculated from:
x
pV = x
cg + V rp + V ( V rp )

(3.15)

ddV = x
p d

(3.16)

or in direction of the drawbar:

For the trailer the accelerations at the bogie coupling (center of steering axle) are calculated from:
x
dT = x
cgT + T rdT + T ( T rdT )

(3.17)

x
pT = x
dT + d Ld d + d ( d Ld d)

(3.18)

dpT = x
pT d

(3.19)

In addition the acceleration caused by the relative rotation of the drawbar with respect to the trailer has to
be taken into account:

where Ld is the drawbar length.


Transformed in the direction of the drawbar:

3.5. DEFINITION OF THE INITIAL CONDITIONS FOR TRAILERS

421

It can be seen that a linear correlation between acceleration at the hitch point and the hitch connection force
exists, in the direction of the drawbar.
The following relations for tow vehicle and trailer, which guarantee the same acceleration for both at the hitch,
are apparent:
For the tow vehicle,
dpV = cV + cdV HdV

(3.20)

For the trailer the identical equation can be derived:


dpT = cT + cdT HdT
where:
dpV , dpT
ddT
HdV
HdT
cV , cdV
cT , cdT

(3.21)

accelerations of the hitch point for tow vehicle and trailer, in the direction of the drawbar
acceleration of the trailer at the bogie coupling
component of the hitch force in the drawbar direction, for the tow vehicle
component of the hitch force in the drawbar direction, for the trailer
parameters for tow vehicle
parameters for the trailer

The values cV and cT are derived by calculating the accelerations of the hitch point once without and once with
an assumed component of the hitch connection force. As these matrices include the geometrical orientation of
the tow vehicle and trailer, they have to be recalculated at every time step.
In addition the following conditions must be fulfilled for the connection force:
HdV = HdT

(3.22)

as well as the equilibrium of the accelerations of the tow vehicle and trailer in the coupling point.
dpV = dpT

(3.23)

From these equations the connection forces can be calculated directly. They are prescribed as external forces
for the explicit calculation of the time step.
In the case where the two front wheels of the trailer are braked differently, a moment on the bogie exists.
This moment gives an additional component to the connection force, which, if the bogies moment of inertia is
ignored, lies orthogonal to the drawbar direction. This additional force component can be calculated directly from
the difference of the tire longitudinal forces by:

HA =

1
2

Fb Waxle ez d
|ez d|2 LD

(3.24)

where:
Fb
difference between the tire longitudinal brake forces
Waxle track width of the trailer bogie axle
Based on the geometrical position of the hitch point and the bogie axle, a new direction of the drawbar is
calculated after integration for every time step.

3.5

Definition of the Initial Conditions for Trailers

With the coupling equations described, only the accelerations at the hitch are controlled. Thus, the initial
conditions have to be defined such that the coordinates and velocities at the hitch agree for tow vehicle and
trailer.

422

CHAPTER 3. THE TRAILER MODEL

3.5.1

Coordinates

Unsteered Trailer:

The coordinates of the center of gravity for the unsteered trailer are calculated from:
xmA = xmZ + xmKZ + xmKA

(3.25)

where
xmA
xmZ
xmKZ
xmKA

coordinates of the center of gravity for the trailer in the global system
coordinates of the center of gravity for the tow vehicle in the global system
vector of the center of gravity to hitch distance for the tow vehicle in the global system
vector of the center of gravity to hitch distance for the trailer in the global system

The defined direction angle of the trailer remains unchanged and the position of the center of gravity for
the trailer is calculated from the position of the tow vehicle.
Steered Trailer:

The coordinates of the center of gravity for the steered trailer are calculated from:
xmA = xmZ + xmKZ + xKDA + xDmA

(3.26)

where
xmA
xmZ
xmKZ
xKDA
xDmA

coordinates of the center of gravity for the trailer in the global system
coordinates of the center of gravity for the tow vehicle in the global system
vector of the center of gravity to hitch distance for the tow vehicle in the global system
vector of the trailer-bogie coupling to the hitch distance for the trailer in the global system
vector of the trailer center of gravity to trailer-bogie coupling distance for the trailer in the
global system

As for the unsteered trailer, the defined direction angle of the steered trailer remains unchanged and the
position of the center of gravity for the trailer is calculated from the position of the tow vehicle. This is
done so that the bogie angle is also unchanged.

3.5.2

Velocities

Unsteered Trailer

lrKA

Figure 3.4: The unsteered trailer


For the unsteered trailer PC-Crash assumes that the velocity of the geometrical center of the area which
surrounds all tire contact points (xrT ) moves according to the direction of the trailer. The instantaneous
center of rotation for the trailer lies on a line normal to the direction of the trailer in the center of all tire
contact points xrT .

3.5. DEFINITION OF THE INITIAL CONDITIONS FOR TRAILERS

423

The hitch velocity of the tow vehicle is calculated from:


(3.27)

x p = x cgV + V rpV
where:
x cgV
V
rpV

center of gravity velocity of the tow vehicle in the global system


rotational velocity of the tow vehicle
vector of the center of gravity to hitch distance for the tow vehicle in the global system

The velocity of the center of gravity of the trailer can be calculated from the following set of equations:
1. The vector from the center of gravity to the hitch point of the trailer and the vector from the center
of gravity to the centroid of the tire contact points:
rhc
rtc

= Phitch PcogT

= PtirecenterT PcogT

(3.28)

2. The velocity of the hitch point and the velocity of the centroid of the tire contact points for the trailer
are calculated with:

v h = v cogT

vt = v cogT

+ T r hc

+ T r tc

(3.29)

3. Using the previously mentioned assumptions and the velocities in vehicle coordinates one can get the
following equations for the velocity at the center of gravity and the rotation for the trailer in vehicle
coordinates:
4
cos(zT )
3 sin(zT ) 4
sin(zT )
n=
3 cos(zT4)
vh d

vh =
v
3 hn 4
vt d

vt =
v3t n
4
vcogT d

vcogT
=
vcogT
3
4 n
r

d
h
rh =
3 rh n 4
rt d
rt =
r
Q t n
R

vcogx + rhz
y rhy
z

+ rhx
z rhz
x b
vh = a vcogy

v
+
r

r
x
hy
hx y R
Q cogz

vcogx
+ rtz
y rty
z

+ rtx
z rtz
x b
vt = a vcogy

vcogz
+ rty
x rtx
y
d=

(3.30)

4. Solving the above equations leads to the equations for the velocity and the rotation of the center of
gravity for the trailer in the vehicle coordinate system. For simplicity only the 2D solution is shown.

vcogx
= vhx

rtx
v

vcogy = r +rhy
tx
hx
v
z = r hy

tx +rhx

(3.31)

424

CHAPTER 3. THE TRAILER MODEL


Steered Trailer

For the steered trailer, PC-Crash assumes that the velocity of the geometrical center of the area that
surrounds all tire contact points () except the bogies axle moves according to the direction of the trailer.
The center of the bogies axle moves in the direction of the draw bar.

Figure 3.5: Kinematics of the steered trailer


The velocity of the tow vehicle hitch is determined the same way as for the unsteered trailer:
x p = x cgV + zV rpV

(3.32)

The velocity components of the bogie in the global system are then calculated (PC-Crash assumes that
neither trailer nor the tow vehicle cause any roll or pitch of the bogie):
x d = (x p cos(zd ) + y p sin(zd )) cos(zd )

(3.33)

y d = (x p cos(zd ) + y p sin(zd )) sin(zd )

(3.34)

The velocity distribution of the trailer can be calculated from:

zT
where

zT =

R
0
=a 0 b
zT

x d sin(zT ) + yd cos(zT )
rdrT

(3.35)

(3.36)

and

x rT

R
(x d cos(zT ) + y d sin(zT )) cos(zT )
= a (x d cos(zT ) + y d sin(zT )) sin(zT ) b
0

(3.37)

3.5. DEFINITION OF THE INITIAL CONDITIONS FOR TRAILERS

425

where
x d , y d
zd
zT
rdrT

components of the velocity of the bogie in the global system


heading angle of the drawbar about the z axis
heading angle of the trailer about the z axis
distance between the bogie and the centroid of the trailer tire contact points (not including the
bogie tires)

The velocity of the center of gravity of the trailer can be determined the same way as for the unsteered
trailer:
x cgT = x rT + zT rrT

(3.38)

where rrT defines the vector from the centroid of the trailer tire contact points (not including the bogie
tires) to the center of gravity of the trailer.

426

CHAPTER 3. THE TRAILER MODEL

Chapter 4

Impulse-Restitution Impact Model

Figure 4.1:

4.1

General

The default impact model in PC-Crash is a momentum-based 2 or 3 dimensional model that relies on restitution
rather than vehicle crush or stiffness coefficients. This model assumes an exchange of the impact forces within an
infinitely small time step at a single point, herein called "impulse point". Instead of resolving the impact forces
over time, only the integral of the force-time curve (the impulse) is considered. This model, which was described
first by Kudlich [120] and Slibar [121], contains the means to calculate "full impacts" (impacts in which a common
velocity is reached by the impact areas of the two vehicles) and "sliding impacts" (impacts where no common
velocity is reached, commonly called sideswipe impacts).
The impact model allows the calculation of the post-impact parameters after the definition of the pre-impact
phase (speeds and positions).
427

428

CHAPTER 4. IMPULSE-RESTITUTION IMPACT MODEL

As defined by Newton the impact can be divided into two phases: the "compression" phase and the "restitution"
phase. For a full impact, at the end of the compression phase the velocities of both vehicles at the impulse point
are identical.
Due to elasticity of the vehicle structures, the two vehicles will separate again. The coefficient of restitution is
defined as ratio between restitution impulse and compression impulse.
=

SR
SC

(4.1)

The total impulse is calculated from


S = SC + SR = SC (1 + )

(4.2)

For simplicity, the impact model is only derived here in 2D. In PC-Crash both 2D and 3D impact models are
available.

Figure 4.2: Impact configuration


As can be seen in Figure 4.2 a local coordinate system, which originates at the impulse point, is defined. The
coordinates are separated into components that are tangential and normal to the defined contact plane between
the vehicles. The tangential and normal components of the velocity of each vehicle (only Vehicle 1 equations are
shown here) at the impulse point are, respectively:
VT1 = VTcg1 z1 n1

(4.3)

VN1 = VNcg1 + z1 t1

(4.4)

where:
VTcg1 = tangential velocity component of Vehicle 1s center of gravity
VNcg1 = normal velocity component of Vehicle 1s center of gravity
z1 = yaw velocity of vehicle 1
n1 = normal component of the center of gravity to impulse point distance
t1 = tangential component of the center of gravity to impulse point distance
The components of the relative velocity between the two vehicles at the impulse point are:
VT = VT1 VT2

(4.5)

VN = VN1 VN2

(4.6)

m1 (V Tcg1 VTcg1 ) = T

(4.7)

In addition the balance of momentum for both vehicles is:

4.1. GENERAL

429

m1 (V Ncg1 VNcg1 ) = N

(4.8)

m2 (V Tcg2 VTcg2 ) = T

(4.9)

m2 (V Ncg2 VNcg2 ) = N

(4.10)

Iz1 (z1 z1 ) = T n1 + N t1

(4.11)

Iz2 (z2 z2 ) = T n2 N t2

(4.12)

V T = VT + c1 T c3 N

(4.13)

V N = VN c3 T + c2 N

(4.14)

The balance of angular momentum is:

When combining these equations the change of the relative velocity for both vehicles at the impulse point can
be calculated from:

where

c1 =

1
1
n2
n2
+
+ 1 + 2
m1
m2
I1z
I2z

(4.15)

c2 =

1
1
t2
t2
+
+ 1 + 2
m1
m2
I1z
I2z

(4.16)

t1 n1
t n
+ 2 2
I1z
I2z

(4.17)

c3 =

To be able to solve these equations and to calculate the post-impact velocities and rotations additional
definitions have to be made. These definitions vary for the two different kinds of impacts defined by Kudlich and
Slibar, as follows.

4.1.1

Full Impact

A full impact is defined as one in which there is no relative movement between the vehicles at the impulse point
at the end of the compression phase. In this case two additional assumptions are made:
1. In the compression phase, the exchanged momenta in the tangential and normal directions are:
TC =

VN c 3 + V T c 2
c23 c1 c2

(4.18)

NC =

VN c 1 + V T c 3
c23 c1 c2

(4.19)

2. The ratio between compression and restitution impulse is defined by the coefficient of restitution, according
to EQ (3.34)
The components of the total exchanged momentum can be calculated from:
T = T C (1 + )

(4.20)

N = N C (1 + )

(4.21)

These equations are sufficient to calculate all post-impact velocity conditions for both involved vehicles in
case of a full impact.

430

4.1.2

CHAPTER 4. IMPULSE-RESTITUTION IMPACT MODEL

Sliding Impact

In a sliding impact, the two vehicles do not reach a common velocity at the impulse point during the impact. In
such a case a contact plane has to be defined, along which the two vehicles slide. The impulse point must lie in
this plane. For this case, the following assumptions are made:
1. No relative movement between the vehicles occurs at the impulse point at the end of the compression
phase in the direction normal to the contact plane. The normal component of the impulse can, however,
be affected by the inter-vehicle friction coefficient (), and NC is now calculated from:
NC =

VN
c3 + c2

(4.22)

2. The direction of the momentum transfer is limited by , such that:


TC = NC

(4.23)

3. The ratio between compression and restitution impulse is again defined by the coefficient of restitution
according to EQ (3.34) and T and N can again be calculated from EQ (4.16) and EQ (4.17).
The post impact velocity conditions for both vehicles in the impact are calculated from the preceding relations.

4.2

Impact Positions

It is important for a good prediction of the collision phase to define the correct overlapping of the original vehicle
outlines when the forces are exchanged.
The best method of doing this is to position the vehicles at the impact point in an overlapped position corresponding to the amount of crush. In PC-Crash this position can also be determined in another way. Crash tests
have shown that the time from the first contact of the vehicles to the maximum engagement usually lasts a time
period of 30 to 60 milliseconds. Based on this, the correct overlapping of the vehicles is reached by driving the
vehicles at the assumed pre-impact velocities from the point of first contact for a distance corresponding to this
time period. With the vehicles in this position, the impact calculation is performed.
Finally the position where the impact forces interact at maximum engagement (the impulse point) must be defined
by the user. When identifying this point on the screen the local stiffness of the vehicle body and underlying
structure should be taken into account. The location of this point can be refined by considering the post-impact
trajectories of the two vehicles.

4.3

Coefficient of Restitution

The coefficient of restitution is an input parameter for PC-Crash. In real vehicle to vehicle collisions, it usually
lies in the range between 0.1 and 0.3. Generally, the higher the residual deformation of the vehicles, the lower the
coefficient of restitution. Values higher than 0.3 can occur for low approach velocities [122] [123] [124], especially
when little or no damage occurs.
The elasticity of an impact can also be defined by specifying the separation velocity. In real vehicle to vehicle
collisions, this value is usually around 5 km/h (3 mph), regardless of approach speed. This method cannot be
used for sliding impacts, however.

4.4

Calculation of EES

After the definition of the vehicle positions at impact and the point of impact, the relative deformation depth of
each vehicle is known.
The following are the relationships used in PC-Crash (as defined by Burg [126] for deformation energy (EES, or
Equivalent Energy Speed):
EES1
=
EES2

m2 sDef 1
m1 sDef 2

(4.24)

4.5. THE COLLISION OPTIMIZER

431

EES2 =

m2

2ED
sDef 1
sDef 2

+1

(4.25)

where
m1 , m2 = Mass of each vehicle
sDef 1 , sDef 2 = Crush depth of each vehicle, outer surface to impact point in line with impact force
ED = Energy lost by both vehicles in the collision due to damage.

4.5

The Collision Optimizer

The collision optimizer in PC-Crash 3D automatically varies pre-impact parameters to minimize the error between
the actual and calculated intermediate and rest positions. Pre-impact parameters that can be varied by the
optimizer are:
1. Impact velocity
2. Position of impact (POI) in x-y direction
3. POI in z direction (3D simulations only)
4. Contact plane angle phi (degrees CCW from the global x-axis)
5. Pre-impact directions
6. Vehicle positions
7. Restitution
8. Contact plane friction
The contact plane angle psi (used for 3D simulations only) and vehicle pre-impact rotational speeds (if they exist),
are not determined automatically with the Optimizer and have to be specified or varied by the user.

4.5.1

Weighted Total Error

The goal of the optimization process is to minimize the weighted total error, based on the least mean squares
method. The weighted total error or quality function Q is as follows:
q
2
(wi xi )
iq
Q=
100%
(4.26)
2
i wi
where
wi = Weighting (0 to 100%) of each parameter
xi = Difference between actual and calculated parameter values, as follows:
Positional errors for rest positions,
xRestP osition =
Positional errors for intermediate positions,
xInterP osition =
Heading errors for rest positions,
xRestheadingi =
Heading errors for intermediate positions,
xInterheadingi =

|PRestSim PRestactual |
|PRestactual Pimpactactual |

(4.27)

|PIntersim PInteractual |
|PInteractual Pimpactactual |

(4.28)

arccos(dRestactual dRestsim )

(4.29)

arccos(dInteractual dIntersim )

(4.30)

432

4.5.2

CHAPTER 4. IMPULSE-RESTITUTION IMPACT MODEL

Optimization Methods

Three optimization methods are included in PC-Crash:


4.5.2.1

Linear Method

The linear or coordinate approach method by Gauss-Seidel splits a multi-dimensional problem into one-dimensional
optimization tasks. The optimization of one parameter is performed stepwise using a certain step-width as long as
the quality function decreases. If the quality function does not decrease anymore, the step width and/or direction
is changed iteratively until no improvement can be achieved. In the next step the next parameter is optimized
starting at the best solution found in the previous optimization.
For example, when optimizing pre-impact velocities, this algorithm changes the velocity for one vehicle until
no improvement of the quality function can be achieved before changing the velocity of the other vehicle(s). The
step width for the optimization of the pre-impact velocities is set to 5 km/h or 3 mph during the first phase and
is decreased to 1 km/h or 0.5 mph during the second phase for each vehicle.
This method works fine if the relation between input parameters and quality function has a smooth shape. For
example, for optimizing the pre-impact velocities this approach solves the problem in fewer steps than the Genetic
Method, but the Linear Method may stop at local minima much easier if the step width is not appropriate. If
there is no clear indication where to go to achieve better results this method is not the best.
This method can be used to optimize pre-impact velocities and points of impact having a good convergence, but
cannot be used to optimize the other parameters with the same performance. For this reason, when the Linear
model is selected, the Genetic method is still used for the other parameters.
4.5.2.2

Genetic Method

The genetic or evolutionary approach is a very general approach for solving multidimensional optimization problems. This method can be used to optimize subsets of the input parameters or all of them at the same time. The
parameters are divided into subsets that are optimized iteratively. This is very useful for the accident reconstruction
process.
Starting with initial values (the first generation), the Genetic Method varies the start values leading to a
number of pre-impact configurations. A simulation is performed for all configurations and the quality function is
evaluated. The parameter set of the second generation which leads to the best results (the lowest quality function
values), is used as an initial value in the next step. Different step widths are used in the variation of the different
pre-impact parameters. The sequence of variation and evaluation is performed until no further improvements can
be achieved and a minimum value for the quality function has been found.
In a further process the step width for the variation is decreased, and a more accurate optimization around
the minimum quality function value is performed using the same procedure. Depending on the initial values for
the first generation the Genetic Method can solve the problem in a few steps.
The Genetic Method is also very efficient when doing a parameter variation for an existing solution. This is
very useful for examining the influence of each different pre-impact parameter for a particular case.
The Genetic Method is practical for all input parameters in PC-Crash and has good numerical stability and
performance. Also, the Genetic Method does not tend to stop at local minima.
4.5.2.3

Monte Carlo Method

The Monte Carlo algorithm performs 100 calculations each time an optimization is made. For each calculation,
random values are used for all selected optimization parameters. This avoids situations where the other algorithms
could stop at a local minimum. It also gives a good indication of the expected ranges of velocities and other
parameters.
The ranges of the random values are:
1. Velocity - the Vmin and Vmax values in the Properties dialog box are used. The default range for each
vehicle is 0 to 300 km/h (186 mph).
2. POI in x-y direction +/- 0.5m (1.6 feet)
3. POI in z direction - +/-0.25m (0.8 feet).
4. Contact plane angle - +/-15
5. Pre-impact directions - +/-15

4.6. IMPACTS INVOLVING TRAILERS

433

6. Vehicle positions - +/-0.1m (0.3 feet)


7. Coefficient of restitution - +/-0.25
8. Contact plane friction - +/-0.25.

4.6

Impacts Involving Trailers

As stated earlier, PC-Crash assumes that the impact takes place in an infinitely small time period. This implies
that for tow vehicle - trailer connections, any wave propagation of deformation and force is neglected. Hence, the
vehicles and trailers are treated as rigid bodies during impact. During the infinitely small impact time period the
positions and angular orientations of all bodies remain unchanged.
From this condition, it can be seen that the position and velocity of vehicle and trailer at the hitch point must
be identical before and after impact. This condition results in a homogeneous system of linear equations with
constant coefficients for velocity changes.
With this assumption the problem of impact is now reduced to the determination of two groups of mechanical
quantities the first group is made up of instantaneous finite increments of all velocities and the second group
comprises internal impulses.

Figure 4.3: Impact with tow vehicle


In addition to the impulse S from impact forces which acts on the colliding vehicle, an impulse Q will be generated
at the hitch which is the time integral of the hitch force H during impact:
Q=

t+ t

Hdt

(4.31)

The linear and angular velocity changes of the colliding vehicle (the tow vehicle in Figure 4.3) are obtained
from the changes in linear and angular momentum:
m x = S + Q

(4.32)

= s S + rp Q

(4.33)

where
s = the vector from the vehicle CG to the point of impact
r p = the vector from the vehicle CG to the hitch

The momentum equations for the other vehicle (the trailer in Figure 4.3) are then:
m x = Q
= rp Q

(4.34)
(4.35)

The velocity change at the hitch can be calculated from the state of either the tow vehicle or the trailer:
x P =

x +

(4.36)

434

CHAPTER 4. IMPULSE-RESTITUTION IMPACT MODEL

For the vehicles to remain coupled, their motions are constrained so that the velocity change at the hitch
point is the same for both the tow vehicle and the trailer:
x pV =

x pT

(4.37)

A steered trailer is under the additional constraint that the impulse transmitted by the massless drawbar is purely
axial:
dQ=0

where the vector d defines the drawbar direction.

(4.38)

Chapter 5

The Multibody Model

Figure 5.1: Pedestrian model

5.1

General

Motor vehicles are generally regarded as rigid bodies for the simulation of traffic accident collisions with kinetic
3D simulation programs. This simplification is admissible for the simulation of vehicle - vehicle collisions, vehicle trailer collisions and vehicle collisions with rigid obstacles such as trees or walls. However, for collisions with
pedestrians, occupants or small objects with multiple components, this simplification does not allow the motion
to be accurately modeled. In order to obtain realistic results it is necessary to model pedestrians and many other
objects as multibody systems.
A multibody is a system of rigid bodies interconnected by joints. With this model, vehicle - pedestrian impacts
with other types of multibodies can be modeled almost as easily as vehicle - vehicle impacts are. With the use of
multibody systems it is also possible to correlate pedestrian and occupant injuries to vehicle damage areas.
The model has the capability of dealing with different pedestrian statures (size and mass) under different
initial conditions (standing, walking, running).
The geometry of the vehicle can have a large effect on the pedestrian dynamics, so the model allows the use
of different vehicles shapes. The vehicle shape can be either specified using the < Vehicle> <Vehicle Settings>
Vehicle Shape menu item, or a detailed 3D DXF shape can be imported and attached to the vehicle. In this case
3D DXF Car Contact should be specified in <Vehicle> <Multibody> <Settings> <Syst. Properties>.

5.2

Model Description

The multibody pedestrian body elements (head, torso, pelvis, etc.) are interconnected with pivoting joints. For
each body there are different properties such as geometry, mass, contact stiffness and coefficients of friction. A
general ellipsoid of degree n specifies the geometry for each body.
The number of bodies and joints used influences the calculation time needed. A compromise had to be found
between calculation time and model detail. For example, the pedestrian and occupant multibodies are modeled
with 20 bodies interconnected by 19 joints. The 20 bodies are:
435

436

CHAPTER 5. THE MULTIBODY MODEL


Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

Torso
Hip
Left femur
Left lower leg
Left foot
Right femur
Right lower leg
Right foot
Right upper arm
Right lower arm
Left upper arm
Left lower arm
Neck
Head
Left knee
Right knee
Dummy left lower leg
Dummy left lower right leg
Dummy left femur
Dummy right femur

Bodies 16 to 19 are dummy leg bodies of a more rounded shaped than Bodies 2, 3, 5 and 6, that are used
to detect and model leg contact forces. Bodies 2, 3, 5 and 6 are ellipsoids too long for modeling bumper impact
forces in some cases.
The 19 joints are:

Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint
Joint

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body
Body

0-1
0 - 12
0 - 10
0-8
4 - 12
1-5
23
3-4
5-6
6-7
8-9
10 - 11
12 - 13
2 - 14
5 - 15
3 - 16
6 - 17
2 - 18
5 - 19

The stature and initial velocity for the multibody as a whole can be specified in PC-Crash, as well as restitution
and friction coefficients.

5.2. MODEL DESCRIPTION

437

Figure 5.2: Pedestrian model

5.2.1

Coordinate Systems

The multibody uses two different coordinate systems. One coordinate system is the inertial system and the
second coordinate system is the body fixed coordinate system. The body fixed coordinate system is defined by
the semi-axes of the ellipsoids. Both coordinate systems are right hand coordinate systems.

Figure 5.3: Inertial space and body fixed coordinate systems

5.2.2

Body Properties

For each body of the multibody system the following properties can be specified independently:
Geometry

Each body is represented by a general ellipsoid, for which the length along each axis (a, b, c) and the degree
of the ellipsoid (n) can be specified. A degree of 2 with equal a, b and c dimensions is a sphere. Higher
degree values will make the ellipsoid have flatter sides and sharper corners.

Mass and Moments of Inertia

The moments of inertia about each bodys three axes and its mass must be specified.

Stiffness Coefficients

There is a stiffness coefficient for each body, which is used when calculating contact forces.

Coefficient of Friction

Two coefficients of friction can be specified. One is used for ellipsoid to vehicle contacts; the other is used
for ellipsoid to ellipsoid and ellipsoid to ground contacts. These coefficients of friction are assumed to be
independent of the amount of penetration.

438

CHAPTER 5. THE MULTIBODY MODEL

The following equations describe the surface and the surface normals for general ellipsoids of degree n with
semi-axis a, b, and c:
Q
R
Xe
P = a Ye b
(5.1)
Ze
2

Xe (u, v) = a cos n (v) cos n (u)


2

Ye (u, v) = b cos n (v) sin n (u)


2

(5.2)
(5.3)
(5.4)

Ze (u, v) = c sin n (v)


Q

R
1

2
2
n (u, v) = a1 cos2 n (v) cos2 n (u) a 0 b +
0
Q R
0
2
2
1
2 n
(v) sin2 n (u) a 1 b +
b cos
0
Q
R
0
2
1
2 n
(v) a 0 b
c sin
1

(5.5)

u [, ]

(5.6)


v ,
2 2

(5.7)

where u is the angle from the ellipsoids Xe axis in its Xe -Ye plane, and v is the angle above its Xe -Ye plane,
with ranges:

5.2.3

Equations of Motion

For the simulation of the multibody system, the external forces (gravity, contact forces, frictional forces and joint
forces) on each body are calculated during each time step. Once the external forces are determined, the movement
of each body is calculated independently by solving the equations of motion numerically.

Figure 5.4: Steps during the simulation of the multibody system

5.2. MODEL DESCRIPTION

439

The equations of motion use the balance of forces and conservation of angular momentum to describe the
movement of each body i from the influence of external forces and moments [128] [129].

mi x i =
Fj

(5.8)

i+ i

Ixx
= a Ixy
Ixz

i=

Ixy
Iyy
Iyz

Mj

(5.9)

R
Ixz
Iyz b
Izz

(5.10)

where:
mi = mass of body i

x i = acceleration at the COG of body i in inertial space


Fj = external forces on body i in the inertial coordinate system
i = mass tensor for body i in the body coordinate system

i = angular acceleration of body i in the body coordinate system

i = angular velocity of body i in the body coordinate system

M j = external moments on body i in the body coordinate system

Typically a symmetric mass tensor is used for each body to represent an ellipsoid. However, ellipsoids are only
used to specify the body shape for the calculation of contacts and therefore any mass tensor can be specified.
For the integration of these equations an explicit Euler method is used. Typically the time step needed varies
from 0.1ms to 1ms.

5.2.4

Definition of Joints

For each joint Ji used to connect two bodies the joint location and several parameters specifying the joint

characteristics are defined. The joint location vectors d i1 and d i2 are specified in the body coordinate system
of each body connected to a joint. Ball and socket joints are used (ball diameter = 2cm), for which a friction
coefficient and a rotational stiffness are specified. Restrictions for the motion about an axis of the joint can be
achieved by increasing the rotational stiffness about that axis.

Figure 5.5: Joint definition


For each time-step of the simulation the joint equations for the whole multibody system have to be solved. These
equations are solved explicitly.
The selected method implies that the following two conditions have to be fulfilled for every time step:
The joint forces between two bodies have to be equal in magnitude and opposite in direction.
The accelerations at the joint location for both bodies have to be identical.

Using this method only three components of the reaction forces at the joint are taken into account. Moment
components that could arise (e.g. from friction) are ignored at this stage. Moments are taken into account after
solving the joint equations. Once the joint forces have been calculated a friction force can be applied and the

440

CHAPTER 5. THE MULTIBODY MODEL

joint equations are solved again. This process is performed iteratively until no significant changes in the joint
forces occur.
Geometrical constraint conditions are replaced by the reaction forces in the joint. Thus both bodies connected in
a joint can be treated independently.
This method corresponds to the approach of LaGrange multipliers, which is well known in multibody dynamics
[130], [131].
As a first step, the accelerations at the joint location for both bodies are calculated without taking the external
joint forces into account.
As a second step, unit force components are applied and the respective accelerations of the joint location
are calculated. A set of linear algebraic equations is formulated, based on the linear relationship between the
acceleration of the joint location and the joint forces, from which the external joint forces between the two bodies
are determined.
One disadvantage of this method is the fact that only the accelerations are guaranteed to be identical at the
joint location. Identical velocities and positions are not guaranteed. Thus, when integrating over a long time
interval, a separation of the two bodies may occur due to the discrete nature of the integration procedure as well
as due to numerical round-off errors. However, the drawback of the method is of minor influence for accident
reconstruction, as only relatively short time intervals are normally considered.
In PC-Crash the position and the velocity of the bodies at the joint location are checked. If the error exceeds
a certain value, the calculation is interrupted and is repeated afterwards with a smaller integration time step.
Therefore, no significant separation of two bodies arises at a joint even if the integration is performed over a long
time interval.
Q

where:

c
c
c
a

a 1,1

a 2,1

a j,1

a 1,2

a 2,2
.

a j,2

F1

d
c
d
c
d = A c F2
b
a .

Fj

R
d
d
d
b

(5.11)

a j,1 , a j,2

= accelerations at the joint location for body a and body b connected by joint j
A = 3j x 3j matrix that represents the relation between joint forces and acceleration at the joints for j joints

F j = joint force at joint j.


A linear system of equations for the joint forces of the multibody system gives the relation of joint forces and
accelerations at the joint positions. The coefficients of the matrix A have to be calculated for each time step, as
these coefficients represent the relative location of the bodies connected by a joint. As there are 3 components
of the joints forces a system of 3n linear equations have to be solved to get the joint forces for n joints. Since
several bodies can be connected there is an influence of the joint forces at one joint on the accelerations of the
other joints in the system.

5.2.5

Contact Models

The contact models, based on a linear stiffness function, are used to calculate the contact forces between two
multibody bodies or a body and another object. A coefficient of restitution is specified to define the amount of
elasticity during the contact. Once the contact normal force is calculated friction forces are calculated, using the
specified contact friction between the two bodies. Therefore sliding impacts, partially sliding impacts and full
impacts can be calculated. Calculation of the amount of penetration, the location of the point of impact and
the orientation of the contact plane is performed automatically. There is no need for user interaction for the
calculation of these impacts once the general body parameters have been specified.

F napproaching = S

where:

2
F nseparating = S

F napproaching = contact normal force if bodies are approaching

F nseparating = contact normal force if bodies are separating

S = stiffness coefficient

(5.12)
(5.13)

5.2. MODEL DESCRIPTION

441

= penetration depth
= coefficient of restitution
Three different impact configurations are possible:
1. Ellipsoid to Ellipsoid Contacts
For ellipsoid to ellipsoid contacts the assumption is made that the point of contact is found on a line between
two points, where one point is on the surface of the first ellipsoid and the second point is on the surface
of the other ellipsoid. The tangential planes for both points are parallel and the distance between these
two planes is a minimum. The exact location of the point of contact can be found using the body stiffness
values.

Figure 5.6: Ellipsoid to ellipsoid contact


The following equations are solved numerically for using a two dimensional simplex method [132].

n 1=

(5.14)

n2

= |P1 P2 | = 1 + 2

(5.15)

min .

(5.16)

(5.17)

F n1 = F n2
F n1 = 1 S1 n 1

(5.18)

(5.19)

F n2 = 2 S2 n 2

Pc = P1 n 1 1 = P2 n 2 2

(5.20)

c = min (1 , 2 )

(5.21)

- .
.

.
.
F t1 = -F n1 - c . v P c2 v P c1 .
where:

- .
.

.
.
F t2 = -F n2 - c . v P c1 v P c2 .

F n1 , F n2 = normal contact force components onto ellipsoid 1, 2

F t1 , F t2 = tangential contact force components onto ellipsoid 1, 2


c = contact friction

(5.22)
(5.23)

442

CHAPTER 5. THE MULTIBODY MODEL


The tangential component of the contact force is calculated using the lower body friction coefficient between
the two ellipsoids. The direction of the tangential force is defined by the direction of the relative velocity
of the contact point.

2. Ellipsoid to Vehicle Contacts


The vehicles in PC-Crash are modeled as rigid bodies for multibody pedestrian contacts. The surface of
the vehicle is defined by several planes, which are defined by triangular polygons. The vehicle shape can be
specified either by entering specific geometrical distances to describe the vehicle shape or by using detailed
3D vehicle shapes imported as DXF drawings. The assumption is made that the point of contact is on the
surface of the vehicle plane. Thus, vehicle deformation is neglected.
The point of contact has to be inside the three points that define the vehicles triangular polygonal plane
being contacted. The penetration of the ellipsoid is the distance between a point on the ellipsoid where the
tangential plane is parallel to the contacting plane, and the contacting plane. The tangential components
of the contact force are calculated using the specified ellipsoid to vehicle friction coefficient and the relative
velocity of the contact points.
The contact force from the ellipsoid is applied as an external force to the vehicle. Therefore, the influence
of a pedestrian impact on the vehicles post-impact motion can be analyzed.

Figure 5.7: Ellipsoid to plane contact

n e=

(5.24)

np

= |Pe Pp |

F ne = Se n e

F np = F ne
- .
.

.
.
F te = -F ne - . v P cp v P ce .

where:

- F tp = -F np -

.
.

.
.
. v P ce v P cp .

F ne , F np = normal contact force components onto ellipsoid and plane


F te , F tp = tangential contact force components onto ellipsoid and plane
= contact friction.

(5.25)
(5.26)
(5.27)
(5.28)
(5.29)

5.2. MODEL DESCRIPTION

443

3. Ellipsoid to Ground Contacts


The ground surface in PC-Crash can be defined using a number of 3D slope polygons. For each of these
slope polygons a friction value can be assigned. Therefore the calculation of contacts between the ellipsoids
of the multibody system and the ground is similar to the calculation of contacts between vehicles and
ellipsoids. However, ground slope polygons do not have a velocity and it is assumed that a force on a
ground polygon does not result in any motion of the polygon.
: The pedestrian model recognizes Friction Polygons. The lower of the specified pedestrian to ground
friction or Friction Polygon friction coefficient will be used.

5.2.6

Limitations

The following limitations apply to the multibody contact model:


Contacts between two bodies connected with a common joint are not recognized.

Since a contact can be detected only when there is a contact and a common tangent point between a
multibody and a planar surface, contacts with the edge of a plane will not be detected. For example, a
contact can only be detected once the center of a round multibody is within a normal projection of the
plane edge. For this reason, unrealistically large contact forces may occur a short time after a multibody
passes a plane edge, due to a suddenly large amount of penetration depth (). Modeling a vehicle or 3D
road surface with a larger number of smaller planes is a solution to this.
Multibody contacts with the standard rolling wheel model cannot be detected; these contacts are modeled
using a non-rolling wheel shape instead. Thus, the contact is calculated as if the wheel is locked, whether
or not it actually is.
Multibody impacts with higher approach speeds require that the integration time step (accessed with the
Traffic Light button) be reduced. Otherwise, the amount of overlap increases too much between calculations,
and unrealistically large contact forces will result. In all cases with multibody impacts the integration time
step should be reduced to 1ms or less.

444

CHAPTER 5. THE MULTIBODY MODEL

Chapter 6

Additional Models
6.1

Force-Based Impact Models

The ellipsoidal and mesh force-based impact models are based on the calculation of contact forces between two
vehicle bodies or between the vehicle body and the ground. These models can be used for vehicle-vehicle contact
or vehicle-ground contact, such as in rollovers or contact between the vehicle underside and the ground.

6.1.1

Ellipsoidal Model

This model uses same impact model as for the pedestrian multibody system to calculate contact forces and
locations. It uses a linear stiffness model with restitution. Sliding impacts are taken into account, based on the
specified contact friction. The friction force always acts in the opposite direction of relative velocities at the
contact point.

Figure 6.1:

The values for friction, restitution and stiffness are defined for each ellipsoid in the Car Body field of the Suspension
Properties tab.
445

446

CHAPTER 6. ADDITIONAL MODELS

Figure 6.2:
The friction and stiffness of the different vehicle body ellipsoids differ in a prescribed manner. A general body
ellipsoid stiffness is specified, and this is used as a basis for determining the stiffness of other ellipsoids that make
up the vehicle. Similarly, a general body friction coefficient is specified, but friction used for calculation will
depend on the ellipsoid and the coefficient specified for the contacting surface.
The vehicle body stiffness can also be defined by the static deformation of the vehicle under its own weight - the
user specifies the static deformation of the car body in the Stiffness text box and the stiffness is in the adjacent
text box is calculated as follows:
S=

mg
SDef

(6.1)

where
S = Stiffness
m = car body mass
g = acceleration of gravity
sDef = static deformation
The stiffness used for the wheel ellipsoids is 50% of that specified for the vehicle body. The wheel ellipsoids are
90% of the wheel diameter, and are located so as not to contact the ground under upright driving. As of PC-Crash
8.1, the wheel ellipsoids are active whenever Rollover Detection is selected, regardless of the vehicle roll angle.
The coefficient of friction for the vehicle body ellipsoids is as specified in the Friction text box in the Car Body
field. In the case of vehicle-vehicle body contact, the lowest friction specified for the two vehicles will govern.
The coefficient of friction of the wheel ellipsoids is 0.80 or as specified in the scene, whichever is lower.
Restitution determines the vehicle stiffness in rebound. There is no residual deformation in the Ellipsoid Model.
Therefore, the vehicle stiffness S during vehicle separation with be e2 S, where e is the restitution coefficient and
S is the stiffness specified in the Car Body field.
Several contact ellipsoids are used to represent the vehicle shape. The geometry of these ellipsoids is based on
the vehicle type and values specified using the menu item <Vehicle> <Vehicle Settings> as follows:
6.1.1.1

Automobiles

This category is generally used for cars and light trucks. Four ellipsoids, two for the lower part and two for
the upper part (the roof), represent the vehicle body. These ellipsoids are sized according to the dimensions in
<Vehicle> <Vehicle Settings> Vehicle Geometry and Vehicle Shape.

6.1. FORCE-BASED IMPACT MODELS

447

Figure 6.3:
The specified stiffness is for the lower part of the vehicle body only. For the roof (the two smaller ellipsoids), 25%
of the specified stiffness is used.
6.1.1.2

Trucks

This category is for heavy cab-over type trucks. Trucks with other shapes can be modeled using the Automobile
type, as described above. Two ellipsoids, one for the rear portion and one for the cab, represent the vehicle body.
The overall length, width and (rear box) height are specified in the Vehicle Geometry dialog box. The other
dimensions are:
Cab length 30% of overall length

Cab height 43% of overall length (3.3m max)

Ground clearance As specified in Vehicle Shape

Figure 6.4: The specified stiffness is used for both body ellipsoids.
6.1.1.3

Trailers

This category is for all trailers. Two ellipsoids, one for the rear portion and one for the front portion, represent
the vehicle body. The overall length, width and height are specified in the Vehicle Geometry dialog box. The
ground clearance is specified in Vehicle Shape.

Figure 6.5: The specified stiffness is used for both body ellipsoids.

448
6.1.1.4

CHAPTER 6. ADDITIONAL MODELS


Motorcycles

This category is for all two wheeled vehicles other than multibody ones. Two ellipsoids, one for the rear portion
and one for the front portion, represent the vehicle body. The overall length, width and height are specified in
the Vehicle Geometry dialog box. The ground clearance is specified in Vehicle Shape.

Figure 6.6: The specified stiffness is used for both body ellipsoids.

6.1.2

Mesh Model

In the mesh contact model vehicles are modeled as meshes consisting of nodes and faces. The mesh can be
attached as a 3D dimensional drawing or can be generated from the default PC-Crash vehicle shape based on
entered dimensions.

Figure 6.7:
The mesh model uses a force-based impact model to calculate contact forces for each node based on the
deformation of the node. Friction forces are taken into account as well. The nodes in the mesh contact model
are the points of possible deformation due to contacts and the faces define the contact surface for the model.
6.1.2.1

Node Properties

Each node of the mesh model has properties for stiffness, restitution and friction. For the whole model a stiffness
per area is defined that is distributed among the individual nodes of the model based on the area of the faces
attached to the nodes. Note that the Stiffness value defined in <Vehicle> <Vehicle Settings> Suspension
Properties is the stiffness per unit area (m2 or ft2 ) when using the mesh model. Therefore, using the same
stiffness value in the Ellipsoid Model and the Mesh Model will likely produce different results. Normally, a higher
stiffness is needed for the mesh model.
Unlike the Ellipsoid Model, the Mesh Model makes no assumptions regarding the local stiffness of different vehicle
features. The roof is as stiff as the body. The default tire and suspension models are used with the Mesh Model
for all roll angles.
The Friction coefficient specified in the Car Body field is used by the whole mesh. Again, this value does not
affect tire friction.
The Mesh Model assumes residual deformations. The stiffness of a rebounding node is greater than that of a node
with increasing deformation. The rebound stiffness S is S/e2 , where e and S are the restitution and stiffness

6.1. FORCE-BASED IMPACT MODELS

449

specified in the Car Body field. The rebound distance will be e2 times the dynamic deformation, such that the
residual deformation will be (1-e2 ) times the dynamic deformation.
Figure 6.8 shows a simple mesh with 4 nodes and 2 faces. The Stiffness value specified in the Car Body field is
used to determine nodal stiffness.

Figure 6.8: A simple mesh with 4 points and 2 faces


The nodal stiffness for the entire mesh are calculated as follows:

c1 = S

A1
A2
+S
3
3

(6.2)

A1
3

(6.3)

A1
A2
+S
3
3

(6.4)

A2
3

(6.5)

c2 = S

c3 = S

c4 = S
where:
ci stiffness of node i
Aj Area of face j
S model stiffness per unit area

6.1.2.2

Vehicle to Ground/Slope Polygon Contacts

The contact force for each node in the model is calculated based on the deformation of each node.

450

CHAPTER 6. ADDITIONAL MODELS

Figure 6.9: Mesh deformation against a rigid plane


The contact force is calculated as follows:

= |P3 P3 |

(6.7)

(6.8)

F n = c3 n plane

Pc = P3 = P3 + n plane

- .
.

- .
.
F t = -F n - c . v P3 v P cplane .

where:

(6.6)

(6.9)

F n normal contact force

F t tangential contact force


c contact friction
deformation

6.1.2.3

Vehicle to Vehicle Contacts

Vehicle to vehicle contact calculations are similar to vehicle to slope contacts. For each integration step in the
calculations one vehicle (the master vehicle) defines the contact surface using its mesh faces and the second
vehicle (the slave vehicle) is exposed to deformation by calculating contacts between its nodes and the faces
of the master vehicle. The master surface is not exposed to any deformation during this calculation. Master
and slave vehicles change their order in each integration step. Node deformation of the slave vehicle is always
perpendicular to the face on the master vehicle it is in contact with.

6.2. KINETIC PATH DRIVER MODEL

451

Figure 6.10: Master and slave mesh before deformation (left) and after deformation (right) in one integration
step

6.2

Kinetic Path Driver Model

A user-definable path can be specified for vehicles, instead of using steering sequences. The kinetic path driver
model uses the current linear and angular vehicle position with respect to a point on the path as input parameters
to calculate the current steering angle. A look-ahead distance, which depends on the velocity of the vehicle, is
used to define where on the path the reference point is.

Figure 6.11: The kinetic path look-ahead distance


To calculate the current steering angle the position of the reference point is calculated first. Next the nearest
path point is found and the current slope and position of this path point is used to calculate the linear and angular
displacement for the vehicle.
Pref = Pcar + Dlookahead dcar
Dlookahead = Tlookahead vcar
Edist = (Pref Ppath ) npath
Eangular3= 3car path4
sin(path )
npath =
cos(path )

(6.10)

where:
Pref reference point for the calculation of linear displacement
Pcar vehicle reference point (the specified anchor point, which is the center of gravity or one of the wheels)
vcar vehicle velocity
Tlookahead look-ahead time
dcar vehicle direction vector (the heading)
Edist linear displacement
Eangular angular displacement

452

CHAPTER 6. ADDITIONAL MODELS

Ppath nearest path point to the reference point


npath normal vector on the path curve at position Ppath
path direction of the path curve at position Ppath
Using the current linear and angular displacement the driver model calculates the new steering angle, which is
used in the simulation step.
With the Kinetic models used, the vehicle will not follow the curve of the path exactly, as shown below. The
higher the speed, the more the vehicle will try to cut corners, as the look-ahead distance Dlookahead will be
larger.

Figure 6.12: Actual vehicle paths compared to defined path


Since the kinetic path models only influence vehicle steering; all other vehicle dynamics are calculated and taken
into account as stated in the previous chapters. If physical limits are exceeded the vehicle will start to slide or roll
over, as it would if a steering sequence was used instead of the path model. Only when the Kinematics model
is selected does the vehicle follow the specified path exactly. When the Kinematics model is used, however, the
user must check that the defined path is possible for the selected vehicle, speed and scene friction.
There is a choice between two kinetic path steering models: the Fuzzy model and the PID model.

6.2.1

Fuzzy Model

The fuzzy model is a rule-based model, which uses the distance between follow point and point on the follow
path (Edist ) and the difference between path slope angle and vehicle heading angle (Eangular ) as its two inputs.
A set of rules define the steering angle and all rules are calculated in each integration step; the results of all rules
are then combined to get the actual steering angle.
Rules used in the fuzzy driver model:
1. if Edist = Lneg then steering = Lneg
2. if Edist = Mneg then steering = Mneg
3. if Edist = zero then steering = zero
4. if Edist = Mpos then steering = Mpos
5. if Edist = Lpos then steering = Lpos
6. if Eangular = Lneg then steering = Lpos
7. if Eangular = Mneg then steering = Mpos
8. if Eangular = Mpos then steering = Mneg
9. if Eangular = Lpos then steering = Lneg
10. if Eangular = zero then steering = zero

6.2. KINETIC PATH DRIVER MODEL

453

where:
Lneg large negative range
Mneg medium negative range
Zero zero range
Mpos medium positive range
Lpos large positive range
The ranges for Edist , Eangular and Steering are shown in the following tables and diagrams.

Lpos
3
5
10
10

Mpos
0
3
3
5

zero
-2
0
0
2

Mneg
-5
-3
-3
0

Lneg
-10
-10
-5
-3

Value
0
1
1
0

Fuzzy model Edist ranges

Figure 6.13: Fuzzy model Edist ranges

Lpos
90
135
180
180

Mpos
0
45
90
135

zero
-45
0
0
45

Mneg
-135
-90
-45
0

Lneg
-180
-180
-135
-90

Fuzzy model Eangular ranges

Value
0
1
1
0

454

CHAPTER 6. ADDITIONAL MODELS

Figure 6.14: Fuzzy model Eangular ranges


Lpos
30
40
50
50

Mpos
15
25
25
35

zero
-5
0
0
5

Mneg
-35
-25
-25
-15

Lneg
-50
-50
-40
-30

Value
0
1
1
0

Fuzzy model Steering ranges

Figure 6.15: Fuzzy model Steering ranges

6.2.1.1
Edis

Example

= -2m, Eangular = -25

Step 1: Fuzzification
These two input values are transformed to degrees of membership as follows:

6.2. KINETIC PATH DRIVER MODEL

Figure 6.16: Fuzzy model example with Edist = -2m


-2m has a membership of 65% to Mneg, 0% to other ranges.

Figure 6.17: Fuzzy model example with Eangular = -25


-25 has a membership of 55% to Mneg, 45% to zero.
Step 2: Rules are calculated

All rules are calculated based on the membership values of the input parameters:
1. if Edist = Lneg then steering = Lneg (0%)
2. if Edist = Mneg then steering = Mneg (65%)
3. if Edist = zero then steering = zero (0%)
4. if Edist = Mpos then steering = Mpos (0%)
5. if Edist = Lpos then steering = Lpos (0%)
6. if Eangular = Lneg then steering = Lpos (0%)
7. if Eangular = Mneg then steering = Mpos (55%)
8. if Eangular = Mpos then steering = Mneg (0%)
9. if Eangular = Lpos then steering = Lneg (0%)
10. if Eangular = zero then steering = zero (45%)

455

456

CHAPTER 6. ADDITIONAL MODELS


Step 3: Defuzzification
The steering angle is calculated as the centroid of the areas of the membership functions of the steering
ranges. For the example shown, the centroid of the three areas was determined from the Figure 6.14 to be
1.5 , which is the calculated steering angle for this integration step. This steering angle is the angle of
the inside wheel - the outside wheel angle is determined from the Ackerman ratio for the particular vehicle.

Figure 6.18: Fuzzy model example steering angle determination.

6.2.2

PID Model

The PID (Proportional - Integral - Derivative) model calculates the steering angle as follows, for each integration
step:

SA = Eangular + P Edist + I

Edist dt + D

d(Edist )
dt

(6.11)

where:
P = proportional constant [10 x deg/m]
I = integration constant [10 x deg/(ms)]
D = derivative constant [(10 x deg/(m/s)]

6.3

Lane Change Model

This model allows the user to easily specify a lane change maneuver for a vehicle, based on several different
parameters. These parameters, which influence the way the lane change is simulated, are:
dof f set lateral offset of the lane change
amax maximum lateral acceleration
vs steering angular velocity
LDist lateral steer rise distance (in percent of dof f set )
The lane change maneuver is divided into 3 phases, as shown in the following figure.

6.3. LANE CHANGE MODEL

457

Figure 6.19: Steering angle over distance during a lane change.


Phase 1

During this phase the steering angle is increased linearly over time using the specified steering velocity. The
steering velocity defines the angular steering velocity of the outside road wheel, not the steering wheel.
If the current lateral acceleration of the vehicle exceeds the maximum lateral acceleration specified, the
L
d
steering angle will not be increased anymore. If the current lateral offset exceeds the value Dist100of f set ,
Phase 1 ends.

Phase 2

During this phase the steering angle is decrease to zero using the specified steering velocity. When the
steering angle reaches 0 Phase 3 starts.

Phase 3

During Phase 3 the vehicle reaches the full lateral offset and tries to follow the path defined by the initial
direction of the car before the lane change and the lateral offset specified. The current steering angle is
calculated directly. At the beginning of Phase 3 a look-ahead distance is calculated, from which the actual
steering angle is determined for each simulation step:
Dlookahead =
steering = arcsin

dof f set dactualof f set


sin(3actual 3initial )

dof f set dactualof f set


Dlookahead

where:
Dlookahead look-ahead distance
dof f set lateral offset specified for the lane change maneuver
dactualof f set current lateral offset
3actual current vehicle heading
3initial vehicle heading at the start of the lane change maneuver
steering calculated steering angle for the next time step

(6.12)
4

(6.13)

458

CHAPTER 6. ADDITIONAL MODELS

Chapter 7

FE-Model
7.1

Introduction

Currently most programs used in accident reconstruction cannot produce detailed information about the deformation of vehicles and other objects well. Thus predictions of the deformation energy in relation with deformations
can be estimated with some limitations regarding to the accuracy. .
Finite Element (FE) calculations can close this gap. Using the FE method and related calculations, contact
forces and deformations as well as deformation energy can be calculated at a high accuracy for a known geometry,
material properties and specific load case [133]. PC-Crash closes this gap with integrating FE module and related
numerical methods into the accident reconstruction process. [137]
This paper describes the different FE based models in PC-Crash, their application and validation. A FE
calculation example is included in section Examples, chapter FE calculation on page 371.
The FE method implemented in PC-Crash extends the possibilities of PC-Crash in the analysis of vehicle
accidents into areas, which cannot be dealt with currently available mathematical models. With this additional
feature we could produce more detailed results, which can help to answer very detailed questions like how much
energy was absorbed by some specific structure, what force was produced in the contact of two bodies (i.e.
deformation of a trailer hitch or pole (Figure 7.1 to Figure 7.4). This opens vast possibilities for a deeper insight
in a specific car accident or a specific type of car accidents already during the phase of accident reconstruction
In the accident reconstruction process very often detailed information about the geometry, material and
deformation of objects and vehicle parts is known or can be collected (Figure 7.1 to Figure 7.4). However, it is
unsatisfying that this information cannot be used or evaluated in most current accident reconstruction programs.
Crash tests like in Figure 7.1 can be used to compare the real accident and the test to gain information about
the impact velocity, velocity change of the vehicle and vehicle acceleration in a real accident. However, this
would only provide reasonable results if the configuration (diameter of the pole, wall thickness, material, bumper
structure) is very similar.

Figure 7.1: Deformed pole and vehicle after a crash test (AREC 2011.09 impact velocity 10.8 km/h) [135]
459

460

CHAPTER 7. FE-MODEL

Although crash tests give very detailed and accurate information, extrapolation of experimental results to
different configurations need to be done very carefully. In some cases additional experiments need to be performed.
This is expensive on one hand and very time consuming on other hand.

Crash tests are of course extremely useful to understand the collision and behavior of the colliding objects and
the damage generation in all its details. Also for mathematical model validation crash tests are essential; however,
the possibility to numerically evaluate different versions of performed experiments and study the correlation with
the real life accidents should be understood as a real breakthrough in the field of road accident reconstruction.

Figure 7.2: Deformed front bumper structure after a collision against a trailer hitch (Source: Frtig GbR, IngenieurBro fr Kfz-Technik)

Figure 7.3: Deformed trailer hitch (Source: Ingenieurbro fr Fahrzeugtechnik von der Wehd)

7.1. INTRODUCTION

461

Figure 7.4: Deformed structure after a minor collision

7.1.1

FE numerical scheme description

The finite element scheme in PC-Crash uses an explicit solver to calculate stresses, strains and displacements. This
scheme can be used to solve problems related to the linear and nonlinear transient dynamic problems including
problems related to the contact between two bodies. The main calculation procedure for the explicit finite element
method is outlined in Figure 7.5.

Figure 7.5: Explicit finite element procedure (central difference method) [134]
Once the nodal displacements uhn for a given time step have been calculated (step 1) the nodal strains hn can
be calculated. The stress/strain material law is used to determine the relationship between stress and strain and
hence the stresses can be calculated (step 2). As results the nodal accelerations Ahn are calculated based on the
internal and external nodal forces (step 3). Based on the nodal forces the nodal accelerations are calculated, the
new nodal velocities vnh and displacements are then calculated through integration (step 4). These steps are then
repeated for all integration steps i.e. over the time interval of interest

7.1.2

Finite Elements specification

The FE method is based on a simple idea that the solution of complex problems in continuum could be addressed
in terms of greater (but finite) number of solutions based on a very simple geometry, geometrical elements and

462

CHAPTER 7. FE-MODEL

material properties description within such a geometrical element. Of course we need to make sure, that these
simple solutions for each geometrical element are interconnected to get a solution, which is close to the physical
reality in a continuum. Geometrical elements together with a description how some variable is changing within
the space of this element is called finite element (FE). Finite elements need to have some properties:
1. Accurate representation of the complex geometry.
2. Possibility to describe specific physical phenomena within the element.
3. Combination of the solutions within each finite element in such way that solution over all finite elements is
valid for a complete domain of our interest.
The process of discretization of the domain of interest is therefore of great importance. The discretization
process is a geometry related problem. The discretization process requires determining the coordinates of the nodes
and geometrical connections between the nodes. In three dimensional space nodes and geometrical connections
between nodes form a specific simple geometry (see Figure 7.6 and 7.7) which is called Finite Element geometry.
In addition within each Finite Element geometrical model we need to introduce so called approximation functions,
which are used to mathematically describe the physical phenomena under considerations (i.e. displacement,
velocity, acceleration, temperature, etc.). Considering kinematic and kinetic problems related to the mechanic of
continuum the finite elements can have a varying number of nodes with a different number of degrees of freedom
for the surface of the domain as well as for the inner space of the domain under consideration. Each element may
then have different material properties as well as different properties related to the kinematic and kinetic (i.e.
different parameters do detect and describe normal contact forces and related tangential contact forces closely
related to the friction problems).
In PC-Crash the following Finite Element types are implemented:
1. Shells are used to model thin-walled structures where the thickness is less then approx. 10 % of the element
dimension. 3 node shell elements according to the classical C0 formulation (Shell_C0_3) and 4 node
shell elements according to the Belytschko-Tsai formulation (Shell_BT_4) are available [134], [139], [140]
(Figure 7.7). Shell elements can have up to 6 degrees of freedom in their nodes and do have integrated
contact elements.
2. Solids are used to model volumes. These elements can have 4 to 8 nodes (Figure 7.7), each node has 3
degrees of freedom (displacements).
3. Rods are 2 node elements to model lattice structures or to connect parts (spot-welds). These elements
have integrated contact elements, each node has 3 degrees of freedom.
4. Spring-damper elements are connection elements to connect different geometrical domains (parts) of the
model and give possibility to evaluated forces between them. Translational and rotational stiffness and
damping can be specified.

Figure 7.6: Shell elements

7.1. INTRODUCTION

463

Figure 7.7: Different solid elements

7.1.3

Nodes

The used Finite Elements are such that the mass and moment of inertia of a specific volume defined by geometry
of the Finite Element is concentrated at the nodes. Therefore so called lumped mass approach was implemented.
Moreover nodes can be assigned an additional mass and moment of inertia. External loads as well as boundary
conditions and kinematic constraints can be applied to the nodes.

7.1.4

Constraints

Two different types of constraints can be specified for the nodes:


1. Boundary conditions are used to define initial conditions like initial displacement, velocity or acceleration
to nodes. Linear and angular accelerations and velocities can be specified in all 3 directions either in the
global coordinate frame as well as in the local coordinate frame. A time dependent function can be used to
specify this type of boundary conditions. In this way a velocity for nodes can be defined or certain nodes
can be fixed if needed. Also kinematic constraints can be specified.
2. Rigid body constraints are used to combine a number of nodes as part of one rigid body connected to a
master node. This can be used if parts of a surface should be fixed to the center of gravity of the model.

7.1.5

External Loads

To apply loads to the model forces, torques, linear and angular accelerations as well as pressures can be defined
either as constant or time dependent values which will be applied to the nodes.

7.1.6

Contact calculation

The module in PC-Crash uses a penalty based contact algorithm. Surface and line contact algorithms are
available. Some element types have integrated contact elements (shells and rods) for others like solids explicit
contact surfaces have to be defined as only a part of the solid elements surfaces would act as contact surfaces
(e.g. for the engine block consisting of several solid elements).

7.1.7

Discretization process-Mesh generation

The mesh generation or discretization process is one of the key steps in creating the finite element model. The
mesh of the domain is created on the basis of domain surface geometry. Depending on the surface geometry
different element types need to be used. The quality of the mesh is of great importance. Normally a finite element
is numerically effective if the proportions of geometrical primitives are as close as possible to the value of 1 (the

464

CHAPTER 7. FE-MODEL

length of the individual edges is similar, long narrow elements are numerically inefficient). Therefore to obtain a
high quality mesh we could use of 3 or 4 node surface elements, volume elements and line elements.

Figure 7.8: Mesh generation of a structural element in gmsh [138]


Different programs are available to perform this task also free programs like gmsh [138] are available (Figure
7.8). Many meshing programs as gmsh can use parameters to describe the model geometry so changes to the
dimensions of an object can be done easily without the need of regenerating the whole geometry. You can find
an example for geometry generation with gmsh on page 361.
The finite element preprocessor in PC-Crash can read gmsh and GID [141] files directly, material and element
properties as well as boundary conditions and constraints can then be specified from within PC-Crash.

7.1.8

Material models

Three different isotropic material models (material properties are the same in all directions) with the following
parameters are implemented:
1. Elastic material model:
(a) E: Youngs modulus
(b) : material density
(c) v: Poisson ratio
(d) F , F : failure stress and failure strain
2. Elastoplastic material model: In addition to the above parameters the plastic behavior of the material can
be specified in one of the following three ways
(a) Y , EP: yield stress and strain hardening coefficient
(b) =f(): stress/strain curve (as in Figure 7.9)
(c) =f(, ):
strain rate dependent stress/strain diagrams
3. Thermoelastoplatic material: In addition to the elastoplastic material parameters the following values can
be specified
(a) : thermal expansion coefficient
(b) T: nodal temperatures

7.1. INTRODUCTION

465

Figure 7.9: Stress/Strain curve showing typical yield behavior with true elastic limit (1), proportionality limit (2),
elastic limit (3) and offset yield strength (4) [142]

Depending on the material model used all of the above parameters have to be specified or only a subset of
the parameters. PC-Crash provides a library of different material parameters which can be used as an alternative
to obtaining the parameters from manufacturer of the object.
Using a failure stress or failure strain value material failure can be modeled as well, once the failure threshold
is exceeded for an element this element is removed for the numerical scheme in next time step.

7.1.9

Results

The results of the simulation can be visualized (post-processed) in different ways directly in PC-Crash. The results
are also save in GiD [141] format so external post processing programs can be used as well.
The whole model with color coded node and element values for stress, strain and displacement can be viewed
for a given point of time in the simulation, animations can be generated as well so the dynamics of the problem
can be seen easier (Figure 7.10).
Diagrams for all relevant nodal values can be generated for selected nodes or groups of nodes. (E.g. nodal
accelerations as in Figure 7.15). The following diagrams are available

1. Contact forces

2. Energy (internal and external)

3. Node acceleration, displacement, distance, forces, moment, velocity

4. Rod forces

5. Section forces (e.g. forces for a certain cross section)

466

CHAPTER 7. FE-MODEL

Figure 7.10: Color coded element stresses and nodal displacements are displayed for a contact between a contact
surface and a trailer hitch at contact and 3, 6 and 9 ms after first contact.

7.1.10

Calculation time

As the number of calculations needed for the finite element model is significantly higher than for a rigid body
vehicle simulation the simulation time for the finite element model is of course higher. However, with the
calculation power of modern computers with multi-core or multi-processor architecture simulations as shown in
the validation part of this paper can be performed in approx. 400 s for 600 ms of simulation time on an Intel
i7 processor. PC-Crash also provides batch processing and support for multi-core and multi-processor systems.
Using batch processing a number of simulations can be configured first (e.g. different impact velocities, boundary
conditions etc.) and then all these different simulations can be simulated in batch mode so no user interaction is
needed during the calculation. Once the calculations are finished the results can be imported into the program
again. In this way the workflow can be optimized.

7.2

Validation

During the AREC conference in 2011 several crash tests between a car and a pole have been performed. The
vehicle movement, velocities and accelerations have been recorded using accelerometers and high speed video.
The tests where the pole was hit in the middle of the front or rear of the vehicle are used for the following
validation of the FE model in PC-Crash.
The impact configuration and vehicle and pole data are shown in Figure 7.11 and Figure 7.12.

7.2. VALIDATION

467

Figure 7.11: Impact configuration in AREC 2011.09 (10.8 km/h) and AREC 2011.12 (19.4 km/h)
Vehicle
Make
Model
Test weight
Pole
Diameter
Wall thickness
Material
Elements
(Shell_C0_3)
Nodes
Mesh resolution

Ford
Focus Turnier
1270 kg
76.1 mm
3.6 mm
Steel S235JR
2098
1107
40 mm

Figure 7.12: Vehicle and pole data for the crash tests
As only very little deformation has been recorded during the crash tests the vehicle surface was modeled only.
Deformation on the surface is allowed, however, if the deformation were large the structure underneath should be
modeled as well.

Figure 7.13: Simulation model for the pole impact simulation, only the vehicle surface is modeled as the
deformations on the vehicle are not very deep (2098 elements, 1107 nodes)
The comparison of the simulation results for the movement of the vehicle and the pole in Figure 7.14 as well
as the comparison of the vehicle acceleration in the test and in the simulation in Figure 7.15 show a very good
correlation between the simulation and the crash test.

468

CHAPTER 7. FE-MODEL

The simulation model is able to represent the effects of the pole impact occurring during the test. In addition
using the simulation model variations for the impact parameters can be done very easily. In this way the unknown
areas between the tests performed can be filled using simulation.

The velocity vs. time diagram in Figure 7.16 shows from which impact velocity the vehicle will drive through
the pole and the pole is fully bent to the road. There is a certain velocity change for the vehicle but the vehicle
still has a forward velocity after the collision.

Parameters for the momentum based impact analysis like delta-v and the coefficient of restitution can be
derived as well as shown in Figure 7.17 and Figure 7.18.

7.2. VALIDATION

469

Figure 7.14: Comparison of calculation results (right) and test data (left) for test AREC 2011.09 (10.8 km/h)

470

CHAPTER 7. FE-MODEL

Figure 7.15: Comparison of calculation results (vehicle accelerations for yield stress of 280 and 235 N/mm2 , with
and without vehicle deformation) and test data for test AREC 2011.09 (10.8 km/h)

Vehicle velocity - FE simulation


25

velocity [km/h]

20

15

10

-5
0

0.1

0.2

0.3
Time [s]

0.4

0.5

0.6

Figure 7.16: Velocity vs. time diagram for different impact velocities (simulation)

Delta-v
16
FE calculation
FrontM-11.16

RearM-11.09

12

Delta-v [km/h]

AREC2011

RearL-11.11

14

RearL-11.10

10

FrontL-11.14
8
6

RearR-11.12b
RearM-11.12

4
2
0
0

10

15

20

25

30

35

40

45

vk [km/h]

Figure 7.17: Comparison of calculation results (vehicle velocity change) and test data

7.3. SUMMARY/OUTLOOK

471
Restitution
0.60
AREC2011

Coefficient of Restitution

0.40

FE calculation
RearR-11.12b RearL-11.11

0.20
0.00

RearM-11.09

-0.20
-0.40
RearL-11.10

-0.60
-0.80

FrontM-11.16
FrontL-11.14

RearM-11.12

-1.00
0

10

15

20

25

30

35

40

45

vk [km/h]

Figure 7.18: Comparison of calculation results (coefficient of restitution) and test data

Figure 7.19: Comparison of calculation results (vehicle accelerations) and test data for test AREC 2011.12 (19.4
km/h)

7.3

Summary/Outlook

The simulation model has shown a very good correlation with the test data in the above described crash tests.
Using finite element calculation in conjunction with crash tests helps to validate the model on the one hand and
to provide additional data on the other hand, so the number of crash tests can be reduced. This combination is
very effective as performing crash tests is expensive and time consuming and a part of the workload for crash test
preparation and conduction can be spend in developing and validating additional models.
Even if many crash tests are performed parameter variation is difficult to do, e.g. if the wall thickness of the
pole should be varied a complete new set of tests has to be performed. Here the strength of the simulation can
be used to do these variations based on a model validated through a limited number of crash tests.
The finite element model in PC-Crash now provides the means for a complete new set of possibilities for the
analysis of accidents. Many applications in the field of accident reconstruction where deformation behavior is to
be analyzed can be considered.
The more complex the models are of course the more validation work is needed. Additional models and their
validation will be performed by the authors but also validated finite element models are available through the
National crash analysis center (NCAC) [136]. Some of these validated models are shown in Figure 7.20, models
for different vehicle types and categories as well as models for guardrails, barriers, impactors and other object on
the roadside are provided. In interface to these models will be included in PC-Crash.

472

CHAPTER 7. FE-MODEL

Figure 7.20: Validated finite elements models from NCAC [136]

Chapter 8

FE Dokumentation
8.1

File format

The fembic input data format is the default input data format. It is designed to be simple to read and understand,
and is written in free format which means that you can type as you wish and do not have to put data at specific
locations in the file. A file which is written in Fembic should have a name which ends with .in and be in ASCII
format.
Comments may be included on any line but must be preceded by a # character. Every text written behind
this sign will be ignored and the parser will continue on the next line instead.
The General syntax for this manual is that letters in bold are required input for the command. Input in normal
writing are optional.
The input file is structured in blocks. Each block starts with a keyword, followed by data related to that
block. The blocks can come in any order and may be repeated. A block must start on a new line using any of
the keywords. Each keyword and the related data will now be described.
1. Controls
2. Materials
3. Nodes
4. Elements
5. Constraints
6. Loads
7. Trackers

8.1.1

Units

PC-Crash can handle any unit of input data as long as the user is consistent between the different types. The
following table summarizes possible combinations for SI units, but similar principles also works for any other units:
473

474

CHAPTER 8. FE DOKUMENTATION

Length
m
m
m

Time
s
s
s

Mass
kg
kg
g

Force
kg m/s2
N
mN

Pressure
N/m2
Pa
mPa

Velocity
m/s
m/s
m/s

m
m
m

s
ms
ms

Mg (ton)
kg
g

kN
MN
kN

kPa
MPa
kPa

m/s
km/s
km/s

m
mm
mm
mm
mm
mm
mm
cm

ms
s
s
s
ms
ms
ms
ms

Mg (ton)
kg
g
Mg (ton)
kg
g
Mg (ton)
g

GN
mN
N
N
kN
N
MN
daN

cm

ms

kg

cm

ms

Mg (ton)

cm

micro s

104
N
(kdaN)
107
N(MdaN)
107
N
(MdaN)

GPa
kPa
Pa
MPa
GPa
MPa
TPa
105 Pa
(bar)
108 Pa
(kbar)
1011 Pa
(Mbar)
1011 Pa
(Mbar)

8.1.2

Energy
kgm2 /s2
J
mJ

Gravity
9.81
9.81
9.81

kJ
MJ
kJ

9.81
9.81e-6
9.81e-6

km/s
mm/s
mm/s
mm/s
m/s
m/s
m/s
dam/s

Density
kg/m3
m kg/l
micro
kg/l
kg/l
m kg/l
micro
kg/l
kg/l
M kg/l
g/mm3
Mg/mm3
M kg/l
k kg/l
G kg/l
kg/l

GJ
micro J
nJ
mJ
J
mJ
kJ
dJ

9.81e-6
9.81e+3
9.81e+3
9.81e+3
9.81e-3
9.81e-3
9.81e-3
9.81e-4

dam/s

k kg/l

hJ

9.81e-4

dam/s

M kg/l

105 J

9.81e-4

104 m/s

kg/l

105 J

9.81e-10

Controls

The control block is initiated with the word CONTROLS on a single line. There can only be one control block
in any given indata file. All commands designed to control the solution process are defined here. One command
with its associated parameters is defined in each line.
Syntax:
CONTROLS
Examples:
1
2
3

CONTROLS
Run from 0.0 to 35.0
Print every 0.5 step

8.1.2.1

Run

This command controls the solution process. The starting time and the end time are mandatory while control of
the time step size is optional. If this is left blank, the most optimal step size for each step during the solution
process will be chosen.
Syntax:
run from svalue to evalue [step stpvalue]
svalue
evalue
stpvalue

Examples:

Start time for solution


End time for solution
Stepsize for the solution (optional). Specifying this value disables autostep. The value can
be a single number but could also vary with time. It should then be specified within brackets
with time, timestep specified in pairs: [t1,ts1,t2,ts2....tn,tsn]

8.1. FILE FORMAT

1
2
3

475

Run from 0.0 to 1.2


Run from 0.0 to 1.2 step 0.0001
Run from 0.0 to 2.0 step [0,off,1.8,1e-5,2.0,1e-5,2.01,off,10,off]

8.1.2.2

Print

This command controls the print process during the solution. The command can also be repeated with the tracker
word if the printing interval is to be set specifically for the trackers. The results are printed with the interval
specified. Depending on how the element perform its internal calculations, the output may be local or global
stresses and strains. Displacements of nodes are also printed so that mesh deformation can be followed. If no
specific interval will be set for the trackers, they will print at the same time as the general printing occurs.
Syntax:
print [tracker] every stpvalue step
tracker
stpvalue

tracker selection (optional)


Stepsize for the printout

Examples:
1

Print every 0.01 step

8.1.2.3

For

This command selects which Writer and Trackwriter to use. This selection determines the output format for the
result files and thereby the selection of postprocessor. The default is that both the resultfiles and tracker files are
printed in GID format. This command is entirely optional and is often left out.
Syntax:
For WType use WValue
WType
WValue

Choice of writer type to specify. Can be either Writer or TrackWriter


For Writer this can currently only be GIDWriter. For TrackWriter this can currently only
be GIDTrackWriter

Examples:
1
2

For Writer us GIDWriter


For TrackWriter use GIDTrackWriter

8.1.3

Materials

8.1.3.1

Materials

A specific material is defined by setting the parameters of a specific material law. There are several material laws
available, depending on material choice. There are laws that are suitable for metals and other more suitable for
foams, which may behave differently. The material law is then assigned to one or several elements in the element
definition.
Syntax:
Materials of Type MType

476

CHAPTER 8. FE DOKUMENTATION
name of a specific material law (see the following sections for the different material models).
After each block heading, the specific materials are listed with the parameters defined. One
material per line.

MType

Examples:

1
2
3

MATERIALS OF TYPE ELASTOPLASTIC


MAT_4
E = 210.0
RHO = 7.8E-6
MAT_2
E = 210.0
RHO = 7.8E-6

8.1.3.2

NU = 0.3 EP = 0.1 YIELD_STRESS = 0.18


NU = 0.3 EP = 0.1 YIELD_STRESS = 0.18

Elastic

This is a simple elastic material law.


Syntax:
name E = EValue RHO = RValue NU = NValue [FAILURE_STRAIN = FStrainValue FAILURE_STRESS =
FStressValue]
name
EValue
RValue
NValue
FStrainValue
FStressValue

name of the material, must be unique


Youngs modulus for the material
density of the material
Poissons constant of the material
The strain at which the material fractures. If an element reaches this strain, it will be removed
from the simulation
The stress at which the material fractures. If an element reaches this stress, it will be removed
from the simulation

Examples:

1
2

steel E = 210 D = 0.0000078 NU = 0.3


Steel E = 200 RHO = 0.0000078 NU = 0.3 FAILURE_STRESS = 0.8

8.1.3.3

Elastoplastic

This is an isoparametric elasto-plastic material law. The elastic Youngs modulus defines the stress-strain relation
up to the yield stress. Above yield stress, there are several options. The plastic behaviour can be described by the
plastic modulus (EP) which defines a linear relation between the stress and effective plastic strain. This relation
can also be a curve, defined by a range of stress/strain coordinates. The EP in this case has no function and can
be omitted. Finally, the relation can also be dependent on the strain rate in which several stress/strain curves
are defined together with a parameter setting the velocity for which each curve is representative. The stress for
a certain effective strain value is determined as a linear interpolation from these curves.
Syntax:
name E = EValue RHO = RValue NU = NValue YIELD_STRESS = YValue EP = EPValue [FAILURE_STRAIN = FStrainValue] [FAILURE_STRESS = FStressValue] [V1 = V1Value] [Y1 = Y1Value]

8.1. FILE FORMAT


name
EValue
RValue
NValue
YValue

EPValue
FStrainValue
FStressValue
V1...V9
Y1...Y9

477

name of the material, must be unique


Youngs modulus for the material
density of the material
Poissons constant of the material
The yield stress of the material. If this is a single number, the EP variable must be set in
order to define a linear plastic relation. The second option is to define the yield stress as a
range of strain/stress coordinate pairs. Example is [eps0,stress0,eps1,stress2,....,epsn,stressn].
Remember that the strain is effective plastic strain which is equal to zero at initial yield. When
the Y1...Y9 parameters are used, this stress/strain curve is defined for a certain strain rate,
defined in the corresponding V1..V9
is the plastic modulus or tangent modulus in the plastic region. If a curve is defined for the
yield stress, this parameter is not needed
The strain at which the material fractures. If an element reaches this strain, it will be removed
from the simulation
The stress at which the material fractures. If an element reaches this stress, it will be removed
from the simulation
is the strain rate for which the Yx curve is defined. The V1 value defines the strain rate for Y1
and so on. The stress/strain curve for a zero velocity is defined in the ordinary YIELD_STRESS
parameter
yield stress for a certain strain rate

Examples:

1
2
3

epsteel E = 210 RHO = 0.0000078 NU = 0.3 YIELD_STRESS = 0.180 EP = 0.1


steel2 E = 210 RHO = 0.0000078 NU = 0.3 YIELD_STRESS = [0,0.180,0.3,0.220,2.0,0.250]
v_steel E = 210 RHO = 0.0000078 NU = 0.3 YIELD_STRESS = [0,0.180,0.3,0.220] V1 = 0.2 Y1 = [0,0.200,0.3,0.240]

8.1.3.4

ThermoElastoplastic

This is an isoparametric thermo-elasto-plastic material law. The elastic Youngs modulus defines the stress-strain
relation up to the yield stress. Above yield stress, there are several options. The plastic behaviour can be described
by the plastic modulus (EP) which defines a linear relation between the stress and effective plastic strain. This
relation can also be a curve, defined by a range of stress/strain coordinates. The EP in this case has no function
and can be omitted. Finally, the relation can also be dependent on the strain rate in which several stress/strain
curves are defined together with a parameter setting the velocity for which each curve is representative. The
stress for a certain effective strain value is determined as a linear interpolation from these curves.
Syntax:
name E = EValue RHO = RValue NU = NValue YIELD_STRESS = YValue EP = EPValue T = TValue
A = AValue [FAILURE_STRAIN = FStrainValue] [FAILURE_STRESS = FStressValue] [V1 = V1Value] [Y1
= Y1Value]

478

CHAPTER 8. FE DOKUMENTATION

name
EValue
RValue
NValue
YValue

EPValue
TValue
AValue
FStrainValue
FStressValue
V1...V9
Y1...Y9

name of the material, must be unique


Youngs modulus for the material
density of the material
Poissons constant of the material
The yield stress of the material. If this is a single number, the EP variable must be set in
order to define a linear plastic relation. The second option is to define the yield stress as a
range of strain/stress coordinate pairs. Example is [eps0,stress0,eps1,stress2,....,epsn,stressn].
Remember that the strain is effective plastic strain which is equal to zero at initial yield. When
the Y1...Y9 parameters are used, this stress/strain curve is defined for a certain strain rate,
defined in the corresponding V1..V9
is the plastic modulus or tangent modulus in the plastic region. If a curve is defined for the
yield stress, this parameter is not needed
Temperature
Thermal Coefficient of Expansion
The strain at which the material fractures. If an element reaches this strain, it will be removed
from the simulation
The stress at which the material fractures. If an element reaches this stress, it will be removed
from the simulation
is the strain rate for which the Yx curve is defined. The V1 value defines the strain rate for Y1
and so on. The stress/strain curve for a zero velocity is defined in the ordinary YIELD_STRESS
parameter
yield stress for a certain strain rate

Examples:

1
2
3

epsteel E = 210 RHO = 0.0000078 NU = 0.3 YIELD_STRESS = 0.180 EP = 0.1 T = 0 A = 0.0000113


steel2 E = 210 RHO = 0.0000078 NU = 0.3 YIELD_STRESS = [0,0.180,0.3,0.220,2.0,0.250] T = 0 A = 0.0000113
v_steel E = 210 RHO = 0.0000078 NU = 0.3 YIELD_STRESS = [0,0.180,0.3,0.220] V1 = 0.2 Y1 = [0,0.200,0.3,0.240] T = 0 A =
0.0000113

8.1.3.5

Spring

This is a dummy material which defines all the spring stiffnesses and damping for a spring element. It cannot be
used together with any other element types. Stiffness and damping can be defined as a function or constant for
all directions.
Syntax:
name KX = KXValue KY = KYValue KZ = KZValue KRX = KRXValue KRY = KRYValue KRZ = KRZValue CX = CXValue CY = CYValue CZ = CZValue CRX = CRXValue CRY = CRYValue CRZ = CRZValue

8.1. FILE FORMAT


name
KXValue
KYValue
KZValue
KRXValue
KRYValue
KRZValue
CXValue
CYValue
CZValue
CRXValue
CRYValue
CRZValue

479

Name of the material. Must be unique


The stiffness along the local x-axis. Can be defined as a constant or a function of the local
x-displacement. If a function is wanted, the syntax shuld be kx = [d0,K0,d1,K1,...,dN,KN].
By default, this stiffness is assumed 0.
The stiffness along the local y-axis. Can be defined as a constant or a function of the local
y-displacement. By default, this stiffness is assumed to be the same as for KX
The stiffness along the local z-axis. Can be defined as a constant or a function of the local
z-displacement. By default, this stiffness is assumed to be the same as for KX.
The stiffness around the local x-axis. Can be defined as a constant or a function of the local
x-rotation. By default, this stiffness is assumed 0.
The stiffness around the local y-axis. Can be defined as a constant or a function of the local
y-rotation. By default, this stiffness is assumed to be the same as for KRX.
The stiffness around the local z-axis. Can be defined as a constant or a function of the local
z-rotation. By default, this stiffness is assumed to be the same as for KRX.
The damping along the local x-axis. Can be defined as a constant or a function of the local
x-displacement. If a function is wanted, the syntax shuld be cx = [d0,C0,d1,C1,...,dN,CN].
By default, this damping is assumed 0.
The damping along the local y-axis. Can be defined as a constant or a function of the local
y-displacement. By default, this damping is assumed to be the same as for CX.
The damping along the local z-axis. Can be defined as a constant or a function of the local
z-displacement. By default, this damping is assumed to be the same as for CX.
The damping around the local x-axis. Can be defined as a constant or a function of the local
x-rotation. By default, this damping is assumed 0.
The damping around the local y-axis. Can be defined as a constant or a function of the local
y-rotation. By default, this damping is assumed to be the same as for CRX.
The stiffness around the local z-axis. Can be defined as a constant or a function of the local
z-rotation. By default, this damping is assumed to be the same as for CRX.

Examples:
1

attrib KX = 10 CX = [0,0,1,20,2,off,3,30,45,0]

8.1.4

Elements

8.1.4.1

Elements

The elements that make up the finite element model are defined within this block. Only one type of elements
can be defined within each block.
Syntax:
Elements of Type EType
EType

element type

Examples:
1

Elements of Type Shell_BT_4

8.1.4.2

Contact_Triangle

This is a 3 node contact element. It has no other purpose than detecting if other nodes are about to penetrate
its surface. If this is the case, the element will repel the node with a resulting reaction force onto itself. This
element is useful to model contact surfaces. It is also used in most of the other finite elements to handle contact
detection.

480

CHAPTER 8. FE DOKUMENTATION

Figure 8.1: xx

Syntax:
nr nodes = [node1,node2,node3] T = ThickValue factor = FactValue friction = FrictValue
nr
node1-3

ThickValue
FactValue
FrictValue

The element number. Must be a unique number in the model, i.e. another element cannot
have the same number
Nodes are defined in a counter clockwise direction as shown in the figure. Results from the
element can be local stresses and strains.
The picture shows the local axes where the x-axis direction are primarily defined by node 1
and 2. The z-axis is normal to the shell surface.The local y-axis is defined to be octagonal to
the x-axis and z-axis.
thickness of the contact element. The thickness is assumed to be constant over the element
width. Nodes outside the thickness are not assumed to be in contact. The contact zone
extends to half the thickness on each side of the element.
The repelling force to be used when a node penetrates. The force will increase linearly as the
node intrudes further.
The friction coefficient to be used. Usually between 0.2 and 0.8 depending on material and
condition. Only useful if contact is enabled. If not set, friction is disabled.

Examples:

1 nodes = [113,118,110] t = 1.0 factor = 100 friction = 0.2

8.1.4.3

Contact_Line

This element is a two node contact element of a line segment. The element will provide contact sensitivity within
the diameter of the line. Also ends are detected within the radius. Contact is sensed against nodes and other
contact_line elements.
Syntax:
nr nodes = [node1,node2] D = diameter factor = c_factor friction = c_friction contact = c_type

8.1. FILE FORMAT


nr
node1-2
diameter
c_factor
c_friction
c_type

481

The element number. Must be a unique number in the model, i.e. another element cannot
have the same number.
The number of the first node etc.
the cross section diameter of the element. The cross section is solid circular.
The contact factor. This is the reaction force at full penetration of contact node. If nothing
is specified, default is 10.
The friction coefficient to be used. Usually between 0.2 and 0.8 depending on material and
condition. Only useful if contact is enabled. If not set, friction is disabled.
Contact type. Can be OFF to disable contact. Default contact type is BASIC which means
that contact sensing is enabled.

Examples:
1

1 nodes = [23,24] D = 4.73

8.1.4.4

Rod_2

This element is a two node element of a Rod. The cross section will shrink as the element extends which is
important as the rod leaves the elastic state and becomes plastic.
Syntax:
nr nodes = [node1,node2] D = diameter material = elmaterial factor = c_factor friction = c_friction contact = c_type
nr
node1-2
diameter
elmaterial
c_factor
c_friction
c_type

The element number. Must be a unique number in the model, i.e. another element cannot
have the same number.
The number of the first node etc.
the cross section diameter of the rod. The cross section is solid circular.
The name of the material that the rod element uses. This name must be defined under the
material block.
The contact factor. This is the reaction force at full penetration of contact node. If nothing
is specified, default is the same as for the contact_line element.
The friction coefficient to be used. Usually between 0.2 and 0.8 depending on material and
condition. Only useful if contact is enabled. If not set, friction is disabled.
Contact type. Can be OFF to disable contact. Default contact type is BASIC which means
that a Contact_Line element will represent the rod.

Examples:
1

1 nodes = [23,24] D = 4.73 material = steel

8.1.4.5

Beam_Spring_2

This element is a two node spring element. Since it is a spring, both the stiffness and damping can be defined
in six directions. The element attributes are based on the global coordinate system directions independent of
element orientation. Note that time step issues for this element often be related to the fact that inertia has not
been defined on both the connecting nodes. The element can have contact sensitivity if contact option is turned
on (see below).
Syntax:
nr nodes = [node1,node2] D = diameter material = elmaterial factor = c_factor friction = c_friction contact = c_type

482

CHAPTER 8. FE DOKUMENTATION

nr
node1-2
diameter
elmaterial
c_factor
c_friction
c_type

The element number. Must be a unique number in the model, i.e. another element cannot
have the same number.
Node 1 and 2 are the start and end nodes respectively.
The cross section diameter of the spring. This is only used for the contact search. Any node
within this diameter will be considered in contact. This does not have to be defined if contact
is not enabled.
The name of the material that the spring element uses. This material must be of type spring
and be defined in the material block. The material defines all the stiffness attributes for the
element.
The contact factor. This is the reaction force at full penetration of contact node. If nothing
is specified, default is the same as for the contact_line element. This does not have to be
defined if contact is not enabled.
The friction coefficient to be used. Usually between 0.2 and 0.8 depending on material and
condition. Only useful if contact is enabled. If not set, friction is disabled.
Contact type. Can be set to BASIC to enable contact. Contact is disabled by default for this
element.

Examples:

1 nodes = [23,24] material = attrib1

8.1.4.6

Shell_BT_4

This is a 4 node shell element based on the classical Belytchko-Tsai formulation. It is a very robust design which
has become the workhorse in explicit finite element simulations. The element has only one integration point
which means that the result are only calculated in one point which is situated in the middle of the element. The
advantage is that the element is very fast. The drawback is that it is sensitive to hourglassing. To prevent this,
there is an additional compensation built in to the formulation, called hourglass control.

Figure 8.2: xx

Syntax:
nr nodes = [node1,node2,node3,node4] T = thickness material = elmaterial NIP = noip PIP = nopip
SHEAR_FACTOR = shearfactor HOURGLASS = hglass MHC = mhc OOPHC = oophc RHC = rhc LOAD
= loadname FACTOR = c_factor CONTACT = c_type FRICTION = friction THINNING = thinning

8.1. FILE FORMAT


nr
node1-4

thickness
elmaterial
noip
nopip
shearfactor
hglass
mhc
oophc
rhc
loadname
c_factor
c_type

friction
thinning

483

The element number. Must be a unique number in the model, i.e. another element cannot
have the same number.
Nodes are defined in a counter clockwise direction as shown in the figure. Results from the
element can be local stresses and strains.
The picture shows the local axes where the x-axis direction are primarily defined by node 1
and 2.The z-axis is normal to the shell surface.The local y-axis is defined primarily by node 1
and 4.
the thickness of the shell. The thickness is assumed to be constant over the element width.
The name of the material that the shell element uses. This name must be defined under the
material block.
the number of integration points through the thickness of the element. All from 1 up to 5
integration points are possible. A minimum of three integration points are recommended.
the number of the integration point which results will be printed in the result file. Can be
anything from 1 up to NIP. If nothing is specified, it will be the middle point in the shell
thickness, for example if NIP = 5, PIP will be equal to 3.
the arbitrary parameter used to enforce the Kirchhoff normality condition as the shell become
thin. Default value is 1.0.
a switch to enable or disable hourglass control on the element. It can be either ON or OFF.
Default is ON.
the Membrane Hourglass Control factor. This factor is multiplied with the calculated hourglass
forces acting in the shell membrane plane. Default is 0.1.
the Out Of Plane Hourglass Control factor. This factor is multiplied with the calculated
hourglass forces acting out of the membrane plane, causing ex. twist of the element. Default
is 0.1.
the Rotational Hourglass Control factor. This factor is multiplied with the calculated hourglass
moments. Default is 0.1.
Name of a load defined under the load block. Pressure onto the shell element is defined this
way.
The contact factor. This is the reaction force at full penetration of contact node.
Contact type. Can be OFF to disable contact. Default contact type is BASIC which means
that two Contact_Triangle elements will represent the surface. This works fine for small
deformations of the element. ADVANCED will use four Contact_Triangle elements and be
able to handle self contact within the element itself, but at a cost of calculation time. EDGE
enables edge contact sensitivity along the edges of the element together with the standard
surface contact sensitivity. ADVANCED_EDGE does the latter but together with the advanced
contact surface model which uses four Contact_Triangle elements.
The friction coefficient to be used. Usually between 0.2 and 0.8 depending on material and
condition. Only useful if contact is enabled. If not set, friction is disabled.
Determines if the shell should reduce thickness at large strains. Useful in pressing simulations.
Default is ON. It can be disabled by setting equal to OFF.

Examples:

1 nodes = [113,118,110,106] nip = 5 t = 1.0 material = steel load = pres

8.1.4.7

Shell_C0_3

This is a 3 node shell element based on the classical C0 formulation by Belytchko et. al. It complement the
BT_4 shell and is common in explicit finite element simulations. The element has only one integration point
which means that the result are only calculated in one point which is situated in the middle of the element.
The advantage is that the element is very fast. Unlike the BT_4 element, this element does not need hourglass
control. Triangulars are however by its nature stiffer than the BT_4 element which means it should be used with
care.

484

CHAPTER 8. FE DOKUMENTATION

Figure 8.3: xx
Syntax:
nr nodes = [node1,node2,node3] T = thickness MATERIAL = elmaterial NIP = noip PIP = nopip LOAD
= loadname FACTOR = c_factor CONTACT = c_type FRICTION = friction THINNING = thinning
nr
node1-3

thickness
elmaterial
noip
nopip
loadname
c_factor
c_type
friction
thinning

The element number. Must be a unique number in the model, i.e. another element cannot
have the same number.
Nodes are defined in a counter clockwise direction as shown in the figure. Results from the
element can be local stresses and strains.
The picture shows the local axes where the x-axis direction are primarily defined by node 1
and 2.The z-axis is normal to the shell surface.The local y-axis is defined to be octagonal to
the x-axis and z-axis.
the thickness of the shell. The thickness is assumed to be constant over the element width.
The name of the material that the shell element uses. This name must be defined under the
material block.
the number of integration points through the thickness of the element. All from 1 up to 5
integration points are possible. A minimum of three integration points are recommended.
the number of the integration point which results will be printed in the result file. Can be
anyting from 1 up to NIP. If nothing is specified, it will be the middle point in the shell
thickness, for example if NIP = 5, PIP will be equal to 3.
Name of a load defined under the load block. Pressure onto the shell element is defined this
way.
The contact factor. This is the reaction force at full penetration of contact node.
Parameter to set contact sensitivity type. Can be set to OFF to disable contact. If unspecified,
contact is enabled for surface only. If set to EDGE, the surface contact will be complemented
with edge contact sensitivity.
The friction coefficient to be used. Usually between 0.2 and 0.8 depending on material and
condition. Only useful if contact is enabled. If not set, friction is disabled.
Determines if the shell should reduce thickness at large strains. Useful in pressing simulations.
Default is ON. It can be disabled by setting equal to OFF.

Examples:
1

1 nodes = [113,118,110] nip = 5 t = 1.0 material = steel load = pres

8.1.4.8

Solid_Iso_6

This is a simple isoparametric solid element with eight integration points as showed in the figure. The element is
available with either one integration point which is then situated in the middle of the element, or eight integration

8.1. FILE FORMAT

485

points. The benefit of having eight points are the the element will be more stable since hourglass modes cannot
occur. At the time of writing, there is no hourglass control algorithm implemented which enables a stable use of
one integration point which means that this configuration is currently not recommended. The results from the
element are stresses and strains in global directions.

Figure 8.4: xx

Figure 8.5: xx

Syntax:
nr nodes = [node1,node2,node3,node4,node5,node6,node7,node8] material = elmaterial NIP = noip

486
8.1.4.9

CHAPTER 8. FE DOKUMENTATION
Solid_Iso_4

nr
node1-8

elmaterial
noip

The element number. Must be a unique number in the model, i.e. another element cannot
have the same number.
Nodes are defined as shown in the figure where the local axes are shown as well. Results from
the element can be local stresses and strains.
Other types of solid elements can be created by collapsing the element edges. This is achieved
by assigning the same node number to the original nodes on the cube element. For example,
the wedge would be achieved by assigning node nr 1 on position 1 and 2 for the solid element.
In general, the collapse of elements are not as good as rewriting them from scratch. They
are however possible to use, but will not give optimal results, so be aware of this when using
them. Note also that the autostep currently does not work well for a degenerated element. A
fixed timestep must be set.
The name of the material that the element uses. This name must be defined under the
material block.
the number of integration points in the element; can either be 1 or 8. This will also change
the result files since results are calculated in each integration point and the data from each
point will then be printed.

Examples:

1
2

1 nodes = [23,24,34,42,65,76,89,33] material = steel nip = 8


2 nodes = [23,23,34,42,65,65,89,33] material = steel nip = 8

This is a tetrahedron solid element. The element is available with either one integration point (recommended)
which is then situated in the middle of the element, or eight integration points. The results from the element are
stresses and strains in global directions. This element is based on a degenerated Solid_Iso_6 element.

Figure 8.6: xx

Syntax:
nr nodes = [node1,node2,node3,node4] material = elmaterial NIP = noip

8.1. FILE FORMAT

487

The element number. Must be a unique number in the model, i.e. another element cannot
have the same number.
Nodes are defined as shown in the figure where the local axes are shown as well. Results from
the element can be global stresses and strains.
Note that the autostep currently does not work well for this element type. Therefore, a
solution involving this element type requires a user defined timestep (see Control)
The name of the material that the element uses. This name must be defined under the
material block.
the number of integration points in the element; can either be 1 or 8. One integration point
is strongly recommended for this element.

nr
node1-4

elmaterial
noip
Examples:
1
2

1 nodes = [23,24,34,42] material = steel nip = 1


2 nodes = [23,23,34,42] material = steel nip = 8

8.1.4.10

Beam_2

This element is a two node elastic beam element.


Syntax:
nr nodes = [node1,node2,node3] D = diameter material = elmaterial
The element number. Must be a unique number in the model, i.e. another element cannot
have the same number.
Node 1 and 2 are the start and end nodes respectively, node 3 defines the local y direction of
the element.
The cross section diameter of the element.
The name of the material that the element uses.

nr
node1-3
diameter
elmaterial
Examples:
1
2
3
4

ELEMENTS OF
200 nodes =
201 nodes =
202 nodes =

TYPE BEAM_2
[10,50,60] material = GMSH_MAT
[50,51,60] material = GMSH_MAT
[51,52,60] material = GMSH_MAT

8.1.5

Nodes

8.1.5.1

Nodes

PID = 0 D = 40
PID = 0 D = 40
PID = 0 D = 40

The node block starts with the keyword nodes on a single line. The following lines should then specify the
nodes with one node per line. For each node, all three space coordinates must be defined at all times. If a two
dimensional problem is to be solved, each node must be constrained from movement in the third dimension.
8.1.5.2

Node

This command defines a node. For each node, all three space coordinates must be defined at all times. If a two
dimensional problem is to be solved, each node must be constrained from movement in the third dimension.
Syntax:
nr X = xcoord Y = ycoord Z = zcoord constraint = cname loads = lname M = mass Ixx = x_inertia Iyy =
y_inertia Izz = z_inertia Ixy = xy_inertia Iyz = yz_inertia Ixz = xz_inertia

488

CHAPTER 8. FE DOKUMENTATION

nr
xcoord
ycoord
zcoord
cname
lname
mass
x_inertia
y_inertia
z_inertia
xy_inertia
yz_inertia
xz_inertia

node number, needs to be unique in the model


the space coordinates for the node in respective direction. The numbers can contain decimals.
the space coordinates for the node in respective direction. The numbers can contain decimals.
the space coordinates for the node in respective direction. The numbers can contain decimals.
the name of the constraint set that the node should obey. The constraint set must be defined
elsewhere in the file under the constraint block. Only one constraint set can be applied on
each node. This is an optional parameter and does not have to be defined if the node is free.
the name of the load set that the node should use. The load set must be defined elsewhere
in the file under the load block. Only one load set can be applied to each node. This is an
optional parameter and does not have to be defined if there is no load on the node.
the weight of the concentrated mass applied to the node. The mass is applied to all spatial
directions.
The inertia around global x-axis applied to the node.
The inertia around global y-axis applied to the node.
The inertia around global z-axis applied to the node.
The xy inertia component. The yx component is assumed equal.
The yz inertia component. The zy component is assumed equal.
The xz inertia component. The zx component is assumed equal.

Examples:
1
2
3
4
5

Nodes
1 x =
2 x =
3 x =
4 x =

29 y = 0 z = 0 load = pulse
28.7274 y = 2.07055 z = 0 load = pulse
28.7274 y = -2.07055 z = 0 load = pulse
28.278 y = 2.52452 z = -2.15829 load = pulse

8.1.6

Constraints

8.1.6.1

Constraints

Under this block heading, the constraint sets are defined. Each set must be defined on a single line.
Syntax:
Constraints of type ctype
ctype

Any type of constraint: Boundary_Condition, Rigid_Body

Examples:
1

Constraints of type Boundary_Condition

8.1.6.2

Boundary_Condition

Defines a boundary condition constraint. A constraint controls movement for the nodes in different directions by
setting the acceleration and velocity for the node. Any given combination can be set. There is no need to define
all the variables. If none is set, the default value is that the node will be uncontrolled in that direction.
Syntax:
name ax = axvalue ay = ayvalue az = azvalue vx = vxvalue vy = vyvalue vz = vzvalue arx = arxvalue ary
= aryvalue arz = arzvalue vrx = vrxvalue vry = vryvalue vrz = vrzvalue axis = [node1,node2,node3] update
= upd

8.1. FILE FORMAT


name
axvalue

ayvalue
azvalue
vxvalue
vyvalue
vzvalue
arxvalue
aryvalue
arzvalue
vrxvalue
vryvalue
vrzvalue
node1-3

upd

489

Name of the constraint. Must be unique.


Value of the constraint. Can be either a simple number (constant) or alternatively a variable
over time defined as [t1,y1,t2,y2,...,tn,yn] where y1 is the value at time t1 and so on. At this
stage, y1 can also be off which means that the constraint will not be effective from this time
forward until a new value is set.

These nodes set up the local coordinate system for the boundary condition. If these are
specified, the values specified in the constraint will be assumed to be relating to this local
coordinate system. The local x-axis of the system runs from node1 to node2. Local z-axis is
then normal to the plane defined by this x-axis and a vector from node1 to node3. Finally,
the y-axis is normal to the x- and z-axis.
The update option is connected to the axis option. If the local coordinate system is defined
and update is set to ON, the nodes defining the coordinate system will be continuosly scanned
and the system updated. This means the system can rotate over time.

Examples:
1
2
3

constraints of type boundary_condition


fixed Vx = 0 Vy = 0 Vz = 0 Ax = 0 Ay = 0 Az = 0 Vrx = 0 Vry = 0 Vrz = 0 Arx = 0 Ary = 0 Arz = 0
exampleconstraint ax = [0,0,1,1.5,5,off,6,3,100,3] ay = 3.0 az = 0.0

8.1.6.3

Rigid_Body

Defines a rigid body constraint. The nodes referring to this constraint are all considered part of a single rigid
body. They are all connected to the master node. If specified, the master node can automatically be placed in
the centre of gravity for the body. The movement of the body will be controlled from the master node, on which
an ordinary boundary condition or load can be placed. The master node will automatically be given the mass and
inertia for the rigid body, based on the slave nodes mass, inertia and position.
Syntax:
name master_node = nnum update_position = updt
name
nnum
updt

Name of the constraint. Must be unique.


Node number of the master node.
If this is set to ON, the master node will automatically be moved to the centre of mass for
the rigid body before the solution starts.

Examples:
1

rb1 master_node = 25

8.1.6.4

JointSpherical

Defines a spherical joint between two elements where 2 nodes share common positions where the joint is defined.

490

CHAPTER 8. FE DOKUMENTATION

Syntax:
name N1 = node1 N2 = node2 [FACT = fact]
Name of the constraint. Must be unique.
Node number of the master node.
Node number of the slave node.
penalty factor

name
node1
node2
fact
Examples:
1
2

CONSTRAINTS OF TYPE JointSpherical


JS1 N1 = 13 N2 = 18 FACT = 100.0

8.1.6.5

JointRevolute

Defines a revolute joint between two parts where 2 pairs of nodes share common positions where the joint is
defined..
Syntax:
textbfname N1 = node1 N2 = node2 N3 = node3 N4 = node4 [FACT = fact]
name
node1,2
node3,4
fact

Name of the constraint. Must be unique.


Node number of first pair.
Node number of second pair.
penalty factor

Examples:
1
2

CONSTRAINTS OF TYPE JointRevolute


JS1 N1 = 13 N2 = 18 N3 = 5 N4 = 17 FACT = 100.0

8.1.6.6

JointCylindrical

Defines a cylindrical joint between two parts where 2 pairs of nodes share common positions where the joint is
defined..
Syntax:
textbfname N1 = node1 N2 = node2 N3 = node3 N4 = node4 [FACT = fact]
name
node1,2
node3,4
fact

Name of the constraint. Must be unique.


Node number of first pair.
Node number of second pair.
penalty factor

Examples:
1
2

CONSTRAINTS OF TYPE JointCylindrical


JS1 N1 = 13 N2 = 18 N3 = 5 N4 = 17 FACT = 100.0

8.1. FILE FORMAT


8.1.6.7

491

ConstrSpotweld

Defines a spotweld between two nodes. The two nodes do not need to have the same coordinates.
Syntax:
name N1 = node1 N2 = node2 [FACT = fact]
Name of the constraint. Must be unique.
Node number of the master node.
Node number of the slave node.
penalty factor

name
node1
node2
fact
Examples:
1
2

CONSTRAINTS OF TYPE CONSTRSPOTWELD


JS1 N1 = 13 N2 = 18 FACT = 100.0

8.1.7

Loads

Under this block heading, the load sets are defined. Each set must be defined on a single line.
8.1.7.1

Load

The loads block is initiated by the heading above on a single line. The loads themselves follows, defined one per
line. A load set is applied on nodes or some elements. It consists of concentrated forces in any direction defined
by their x,y and z components. Accelerations, such as gravity can also be defined here. Pressure can also be
defined.
Syntax:
name fx = value fy = value fz = value mx = value my = value mz = value ax = acc ay = acc az = acc arx
= acc ary = acc arz = acc p = pressure
name
value

acc

pressure

Name of the load. Must be unique.


Value of the load. Can be either a simple number (constant) or alternatively a variable over
time defined as [t1,y1,t2,y2,...,tn,yn] where y1 is the value at time t1 and so on. At this stage,
y1 can also be off which means that the load will not be effective from this time forward until
a new value is set.
Value of the acceleration. Accelerations are added to the load on a node which makes this the
way to simulate gravity. Acceleration can be either a simple number (constant) or alternatively
a variable over time defined as [t1,y1,t2,y2,...,tn,yn] where y1 is the acceleration at time t1
and so on. At this stage, y1 can also be off which means that the acceleration will not be
effective from this time forward until a new value is set.
Value of the pressure. Can be either a simple number (constant) or alternatively a variable
over time defined as [t1,y1,t2,y2,...,tn,yn] where y1 is the pressure at time t1 and so on. At
this stage, y1 can also be off which means that the pressure will not be effective from this
time forward until a new value is set.

Examples:
1

exampleload ax = [0,0,1,1.5,5,off,6,3,100,3] p = 3.0

492

CHAPTER 8. FE DOKUMENTATION

8.1.8

Trackers

8.1.8.1

Trackers

The trackers are used to track result data from a solution. There are several different trackers, each specially
tailored for different results.
Syntax:
Trackers of Type ttype
ttype

Any type of tracker: Nodeforce, Sectionforce, etc.

Examples:
1

Trackers of Type Nodeforce

8.1.8.2

Nodeforce

This tracker reads the forces from one or several nodes and plots the result into a file. The file is currently
readable by the GID pre/postprocessor but the tracker can also print in a different fileformat. This is controlled
by the Trackwriter command. Target is a value set by the user. If this value is reached during simulation, a file
will be written (with extension .target).
Syntax:
nr nodes = [tnode,tnode,...,tnode] DIRECTION = dir FILENAME = fname TARGET = [ttime,timetol,tvalue,valuetol]
nr
tnode
dir

fname
ttime
timetol
tvalue
valuetol

The tracker number. Must be a unique number in the model, i.e. another nodetracker cannot
have the same number.
The number of the node to track forces from.
The direction of the force to track. Can be either X, Y or Z. It is also possible to select
components thereof by adding a - or +, i.e. X+ will plot the component acting in the
positive X direction. If only X is used, the sum of the positive and negative component will
be plotted.
The name of the file of which the nodetracker should write. Must be a unique name for each
nodetracker.
The time where the target is to be checked.
The tolerance for the target time
The target value.
The tolerance for the target value

Examples:
1

1 nodes = [23] direction = x+ filename = nodeforce.trk

8.1.8.3

Nodemoment

This tracker reads the moments from one or several nodes and plots the result into a file. The file is currently
readable by the GID pre/postprocessor but the tracker can also print in a different fileformat. This is controlled
by the Trackwriter command. Target is a value set by the user. If this value is reached during simulation, a file
will be written (with extension .target).
Syntax:
nr nodes = [tnode,tnode,...,tnode] DIRECTION = dir FILENAME = fname TARGET = [ttime,timetol,tvalue,valuetol]

8.1. FILE FORMAT


nr
tnode
dir

fname
ttime
timetol
tvalue
valuetol

493

The tracker number. Must be a unique number in the model, i.e. another nodetracker cannot
have the same number.
The number of the node to track moments from.
The direction of the moment to track. Can be either X, Y or Z. It is also possible to
select components thereof by adding a - or +, i.e. X+ will plot the component acting in
the positive X rotation direction. If only X is used, the sum of the positive and negative
component will be plotted.
The name of the file of which the nodetracker should write. Must be a unique name for each
nodetracker.
The time where the target is to be checked.
The tolerance for the target time
The target value.
The tolerance for the target value

Examples:
1

1 nodes = [23] direction = x+ filename = nodemoment.trk

8.1.8.4

NodeDisplacement

This tracker reads the displacement of a single node and plots the result into a file. The file is currently readable
by the GID pre/postprocessor but the tracker can also print in a different fileformat. This is controlled by the
Trackwriter command. Target is a value set by the user. If this value is reached during simulation, a file will be
written (with extension .target).
Syntax:
nr nodes = [tnode,tnode,...,tnode] DIRECTION = dir FILENAME = fname TARGET = [ttime,timetol,tvalue,valuetol]
nr
tnode
dir
fname
ttime
timetol
tvalue
valuetol

The tracker number. Must be a unique number in the model, i.e. another nodetracker cannot
have the same number.
The number of the node to track displacements from.
The direction of the displacement to track. Can be either X, Y or Z
The name of the file of which the nodetracker should write. Must be a unique name for each
nodetracker.
The time where the target is to be checked.
The tolerance for the target time
The target value.
The tolerance for the target value

Examples:
1

1 node = [23] direction = z filename = nodedisp.trk

8.1.8.5

NodeVelocity

This tracker reads the velocity of a single node and plots the result into a file. The file is currently readable
by the GID pre/postprocessor but the tracker can also print in a different fileformat. This is controlled by the
Trackwriter command. Target is a value set by the user. If this value is reached during simulation, a file will be
written (with extension .target).
Syntax:
nr nodes = [tnode,tnode,...,tnode] DIRECTION = dir FILENAME = fname TARGET = [ttime,timetol,tvalue,valuetol]

494
nr
tnode
dir
fname
ttime
timetol
tvalue
valuetol

CHAPTER 8. FE DOKUMENTATION
The tracker number. Must be a unique number in the model, i.e. another nodetracker cannot
have the same number.
The number of the node to track velocity from.
The direction of the displacement to track. Can be either X, Y or Z
The name of the file of which the nodetracker should write. Must be a unique name for each
nodetracker.
The time where the target is to be checked.
The tolerance for the target time
The target value.
The tolerance for the target value

Examples:
1

1 node = [23] direction = z filename = nodevelo-z.trk

8.1.8.6

NodeAcceleration

This tracker reads the acceleration of a single node and plots the result into a file. The file is currently readable
by the GID pre/postprocessor but the tracker can also print in a different fileformat. This is controlled by the
Trackwriter command. Target is a value set by the user. If this value is reached during simulation, a file will be
written (with extension .target).
Syntax:
nr nodes = [tnode,tnode,...,tnode] DIRECTION = dir FILENAME = fname TARGET = [ttime,timetol,tvalue,valuetol]
nr
tnode
dir
fname
ttime
timetol
tvalue
valuetol

The tracker number. Must be a unique number in the model, i.e. another nodetracker cannot
have the same number.
The number of the node to track acceleration from.
The direction of the displacement to track. Can be either X, Y or Z
The name of the file of which the nodetracker should write. Must be a unique name for each
nodetracker.
The time where the target is to be checked.
The tolerance for the target time
The target value.
The tolerance for the target value

Examples:
1

1 node = [23] direction = z filename = nodeacc.trk

8.1.8.7

Sectionforce

This tracker collects the nodal forces from a range of nodes. The first three of the nodes is the basis of a plane of
which a normal axis is calculated. The force from each node is calculated in this direction, summarised and then
plotted. A minimum of three nodes must be specified.This tracker is suitable for measuring the load through a
cross section of a member or a beam.
Syntax:
nr nodes = [node1,node2,node3,nodeN] direction = dir filename = fname

8.1. FILE FORMAT

495

The tracker number. Must be a unique number in the model, i.e. another sectionforcetracker
cannot have the same number.
The number of the first node etc. The first three nodes are mandatory. The rest are optional.
The direction of the forces to be collected. Can only be equal to "negative". When set, all the
forces acting in the opposite direction to the section normal will be summed. If this parameter
is not specified at all, the forces acting in the same direction as the section normal will be
summed (default).
The filename of the result file of which the tracker should print the results. Must be unique
for each tracker.

nr
node
dir

fname
Examples:

1 nodes = [23,24,12,34,15] filename = sectionforce_1.trk

8.1.8.8

Energy

This tracker reads the energy from the model and plots it. There are several different energy types that can be
plotted, but only one per tracker
Syntax:
nr TYPE = ttype FILENAME = fname TARGET = [ttime,timetol,tvalue,valuetol]
nr
ttype

fname
ttime
timetol
tvalue
valuetol

The tracker number. Must be a unique number in the model, i.e. another nodetracker cannot
have the same number.
The type of energy to plot. Can be one of
contact - for contact energy
external or kinetic - for kinetic energy
internal - for internal absorbed energy
hourglass - for hourglass energy used to stabilize some elements
The name of the file of which the energytracker should write. Must be a unique name for
each energytracker.
The time where the target is to be checked.
The tolerance for the target time
The target value.
The tolerance for the target value

Examples:

1 type = external filename = energy_external.trk

8.1.8.9

NodeDistance

This tracker calculates the distance between two nodes and plots it as a function of time into a selected file. The
distance is the shortest space distance.
Syntax:
nr node = [node1,node2] FILENAME = fname TARGET = [ttime,timetol,tvalue,valuetol]

496
nr
node1-2
fname
ttime
timetol
tvalue
valuetol

CHAPTER 8. FE DOKUMENTATION
The tracker number. Must be a unique number in the model, i.e. another NodeDistance
tracker cannot have the same number.
The number of the nodes to track distance between.
The name of the file of which the tracker should write. Must be a unique name for each
tracker.
The time where the target is to be checked.
The tolerance for the target time
The target value.
The tolerance for the target value

Examples:

1 node = [23,15] filename = nodedist.trk

8.1.8.10

RodForce

This tracker reads the local force from a given Rod_2 element. The force is then plotted into a file as a function
of time. Note that the force is always local and not plotted in any global direction.
Syntax:
nr element = [telem] FILENAME = fname TARGET = [ttime,timetol,tvalue,valuetol]
nr
telem
fname
ttime
timetol
tvalue
valuetol

The tracker number. Must be a unique number in the model, i.e. another RodForce tracker
cannot have the same number.
The number of the Rod_2 element to track force from.
The name of the file of which the tracker should write. Must be a unique name for each
tracker.
The time where the target is to be checked.
The tolerance for the target time
The target value.
The tolerance for the target value

Examples:

1 element = [23] filename = rodforce.trk

8.1.8.11

BeamSpring

This tracker reads the local force from a given Beam_Spring_2 element. The force or moment is then plotted
into a file as a function of time. Note that the force or moment is always local and not plotted in any global
direction.
Syntax:
nr element = [telem] FILENAME = fname COMPONENT = comp TARGET = [ttime,timetol,tvalue,valuetol]

8.1. FILE FORMAT

497

The tracker number. Must be a unique number in the model, i.e. another BeamSpring tracker
cannot have the same number.
The number of the Beam_Spring_2 element to track force or moment from.
The name of the file of which the tracker should write. Must be a unique name for each
tracker.
Sets which component to track. Can be one of: FX, FY, FZ, MX, MY, MZ. If nothing is set
here, the default is to track the FX component.
The time where the target is to be checked.
The tolerance for the target time
The target value.
The tolerance for the target value

nr
telem
fname
comp
ttime
timetol
tvalue
valuetol
Examples:
1

1 element = [23] filename = beamspring_mz.trk component = mz

8.1.9

Parts

8.1.9.1

Parts

The parts block starts with the keyword PARTS on a single line. The following lines should then specify the
parts with one part per line.
8.1.9.2

Part

This command defines a part of the model, which can be handled as a group. Each element can be assigned a
part number using the syntax PID = PartNo in the element definition.
Syntax:
nr NAME = name COLOR = colorval
nr
name
colorval

part number, needs to be unique in the model


part name
part color RGB in hex

Examples:
1
2
3
4
5
6

PARTS
1 NAME
2 NAME
3 NAME
4 NAME
5 NAME

8.1.10

=
=
=
=
=

BUMPER COLOR = F68E55


RAILS COLOR = FBAF5C
A-ARM-LOW-LEFT COLOR = FFF467
A-ARM-LOW-RIGHT COLOR = ACD372
-ARM-UP-LEFT COLOR = 7CC576

Contact handling

Contacts are handled by two element types:


1. Contact_Triangle (CT)
2. Contact_Line (CL)
The CT is used to sense contact between nodes and surfaces and the CL senses contact against other CL
elements. Together, these two elements can be used to enable contact detection for most cases and models. Both

498

CHAPTER 8. FE DOKUMENTATION

of them are classified as elements which means that they can directly be part of a model mesh as all elements.
The user can for example model a wall or a complex rigid contact surface with them.
Since they only have the sole purpose of sensing contact, the have no stiffness at all. This means that if they
are used on their own in the model, the nodes connecting them should be fixed by constraints to prevent them
from drifting when in contact. It also means that the user can use them in combination with ordinary elements
to provide contact sensing where this is not default.
One example where this is useful is when a body has been meshed using solid elements, for example an engine
block in a car. This body can then be "dressed" on the outside with a second mesh of contact elements to
provide the contact sensitivity against other elements in the car. Any contact sensing inside the engine block is
not needed and valuable calculation time can then be saved with this approach.
Some elements have contact sensing as default. Examples of these are:
1. Shell_C0_3
2. Shell_BT_4
3. Rod_2
4. Beam_2
When any of these elements is created, one or several contact elements are created by default. These are
embedded inside the element and share the element nodes. The rod and beam elements use the Contact_Line
element to sense contact. The Shell elements use the Contact_Triangle element to sense contact against the
surface and optionally Contact_Line elements at the edges to sense contact against other edges.
The contact elements drain quite a bit of computing resources and as the number of elements increase, so
does the amount of computing power since the increase is more than linear. Therefore, some of the elements
have options to reduce the contact resolution. This means that the contact sensing will be less accurate during
large deformation of the elements, but the solution will run faster. For this reason, contact sensing has also not
been implemented in the solid elements since the user can best minimise the amount of calculations needed, by
distributing the contact element where they are needed.
The details of how contact sensing is implemented is explained in the programming manual.

Anda mungkin juga menyukai