You are on page 1of 64

Department of Management and Engineering

Division of Mechanics

Chassis calculations for Frame design


FU14-116
October 8, 2015

Erik Olofsson
LIU-IEI-TEK-A15/02319SE

Abstract
This is a Masters Thesis report of a project carried out at Scania AB in Sodertalje.
The project concerns rationalizing Chassis calculations for use in truck Frame design.
The subject for analysis is a six-wheeled articulated truck, and the load cases under
study is Lateral Loading, Frame Torsion and Vertical Load on Kingpin. Making
robust deformation and stress models with a calculation time sufficiently short and
accuracy consistently high for efficient design work is an arduous task. This report
presents several approaches to tackle this type of problem. By means of simplifying
contemporary modeling approaches and methods and automating the setup process,
a method that enables short calculation iterations on a chassis frame of a truck is
achieved. This is done using the Catia GAS framework in conjunction with several
other licences commonly used by designers.

Acknowledgements
A lot of support has been put in to this project, both from the university and from
Scania. The author of this report is therefore eager to show his appreciation.
First of all Martin Hede (Scania) deserves to be shown gratitude for the helpful
discussions and support throughout the project. So too does Uno Andersson (Scania)
for the generous availability of courses and software. Also the supervisor of the
project, Bo Torstenfelt (LiU) deserves a special mentioning for the sound advice and
encouragement. A special mentioning also to the members of the steering commitee
at Scania: Henrik Bruce for all the valuable input, Jonas Hagsjo for all the help with
verifying models and to Mikael Thellner. Thank you also Christian Skoog (LiU) for
the corrective reading, fresh perspective, and excellent opposition.
Erik Olofsson
Sodertalje, August 2, 2015

Contents
1 Introduction
1.1 Background . . . . . .
1.2 Purpose . . . . . . . .
1.3 Goal . . . . . . . . . .
1.4 Problem specification .
1.5 Restrictions . . . . . .
1.6 Method . . . . . . . .
1.7 Other considerations .

.
.
.
.
.
.
.

7
7
8
8
9
9
9
10

2 Theoretical Background
2.1 Sources of Nonlinearity . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Submodeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 Element formulations . . . . . . . . . . . . . . . . . . . . . . . . . . .

11
11
12
12

3 Method
3.1 Element formulation for beam
3.2 Script aided analysis setup . .
3.3 Verification . . . . . . . . . .
3.4 Load Cases . . . . . . . . . .

.
.
.
.

14
14
18
20
21

4 Results and Discussion


4.1 Verification of Load Cases . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Overall methodology . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

28
28
35
36

5 Conclusions

37

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

structure
. . . . . .
. . . . . .
. . . . . .

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

A Appendix
I
A.1 General Analysis Connection and Rigid connection property . . . . .
II
A.2 One-Click-Publish A Series of Publications . . . . . . . . . . . . . . VI
A.3 One-click-create a series of General Analysis Connections and Rigid
Connection properties between series of publications . . . . . . . . . IX
A.4 Submodeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XIV

List of Figures
1.1

Picture of the Chassis Frame. . . . . . . . . . . . . . . . . . . . . . .

2.1

Principal sketches of elements . . . . . . . . . . . . . . . . . . . . . .

13

3.1
3.2
3.3

Picture showing principle of load case application. . . . . . . . . . .


Picture showing 10-node Tetrahedron mesh. . . . . . . . . . . . . . .
Picture showing 10-node Tetrahedron mesh combined with a Beam
element. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4 Picture showing 6-node Triangle mesh combined with a Beam element.
3.5 10-node Tetrahedron . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6 Procedure for running submodel . . . . . . . . . . . . . . . . . . . .
3.7 Picture showing coordinate system alignment and points used for
elimination of rigid body rotations. . . . . . . . . . . . . . . . . . . .
3.8 Picture showing principle of Cornering load. . . . . . . . . . . . . . .
3.9 XY-view of free body diagram. . . . . . . . . . . . . . . . . . . . . .
3.10 ZY-view of symbolic axle. . . . . . . . . . . . . . . . . . . . . . . . .
3.11 Boundary conditions for Lateral Load . . . . . . . . . . . . . . . . .
3.12 Boundary conditions for Frame Torsion . . . . . . . . . . . . . . . .
ISO view of Von Mises Stress field from Catia Lateral Loading Load
Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 ISO view of Von Mises Stress field from Abaqus Reference Lateral
Loading Load Case . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Collocation of deformation on top right flange edge due to Lateral
Loading according to method in Section 3.3 . . . . . . . . . . . . . .
4.4 ISO view of Von Mises Stress field from Catia Frame Torsion Load
Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5 ISO view of Von Mises Stress field from Abaqus Reference due to the
Frame Torsion Load Case . . . . . . . . . . . . . . . . . . . . . . . .
4.6 Collocation of deformation on top right flange edge due to Frame
Torsion according to method in Section 3.3 . . . . . . . . . . . . . .
4.7 ISO view of Von Mises Stress field from the Catia Vertical Load on
Kingpin case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8 ISO view of Von Mises Stress field from Abaqus Reference due to
Vertical Load on Kingpin . . . . . . . . . . . . . . . . . . . . . . . .
4.9 Comparison of nodal displacement on top right flange edge due to
Vertical Load on Kingpin according to method in Section 3.3 . . . .
4.10 Collocation of nodal displacement on top right flange edge due to
taking Nonlinear geometry into account in Lateral Loading loadcase
4.11 Difference in nodal displacement due to taking Nonlinear geometries
into account in Lateral Loading loadcase . . . . . . . . . . . . . . . .

14
15
15
16
17
20
21
22
22
23
23
24

4.1

28
29
29
30
31
31
32
33
33
34
34

LIST OF FIGURES

4.12 Collocation of nodal displacement on top right flange edge due to


taking Nonlinear geometry into account in Frame Torsion load case .
4.13 Difference in nodal displacement due to applying Linear Perturbation
to Frame Torsion load case . . . . . . . . . . . . . . . . . . . . . . .

35
35

List of Tables
2.1

Governing parameters of the beam element . . . . . . . . . . . . . .

13

3.1

Mean deflection in loaded direction of nodes on edge face


force [N] or torque [Nxm]. . . . . . . . . . . . . . . . . .
U U
100 Urefref using 10nodeTET as reference. . . . . . . . .
Convergence study . . . . . . . . . . . . . . . . . . . . .

18
18
18

3.2
3.3

due to
. . . .
. . . .
. . . .

unit
. . .
. . .
. . .

Chapter 1

Introduction
1.1

Background

Scania AB is one of the worlds leading manufacturers in the heavy transport segment. The company has been developing Trucks and associated support systems
since 1911 and has a sales and service organisation spanning more than a hundred
countries.
An integral part of the truck is the Chassis frame. Being the main load bearing
structure of the truck, well-conditioned design of the Chassis frame is paramount to
the success of the truck as a whole.
The Chassis frame, pictured in Figure 1.1 is the foundation on which the rest
of the truck is mounted. It comes in many configurations, where the needs of the
customer are reflected in the payload that the Frame is fitted with and what combination of driving condition and speed it is to handle. The Frames varies in length,
thickness of members and number of crossbeams but has several governing characteristics.
Characteristics
Steel and cast iron is used for both cross and lengthwise beams
The lengthwise beams have a C shaped cross section
The crossbeams run in an orthogonal direction between the lengthwise
beams
Rivets are used, where applicable, for attaching non-removable geometries
Bolts are used for removable geometries

CHAPTER 1. INTRODUCTION

Figure 1.1: Picture of the Chassis Frame.

The Frame is subject to continuous improvements, where any development which


leads to a more light-weight structure enables bigger payloads and less fuel consumption. This goal, while also considering the requirements on stiffness, price and
respecting the modular boundary reserved for the Frame, makes for a complex task.
It is worth mentioning that the production methodologies and fundamental design
principles of the Frame can be considered mature, seeing as the Frame, in its many
variants, has been iterated upon for decades.
In construction of Chassis frames there is great demand for exploratory and verifying calculations complementing the experience and testing schemes guiding the
designers in their effort. In contemporary methodologies calculations are performed
by designers, generally with limited and usually linear models, and calculation engineers, using more intricate and often non-linear models. A central challenge is to
shorten the iteration time, i.e. the time from identification of the need for calculation
and the result, in order to make reviewing of changes to the design configuration
more effective. This can be done by either increasing the computational power or
relaxing the computational problem and thereby cut the amount of CPU-hours required. The current computer aided design tool (CAD) used at Scania is Catia [1] ,
where simulation is performed in the Catia Generative Assembly Structural analysis tool (GAS). In this tool, geometries can be assembled for analysis directly from
the CAD interface, whereupon structural, modal and thermal calculations can be
performed on the structures [2].

1.2

Purpose

The purpose of this thesis is to investigate ways of simplifying frame calculation


models currently being used for verification into something that can be used iteratively during design. Furthermore, the thesis is to meet the requirements for a
degree project - Masters Thesis at Linkoping University.

1.3

Goal

The goal of the project is to, at the conclusion of the project, present a recommendation on how to approach using finite element (FE) analysis when designing

CHAPTER 1. INTRODUCTION

chassis frames. The recommendation is concerning both the effective setup of the
analysis, verification of the model using comparisons to a similar model in Abaqus
and handling the result.

1.4

Problem specification

The geometry for investigation is a six-wheel truck frame mounted with a Kingpin
subjected to a 210 [KN] vertical force representing a standard trailer. Three load
cases that historically have proven to be dimensioning for side- and crossbeams,
Vertical Load on Kingpin, Lateral Loading and Frame Torsion, are investigated.
Can simplifications to contemporary analysis setups for the investigated load cases
be used to enable both the accuracy and computation times that is needed for
effective iterative frame design using a standard computer?

1.5

Restrictions

Well posed restrictions are crucial in order to attain a depth of detail sufficient
enough to be both comprehensible and universal so that the methodology presented
herein can be mimicked on similar problems.

1.5.1

Restriction on physical magnitudes for investigation

The analysis is restricted to only obtain deformation and stress levels. This is in
part due to limitations in the software. The results are intended to give a good
basis for verification but at the same time limit the amount of theoretical knowledge
needed to use the method compared to, say, cycles-to-failure-estimations.

1.5.2

Restriction on material- and deformation models

The analysis will assume small deformations and linear stress-strain relationships
only. This is in part due to limitations in the software. This is a reasonable assumption for the three load cases in question. The method and result of the investigation
of the well-posedness of this assumption is presented in Section 3.4.5 and Section
4.1.4 respectively.

1.5.3

Restriction on software

Apart from the verification only the tools and methods found in Catia GAS and
associated licenses are used in the analysis. No external tools will be used for
meshing, post-analysis or other. This is intended to keep the method close to the
one envisioned to be the standard method for future design work at Scania.

1.5.4

Restriction on domain of investigation

The geometry and boundary conditions are restricted in order to, for the three chosen
load cases, describe the deformation and stress with sufficient accuracy for the sideand crossbeams. All other geometry is considered to be of secondary importance.

1.6

Method

The method is to, with Scania best practice documents for load cases as a guide,
establish load cases in Catia GAS, and find ways of making the calculation time suffi9

CHAPTER 1. INTRODUCTION

ciently short and accurate for efficient design work. The verification comprises comparisons of deformation and stress levels with similar results provided from Abaqus
models. In addition, analytical calculations are performed on particular geometries
where applicable. In addition to this exploring ways of enhancing the speed at which
the analysis case can be established via automating parts of the analysis setup will
be explored.

1.7

Other considerations

No ethical or gender related questions are raised by the thesis. It has no direct
connection to environmental or social effects.

10

Chapter 2

Theoretical Background
In the following chapter, the necessary theory used in the method will be displayed.

2.1

Sources of Nonlinearity

In linear analysis [K]{D} = {R} has a unique solution where the deflection is
linearly proportional to the applied force. In the instance of nonlinearities, where
either of or both [K] and {R} are functions of {D} a solution to [K]{D} = {R} can
only be found using methods where [K] and {R} are updated iteratively [3]. The
following section describes the relevant types of different terms.

2.1.1

Geometric Nonlinearity

Geometric nonlinearities are stiffness variations caused by large deformation or rotations during loading or unloading of a structure. FE-softwares generally gives the
option of making small-displacement assumptions. This means ignoring geometric nonlinearities in the element calculations, and linearizing the kinematic relationships. The elements are formulated in the initial configuration and does not update
during the analysis. In the case of Catia GAS, this assumption is the standard [4].
Using Abaqus on the other hand this is only optional. Abaqus gives, even in the case
of linear element formulations, the option of utilizing large-sliding contact tracking
algorithms to account for rotations and large displacements [5].

2.1.2

Material Nonlinearity

Material nonlinearity is present in all material formulations where the stress-strain


relationship is not linear. Factors like plastic flow, where a loading induces change
to the microscopic structure of the material or history dependence, i.e. a materials
response being sensitive to previous loading are sources to nonlinearities.

2.1.3

Boundary Nonlinearity

Boundary nonlinearities stem from either gaps opening or closing or sliding with or
without friction occurring between surfaces of two structures, or between internal
surfaces of a structure. Such nonlinearities are prevalent in analysis using bolt
tightening. The accuracy, robustness and computational complexity varies with the
discretization and sliding tracking approach [6]. In Catia GAS the only available
method for approximating slider connections uses a node-to-surface discretization
combined with a small-sliding tracking approach [7]. Because the Elfini solver,
the Catia standard issue solution engine, does not allow for large displacement[4],
11

CHAPTER 2. THEORETICAL BACKGROUND

all sliding and rotations are considered infinitesimal. Abaqus/Standard allows for
a plethora of different approaches to contact discretization, tracking approach and
enforcement. The general contact formulation in Abaqus/Explicit utlilizes surface
weighting-, surface polarity- and finite sliding-approaches by default [8].

2.2

Submodeling

Submodeling is a technique that enables studies of a local region of a large model


using boundary conditions based on an interpolation from the solution of the large
model. In the case of nodal deformation-based submodeling, according to Cook[3]
the procedure usually is as follows: A global model with a mesh refinement sufficient for ensuring confidence in accuracy of the global deformation is run. The
displacement of the nodes surrounding the local region designated for subanalysis
is exported. The exported displacement is imposed on the boundary of the local
region via an interpolation scheme. This allows for mesh refinement in the local
region to an extent which can give a very high resolution description of the stress
field, at a relatively low computational cost. The submodeling approach is suitable
in cases where the detail of modeling in the studied region has a small effect on the
overall solution. If changes are to be made to the submodel structure, they need to
be sufficiently small as to not change the overall stiffness of the adjacent structure,
else they invalidate the submodel, calling for another global analysis[3]. Catia does
not support node-based export of deformation to submodel by default. There are,
however, methods of exporting and imposing nodal deformations. Such capabilities
in conjunction with a palette of possibilities of assigning master and slave node relationships, with both kinematically and least square approaches, opens up for, albeit
somewhat reduced, methodologies that are similar in effect to submodeling.

2.3

Element formulations

The following elements are used:


For 3D-elements, 10-node iso-parametric Tetrahedrons as seen in Figure 2.1a are
used. This element has four gauss points [9].
For shell-elements, 6-node Parabolic Triangles as seen in Figure 2.1b are used.
This element has three gauss points [10].
For Beam elements, a two-node straight beam element with traverse shear based
on Timoshenko theory is applied[11]. The principle sketch of the beam can be seen
in Figure 2.1c. Catia presents several methods of assigning the governing parameters
seen in Table 2.1 of the beam element according to different types of cross-sections.
One of those, the Beam from surface approach allows for the selection of an
arbitrary cross-section as basis for an automatic assignment of the beam parameters
[12].
The Kinematic spider, or rigid spider, connects a series of slave nodes to a masternode using kinematic relationships[13]. A kinematic spider-element containing
only one slave node is called a kinematic beam-, or rigid beam-element.

12

CHAPTER 2. THEORETICAL BACKGROUND


Table 2.1: Governing parameters of the beam element

Symbol
A
Cy
Cz
qxy
qxz
Ixx
Iyy
Izz

Unit
m2
m
m

m4
m4
m4

Property
Cross-sectional Area
y-coordinate of the shear center of the beam
z-coordinate of the shear center of the beam
Ratio of Y shear area over cross-sectional area
Ratio of Z shear area over cross-sectional area
xx-component of the inertia matrix of the beam
yy-component of the inertia matrix of the beam
zz-component of the inertia matrix of the beam

(a) 10-node Tetrahedron

(b) 6-node Triangle

(c) Beam

(d) Kinematic Spider

Figure 2.1: Principal sketches of elements

13

Chapter 3

Method
3.1

Element formulation for beam structure

Analysis run times are closely related to the number of unknowns in the structure.
Computation times can therefore be reduced by, where suitable, utilizing elements
that use fewer nodes while still accurately describing the structure. As the model
described in Section 3.4 is comprised of mainly beams with a more or less non
variable cross-section in different constellations, the analysis run time can be reduced
by utilizing the less heavy beam element formulation. The studied beam is a typical
cast iron beam used for stiffening the structure immediately surrounding the bogie
suspension. It has a somewhat uneven cross-sectional area, making it an interesting
specimen for investigating the effect of different discretizations. The beam is studied
using three levels of complexity. All three setups has one side clamped at the hole
edges, while the other sides face is subject to four sets of forces. The four load cases
applied are unit loads (1 [N]) in the X-, Y- and Z-directions and torque (1 [Nm]) in
Y-direction applied evenly distributed on all nodes of the beams end face as shown
in Figure 3.1. The evaluation is in the form of measuring the displacement of the
end - face nodes separately for all the loads applied.

Figure 3.1: Picture showing principle of load case application.

14

CHAPTER 3. METHOD

3.1.1

10-node iso-parametric Tetrahedron

This element formulation follows the CAD- geometry of the beam as shown i Figure
3.2. Setup times are short, seeing as the procedure for applying an auto-mesh and
applying the appropriate boundary conditions is trivial. This approach also has a
certain intuitiveness, since stress field renditions can, when studied critically, give
a hint of the well-statedness of the studied problem. The convergence of the end
face displacement with respect to element size is studied. The setup time for this
configuration is approximately 15 minutes.

Figure 3.2: Picture showing 10-node Tetrahedron mesh.

3.1.2

10-node Tetrahedron / Beam element

This setup utilizes the 10-node Tetrahedron for the parts of the beam with a variable
cross section area, and the Beam element formulation for the more or less constant
cross sectional mid portion of the beam as seen in Figure 3.3. The beam properties
are established to mimic the cross section at the mid portion of the beam using the
built in Beam From Surface tool in conjunction with kinematic spider elements
connecting the beam to the end surface of the Tetrahedron portions of the structure.
The converged mesh density of 10-node tet-element were used for the variable crosssection portion. The setup time for this configuration is approximately 90 minutes.

Figure 3.3: Picture showing 10-node Tetrahedron mesh combined with a


Beam element.

15

CHAPTER 3. METHOD

3.1.3

6-node Parabolic Triangle / Beam element

This setup utilizes the 6-node parabolic triangle element with a shell property for
modeling the end plates of the beam. A beam element connects the two end plates
using a property established with the Beam from Surface tool in conjunction with
kinematic spiders connecting the beam end nodes to a delimitation of the end surface
mesh that is a projection of the mid cross section of the beam onto the end plates.
The setup time for this configuration is approximately 90 minutes and the mesh can
be seen in Figure 3.4.

Figure 3.4: Picture showing 6-node Triangle mesh combined with a Beam
element.

3.1.4

Element choice Evaluation

The following section is an evaluation of the three discretization approaches.


As seen in Table 3.1 and visually in Figure 3.5d the difference in end-face deformation is negligable when comparing the 10-node TET to the Beam/10-node Tet
formulation. The differences in deformation is, as seen in Table 3.2, not consistent
between the four load cases.
The effect from using a kinematic spider to connect the beam element to the
end piece structure does not seem significant for this type of composition. Since
the kinematic-spider approach effectively creates an infinitely stiff cross-section, it
is likely that such an approximation would be unsuitable for beams where the local
deformation at or near the cross section is important to the global behaviour. This
can be seen in comparing Figures 3.5a and 3.5b where the local stiffening from the
rigid spider affect the deformation and stress distribution in close vicinity to the
spider.
Another source to the difference in stiffness is that the beam element formulation
assumes a constant cross section. The Tri/Beam configuration, seen if Figure 3.5c
is affected to a greater extent from this compared to the Tet/Beam seen in Figure
3.5b. The cross section is more uneven and gets progressively thicker closer to the end
plates. This could be better described by using a multitude of cross-sections as basis
for the beam elements, giving a greater stiffness closer to the end plates. Another
approach could be some form of linear scaling of the stiffness. The suitability of
such approaches could be put into question since the setup-time of such endeavours
far exceeds the gain in computation time, as seen in Table 3.1.
One important item to consider is the fact that the Tet10/Beam configuration
takes longer time than the pure Tet10 approach to compute. This is in spite of
16

CHAPTER 3. METHOD

having 4/5 the amount of nodes. This is likely due to restrictions to the Catia solver
where multithreading (i.e. parallel computation) is restricted to the factorization
computation, Direct method and frequency solution steps. All other solution steps,
namely the ones associated with setting up the problem, are single threaded [14].
This punishes approaches where one part is replaced by several less complex parts,
as theese attempts show. The computational time cost saving from reducing the
amount of degrees of freedoms is more than made up for by the additional time
spent in the slower single threaded solver steps on one hand and the considerable
extra time spent on analysis setup on the other hand. One can therefore argue that
the most efficient way of shortening the analysis iteration time is to streamline the
analysis setup process. If, on the other hand, a less strict criterion for convergence
were to be used, the difference in the amount of nodes of the mesh between the
10-node TET to the Beam/10-node Tet would be bigger. See Table 3.3 for the
convergence study. This is due to the a behaviour of the automatic mesh procedure
where regions of the structure with sharp surface curvatures are prioritised over
non-complex parts of the structure in the mesh distribution. In the example using
10-node TET elements, the mesh refinement is mostly focused at in the structure
that is not approximated by the beam element. The Beam/10-node Tet-approach
would with this reasoning be more efficient at lower degrees of mesh refinement.

(a) Tet V M stress in deformed state.

(b) Tet/Beam V M stress


in deformed state.

(c) Tri/Beam V M stress


in deformed state.

(d) Tet : Blue


Tet/Beam : Red
Tri/Beam : Green

Figure 3.5: 10-node Tetrahedron

17

CHAPTER 3. METHOD

Specimen
TET10
TET10/Beam
TRI6/Beam

Ux [m]
6.37e-8
6.33e-8
8.86e-8

Uy [m]
-2.74e-9
-2.78e-9
-2.13e-9

y [ ]
3.23e-5
3.17e-5
3.84e-5

Uz [m]
0.89e-7
0.89e-7
1.28e-7

CPU/Walltime [s]
70.3/35.3
72.7/35.4
1.98/1.47

Nr of nodes [-]
158197
132469
2864

Table 3.1: Mean deflection in loaded direction of nodes on edge face due
to unit force [N] or torque [Nxm].

Specimen
10nodeTET
10nodeTET/Beam/Rigid
6nodeTRI/Beam/Rigid
Table 3.2: 100

Xf ault [%]
-0.6198
39.2541
U Uref
Uref

Prescribed element width [m]


Number of nodes [-]
10nodeTET CPU-/Wall time [s]
10nodeTET Ux [m]

Yf ault [%]
1.3589
-22.2929

Zf ault [%]
-0.2608
43.5319

yf ault [%]
-1.7970
18.7680

using 10nodeTET as reference.

7e-2
41341
12.7/7.6
6.2770e-8

4e-2
81474
24.6/13.9
6.3074e-8

2.5e-2
141999
53.9/28.2
6.3513e-8

1.5e-2
158197
70.3/35.3
6.3649e-8

7e-3
277866
187.0/85.5
6.3692e-8

Table 3.3: Convergence study

3.2

Script aided analysis setup

The results from attempts described in Section 3.1.4 suggest that the amount of
time spent running the analysis is small compared to setting it up. Given Catias
well documented integrated macro script functionality, one method of speeding up
the setup process is automating repetitive or time-consuming steps of the process. It
is conceivable to automate most if not all stages of the analysis setup, as the human
interaction with Catia can be substituted with scripting, given the right input. The
following section is dedicated to descriptions of the automation developed during
this thesis. The codes can be found in Appendix A.

3.2.1

Automated Analysis Connections, Connection Properties

In Catia the interconnectivity between different mesh bodies is governed by different combinations of analysis connections and connection properties. The connection
keeps track of what parts of the structure are to be connected while the connection properties determine the type of connection (sliding, kinematic, spring, etc.).
Making one Analysis Connection/Property couple is a procedure that when done
manually takes 8-12 mouse clicks. In the case of the kinematic spider, the procedure found in Appendix A.1 reduces this to two (2) clicks. This principle can be
used to automate all legal combinations of analysis connection and properties.

3.2.2

One-Click-Publish A Series of Publications

In Catia geometrical features can be assigned tags which, among other things, allows
for geometries with similar function to become interchangeable. This operation is
called publication. The script and procedure found in Appendix A.2 enables establishment of publication series, where the features shares a common name, followed

18

CHAPTER 3. METHOD

by a unique index. This allows for quick-switching a geometry subjected to a multitude of analysis connections with another in the analysis context in an effective
manner, or applying a large quantity of analysis connections in one operation as
described in Section 3.2.3.

3.2.3

Automated Analysis Connections, Connection Properties between Series of Publications

The script and procedure found in Appendix A.3 combines the principles of the
scripts found in Sections 3.2.1 and 3.2.2. The result is an example of a script that
applies a series of analysis connections and properties between two series of published
geometries. The example can be modified into supporting any legal combination of
connection and property.

3.2.4

Submodeling

As seen in Section 3.4.4 most beams are connected using kinematic spiders at each
screw hole. The rigid spider element, as described in Section 2.3, has the property
that it connects a masternode to any amount of slave-nodes as if fastened by infinitely
stiff beam elements. This property, in conjunction with the capacity of exporting
and/or enforcing any nodal displacement and rotations enables a method similar in
principle to submodeling as seen in software like Abaqus. There are however a few
limitations. The portion of the structure that is the subject of the submodel must
be entirely delimited by either or a combination of:
1. Connections that use a master-slave node relationship. In Catia, examples
of these are rigid connection properties, smooth connection properties, rigid
virtual parts and smooth virtual parts.
2. Boundary conditions of any kind.
Any use of other connections like gliding with friction, surface pressure or surface
contact will not render a result analogous to that of submodeling. The method goes
as follows and has been automated to some extent with scripting, see Appendix
Section A.1.1 for the code.
1. Run the global analysis.
2. Export the displacement and rotation on the master nodes of the connections
delimiting the structure of the submodel from the global model.
3. Enforce the displacement and rotations on the masternodes of the submodel
manually or by using the script in Appendix A.1.1.
4. Run the submodel
See Figure 3.6 for a graphical visualization of the procedure.

19

CHAPTER 3. METHOD

(a) Global analysis

(b) Export displacement

(c) Enforce displacement

(d) Run Submodel

Figure 3.6: Procedure for running submodel

This approach allows for changes to the mesh definitions of the submodel, giving
access to stress pictures of great detail. Increasing the mesh density of the geometry
feature subject to a connection property increases the amount of slave nodes in
the master/slave relationship. In this respect, the method is totally analogous to
submodeling interpolation schemes used in, for example, Abaqus.

3.3

Verification

For verification of the three load cases the global deformation of the side beams is
studied. The Catia models and their respective Abaqus reference is compared. To
this end, a generalized method of comparing global deformations have been established. The method is comprised of applying a limited amount of post processing
using nodal deformation data. The following are the intended effects:
It allows for comparisons between two different post processors.
It enables comparison between two local deformations, with the option of eliminating any rigid body translations or rotations from the result.
As long as the node numbering goes unchanged, it can be rerun, offering a
quick way to quantify the effect on deformation from a change.
In the case of the three load cases at hand the following procedure is used:
1. The nodal deformations are exported in whatever coordinate system that is
the default one.
2. Three nodes, A, B and C, are chosen in an area of small local deformation. A
is the origo, norm(B-A) acts as the e1 direction and norm(B-A x C-A) is the
e3 direction. (B-A)x(B-A x C-A) is the e2 direction.
20

CHAPTER 3. METHOD

3. Both the non-deformed and the deformed coordinates are translated into the
coordinate system.
4. Plotting the non-deformed and the deformed state in their respective coordinate system renders a deformation picture which effectively has the rigid body
rotation eliminated.

3.4

Load Cases

This section starts with a description of the three load cases under study. There
are several governing characteristics of the models. All descriptions of vectors like
forces and displacements will be notated in RH coordinate system with principal
directions according to Figure 3.7, i.e. with the x-direction in the negative driving
direction, and the y-direction aligned in the right. Furthermore, unless otherwise
stated, the method of coordinate system transformation presented in Section 3.3
have been applied using the points A, B and C marked with blue arrows in Figure
3.7 on the data of all data plots displaying nodal deformations. This has the effect
that point A acts as origo for all data plots. After the description of the load cases
follows a description of the considerations made during the establishment of the
model. The section ends with a description of the method for gauging the effect of
the non-linearities not taken into account by the Catia model.

Figure 3.7: Picture showing coordinate system alignment and points used
for elimination of rigid body rotations.

3.4.1

Cornering

The cornering load case stems from the phenomenon of considerable lateral bending
occurring when driving vehicles with three or more axles slowly in sharp corners,
visualised in Figure 3.8. Lateral reaction forces on the front axle wheels increase
as they are being steered into an angle. This, in conjunction with the back wheels
being aligned rigidly in the forward direction, generates large lateral forces on all
wheel pairs as seen in Figure 3.9. This results in a considerable z-aligned torque
on the bogie as well as a lateral bending of the frame. The severity is increased in
configurations with non-steered rear axles, as this increases lateral forces on the rear
axles and thus the z-aligned torsion of the bogie.

21

CHAPTER 3. METHOD

Figure 3.8: Picture showing principle of Cornering load.

Fy1r + Fy1l (Fy2r + Fy2l ) + Fy3r + Fy3l = 0

(3.1)

(Fy1r + Fy1l ) Ad + (Fy3r + Fy3l ) Bd = 0

(3.2)

Fyn = gen Fzn

(3.3)

Where

(Fynr + Fynl ) Wrd (Fznr + Fznl )

Tnd
=0
2

Fznl + Fznr = 9.81Pn

(3.4)
(3.5)

Where Pn is the technically allowed weight on axle n. Assuming center of gravity of


both truck and trailer are centered gives equal contact pressure between wheelpairs
on all axles.
Fznl = Fznr

Figure 3.9: XY-view of free body diagram.

22

(3.6)

CHAPTER 3. METHOD

Figure 3.10: ZY-view of symbolic axle.

Figure 3.11: Boundary conditions for Lateral Load

23

CHAPTER 3. METHOD

3.4.2

Frame Torsion

The frame Torsion Load Case is used to dimension the frame to handle the twisting
deformation that is associated with uneven road conditions. When the truck drives
over a bump with one wheel, the frame deflection is dependant on the frame torsional
stiffness. The established method of testing this property is for articulated trucks
divided into two steps. For the first step, a forced displacement couple is applied on
the front wheels, and in the second step, the displacement is reversed, see Load Case
Vertical Load on Kingpin. As a mid load, force equivalent to 1g of the motor, cab
and bogie weight is applied in each center of gravity respectively. See Figure 3.12
for a description of the boundary conditions. The resulting stress tensors are then
used to identify the mean and amplitude of the stress levels of critical components,
which can then be compared to material data to ensure the expected load cycles to
failure related metrics.

Figure 3.12: Boundary conditions for Frame Torsion

3.4.3

Vertical Load on Kingpin

The Vertical Load on Kingpin load case is, while most commonly used as a mid load
in fatigue-analysis Load Cases, in itself interesting. The load case is often used as a
first probe when deciding upon whether to attempt a new type of configuration.
To this end, tools have evolved around the idea of automating calculations using
custom built software to solve this load case specifically. The ease of implementation and comparison to other configurations is its major advantages. The forces
equivalent to the weight of the motor, cabin and trailer under the influence of 1g
are applied to their respective centers of gravity. In this implementation, the mid
load is investigated by using the mean tensor field of two load steps from the frame
torsion load case according to Equation 3.7.
Tmid =

T1 + T2
2

24

(3.7)

CHAPTER 3. METHOD

The first load step is the one described in Figure 3.12. The second load step has
reversed enforced displacements in the vertical direction compared to the first, and is
identical in all other respects. This results in a non symmetrical deformation seeing
as the boundary conditions of the Frame Torsion Load Case is not symmetrical.

3.4.4

Modeling considerations

The model is comprised of 35 unique parts discretized by 245271 TRI- and 358561
TET-elements. The parts are connected by 763 spider elements, 18 bar elements
and 4 springs.
Non-script assisted setup of such a model would take approximately one weeks
time. The run time of the Cornering and Frame Torsion load cases analysis is 60
minutes for a mesh density sufficient for converged deformation along the sidebeams.
The Vertical Load on Kingpin load case takes 120 minutes as two load steps are
needed for the result. During modeling, several considerations have been made.
The following section describes them.
Constant thickness geometries
All structure with a predominately constant thickness were modeled using 6node
TRI elements. This is intended to give a reasonable estimation of the stiffness while
also enabling renditions of the stress field, a feature not available for beam elements.
The alternative, i.e. modeling for example the sidebeams using TET10 elements
would require a large amount of elements if a healthy element width ratio is to
be maintained. This is especially true if more than one layer of elements is to be
applied across the cross-section, which could be useful if studying stress fields at
or around screw holes. It would be possible to succesfully model the deformation
of the structure using beam elements and springs only. Such an approach would,
while efficient computational-time wise, be impractical in other respects. For one,
doing this would not allow for pictures of the stress field, making the result usable
only as far as comparisons using global deformation goes. Secondly, this would
effectively nullify the biggest strength of the Catia GAS calculation engine, i.e. the
close connection with the Catia Enovia Geometry database that contains all parts
of virtually all Scania products. This connectivity allows for quick analysis where
the mesh definition can be applied directly onto the geometries using the pre-defined
positioning of the parts from the database. The geometries modeled using TRI6elements include: Side-beams, 1:st through 3:rd cross beams, rear plate, rear axle
housings, bumper and 5-th wheel brackets.
Variable thickness geometries
The 10node TET elements were reserved for geometries with uneven cross sections
that could not easily be satisfactorily modeled using beam elements. This includes
front axle and leaf springs, parts of the cab and bogie suspension brackets. Following
the result in Section 3.1 no additional attempts (except the beam already simplified)
were made to break up parts into sub-elements, as the returns in terms of shortened
computational time was small compared to the increase in setup time.
Stiff structure
Kinematic spider elements were used to simulate the bolts and rivets holding the
structure together. While Catia offers several options for estimating screw connections, these other approaches were not used in order to keep the complexity of the
25

CHAPTER 3. METHOD

model at a minimum. The kinematic spider elements is a representation that is


far more stiff than any screw or bolt can possibly be. Kinematic spiders were also
used to transfer forces from their application point in space onto the structure. One
example of this is the wheels. This approach more or less behaves as expected in
the sense that the force is transferred along with the resulting torque. This is reasonable in loadcases where the force is applied directly and not through an enforced
displacement. In the case of enforced displacement however, the non-deformation of
the kinematic transferal can lead to a disproportionally large resultant force on the
actual frame. Kinematic elements are also used in the motor-node and the kingpin
as those parts of the structure were initially considered high-stiffness areas.
Suspension
The front suspension was modeled with a shape and positioning of the blades and
linkage that represents normal, straight road driving conditions. No pre-tensioning
was applied to the springs. The stress result of the spring blades should therefore
not be expected to be accurate. The suspension blades transfers a predominately
vertical load between the blades while gliding against each other when subjected to
lateral loading. This gliding and at what loads it is initiated in conjunction with the
large deformations associated with pre-tensioning of the springs is a complex and
nonlinear phenomenon. With the solver being limited to small deformations and
rudimentary contact definitions the following scheme is applied: The spring blades
are discretizised using TET10 elements. The blades are fastened directly unto the
first axle using kinetic spiders. Furthermore the spring is connected to the frame
in the front using a pin connection with one rotational degree of freedom released,
and the rear using a link that transfers vertical and lateral load along with x-aligned
torsion. Because only small deformations are defined in the used solver, the linkage
is not expected to rotate in a fashion resembling any real life event.

3.4.5

Evaluation of nonlinearites

Seeing as the Catia solver is strictly linear an attempt is made to visualize the effects
of nonlinearities on the Abaqus reference. This is intended to give a measure of the
magnitude of the effects that the Catia solver does not account for. It is important
to note that these nonlinearities are far from the only difference between the Abaqus
reference and the Catia models. Nevertheless it can act as a gauge of the impact
from the differences in assumptions that are permanent restriction due to the choice
of software.
Geometric nonlinearities
In terms of geometric nonlinearities, Abaqus gives the option of not taking into
account the geometric nonlinearities geometry for a certain loadstep by toggling
the property NLGEOM=yes/no. NLGEOM=no closely mimics the procedure used
by the Catia solver and NLGEOM=yes is the one used in the Abaqus reference
of this thesis. It should be noted that toggling NLGEOM=no does not render a
wholly linear analysis, since this procedure still allows for time dependent effects
like contact initiation, large sliding and other nonlinear phenomenons. In order
to make the comparison the nodal displacement of the top flange on the right side
beam is plotted without any coordinate transformation. This was chosen so as to not
eliminate any rigid body motion, seeing as such behaviour is integral to geometric
nonlinear phenomenons.

26

CHAPTER 3. METHOD

Boundary- and Material nonlinearities


In order to study the effect of boundary nonlinearities as well as material nonlinearities a similar setup was chosen. By performing a static linear perturbation step,
which assumes linear elastic material response as well as linear contact formulations
and infinitesimal deformation a linear problem is achieved[15] (albeit a linearization
around a pre-tensioned state). The initial load step involved with pre-tensioning of
bolts and initiating contact is performed without any modifications. The resulting
tensioned state is then used as basis for a transient load step that is linear. No contact can be initiated, and a linear material response is assumed [5]. The comparison
is made by comparing the nodal displacement of the top flange on the right side
beam and this time using the procedure of eliminating the rigid body motion of the
frame as seen in Section 3.3. This is done because sliding is expected to occur in
and around the suspension structure.

27

Chapter 4

Results and Discussion


4.1
4.1.1

Verification of Load Cases


Lateral Loading

Figure 4.1: ISO view of Von Mises Stress field from Catia Lateral Loading
Load Case

28

CHAPTER 4. RESULTS AND DISCUSSION

Figure 4.2: ISO view of Von Mises Stress field from Abaqus Reference
Lateral Loading Load Case

0.035
Nodal displacement in Z direction [m]

Nodal displacement in Y direction [m]

0.04
Abaqus U

Catia Uy

0.03

0.02

0.01

0.01
4

2
0
2
Deformed X Coordinate [m]

Abaqus U
0.03
0.025
0.02
0.015
0.01
0.005
0
0.005
4

(a) Displacement in Y direction

Catia Uz

2
0
2
Deformed X Coordinate [m]

(b) Displacement in Z direction

Figure 4.3: Collocation of deformation on top right flange edge due to


Lateral Loading according to method in Section 3.3

As seen in Figure 4.3 the nodal displacement of the top right sidebeams flange-edge
of the Catia model follows the characteristic of the Abaqus reference in the Lateral
Loading case. This indicates that the models have a similar lateral stiffness, at
least insofar as this set of boundary conditions are concerned. It should be noted
that this metric can be unintuitive in the sense that the cause of a region with a
29

CHAPTER 4. RESULTS AND DISCUSSION

large difference in nodal displacement can lie in a wholly other part of the structure.
For instance, the difference in the x = 1 to x = 4 section is likely due to a
misrepresentation of the stiffness in the region around the fifth wheel. It should
also be noted that this load case is likely considerably less sensitive to inaccuracies
in stiffness surrounding the front suspension than the Frame Torsion case because
the principal force is applied in the form of force vectors as opposed to enforced
displacements. The Von Mises stress rendering in Figure 4.1 exhibits the same
characteristics with a few notable exeptions. Many screw holes connecting cross
beams with side beams shows considerable stress concentrations in the Catia model.
The Abaqus model has more continuous stress fields close to side beam hole pattern
groups. This is likely due to the relatively high stiffness of the Catia rigid spiders
compared to the more fine tuned screw approximation models used in the reference
in Abaqus.

4.1.2

Frame Torsion

Figure 4.4: ISO view of Von Mises Stress field from Catia Frame Torsion
Load Case

30

CHAPTER 4. RESULTS AND DISCUSSION

Figure 4.5: ISO view of Von Mises Stress field from Abaqus Reference due
to the Frame Torsion Load Case

0.05
Nodal displacement in Z direction [m]

Nodal displacement in Y direction [m]

0.01
0
0.01
0.02
0.03

Abaqus Uy

0.04

Catia Uy

0.05
0.06
0.07
4

2
0
2
Deformed X Coordinate [m]

Abaqus U

Catia Uz

0.04
0.03
0.02
0.01
0
0.01
4

(a) Deflection in Y direction

2
0
2
Deformed X Coordinate [m]

(b) Deflection in Z direction

Figure 4.6: Collocation of deformation on top right flange edge due to


Frame Torsion according to method in Section 3.3

As seen in Figure 4.6 there is a great discrepancy between the Catia result and the
reference. Figure 4.6a shows that Y-aligned displacement of the Catia result is more
than three (3) times that of the Abaqus equivalent. The lateral stiffness of the front
suspension, axle and wheels are disproportionally big, leading to the vertical push of
the enforced displacement translating into a lateral deformation. The effect of this
31

CHAPTER 4. RESULTS AND DISCUSSION

disproportionate twisting is propagating along the frame and is visible in Figure 4.6b
where the local stiffening of the crossbeams yields a distinct waveform of a larger
amplitude than the one that can barely be made out on the reference. Comparing
Figures 4.4 and 4.5 it can be seen that they tell the same story. All stress levels
of the Catia model is above what can be expected. This is especially prevalent in
the zones surrounding the interface between side- and cross-beam. However, when
disregarding the actual stress-level, the distribution is very much similar between
the Catia model and Abaqus reference.

4.1.3

Vertical Load on Kingpin

Figure 4.7: ISO view of Von Mises Stress field from the Catia Vertical Load
on Kingpin case

32

CHAPTER 4. RESULTS AND DISCUSSION

Figure 4.8: ISO view of Von Mises Stress field from Abaqus Reference due
to Vertical Load on Kingpin

Nodal displacement in Z direction [m]

0.035
0.03
Abaqus Uz

0.025

Catia Uz

0.02
0.015
0.01
0.005
0
0.005
4

1
0
Deformed X Coordinate [m]

Figure 4.9: Comparison of nodal displacement on top right flange edge due
to Vertical Load on Kingpin according to method in Section 3.3

The vertical load in the Kingpin load case does, as seen in Figure 4.9, result in a
relatively small deformation in the front portion of the frame in the Catia model.
The effect is, however, not as pronounced as it may seem from the graph alone.
The dominant force in this load case is applied vertically onto the structure very
close to the node that acts as origo of the coordinate system, i.e. the A-node seen
in Figure 3.7. Therefore, what may seem as a problem with the front portion of
the structure is the result of a poor ratio of vertical stiffness between the frontand bogie-suspensions. The relatively high vertical stiffness of the bogie suspension
33

CHAPTER 4. RESULTS AND DISCUSSION

pushes up the mid section of the truck to a disproportionate degree. Likewise, the
relatively low vertical stiffness of the front suspension also adds to the phenomenon.
Lastly, the stiffness of the frame could be overestimated due to the stiffness added
from the motor- and/or kingpin-node being too high. The stress rendering seen
in Figure 4.7 has a similar distribution to that of the relevant Abaqus reference in
Figure 4.8 albeit as expected from the deformation result, the overall stress level is
lower.

4.1.4

Evaluation of nonlinearities
Nodal displacement in X,Y&Z direction [m]

10

x 10

Nlgeom=yes ux
Nlgeom=yes uy
Nlgeom=yes uz
Nlgeom=no ux
Nlgeom=no uy
Nlgeom=no uz

5
1

2
3
Deformed X Coordinate [m]

Figure 4.10: Collocation of nodal displacement on top right flange edge


due to taking Nonlinear geometry into account in Lateral
Loading loadcase

Difference in Nodal displacement [m]

x 10

2
1
0
1
2
Nlgeom=yes ux Nlgeom=no ux
Nlgeom=yes uy Nlgeom=no uy
Nlgeom=yes uz Nlgeom=no uz

3
4
5
1

2
3
Deformed X Coordinate [m]

Figure 4.11: Difference in nodal displacement due to taking Nonlinear geometries into account in Lateral Loading loadcase

As seen in Figures 4.10 and 4.11, no significant difference in the global deformation
of the side beams were introduced from assuming linear geometries. This does not
necessarily mean that there is no effect at all, as large movements of for example
the front springs could affect the stress-levels in close vicinity to that part of the
structure. This result does lend some credence to the validity of the assumption of
small deformations made in Section 1.5.2.
34

Nodal displacement in X,Y&Z direction [m]

CHAPTER 4. RESULTS AND DISCUSSION

0.05
LnPerturb=no ux
LnPerturb=no uy
LnPerturb=no uz
LnPerturb=yes ux
LnPerturb=yes uy
LnPerturb=yes uz

0.04
0.03
0.02
0.01
0
0.01
0.02
0.03
4

1
0
Deformed X Coordinate [m]

Figure 4.12: Collocation of nodal displacement on top right flange edge


due to taking Nonlinear geometry into account in Frame Torsion load case

Difference in Nodal displacement [m]

x 10

10

LnPerturb=yes ux LnPerturb=no ux
LnPerturb=yes uy LnPerturb=no uy

15

20
4

LnPerturb=yes uz LnPerturb=no uz

1
0
Deformed X Coordinate [m]

Figure 4.13: Difference in nodal displacement due to applying Linear Perturbation to Frame Torsion load case

As seen in Figures 4.12 and 4.13, the effect of the Linear Perturbation is more
severe than that of geometrical nonlinearities. The effect seems to affect the lateral
deformation response at a significant rate. This could be due to the front suspension
being sensitive to change from large to small sliding assumptions. The lack of wavy
shape in the Z-aligned deformation can be explained as an effect of the relatively
small lateral deformation and is not a separate phenomenon. The waves are due
to the otherwise continuous deformation of the top right side beam flange being
interrupted by the local stiffening where the side beam meets the crossbeams. This
is only visible during large lateral deformations.

4.2

Overall methodology

After it became apparent that the setup time of the analysis was significantly more
costly than the simulation time, and that simplifications to the discretization resulted in minor gain to simulation speed, a shift in focus occured. Instead of only

35

CHAPTER 4. RESULTS AND DISCUSSION

focusing on finding simplifications to the discretization an effort was made to automate the analysis setup, and later evaluation, using scripting.

4.3

Future work

The following items could be appropriate focuses for future development of the
methodology that has been developed during this thesis.
During the verification phase of the project, several points were revealed where
the Catia model behaves differently than the Abaqus reference. One idea for future
work is therefore adjusting the lateral and vertical stiffness of the front suspension.
This could lead to better results on load cases where the load is applied via enforced
displacement.
Another approach could be to investigate the notion of replacing the whole front
suspension with kinematic relationships coupled with spring elements. This could
be made effective for load cases where the deformation is induced via load vectors.

36

Chapter 5

Conclusions
A method for performing design oriented calculations investigating the three load
cases, Lateral Loading, Frame Torsion and Vertical Load on Kingpin have been
developed.
Three load cases have been established in the Generative Assembly Structural
analysis module of Catia (GAS). The setup of the model is by a large margin
the most time consuming part of the process.
The load cases have been verified by comparisons to Abaqus references. The
difference in deformation and stress levels between the Catia model and Abaqus
reference are varying depending on the load case. The Lateral Loading case
shows less sensitivity to the differences in suspension stiffnesses compared to
the Frame Torsion case.
The impact from differences in calculation software have been considered and
highlighted. The effect on the global deformation of the Abaqus reference
due to Geometrical nonlinearities is negligable. The effect due to contact
nonlinearities is considerable.
The analysis setup time have been made considerably shorter by use of script
based automation. This approach to analysis setup is a potent time saving
possibility. Implementing fully automated analysis setup is conceivable.
A method of utilizing submodeling for reducing the computation time has been
implemented. The method allows for importing deformations from other FEM
software.

37

Bibliography
[1]

Scania Supplier Portal. Scania CAD/PDM Standards. url: https://supplier.


scania.com/wps/portal/Home/Supplying-to-Scania/CAD-PDM/EngineeringPlatform/.

[2]

Dassault Systems. Product Highlights Catia GAS. url: http://www.3ds.com/


products- services/catia/products/v5/portfolio/domain/Analysis/
product/GAS/.

[3]

Michael E. Plesha Robert D. Cook David S. Malkus and Robert J. Witt.


Concepts and Applications of Finite Element Analysis. 4th ed. John Wiley &
Sons, Inc, 2002.

[4]

Catia V5 R20 Generative Analysis Documentation. What Type of Hypotheses


are Used for Analysis? url: http://catiadoc.free.fr/online/estug_C2/
estugbt0614.htm.

[5]

Abaqus Analysis Users guide. 6.1.3 General and linear perturbation procedures. url: http://abaqus.ethz.ch:2080/v6.14/books/usb/default.
htm?startat=pt03ch06s01aus44.html#usb- anl- alinearnonlinear (visited on 06/21/2015).

[6]

Abaqus Analysis Users guide. 38.1.1 Contact formulations in Abaqus/Standard.


url: http : / / abaqus . ethz . ch : 2080 / v6 . 14 / books / usb / default . htm ?
startat=pt09ch38s01aus177.html (visited on 06/21/2015).

[7]

Catia V5 R20 Generative Analysis Documentation. Creating Slider Connection Properties. url: http : / / catiadoc . free . fr / online / estug _ C2 /
estugbt0602.htm.

[8]

Abaqus Analysis Users guide. 38.2.1 Contact formulation for general contact
in Abaqus/Explicit. url: http://abaqus.ethz.ch:2080/v6.14/books/usb/
default.htm?startat=pt09ch38s02aus180.html (visited on 06/21/2015).

[9]

Catia V5 R20 Generative Analysis Documentation. Obtaining Section Parameters. url: http://catiadoc.free.fr/online/femug_C2/femugbt0206.htm.

[10]

Catia V5 R20 Generative Analysis Documentation. Obtaining Section Parameters. url: http://catiadoc.free.fr/online/femug_C2/femugbt0202.htm.

[11]

Catia V5 R20 Generative Analysis Documentation. Obtaining Section Parameters. url: http://catiadoc.free.fr/online/femug_C2/femugbt0207.htm.

[12]

Catia V5 R20 Generative Analysis Documentation. Obtaining Section Parameters. url: http://catiadoc.free.fr/online/ucfug_C2/ucfugbt7505.htm.

[13]

Catia V5 R20 Generative Analysis Documentation. Obtaining Section Parameters. url: http://catiadoc.free.fr/online/femug_C2/femugbt0212.htm.

[14]

Martin Roswall - Senior Technical Specialist at SIMULIA Nordics CSE. private


communication. June 22, 2015.

38

BIBLIOGRAPHY

[15]

Cambridge University Engineering Dept. What is the difference between General and Perturbation steps? url: http://www- h.eng.cam.ac.uk/help/
programs/fe/abaqus/faq68/abaqusf10.html (visited on 08/02/2015).

[16]

Catia V5 R20 Generative Analysis Documentation. Analysis Assembly Methodology. url: http://catiadoc.free.fr/online/estug_C2/estugbt1603.
htm.

39

Appendix A

Appendix
Appendix A contains codes and instructions for the automation scripts.

APPENDIX A. APPENDIX

A.1
A.1.1

General Analysis Connection and Rigid connection


property
Code

'------------------------ Sprkval, dokumentval ------------------------Language="VBSCRIPT"


Sub CATMain()
Set analysisDocument1 = CATIA.ActiveDocument
Set analysisManager1 = analysisDocument1.Analysis
Set analysisSets1 = analysisManager1.AnalysisSets
Set analysisSet1 = analysisSets1.ItemByType("ConnectionDesignManager")
Set analysisSets2 = analysisSet1.AnalysisSets
Set analysisSet2 = analysisSets2.Item(analysisSets2.Count,1)
'------------------------ Etablering av G_A_C --------------------------Set analysisEntities1 = analysisSet2.AnalysisEntities
Set analysisEntity1 = analysisEntities1.Add("SAMGenericConnDesign")
Set basicComponents1 = analysisEntity1.BasicComponents
Set basicComponent1 =
basicComponents1.GetItem("SAMConnectionDesigner1.1")
basicComponent1.SetDimensions 0, 1, 1
Set analysisLinkedDocuments1 = analysisManager1.LinkedDocuments
Set productDocument1 = analysisLinkedDocuments1.Item(1)
Set reference1 = analysisDocument1.Selection.Item(1).Value
'---------------------------- reference1 lggs in i ruta 1 -------------Set product1 = analysisDocument1.Selection.Item(1).LeafProduct
basicComponent1.AddSupportFromProduct product1, reference1
'---------------------------- reference2 lggs in i ruta 2 -------------Set basicComponent2 =
basicComponents1.GetItem("SAMConnectionDesigner2.1")
basicComponent2.SetDimensions 0, 1, 1
Set productDocument1 = analysisLinkedDocuments1.Item(1)
Set reference2 = analysisDocument1.Selection.Item(2).Value
Set product2 = analysisDocument1.Selection.Item(2).LeafProduct
basicComponent2.AddSupportFromProduct product2, reference2
'---------------------------------- namn stts --------------------------

II

APPENDIX A. APPENDIX

analysisEntity1.name=("G_A_C ("&analysisDocument1.Selection.Item(1).LeafProduct.definition&"
("&analysisDocument1.Selection.Item(1).LeafProduct.name&") connected to
"&analysisDocument1.Selection.Item(2).LeafProduct.definition&"
("&analysisDocument1.Selection.Item(2).LeafProduct.name&"))")
'------- SLUT C_G_A_C , C_R_C_P brjar - Analysmodell etableras --------Set analysisModels3 = analysisManager1.AnalysisModels
Set analysisModel3 = analysisModels3.Item(1)
Set analysisSets3 = analysisModel3.AnalysisSets
Set analysisSet3 = analysisSets3.ItemByType("PropertySet")
Set analysisEntities3 = analysisSet3.AnalysisEntities
Set analysisEntity3 = analysisEntities3.Add("SAMDistantRigid")
'-------------------Erstts med analyssettet frn C_G_A_C --------------Set analysisEntity4 = analysisEntity1
Set reference1 =
analysisManager1.CreateReferenceFromObject(analysisEntity4)
Set reference2 =
analysisManager1.CreateReferenceFromObject(analysisEntity4)
Set reference1 = reference1.Parent
Dim bSTR1
bSTR1 = reference1.Name
Dim bSTR2
bSTR2 = reference1.Name
Set reference2 = reference2.Parent
Dim bSTR3
bSTR3 = reference2.Name
Dim bSTR4
bSTR4 = reference2.Name
analysisEntity3.AddSupportFromReference reference1, reference2
analysisEntity3.name=("R_C_P ("&analysisDocument1.Selection.Item(1).LeafProduct.definition&"
("&analysisDocument1.Selection.Item(1).LeafProduct.name&") connected to
"&analysisDocument1.Selection.Item(2).LeafProduct.definition&"
("&analysisDocument1.Selection.Item(2).LeafProduct.name&"))")
End Sub

III

APPENDIX A. APPENDIX

A.1.2

Instruction
1

One-Click-Connection
General Analysis Connection &
Rigid Connection Property
in CATIA GAS
Used License: MD2+MDN+GAS+SPA
Used Macro: C_GAC&RCP.catvbs

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

Introduction
In this guide you will learn how to apply a General Analysis
Connection and Rigid Virtual Property via the use of a
macro.
For efficient use of this method it is recommended to assign
this macro to a hotkey.
1. only has to be performed if no Analysis Connection set
exists.

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

IV

APPENDIX A. APPENDIX

A.1.3

Instruction
3

1. Create Analysis
Connections Set
1.
2.
3.

Right-click on Analysis Connection


Manager
Select Insert Analysis Connections
Set
The Analysis Connections Set is
now created

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

2. Execute macro

1.
2.
3.

Select (Ctrl + Click) any two


features you wish to connect
Run Macro
The General Analysis Connection
and Rigid Virtual Property is now
created
2 Standard procedure

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

APPENDIX A. APPENDIX

A.2
A.2.1

One-Click-Publish A Series of Publications


Code

Language="VBSCRIPT"
Sub CATMain()
Set partDocument1 = CATIA.ActiveDocument
Set part1=partDocument1.Part
fileName = part1.Name
Set product1=partDocument1.Product
Set publications1 = product1.Publications
publname =Inputbox("Namnge publiceringen")
Set oSelection = CATIA.ActiveDocument.Selection
For i=1 to oSelection.Count
Set reference1 =
product1.CreateReferenceFromName(part1.name&"/!"&oSelection.Item(i).Value
.Name)
Set publication1 = publications1.Add(publname&"_"&i)
publications1.SetDirect publname&"_"&i, reference1
Next
Set publications1 = product1.Publications
Set publication = publications1.Item(1)
End Sub

VI

APPENDIX A. APPENDIX

A.2.2

Instruction
1

One-click-Publish
A series of features
using macro
in CATIA
Used Macro: One_Click_Publish.catvbs

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

Introduction
In this guide you will learn how to publish a series of features
in a part via the use of a macro.
For efficient use of this method it is recommended to assign
this macro to a hotkey.
A suffix index is applied in the publication name on the form
_# starting at #=1 and increasing with the number of
publications in the series.
The order of selection determines the order of #.

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

VII

APPENDIX A. APPENDIX

A.2.3

Instruction
3

1. Select features for


publication
1.
2.

Open the Part in New Window


Select (Ctrl + Click) the features to
be published in the tree or in
feature window.
Note: The selection order
determines the suffix index.

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

2. Execute macro

1.
2.
3.
4.

1 Standard procedure
(See separate guide)

Run Macro
Name the publication series by
typing in the window
Press OK
The series publication is made

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

VIII

APPENDIX A. APPENDIX

A.3

A.3.1

One-click-create a series of General Analysis Connections and Rigid Connection properties between
series of publications
Code

'------------ Sprkval ----------------------Language="VBSCRIPT"


Sub CATMain()
'----------------- Dokumentval ----------------------Set analysisDocument1 = CATIA.ActiveDocument
Set analysisManager1 = analysisDocument1.Analysis
On Error Resume Next
Set analysisSets1 = analysisManager1.AnalysisSets
Set analysisSet1 = analysisSets1.ItemByType("ConnectionDesignManager")
Set analysisSets2 = analysisSet1.AnalysisSets
Set analysisSet2 = analysisSets2.Item(analysisSets2.Count,1)
'Produkterna sniffas frn selection
Set product1 = analysisDocument1.Selection.Item(1).LeafProduct
Set product2 = analysisDocument1.Selection.Item(2).LeafProduct
Set publications1 = product1.Publications
Set publications2 = product2.Publications
publname1 =Inputbox("Ange publiceringarnas namn 1")
'---------- Kan avkommenteras ifall tv olika publiceringsserienamn skall
kopplas ihop ---'publname2 =Inputbox("Ange publiceringarnas namn 2")
'---------- Skall avkommenteras om rad ovan bockas ur
publname2=publname1
For i = 1 To publications1.Count
Set publication1=publications1.Item(publname1&"_"&i)
Set publication2=publications2.Item(publname2&"_"&i)
If Err.Number = 0 Then
'--------- Etablering av G_A_C -----------Set analysisEntities1 = analysisSet2.AnalysisEntities
Set analysisEntity1 = analysisEntities1.Add("SAMGenericConnDesign")
'----------- Namnsttning ----------Set basicComponents1 = analysisEntity1.BasicComponents

IX

APPENDIX A. APPENDIX

Set basicComponent1 =
basicComponents1.GetItem("SAMConnectionDesigner1.1")
basicComponent1.SetDimensions 0, 1, 1
'Set analysisLinkedDocuments1 = analysisManager1.LinkedDocuments
'Set productDocument1 = analysisLinkedDocuments1.Item(1)
basicComponent1.AddSupportFromPublication product1, publication1
Set basicComponent2 =
basicComponents1.GetItem("SAMConnectionDesigner2.1")
basicComponent2.SetDimensions 0, 1, 1
basicComponent2.AddSupportFromPublication product2, publication2
analysisEntity1.name=("G_A_C ("&analysisDocument1.Selection.Item(1).LeafProduct.definition&"
("&analysisDocument1.Selection.Item(1).LeafProduct.name&") connected to
"&analysisDocument1.Selection.Item(2).LeafProduct.definition&"
("&analysisDocument1.Selection.Item(2).LeafProduct.name&"))")
'-----------------------'------ SLUT C_G_A_C , C_R_C_P brjar ----------'-------------------'--------- Analysmodell etableras -------Set analysisModels3 = analysisManager1.AnalysisModels
Set analysisModel3 = analysisModels3.Item(1)
Set analysisSets3 = analysisModel3.AnalysisSets
Set analysisSet3 = analysisSets3.ItemByType("PropertySet")
Set analysisEntities3 = analysisSet3.AnalysisEntities
Set analysisEntity3 = analysisEntities3.Add("SAMDistantRigid")
'------ Erstts med analyssettet frn C_G_A_C --------Set analysisEntity4 = analysisEntity1
Set reference1 =
analysisManager1.CreateReferenceFromObject(analysisEntity4)
Set reference2 =
analysisManager1.CreateReferenceFromObject(analysisEntity4)
Set reference1 = reference1.Parent
Dim bSTR1
bSTR1 = reference1.Name

APPENDIX A. APPENDIX

Dim bSTR2
bSTR2 = reference1.Name
Set reference2 = reference2.Parent
Dim bSTR3
bSTR3 = reference2.Name
Dim bSTR4
bSTR4 = reference2.Name
analysisEntity3.AddSupportFromReference reference1, reference2
analysisEntity3.name=("R_C_P ("&analysisDocument1.Selection.Item(1).LeafProduct.definition&"
("&analysisDocument1.Selection.Item(1).LeafProduct.name&") connected to
"&analysisDocument1.Selection.Item(2).LeafProduct.definition&"
("&analysisDocument1.Selection.Item(2).LeafProduct.name&"))")
End If
Next
End Sub

XI

APPENDIX A. APPENDIX

A.3.2

Instruction
1

One-click-create a series of
General Analysis Connections &
Rigid Connection Properties
using a series of publications
in CATIA GAS
Used Macro: Crawler_for_GAC&RCP.catvbs,
One_Click_Publish.catvbs

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

Introduction
In this guide you will learn how to create a series of General
Analysis Connections and Rigid Connection Properties
using a macro.
The macro works best using publication series made with the
macro One_Click_Publish.catvbs.
For efficient use of this method it is recommended to assign
this macro to a hotkey.

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

XII

APPENDIX A. APPENDIX

A.3.3

Instruction
3

1. Publish two series of


features on two parts
1.
2.

3.

Open a part from your analysis in a new


window.
Publish a series of features to be used as
supports for one end of the connections
using One_Click_Publish.catvbs.
Redo 1 and 2 for the other end of the
connections. In 2, reuse the same name
for publication name.

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

2. Execute macro
1.
2.

3.
4.
5.

Open Analysis
Select (Ctrl + Click) a random
feature on both parts that is to be
connected and run Macro.
Input the name of the publication
series used previously in the box.
Press OK.
The General Analysis Connections
and Rigid Analysis Connections
are now applied.

RTCB / Erik Olofsson / Simulation Driven Design

2015-06-09

XIII

APPENDIX A. APPENDIX

A.4
A.4.1

Submodeling
Instruction

In order to export deformation the following is necessary:


Sub Analysis on one or more components, see [16].
The subanalysis where the submodel is to be applied must only be allowed to
interact with the surrounding structure via analysis connection of point type.
The handlepoints is to be published as a series. Use the script described in
Section 3.2.2.
Two sensors, one of deformation, and one on rotation is to be placed on the
handlepoints.
In the subanalysis the handle point is to be made the masternode in a vertial
part that transfers the deformation to the submodel structure.
The procedure of the export is the following:
1. Run the global analysis
2. Export the deformations and rotations from the sensors
3. Copy the deformation and rotation data and paste it into the excel interface
connected to the code. Write the name of the publication serie containing
the handle points in the cell to the right of the cell containing StartDispl
command.
4. Run the macro Feuil1.CreationDisplacement from the excel file while simultaneously having the Analysis document activated in Catia.
5. The deformation is now applied in the analysis.

A.4.2

Code

XIV

APPENDIX A. APPENDIX

'//================================================
'//Script for enforcing displacement
'//================================================
Const Cst_iSTARTDispl

As Integer = 1

Const Cst_iENDDispl

As Integer = 11

Const Cst_iSTARTLoft

As Integer = 2

Const Cst_iENDLoft

As Integer = 22

Const Cst_iSTARTCoord

As Integer = 3

Const Cst_iENDCoord

As Integer = 33

Const Cst_iERRORCool

As Integer = 99

Const Cst_iEND

As Integer = 9999

Const Cst_strSTARTDispl

As String = "StartDispl"

Const Cst_strENDDispl

As String = "EndDispl"

Const Cst_strSTARTLoft

As String = "StartMulti-SectionsSurface"

Const Cst_strENDLoft

As String = "EndMulti-SectionsSurface"

Const Cst_strSTARTCoord

As String = "StartCoord"

Const Cst_strENDCoord

As String = "EndCoord"

Const Cst_strEND

As String = "End"

'Const publname
Public publname
Public Displ_ind

As String = "R_V_P_H"
As String
As Integer

'Temporary solution
'Temporary solution

Function GetTypeFile() As Integer


Dim strInput As String, strMsg As String
choice = 0
While (choice < 1 Or choice > 3)
strMsg = "Type in the kind of entities to create (1 for points, 2
for points and splines, 3 for points, splines and loft):"
strInput = InputBox(Prompt:=strMsg, _
Title:="User Info", XPos:=2000, YPos:=2000)
'Validation of the choice
choice = CInt(strInput)

XV

APPENDIX A. APPENDIX

If (choice < 1 Or choice > 3) Then


MsgBox "Invalid value: must be 1, 2 or 3"
End If
Wend
GetTypeFile = choice
End Function
'-------------------------------------------------'Get the active cell
'-------------------------------------------------Function GetCell(iindex As Integer, column As Integer) As String
Dim Chain As String
Sheets("Feuil1").Select
If (column = 1) Then
Chain = "A" + CStr(iindex)
ElseIf (column = 2) Then
Chain = "B" + CStr(iindex)
ElseIf (column = 3) Then
Chain = "C" + CStr(iindex)
ElseIf (column = 4) Then
Chain = "D" + CStr(iindex)
ElseIf (column = 5) Then
Chain = "E" + CStr(iindex)
ElseIf (column = 6) Then
Chain = "F" + CStr(iindex)
End If
Range(Chain).Select
GetCell = ActiveCell.Value
End Function
Function GetCellA(iRang As Integer) As String
GetCellA = GetCell(iRang, 1)

XVI

APPENDIX A. APPENDIX

End Function
Function GetCellB(iRang As Integer) As String
GetCellB = GetCell(iRang, 2)
End Function
Function GetCellC(iRang As Integer) As String
GetCellC = GetCell(iRang, 3)
End Function
Function GetCellD(iRang As Integer) As String
GetCellD = GetCell(iRang, 4)
End Function
Function GetCellE(iRang As Integer) As String
GetCellE = GetCell(iRang, 5)
End Function
Function GetCellF(iRang As Integer) As String
GetCellF = GetCell(iRang, 6)
End Function
'-------------------------------------------------'Syntax of the parameter file
'Example:
'-------------------------------------------------'StartDispl R_V_P_H
'-8,90E-06 -5,59E-05

-1,432685473

0,000606487 0,965693485 -2,86E-05

'-3,20E-06 -4,19E-05

-7,472345473

0,000923487 0,125432185 -7,12E-05

'EndDispl
'StartDispl Virtual_Part_Handler
'-8,90E-06 -5,59E-05

-1,432685473

0,000606487 0,965693485

'EndDispl
'End
'--------------------------------------------------

XVII

APPENDIX A. APPENDIX

Sub ChainAnalysis(ByRef iRang As Integer, ByRef X_D As Double, ByRef Y_D


As Double, ByRef Z_D As Double, ByRef X_R As Double, ByRef Y_R As Double,
ByRef Z_R As Double, ByRef iValid As Integer)
Dim Chain As String
Dim Chain2 As String
Dim Chain3 As String
Dim Chain4 As String
Dim Chain5 As String
Dim Chain6 As String
Chain = GetCellA(iRang)
Select Case Chain
Case Cst_strSTARTDispl
iValid = Cst_iSTARTDispl
publname = GetCellB(iRang)
Displ_ind = iRang
Case Cst_strENDDispl
iValid = Cst_iENDDispl
Case Cst_strSTARTLoft
iValid = Cst_iSTARTLoft
Case Cst_strENDLoft
iValid = Cst_iENDLoft
Case Cst_strSTARTCoord
iValid = Cst_iSTARTCoord
Case Cst_strENDCoord
iValid = Cst_iENDCoord
Case Cst_strEND
iValid = Cst_iEND
Case Else
iValid = 0
End Select
If (iValid <> 0) Then

XVIII

APPENDIX A. APPENDIX

Exit Sub
End If
'Conversion string -> double
Chain2 = GetCellB(iRang)
Chain3 = GetCellC(iRang)
Chain4 = GetCellD(iRang)
Chain5 = GetCellE(iRang)
Chain6 = GetCellF(iRang)
If ((Len(Chain) > 0) And (Len(Chain2) > 0) And (Len(Chain3) > 0)) And
((Len(Chain4) > 0) And (Len(Chain5) > 0) And (Len(Chain6) > 0)) Then
X_D = CDbl(Chain)
Y_D = CDbl(Chain2)
Z_D = CDbl(Chain3)
X_R = CDbl(Chain4)
Y_R = CDbl(Chain5)
Z_R = CDbl(Chain6)
Else
iValid = Cst_iERRORCool
X_D = 0#
Y_D = 0#
Z_D = 0#
X_R = 0#
Y_R = 0#
Z_R = 0#
End If
End Sub
'-------------------------------------------------' Get CATIA Application
'-------------------------------------------------'Remark:
'

When KO, update CATIA registers with:

XIX

APPENDIX A. APPENDIX

'

CNEXT /unregserver

'

CNEXT /regserver

'-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Function GetCATIA() As Object
Set CATIA = GetObject(, "CATIA.Application")
Set GetCATIA = CATIA
End Function
'-------------------------------------------------' Get CATIADocument
'-------------------------------------------------Function GetCATIAAnalysisDocument() As Object
Set CATIA = GetCATIA
Dim MyAnalysisDocument As Object
Set MyAnalysisDocument = CATIA.ActiveDocument
If MyAnalysisDocument Is Nothing Then
MsgBox "No Catia Active Document found "
End If
Set GetCATIAAnalysisDocument = MyAnalysisDocument
End Function
'-------------------------------------------------' Creates all usable points from the parameter file
'-------------------------------------------------Sub CreationDisplacement()
Dim AnalysisDoc As Object
Set AnalysisDoc = GetCATIAAnalysisDocument
' Get the restraint analysisSet
Dim Analysis_manager As Object
Set Analysis_manager = AnalysisDoc.Analysis
Dim Restraint_analysis_entities As Object

XX

APPENDIX A. APPENDIX

Set Restraint_analysis_entities =
Analysis_manager.AnalysisModels.Item(1).AnalysisCases.Item(1).AnalysisSet
s.Item("Restraints.1", catAnalysisSetSearchAll).AnalysisEntities
Dim Load_analysis_entities As Object
Set Load_analysis_entities =
Analysis_manager.AnalysisModels.Item(1).AnalysisCases.Item(1).AnalysisSet
s.Item("Loads.1", catAnalysisSetSearchAll).AnalysisEntities
Dim Linked_docs As Object
Set Linked_docs = Analysis_manager.LinkedDocuments
Dim Prod As Object
Set Prod = Linked_docs.Item(1).Product
Dim Publs As Object
Set Publs = Prod.Publications
Dim iLigne As Integer
Dim iValid As Integer
Dim X_D As Double
Dim Y_D As Double
Dim Z_D As Double
Dim X_R As Double
Dim Y_R As Double
Dim Z_R As Double
Dim Point As Object
iLigne = 1
'Analyze file
While iValid <> Cst_iEND
'Read a line
ChainAnalysis iLigne, X_D, Y_D, Z_D, X_R, Y_R, Z_R, iValid
'Not on a startcurve or endcurve -> valid point
If (iValid = 0) Then
'Hr stoppas inlgget in
Dim Restraint As Object
Set Restraint = Restraint_analysis_entities.Add("SAMRestraint")

XXI

APPENDIX A. APPENDIX

Dim pubnum As Integer


pubnum = iLigne - Displ_ind
Dim Publ As Object
Set Publ = Publs.Item(publname & "_" & pubnum)
Restraint.AddSupportFromPublication Prod, Publ
Dim Restr_basic_comps As Object
Set Restr_basic_comps = Restraint.BasicComponents
Dim Restr_basic_comp_axis As Object
Set Restr_basic_comp_axis =
Restr_basic_comps.GetItem("SAMRestrainAxis.1")
Restr_basic_comp_axis.SetValue "Values", 0, 0, 0, 1
Dim Restr_basic_comp_DOF As Object
Set Restr_basic_comp_DOF = Restr_basic_comps.GetItem("SAMRestrainDOF.1")
Restr_basic_comp_DOF.SetDimensions 6, 1, 1
Restr_basic_comp_DOF.SetValue "Values", 1, 1, 1, 1
Restr_basic_comp_DOF.SetValue "Values", 2, 1, 1, 1
Restr_basic_comp_DOF.SetValue "Values", 3, 1, 1, 1
Restr_basic_comp_DOF.SetValue "Values", 4, 1, 1, 1
Restr_basic_comp_DOF.SetValue "Values", 5, 1, 1, 1
Restr_basic_comp_DOF.SetValue "Values", 6, 1, 1, 1
Dim Forced_disp As Object
Set Forced_disp = Load_analysis_entities.Add("SAMEnforcedDisp")
Dim reference2 As Object
Set reference2 =
Analysis_manager.CreateReferenceFromObject(Restraint)
Dim Forced_disp_basic_comp As Object
Set Forced_disp_basic_comps = Forced_disp.BasicComponents
Dim Forced_disp_basic_comp1 As Object
Set Forced_disp_basic_comp1 =
Forced_disp_basic_comps.GetItem("SAMEnfDispEntityPtr.1")
Set reference2 = reference2.Parent
Forced_disp_basic_comp1.SetReference "ConnectorList", 0, 0, 0, reference2

XXII

APPENDIX A. APPENDIX

Dim Forced_disp_basic_comp_X_D As Object


Set basicComponent4 = Forced_disp_basic_comps.GetItem("SAMEnfDispTransX")
basicComponent4.SetValue "", 0, 0, 0, Replace(X_D, ",", ".") & "mm"
Dim Forced_disp_basic_comp_Y_D As Object
Set Forced_disp_basic_comp_Y_D =
Forced_disp_basic_comps.GetItem("SAMEnfDispTransY")
Forced_disp_basic_comp_Y_D.SetValue "", 0, 0, 0, Replace(Y_D, ",", ".") &
"mm"
Dim Forced_disp_basic_comp_Z_D As Object
Set Forced_disp_basic_comp_Z_D =
Forced_disp_basic_comps.GetItem("SAMEnfDispTransZ")
Forced_disp_basic_comp_Z_D.SetValue "", 0, 0, 0, Replace(Z_D, ",", ".") &
"mm"
Dim Forced_disp_basic_comp_X_R As Object
Set Forced_disp_basic_comp_X_R =
Forced_disp_basic_comps.GetItem("SAMEnfDispRotX")
Forced_disp_basic_comp_X_R.SetValue "", 0, 0, 0, Replace(X_R, ",", ".") &
"deg"
Dim Forced_disp_basic_comp_Y_R As Object
Set Forced_disp_basic_comp_Y_R =
Forced_disp_basic_comps.GetItem("SAMEnfDispRotY")
Forced_disp_basic_comp_Y_R.SetValue "", 0, 0, 0, Replace(Y_R, ",", ".") &
"deg"
Dim Forced_disp_basic_comp_Z_R As Object
Set Forced_disp_basic_comp_Z_R =
Forced_disp_basic_comps.GetItem("SAMEnfDispRotZ")
Forced_disp_basic_comp_Z_R.SetValue "", 0, 0, 0, Replace(Z_R, ",", ".") &
"deg"
End If
iLigne = iLigne + 1
Wend
End Sub
'-------------------------------------------------'Main program
'--------------------------------------------------

XXIII

APPENDIX A. APPENDIX

Sub Main()
Dim TypeFile As Integer
TypeFile = GetTypeFile
' Warning:
Dim PtDoc

Active document has to be an Analysis Document


As Object

Set Analysis = GetCATIAAnalysisDocument


CreationDisplacement
End Sub

XXIV

You might also like