Professional Documents
Culture Documents
T
P ́ :
M C
S M
por:
Los miembros del comité de tesis recomendamos que el presente proyecto de tesis
presentado por el Ing. César Augusto Rivas Guerra sea aceptado como requisito
parcial para obtener el grado académico de:
Comité de tesis:
Aprobado
Octubre, 2008
Acknowledgments
First and fore most, I would like to thank my mother and father, for all their sup-
port, for their love, for always backing on me and for their patience.
To my thesis advisor and friend, Pedro Orta Castañón. For his unconditional
friendship and for encouraging me to fulfill my goals. Thanks Pedro.
Also, I would like to thanks to Gerardo M. Fumagal Gómez, Dr. Horacio Ahuett
Garza, for agreeing to be on my thesis committee despite their extremely busy
schedule.
To my brother Dr. Alejandro J. Rivas Guerra for providing valuable feedback for
this work. Thanks a Lot!
Dr. Alex Elı́as Zúñiga, Dr. Ricardo A. Ramı́rez Mendoza and Dr. Ciro A. Rodrı́guez
González for their support and encouragement to complete my studies and obtain-
ing my degree after so many years.
I would like to thank all my friends who helped me get through graduate school
and the realization of this work. A special thank you note to Alejandro Rodrı́guez,
Victor Linares, Lucien Danzos and Francisco Jasso-Lucio. For the contributions
provided to this work, and most important, for their friendship. To Chick Higgins,
José Marı́a Cueva and Macus de Andrade, from the Altair Engineering Corporation.
Abstract
Nowadays, the effort to create a complex finite element model has been increasing
rapidly due to the added detail to the model and product development times are
been reduced in order to introduce more products to market. There are several so-
lutions to solve this situation; one of them is to increase the CAE resources around
the world (i.e. hire more employees, outsourcing resources). Another solution is to
manage the knowledge of CAE specialist and automate recurring tasks to free the
knowledge worker from these activities and focus on the task that add value to the
process. There are several benefits of automating task and knowledge management
over increasing head-count: Fixed cost does not increase, knowledge is kept inside
the corporation and engineers focus to solve problems and not in building CAE
models.
In a near future, there will be a change in the CAE process; the required effort
that the CAE specialist will have allocate to build a finite element model will be
decreased to a point that he/she will just be managing the information generated
by servers running commercial or custom-build application, that will create the
finite element models.
i
Contents
Abstract i
1 Introduction 1
1.1 Problem to be Solved . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Work Proposal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Justification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Hypothesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5 Scope of the Investigation . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.6 Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Background 9
2.1 Computer Aided Engineering Process . . . . . . . . . . . . . . . . . . 9
2.1.1 Seaming Components . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.2 Quality Guidelines for Welds in a Finite Element Model . . . 15
2.1.3 Numerical Aspects of the Seaming Components . . . . . . . . 17
2.1.4 Seam Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2 Improvements of Computer Aided Engineering Process . . . . . . . 24
2.3 Knowledge Management . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3.1 Knowledge Elicitation . . . . . . . . . . . . . . . . . . . . . . . 33
3 Methodology 35
3.1 Import Product Information . . . . . . . . . . . . . . . . . . . . . . . . 37
3.1.1 Import Product Information Flow Chart . . . . . . . . . . . . . 37
3.1.2 Algorithm: Import Product Information . . . . . . . . . . . . . 39
3.2 Seaming Components . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
iii
iv CONTENTS
4 Results 83
4.1 Import Product Information into a Meshing Application . . . . . . . 83
4.1.1 Ford F-250 Crash Model . . . . . . . . . . . . . . . . . . . . . . 84
4.1.2 Frame Front End Assembly . . . . . . . . . . . . . . . . . . . . 84
4.1.3 Obtained Benefits . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.2 Seaming Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.2.1 Frame Front End Seaming Process Results . . . . . . . . . . . 88
4.2.2 Seaming Process Obtained Benefits . . . . . . . . . . . . . . . . 89
4.2.3 Other Obtained Benefits . . . . . . . . . . . . . . . . . . . . . . 92
4.3 Batch Meshing Procedure . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.3.1 Frame Front End Module Meshing Process Results . . . . . . 92
4.3.2 Mesh Quality Index . . . . . . . . . . . . . . . . . . . . . . . . 97
4.4 Summary of Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5 Conclusions 103
5.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.2 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.3 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Appendices 108
iv
CONTENTS v
I Matlab File to Calculate the Stiffness Matrix of a Finite Element Model 149
Bibliography 158
v
vi CONTENTS
vi
List of Figures
vii
viii LIST OF FIGURES
viii
LIST OF FIGURES ix
ix
x LIST OF FIGURES
4.18 Effort Comparison between Traditional and Managed CAE Processes 101
x
List of Tables
xi
Chapter 1
Introduction
If the time and effort invested in the creation of the finite element model is short-
ened or eliminated, the validation of a product using analytical methods could be
also shortened, therefor accelerating the completion of the requirements for suc-
cessful product development. The Aberdeen Group [20] states that the focus of
the lead companies is to make sure to meet the product schedules, saving all the
time possible, reducing the physical testing by using virtual prototypes and virtual
1
2 Introduction
In their report , The Aberdeen Group [20] makes the following questions and makes
some conclusion in regards to product development.
Managing product performance information is all about quality and cost, right?
Interestingly enough, manufacturers say it’s more about saving time, getting to
market on time, and increasing top-line growth. How does product performance
information translate to time saved? It’s all about using the experience and
lessons learned from the past to make better decisions today.
This work will eliminate the work required by the CAE specialist to create those
welded assemblies and to streamline the creation of large finite element models,
by capturing the knowledge and transform it into a series of applications that will
handle the process of creating the finite element models. Also, by managing the
knowledge and by the automation of repetitive tasks, the efficiency of the computer
aided engineering process will be increased. The CAE specialist will manage, but
not do, the creation of the finite element models. The engineers will focus on the
value added activities of the CAE process, which are applying boundary conditions
and loads, interpreting the results and making proposals of better designs.
As a sub-product of this work, the quality of the finite element models created will
increase and the variability or variance of the models will be eliminated, in a such
way that models from a novice user will be similar to the ones created by a expert
or senior engineer.
1
Acronym for Computer-Aided Engineering
2
1.2 Work Proposal 3
The main objective of this work is to create applications that will capture the
knowledge of the CAE specialist to generate the finite element models in a CAE
pre-processing application and summarize the work performed in a user friendly
report. These applications will contain and store knowledge of the experience CAE
specialist in regard to the creation of the finite element models.
As an outcome of this work, the effort and the time invested in the pre-processing
activities to create a finite element model will be reduced. The CAE specialists in-
stead of performing the activities by themselves, they will manage their knowledge
and create applications to generate the models.
1.3 Justification
The justifications for the realization of this work are listed below:
- Repetitive tasks that are time consuming and they should be performed by a
computer instead of a knowledge worker. Boris Veytsman et al. [39] stated
that repetitive tasks need to be performed by a computer and not by a knowl-
edge worker, who should focus on solving problems. Veytsman makes the
following comment about task automation:
- Trends indicate a shift in the CAE responsibilities, focusing more in the inter-
pretations of results and proposing design modifications than spending time
meshing and welding components. Fewer will be doing more work.
3
4 Introduction
the pre-processing activities and, finally, output the analysis deck to the CAE
specialist. This will require process and knowledge management and task
automation.
1.4 Hypothesis
The efficiency will be measured in the time required by the CAE specialist to create
the finite element model versus the time required by the application developed.
Effort will be measured in the same way, but instead of tracking the time, the metric
will be the number of manual operations to be performed.
The scope of the current investigation is to provide the basis for the improvement
of the CAE process by managing the knowledge of the specialist and incorporating
task automation into the process of creating the models. Due to the wide range
of uses of the computer-aided engineering, the scope of this work will be set to
improve the CAE process in the automotive industry focusing in the activities re-
quired or needed to create a finite element model of automotive structures as truck
frames or car engine cradles, components that are mostly formed by sheet-metal
parts.
4
1.6 Methodology 5
The intent of this document is not to present any type of new element formulation,
numerical aspects of the finite element method or new numerical methods for solv-
ing the equations that define the finite element method2 .
The task automation described in this work will be only applicable to Altair Hyper-
mesh, it is out of its scope to automate other meshing applications as MSC.Software
MSC.Patran or Beta CAE Systems ANSA.
1.6 Methodology
T̀he methodology used in this work is shown in Figure 1.1, which is described by
the following steps:
- Review the state of the art of CAE pre-processors and their ability to capture
the knowledge and automate tasks.
- Study the CAE process and make an assessment on how to automate the
work.
- Develop a flow diagram of how to create the finite element model by the CAE
specialist in a pre-processing application.
- Generate pseudo-code.
5
6 Introduction
- Create and run test cases. Examples will be presented in which a manual
process is compared to the result of the weld creation with the application
created.
- Document the results obtained within this work and define future work.
6
1.6 Methodology 7
Bibliography
Investigation Make Decision of what to
Knowledge Management, Automate
Task Automation.
7
8 Introduction
8
Chapter 2
Background
This chapter contains information that will serve as the basis of the methodology
followed during this work, which will be reviewed in the next chapter. A de-
scription of the CAE Proceess will be presented among with examples of efforts to
improve the CAE process will be presented. Finally, the Knowledge Management
process will be described and will be shown with bibliography cites, how it can
impact the business performance.
Build CAE Model. To create the finite element model several subprocess are re-
quired: assign name to components, assign properties & material informa-
tion, obtain mid-surfaces (if required), mesh components, create connectors
(welds, bolts) and , finally, mesh QA1 . This stage of the process is very time
1
QA stands for quality assurance of the mesh quality
9
10 Background
consuming and labor intensive. Analysis results depend on the quality of the
mesh. The mesh elements should meet a given quality criteria.
Set up Loads and Boundary Conditions. Loads (forces, moments, thermal loads,
speeds, etc) and movement constrains are applied during this stage to re-
produce the behavior of the components. This stage could be as simple of
applying one load in one node to have several hundreds of loads applied to
several hundreds of nodes into several load cases.
Run Analysis. After the FE model have been created and the boundary conditions
were applied to the model, the next step is to perform the analysis, either on a
local machine, remote server or in a computational cluster. The intervention
of the user is minimal during this stage of the process but it could require
several hours in order to complete the analysis process. In some types of
analyses, the CAE specialist must track a number of variables during the
analysis to check that the analysis is converging into a solution.
Save Data and Archive. Archive the information for later referral. CAE software
vendors are starting to provide solutions to ensure the proper storage of the
model data via data managers.
If stages of the CAE process are reviewed, refer to Figure 2.2, the sub-processes
Import Product Geometry, Build CAE Model and Set up Loads and Boundary
10
2.1 Computer Aided Engineering Process 11
Assign
Heal & Trim
Thickness (If
Surfaces
required)
Create
Mesh
Connectors Mesh QA
Components
(welds, bolts)
Run Analysis
Interrogate Results
CAE Information
Repository
11
12 Background
Conditions are the ones that require more effort or labor by the knowledge worker
or CAE specialists. The actual process of running the analysis require little effort
from the knowledge worker but the computation time is needed, as the process of
archiving the data, which requires disk space. The most important sub-processes
are to interrogate the results and recommend a better design, but the amount of time
invested in these two sub-processes are not even half of the first three sub-processes.
The CAE specialist should spent most of his/her time on interrogating the results
of the analysis to figure out how the design behaves and making recommendations
to improve the performance of the design.
Also from Figure 2.2, each of the sub-processes of the CAE process is divided
into tasks. Those tasks are manually executed by the CAE specialist, even if the
pre-processing application provides a toolset to complete these tasks. The CAE
specialist has to command the application to execute a process for import the prod-
uct data into or to translate/rotate the components or to name the components and
so on with the rest of tasks shown in Figure 2.2. The only task that is independent
of the pre-processing application is the one regarding the selection of the product
data. The pre-processing or meshing application could receive the product data
among some meshing and quality criteria and the application will build the mesh
without any human intervention.
12
2.1 Computer Aided Engineering Process 13
Figure 2.2 shows a reduced user intervention CAE process. To be able to achieve
this streamlined workflow, knowledge management and task automation should
be incorporated.
If we could look into the future, the proposals of design changes could be also
automated. Pre-processing applications are getting morphing and optimization
features, so it could be possible to also automate one of the most important stages
of the CAE process, which are the interrogation of analysis results and the recom-
mendation of a better design.
Figure 2.2 shows a breakdown structure of the CAE process, in one of the subtasks
of the process is the Creation of Connectors. The creation of connectors could be refer
as the process of joining two or more components of an assembly, which can be
performed by adding bolts between two or more components, welding the com-
ponents together.
A technique for joining metals in which actual melting of the pieces to be joined
occurs in the vicinity of the bond. A filler material may be used to facilitate the
process.
The definition given by Callister [21] includes several types of welding, as arc
welding, MIG welding, spot welding and so on. Other types of welding can be
found in [13] and [3].
But for this work, we will define as Seam Weld as a type of continuous weld made
between or upon overlapping metal parts. Several continuous weld process , as
13
14 Background
Select Product
Data
Run Analysis
Interrogate Results
CAE Information
Repository
14
2.1 Computer Aided Engineering Process 15
the arc or MIG welding, could be defined as part of the process named seam weld-
ing or seaming. Seaming Components could be defined as the process of creating a
continuous weld union between components. See Figure 2.3.
Weld Torch
Component A
In the CAE process, seaming components means creation elements between two
finite element meshes. The seam could be represented as rigid elements (RBE2
or RBE3), beam elements, gap elements, bar elements or by 2D or 3D elements,
depending on the standards used and the proper property must be assigned to the
elements representing the weld connection. The process of seaming components
will be explained in the next chapter.
15
16 Background
16
2.1 Computer Aided Engineering Process 17
- Element size at the weld location should be similar. It is not acceptable to have
a difference in the element size at the weld location. If element size of both
components needs to be different, the zone where the weld is located should
share a common element size. Refer to Figure 2.7 for a visual representation.
17
18 Background
Component A
No interaction
between the
Component B
components
The seaming process will couple all the sub-systems into one by linking several
nodes between the components. The seaming process will create finite elements
between the two components, and by doing that, the two stiffness matrix will be
transformed into a system stiffness matrix. See Figure 2.10.
By adding the elements representing the seam weld, the independence between
the sub-systems matrices is eliminated, and a fully couple system is obtained.
The behavior of the system after the components were seamed will depend on
several factors, some considerations are listed below:
18
2.1 Computer Aided Engineering Process 19
Component B
Component A
Components A + B
Interaction between
components due to
the seam connections
19
20 Background
Component B
Seam
Component A
- If shell or solids elements are used, the degrees of freedom of the system
will be a sum of the degrees of freedom of the components. No degrees of
freedom are eliminated or added with shell or solid elements, but a stiffness
between the two components is created, which represents the properties and
the stiffness of the weld.
Figure 2.12 shows the two elements model with no weld element. The stiffness
matrix of the un-seamed model is shown in Figure 2.13. Figure 2.14 shows the two
elements model with a weld element, that is labeled number 3. The stiffness matrix
of the seamed model is shown in Figure 2.15.
2
The number of degrees of freedom eliminated will depend on the configuration of the rigid
element configuration, which can eliminate from 1 to 6 degrees of freedom, Review the solver user’s
manual for technical information about the rigid element configuration
20
2.1 Computer Aided Engineering Process 21
Y = 10.0 4 3 8 7
1 2
Y = 0.0 1 2 5 6
X = 15.0
X = 10.0
X = 25.0
X = 0.0
Dennis L. Chao
Department of Computer Science
It is not too hard to Figure
make2.12:
posters in LATEX
Unseamed 2D Elements
University of New Mexico
dlchao@cs.unm.edu
Y = 10.0 4 3 8 7
1 3 2
Y = 0.0 1 2 5 6
X = 15.0
X = 10.0
X = 25.0
1
Like this:
X = 0.0
21
Dennis L. Chao
Department of Computer Science
It is not too hard to make posters in LATEX University of New Mexico
dlchao@cs.unm.edu
Introduction
22 Packages Conclusions Background
This is Dennis Chao’s attempt to make a poster in LATEX. Well, actually, pdflatex to be exact. pdflatex It is not too hard to do posters in LATEX.
produces a pdf file with the proper fonts. Another nice thing about pdflatex is that you can import jpg
figures1. The pdf can be e-mailed to Kinko’s for printing. Don’t worry too much about the physical
size of the poster. Kinko’s will scale it up to the width of their printer if you want.
311538.46 112499.99 −190384.61 −8653.84 −155769.23 −112499.99 34615.38 8653.84 0 0 0 0 0 0 0 0
112499.99 311538.46 8653.84 34615.38 −112499.99 −155769.23 −8653.84 −190384.61 0 0 0 0 0 0 0 0
−190384.61 8653.84 813461.53 −1.45e − 011 224999.99 −1.818e − 012 −155769.23 112499.99 −441346.15 −8653.84 0 0 0 0 −250961.53 −112499.99
−8653.84 34615.38 −1.45e − 011 588461.53 −1.818e − 012 −225000 112499.99 −155769.23 8653.84 −103846.15 0 0 0 0 −112499.99 −138461.53
−155769.23 −112499.99 224999.99 −1.818e − 012 813461.53 2.91e − 011 −190384.61 −8653.84 −250961.53 112499.99 0 0 0 0 −441346.15 8653.84
−112499.99 −155769.23 −1.818e − 012 −225000 2.91e − 011 588461.53 8653.84 34615.38 112499.99 −138461.53 0 0 0 0 −8653.84 −103846.15
34615.38 −8653.84 −155769.23 112499.99 −190384.61 8653.84 311538.46 −112499.99 0 0 0 0 0 0 0 0
8653.84 −190384.61 112499.99 −155769.23 −8653.84 34615.38 −112499.99 311538.46 0 0 0 0 0 0 0 0
0 0 −441346.15 8653.84 −250961.53 112499.99 0 0 813461.53 1.45e − 011 −190384.61 −8653.84 −155769.23 −112499.99 224999.99 3.638e − 012
0 0 −8653.84 −103846.15 112499.99 −138461.53 0 0 1.45e − 011 588461.53 8653.84 34615.38 −112499.99 −155769.23 5.457e − 012 −225000
0 0 0 0 0 0 0 0 −190384.61 8653.84 311538.46 −112499.99 34615.38 −8653.84 −155769.23 112499.99
0 0 0 0 0 0 0 0 −8653.84 34615.38 −112499.99 311538.46 8653.84 −190384.61 112499.99 −155769.23
0 0 0 0 0 0 0 0 −155769.23 −112499.99 34615.38 8653.84 311538.46 112499.99 −190384.61 −8653.84
0 0 0 0 0 0 0 0 −112499.99 −155769.23 −8653.84 −190384.61 112499.99 311538.46 8653.84 34615.38
0 0 −250961.53 −112499.99 −441346.15 −8653.84 0 0 224999.99 5.457e − 012 −155769.23 112499.99 −190384.61 8653.84 813461.53 −1.45e − 011
0 0 −112499.99 −138461.53 8653.84 −103846.15 0 0 3.638e − 012 −225000 112499.99 −155769.23 −8653.84 34615.38 −1.45e − 011 588461.53
The stiffness matrix of the finite element model with no weld elements (Figure 2.13)
shows two independent matrices that represent there is no union between the el-
ements. By adding a weld element, the stiffness matrix (Figure 2.13) is modified
and a numerical link is added between the two elements. The Matlab file used
to calculate the stiffness matrix of the elements shown in Figures 2.12 and 2.14 is
included in the Appendix I.
1
Like this:
Figures 2.16, 2.17 and 2.18 show three finite element models. Figure 2.16 shows a
finite element model without weld elements between the components. Figures 2.17
2.18 represent the same finite element model but with weld unions between the
components, using RBE2 and CQUAD4 elements, respectively. The Nastran decks
inputs files for the finite element models are included in the Appendix J.
22
2.1 Computer Aided Engineering Process 23
23
24 Background
- The analysis and the design process are not well integrated.
- The job of the analyst should be to solve problems and define the performance
of the products, not to struggle which CAD files and finite element models.
Quoting the author “In an ideal world, there would be no such thing as an analyst”.
The methodology followed by Beckert [9] to obtain these concerns was to interview
several experts in product development and analysis.
24
2.2 Improvements of Computer Aided Engineering Process 25
Eick and Alscher from Altair Engineering [15] gave, in the 6th German LS-Dyna
Forum 2007, a presentation explaining the level of automation possible to create
finite element models using Altair technology. An XML3 file generated by Altair
Data Manager to import and generate the finite mesh of a product. The weld
connections is also obtained from an XML file, which was generated using a CAD
application, like Dassault Systemes CATIA. In this work, the weld connections are
generated in a different way than the work presented by Eick and Alscher, the
geometry information of the components is reviewed by Altair Hypermesh and
when required, the weld is created.
To improve the generation of the models, Makropoulou [24], from Beta CAE Sys-
tems, demonstrated the lastest developments in managing the tasks that the CAE
specialists needs to complete by adding templates for different activities that need
to be performed in the analyst work-flow. For welding the components, similar
than [15] the welding information is provided as an input. This presentation also
was given at the 6th German LS-Dyna Forum, 2007 [4].
Figure 2.19 shows a replica of an image found in [17] to describe the how the
interface.c program works. The program requires a ABAQUS input file, three
I-DEAS groups per interface, the number of interface locations, and paramters such
3
XML is short for Extensible Markup Language, and it allows designers/developers to create
their own customized tags.
25
26 Background
as friction and heat transfer coeficients at the interfaces. The program duplicates
nodes at the interface, renumbers the nodes of the elements affected by the creation
of the interface and creates the required elements with the appropiate nodal con-
nectivity.
interface.c
bolt nodes
cavity
insert
Shah and Tunga, from MSC.Software, [34], in their presentation at the Virtual
Product Conference 2007 “Engineering Simulation Process Automation using Templat-
ing Common Data Model Capabilities of SimXpert” show how to reduce the time
required to complete activities and improve the finite element models by the au-
tomation on simple repetitive tasks as creating bolts and applying loads.
Rupiper [32] in his presentation “Automating FE Model Creation and Managing CAE
Information to Increase User and Global Pre-processing Efficiencies” at the Hyperworks
Technology Conference 2007 reviewed the how John Deere streamlined its CAE pro-
cess eliminating repetitive tasks. Also, Rupiper [32] stated the common problems
in the CAE process: Meshing is time consuming, analysis requirements continue
26
2.2 Improvements of Computer Aided Engineering Process 27
to increase and, finally, product development time are decreasing. But there - John
Deere still performs seaming components as a manual process.
Huf [19], from Ford Motor Company, explains the procedure that organizations
needs to follow to improve and mature their CAE process. He starts be mentioning
of how the text editor was used as the pre-processing tool when computers and
applications were not as developed as today.
He mentions that improvements in the process should have any or all of the fol-
lowing foundations, depending in the amount of time and resources available :
Process Guidance. A way to avoid mistakes by the users. The process should
guide the user to complete the tasks in a proper matter. Both Beta CAE
Systems ANSA and Altair Hypermesh provide features to guide the user
to complete the generation of the finite element model, know as Process
Manager.
Koo et al. [35], from the product development team at Hyundai, realized that the
time spent in generating the input decks from the finite element model could be
decreased by the automation of the creation of analysis files. The tasks of 1) the
creation of 6 types of input files4 for 3 different solvers (MSC.Nastran, MSC.Fatigue,
ABAQUS), 2) the needed commands to submit the solution of the analysis and 3)
4
The analyses mentioned are linear-static, fatigue, impact, non-linear module static, modal, and
point mobility.
27
28 Background
the generation of the report by the inquiry of predefined parameters, were auto-
mated by an application.
Figure 2.20 shows the analysis process at Hyundai before the process was auto-
mated. In this process, the specialist must generated all inputs decks for each of
the analysis required, then transfer the files to the solution server and execute the
commands to solve, recollect all results files and finally create the report for the
analyses performed. The streamlined process is shown in Figure 2.21 in which the
analyst just needs to execute the command to submit the analyses and generate the
report results, all other task are performed by the application developed.
MSC.Nastran
MSC.Fatigue
Report
CAE Specialist generated by
specialists
deck #5 deck #6 res #5 res #6
ABAQUS
Similar to the performed by Hyundai [35], the General Motors Corporation [40] au-
tomated the fatigue solution process by creating a bundle of MSC/Nastran, nCode,
iSIGHT, and internally developed program scripts to reduce the time invested to
obtain fatigue results of a product. The Visteon Corporation [22] automated the
reports for “Occupant head impact simulations on automotive instrument panels” elim-
inating the repetitive tasks by the creation of templates. The creation of the report
is trigged by the successful completion of the crash analysis.
28
2.3 Knowledge Management 29
deck #1 deck #2
res #1 res #2
MSC.Nastran
deck #3 deck #4
res #3 Report
res #4
MSC.Fatigue Report
generated by
CAE Specialist predefined
deck #5 deck #6 templates
res #5 res #6
ABAQUS
The information presented in this section shows the interest of ISV5 and corpora-
tions to improve the CAE process in order to cut the development time and to have
a more efficient process. Some examples were presented in which the focus was
to automate the creation of the finite element model and other works refer to the
elimination of task performed by the specialist in the process of solution and the
creation of the reports.
This current work will focus on the creation of the finite element model and fo-
cusing the the automation of the creation of the weld union between components,
something that that has to be created manually by the CAE specialist or by a de-
signer using a CAD application like CATIA or Unigraphics.
29
30 Background
the new generated knowledge. The final purpose of the knowledge management
is to improve the performance of the company, by avoiding to re-invent the wheel
and keep inside the frontiers of the company the knowledge of its current, former
and future employees. Zhang et al. [43] describe it as “... is the study of strategy,
process and technology to acquire, select, organize, share and leverage business-critical
information and expertise so as to improve company productivity and decision quality”.
Melan et al. stated in [26] that the quality improvement process is not enough to
guarantee the success of a company. A framework is needed to achieve the success
in a company and that every level in the organization needs to be committed to
that framework in order to work and generate results. Melan recommended the
concept of process management of the manufacturing processes to expand to the
administrative and service operations. By doing the later, there will be a clear
understanding of how the work is performed, effectiveness can be measure and a
true control of the operation can be achieved.
Hoffman et al. [18] makes the following quote in regards to Knowledge Manage-
ment:
Knowledge Management can lead to decreased cycles times, help firms avoid
obsolescence, streamline processes, and give firms a sense of how to respond to
change.
Also, Hoffman [18] defines four sub-processes for the Knowledge Management:
Generation of Knowledge (Experience), Capture the Knowledge (Organization of
Knowledge), Knowledge Codification (Representation of Knowledge) and Knowl-
edge Transfer (Transmission to others and absorption). Applied to this work, the
four sub-processes of the Knowledge Management are:
Generation of Knowledge Experience of the CAE specialists, the way the special-
ist works.
30
2.3 Knowledge Management 31
Capture the Knowledge Review the procedures that the CAE specialist follows.
Make procedures to perform meshing activities, if the procedures do not exist.
Knowledge Codification Transform the CAE procedures into computer code, that
always will be executed in a similar manner.
Knowledge Transfer Deploy scripts to users. Train the users how to use the script-
s/procedures and the results expected from the use of the scripts. Also, show
them how they could avoid repetitive tasks and gain additional knowledge
or skills.
Zhang [43] makes the statement that knowledge is as critical to the information
age as the oil is to the industrial age, and that knowledge is a key for business
success and, even more important, the extraction of knowledge is considered as
fundamental in order to achieve success. One of the metrics used by Zhang [43]
to show the importance of Knowledge management is the number of papers pub-
lished regarding this topic in the INSPEC [1] search engine. A reproduction of the
table presented in [43] is shown in Figure 2.22.
Figure 2.22 just reflects the growing industry concern to manage the knowledge of
their workers to improve the performance of the organizations. By managing the
knowledge, the organizations could reduce the time needed to develop products
by avoiding common mistakes, re-inventing the wheel in every new project that
any organization starts.
Afiouni [5] explains that there are two types of knowledge, tacit and explicit. The
tacit knowledge, which is personal and unique, is the acquired through experi-
ence, consists of technical information, know-hows and so on. Explicit knowledge
consists on all of the tacit knowledge that has been translated into a system that
anyone can access and utilize. By managing the knowledge of the CAE specialists,
moving from a tacit based knowledge into a explicit knowledge, the experience of
the engineers will be stored in a computer system that everybody could use, there-
fore, the CAE process will be improved. Afiouni [5] mentions that the knowledge
should not be purely tacit or explicit, but a combination of both of them. Common
31
Time Number of
Articles
1980 - 1985 6
1986 - 1990 52
1991 - 1995 54
32 1996 - 2000 503 Background
2001 - 2005 1174
1000
Num. Articles
800
600
400
200
0
1980 - 1985 1986 - 1990 1991 - 1995 1996 - 2000 2001 - 2005
Figure 2.22: Number of Knowledge Management Papers by Year. According to INSPEC [1].
tacit knowledge must be translated into explicit, meanwhile, the CAE experts must
acquired additional or new tacit knowledge. This recently created tacit knowledge
will be transformed later into explicit knowledge when is fully understood. A new
cycle of knowledge creation/transformation will be created. See Figure 2.23 for a
visual representation of this cycle of knowledge.
The more of tacit knowledge is converted into explicit, the more of new tacit knowl-
edge can be generated.
Afiouni [5] concludes that by managing the knowledge the organization will see
an increase of performance, but this performance increase is not by itself the only
factor to track, increase the knowledge and skills of the employees and facilitate
the sharing of knowledge inside the corporation is key to keep increasing the per-
formance of the organization.
32
2.3 Knowledge Management 33
Generation/
Storage of
Tacit
Knowledge
Explicit Codification of
Knowledge Tacit
Usage Knowledge
CAE Specialist
There are several methodologies that can be follow to obtain or acquire additional
knowledge, as mentioned in [12], [14] and [31]. The more direct method is to ask
the domain expert. Some of the techniques used to capture the knowledge are:
interviews, verbal protocol analysis, task analysis, questionnaires, observation and
contextual inquiries, log files or diaries, diagrams or mind-maps. The knowledge
elicitation should come from different experts, which are freed from their regular
activities and be focus to capture the knowledge and improve their processes.
Some of the issues that may appear with trying to capture the knowledge are:
33
34 Background
- The knowledge that the experts have is vast and mostly is stored in their
heads, even if they -the experts- keep track of their activities and document
their processes.
- Make the decision of which knowledge to extract. What if the knowledge can
not be 100% captured or summarized.
- The experts may not know how to share the proper knowledge.
- The knowledge base is not updated or validated at the end of the process to
acquire the knowledge.
During this work, interviews and task analysis were used to knowledge elicitation
of the CAE specialist. There were some issues presented, as the fact that some
experts were unwilling to participate due to lack of available time.
34
Chapter 3
Methodology
In this chapter the methodology for improving the CAE process via the knowledge
management and task automation will be presented. Also, the algorithms for each
step of the CAE process will be shown.
The knowledge of the CAE specialists will be transformed into a plug-in type appli-
cation for the meshing solution. The knowledge, for this scenario, could be defined
as the steps or activities and checks that are required to complete a finite element
model. Also, the way the CAE specialist interact with the meshing application and
the management of the data and files are considered knowledge.
A managed CAE process can be seen in Figure 3.2, in which the knowledge of
the CAE specialist is converted into a series of rules and into computer code. By
managing the knowledge, the process can be improved, by eliminating non-value
added activities and reducing the effort and time invested to complete a model.
35
36 Methodology
CAE Workstation
CAE Specialist 2 CAD files FE Model 2
Meshing Application
CAE Workstation
CAD files FE Model 3
CAE Specialist 3
Meshing Application
CAE Server
CAD files
Task Automation
CAE Specialist 3 Meshing Application
CAE Specialist 1
CAE Specialist 2
36
3.1 Import Product Information 37
At this stage of the CAE Process, most users have different strategies to import
the product information from the CAD information and PDM2 system. Most of
the strategies depend on personal preference of how to organize the data and time
invested to import the product information into the meshing application . Table 3.1
summarizes the different strategies to import the CAD information in order to have
the model ready for the mesh creation.
The flow chart of the process of importing the product information to the meshing
application from the CAD files is shown in Figure 3.3. Information is taken from
the bill of materials and from the CAD files repository to complete the task of
building the model. These two databases (bill of materials and CAD repository)
are not part of the CAE process but the specialist requires these information to gain
information from the product and provide the information required to the meshing
application.
The bill of materials could be in different formats, in this current process is consid-
ered that the information is in Microsoft Excel Format. The CAD Repository is a
folder in a filesystem that contains all the CAD files in a flat structure. Translators
1
Acronym for Computer Aided Design
2
Acronym for Product Data Management
37
38 Methodology
Table 3.1: Different Approaches to Import the Product Information to Build a Finite Element Model
1. Imports all CAD data into the 1. Imports one CAD file into the 1. Imports all CAD data into the
meshing application. meshing application. meshing application.
2. Creates all of the required ma- 2. From the bill of materials, ob- 2. Creates all of the additional in-
terial information. tains the metadata of the com- formation, by reviewing the bill
3. Gets the bill of materials infor- ponent just imported. of materials. Leaves the com-
mation, from the designer, to 3. Checks if the material informa- ponents names with the name
modify the required metadata tion is loaded into the meshing which the meshing application
of the components. application, if not, creates the gave by default.
4. Component by component pro- material information. 3. Applies the same information
vides a proper name, assigns el- 4. Renames the component and (material and properties) to all
ement and material properties assigns the required informa- the components. Uses the in-
and tion. formation which is most com-
5. if required, mid-surfaces the 5. Mid-surfaces the component, if mon within the model.
components. required. 4. Changes just the components
6. Hides the component in the with different information.
meshing application.
7. Continues this process until
completes importing all the re-
quired files.
38
3.1 Import Product Information 39
could be written from any PDM system different than Microsoft Excel and the file
structure could be modified to have a more flexible system.
The process of building or assembling a finite element model takes place in two
domains: The first domain is the information about the product or component, the
second domain is the meshing application. Normally, this two domains overlap
in the traditional process of importing the product information into the meshing
application, as can be seen at Table 3.1.
In the improved process with knowledge management and task automation, this
two domains will continue to exist, but they will be separated. First, all of the
product data will be transformed into a format that is readable by the meshing
application. After than, a plug-in to the meshing application will read the product
data and will import the CAD files and assign properties to the components.
The pseudo-code for building or assembling a finite element model from the CAD
files follows:
1. Obtain the information of the product. Consists of getting the bill of materials
with the product information.
2. Transform the bill of materials into a format that is readable by the meshing
application. A Microsoft Excel file will be transformed into a csv file with a
given format, which could be read by the meshing application using Tcl code.
3. Read the information generated in the step above in the meshing application.
39
40 Methodology
Start
Provide Proper
Name to the
Component
Material
Properties Create Material
NO
Exists? Properties.
YES YES
Bill of
Materials CAD
Information
Is it a Sheet-
metal Mid-Surface and
YES
Component? Provide Thickness
NO
Are there
more
components?
NO
End
Figure 3.3: Flow Chart. Import Product Information into the Meshing Application from CAD
Information.
40
3.1 Import Product Information 41
4. Import the components, assign proper name, material and element properties.
In its first stage, the procedure would take the information of the bill of materials
and transform it into a format which is readable by the meshing application. See
Figure 3.5.
Figure 3.5 shows a visual representation of the process of converting the bill of
materials -in a human friendly format as Microsoft Excel- into a format which is
readable by the meshing application using Tcl commands. In this case, the format
of the files consists in values separated by semi-colons (;). The reason of using a
special character as a semi-colon to separate the text columns is that the meshing
applications do not accept punctuation characters into the text fields and using
spaces or tabs could cause errors on the splitting of the information that the mesh-
ing application is reading.
41
42 Methodology
Start
Bill of Materials
Bill of Materials Process Meshing Application
Microsoft Excel Visual Basic Readable Format.
Format. Application (csv)
End
Figure 3.5: Algorithm for Converting the Bill of Materials into a Format Readable by the Meshing
Application.
Figure 3.6 the bill of materials in a Microsoft Excel format, while Figure 3.7 shows
the transformation of the bill of materials into a format, columns separated by
semi-colons, that could be read by the meshing application. The format for this
conversion can be seen in Table 3.2:
ITEM
DESCRIPTION PROCESS PART NO. MATERIAL SPEC NOM. GAGE
No
100 CM COMPATIBILITY BEAM UPPER STAMPED ITE-785-02593-A00 AXX2M-ST-S HR270 2.30
101 CM COMPATIBILITY BEAM LOWER STAMPED ITE-785-02594-A00 AXX2M-ST-S HR270 2.60
106 CM SUSPENSION LOWER STAMPED ITE-14599 AXX-2-M-STS-HR3 3.60
107 CM SUSPENSION UPPER STAMPED ITE-14601 AXX-2-M-STS-HR3 2.60
108 CM TRANSMISSION SUPPORT UPPER MAN STAMPED ITE-15488 AXX2M-ST-S HR270 2.90
109 CM TRANSMISSION SUPPORT LOWER MAN STAMPED ITE-15472 AXX2M-ST-S HR270 2.60
112 CM FUEL TANK FRT UPPER STAMPED ITE-91601 AXX3032M-ST-S 2.00
113 CM FUEL TANK FRT LOWER STAMPED ITE-91288 HR270
AXX3032M-ST-S 2.30
114 CM FUEL TANK RR UPPER STAMPED ITE-785-02614-A00 HR270
AXX3032M-ST-S 2.60
115 CM FUEL TANK RR LOWER STAMPED ITE-785-02615-A00 HR270
AXX3032M-ST-S 2.60
116 CM TUBE RR TUBULAR ITE-785-02622-A00 HR270
AXX3032M-ST-S 2.00
117 CM UPPER-A 4X4 (8.2UP) LHD/RHD STAMPED ITE-63897 HR270
AXX-2-M-STS-HR3 2.00
118 CM LOWER-A 4X4 (8.2UP) LHD/RHD STAMPED ITE-63893 AXX-2-M-STS-HR3 2.90
200 BR LH/RH FRONT PLATE CRUSH BUMPER MTG STAMPED ITE-785-02573-A00 AXX2M-ST-S-HR3 3.20
201 BR LH COMPATIBILITY BEAM STAMPED ITE-785-02595-A00 AXX2M-ST-S-HR3 3.00
202 BR RH COMPATIBILITY BEAM STAMPED ITE-785-02596-A00 AXX2M-ST-S-HR3 3.00
In order to assign the proper properties to the materials, a procedure reads the
material information from a database. This procedure is a modified version of the
42
3.1 Import Product Information 43
43
44 Methodology
Altair Material Manager3 macro to be able to run in without any user interface. The
macro consist on a series of folders containing databases of material properties.
The search is performed by the material name and type. If the material does not
exist, generic properties are assigned to the material.
If the product assembly contains any components that are made of sheet-metal, an
additional process must be performed to obtain the mid-surfaces of the compo-
nents. In this process, a mid-surface for each of the components will be generated
per component and the original surfaces and solids of the components will be
deleted. Refer to Figure 3.9 for a block diagram of the algorithm of mid-surfacing
process.
The flow charts presented in Figures 3.5, 3.8 and 3.9 would be transformed into
computer code so the CAE specialist will have only to manage the processes instead
of spending time executing the processes.
Figures 3.10, 3.11 and 3.12 show the different methodologies followed to create the
seam unions as shown in Table 3.3. Creating the weld union of components may
require the creation of the finite element mesh, but the user 3 (Figure 3.12) creates
3
To obtain the Altair macro, log on to http://www.altairhyperworks.com and search in the
Macro Exchange section.
44
3.2 Seaming Components 45
Start
Read Bill of
Materials Log
Meshing Application
Readable Format.
Finished to
Read Bill of Mid-Surfacing
A YES Save FE Model End
Materials? Procedure
NO
Component
Report (pdf)
NO
MATERIAL
YES
Assign Thickness
A
Information
45
46 Methodology
Start
Get Component
List
NO
YES
End
46
3.2 Seaming Components 47
Table 3.3: Different Approaches to Create the Weld Unions between Components.
1. After all of the components 1. Before the components are 1. Before the components are
have been meshed, the CAE meshed, the CAE specialist de- meshed, the CAE specialist de-
specialist will define where the fines which components must fines which components must
components will be welded to- be welded together. be welded together.
gether. The specialist will work 2. The CAE specialist selects two 2. Two components are selected
on component pairs. of the components. Defines from all of the components in
2. The edge nodes from 1st com- the location of the weld for the database.
ponent are projected into the the current components. Iso- 3. The CAE specialist projects
mesh of the 2nd component. lates the area of welding with edge lines from the 1st com-
3. After the nodes were projected some modifications to the com- ponent into the 2st . The weld
into the 2nd component, the ponents geometry, as trimming union (with rigid links or shell
specialist modify the mesh of the surfaces. elements) is created between
the 2st component, so its nodes 3. The surfaces trimmed in the the original lines and the pro-
match to the nodes just pro- step above, are meshed and jected lines. Use of the connec-
jected. make sure that the nodes be- tor feature in the meshing ap-
4. Rigid or shell elements are cre- tween the two components plication.
ated between the two compo- match. The weld is created be- 4. The process is repeated for
nents to represent the weld. tween the two components. all of the components in the
The element nodes will be cre- 4. The CAE specialist selects an- database, until all of the needed
ated at the moment that the el- other pair of components, and connections between compo-
ements are created by the spe- repeats the two steps listed nents are created.
cialist, there is no need to create above. Trim the components, 5. After all of the weld unions
the nodes before the elements mesh the surfaces and generate have been created, the mesh for
are generated. the weld union. every component is created.
5. Continues with the same pro- 5. Continues with the same pro-
cess until all of the welds had cess until all of the weld unions
been created. are created.
6. The surfaces that have not been
meshed, are meshed by the
CAE specialist. He/She con-
tinues the meshing process un-
til there are no unmeshed sur-
faces.
47
48 Methodology
Recently created
nodes
Each of the techniques or methods mentioned in Table 3.3 has some advantages
and some disadvantages, but the main concern is that they require an investment
of effort and time by the CAE specialist. The activities that must be completed and
performed by the CAE specialist are:
48
3.2 Seaming Components 49
49
50 Methodology
50
3.2 Seaming Components 51
- Project the lines or the nodes. The projection of lines or nodes should be
performed by the CAE specialist. If required, the rearrangement of nodes
may be needed.
- Define the element type and the properties to be used for the weld elements.
- The location of some of the projected nodes may be modified be the analyst,
to match the location of the weld unions.
- Review the weld unions and, if required, calculate the weld lengths.
The activities just mentioned are time consuming and the amount of effort required
to complete them is considerable.
This work will modify the workflow used by most of the analysts
According to Miller et al. [30], in section Counting Techniques, Chapter 3, the number
of possible groups that could be created in a assembly of n components in groups
of r components is expressed by the following equation:
n n(n − 1)(n − 2) . . . (n − r + 1)
= (3.1)
r!
r
Equation 3.1 can be written in factorial notation:
n n!
= (3.2)
r!(n − r)!
r
51
52 Methodology
The algorithm to create the component pairs, according to Miller [30] and Equa-
tions 3.1 and 3.2, is shown in Figure 3.13.
Start
A
NO
Initiate j counter
to i + 1
Get a List of j
End
components in
the HM database
CompsInFile
j<
Get the number of NO numberOfCom YES
components in ponents?
the HM database
numberOfComponents
Add components i
& j to Array of
Components
Pairs
C
Initiate i counter
to zero Incr i
i
Incr j
A B
52
3.2 Seaming Components 53
Equations 3.1 and 3.2 will provide the number of groups of r components that will
be created from the assembly from a domain with n parts, but will not calculate
the number of groups of components that will be welded. The number of welded
components will be less than the number calculated using Equations 3.1, because
only components that are close to each other, within a three dimensional search
tolerance, will be welded. Also, only components with a PSHELL element property
will be welded together, so solid components or 1D components will not be welded.
The algorithm shown in Figure 3.13 should be modified to add the conditions men-
tioned. First, the position in the 3D space for each component must be determined
and stored. Then, the procedure must decide if the components are close to each
other and if they are, they -the components- must be flagged as candidates to be
welded together. If the components are not within a distance of been welded to-
gether, they must be flagged as not to be welded together.
In order to determine the position in the 3D space for each component in the HM
database, the following steps must be completed:
53
54 Methodology
variable compPointDB
variable compIdDB
54
3.2 Seaming Components 55
Figure 3.14 shows the points ids from a given components. The ids of the
points are stored in compPointDB to obtain the bounding box of the compo-
nent.
4
A box encompassing an oval or other graphic, that specifies height, width, and location.
55
56 Methodology
set coordsX {}
set coordsY {}
set coordsZ {}
56
3.2 Seaming Components 57
x_m
ax,
y_ma
x, z_
max
x_m
in, y
_min
, z_
min
57
58 Methodology
After the 3D position of each component is determined, a process takes the infor-
mation from the list containing all the possible pairs of components and eliminates
the ones that are not in an 3D distance tolerance. This process, named fastSearch,
determines if the components must be welded together. By doing this, the elapsed
time to complete the seaming process will be decreased, because, the number of
operations will be reduced.
Comp A
Comp C
Comp B
Comp D
From Figure 3.16, if Equation 3.2 is considered, there will be 6 groups of two compo-
nents created, but if the location in space is considered, just 2 groups (Components
A-B and Components C-D) of components will be created and these 2 groups will
be flagged to be welded together . It makes no sense to try to weld components
A-C or A-D or B-C or B-D, because they are not close enough.
The process of creating the components pairs for seaming or welding is performed
by the CAE specialist by visual reference. The automated process, fastSearch,
58
3.2 Seaming Components 59
takes in consideration the location in space and the size of the components to de-
termine if the components will be welded or not. The fastSearch procedure will
only detect if a component is close to another, but not to define the location of the
components locations, this will be performed by the seaming procedure.
Obtain Distance
between Centers
Obtain Relative
Location of
Components in
Space
Obtain Distance
between the
Components
Distance
Components will between Components
not be welded NO YES
Components < should be welded
Tolerance ?
59
60 Methodology
tion 3.1) that the seaming process will try to weld together. If fastSearch is used,
the number of possible pair of components to be welded will decrease. Compo-
nents that are far apart will not be considered to be processed for the seaming
operation.
The original algorithm (Figure 3.13) for creating the pairs of components or groups
to be welded will change into an algorithm which takes in consideration the 3D
location and the size of the components. Refer to Figure 3.18.
The seaming process will create the weld union or connection between components.
The pseudo-code for creating the weld unions or seam connections between a pair
of components follows.
2. From the geometric information, determine the type of weld that will be
performed. There are several types of welds: Overlap Weld (Fig. 3.19), Tee
Weld (Fig. 3.20), Boxed Weld (Fig. 3.21), Thou Weld (Fig. 3.22).
This step is where additional weld modules could be added to cover addi-
tional weld unions that are not covered in the current procedures, as spot
welding or hardware creation.
3. Generate the collector entity that will contain the weld union. The gener-
ation of the name of the weld collector will depend on the ids of the com-
ponents to be welded. The name of weld collector is defined by: prefix–
60
3.2 Seaming Components 61
Start A
Init Array
containing the
i<
Component Pairs B numberOfCom YES
pairOfComponents
ponents?
Initiate j counter
Get a List of NO to i + 1
Pshell j
components in
the HM database End
CompsInFile
Initiate i counter
to zero Add components i
i NO & j to Array of
Components
Pairs
A B
Incr j
Figure 3.18: Flow Chart to Create the Components Pairs in an HM Database Considering 3D
Location & Component Pshell Property.
61
62 Methodology
62
3.2 Seaming Components 63
63
64 Methodology
4. Obtain list of point, lines, surfaces and components IDs for both components
and store them in memory.
5. Determine the locations of the weld unions. Two components could be weld
in just one location, as in Tee connections, or components could be welded in
multiple locations, as in boxed unions.
7. Execute the weld creation procedure that will generate the weld connections
between the components, which consists of the following steps:
64
3.2 Seaming Components 65
*clearmark points 1
*clearmark lines 1
*clearmark surface 2
*clearmark points 1
*clearmark lines 1
*clearmark surface 2
return $projectedLines
}
(e) Set the weld connections to connect components A and B in the location
where the lines have been projected.
(f) Specify weld connection parameters. Refer to Section 3.2.4.
65
66 Methodology
(g) Create weld unions, using the functionally of the meshing applications
to create connectors.
The effort and time invested by the CAE specialist is replaced by a procedure that
generates the seam unions between the components. The tasks performed by the
seaming procedure follows:
66
3.2 Seaming Components 67
Listing 3.7: Tcl to Retrieve Lines and Surfaces from the Two Components to be Joined
# gets the surfaces from component "A"
*createmark surface 1 "by comp name" $compA
set surfacesFromCompA [ hm_getmark surfaces 1]
*clearmark surfaces 1
The type of weld between the two components would depend of the relationships
between their surfaces and lines. To define the union type between the components,
the distance between the points and the surfaces would be compared to a seaming
tolerance. If the distance between the points and the surfaces is less or equal to the
seaming tolerance, they are stored in a database. There will be two comparisons,
the 1st comparison is between the points from component A and the surfaces of
component B. The 2nd comparison is between the points from component B and the
surfaces of component A.
5
A external points is any point entity that contained by a line which Hypermesh type is equal to
1. The Hypermesh line type is obtained by the command [hm getlinetype id of line].
67
68 Methodology
To obtain the distance between the points and the surfaces, the Hypermesh Tcl
command hm getdistancefromnearestsurface was used. This command returns
the closest distance between a coordinate position in space and an surface. The
code to perform is task is shown in Listing 3.8. This code will be used twice, to
obtain the distance from points from component A to surfaces from B and to obtain
the distance from points from component B to surfaces from A.
Listing 3.8: Tcl Code to Obtain the Distance between Points and Surfaces
# checks if the 1st component is near the 2nd component
foreach iPoint $pointsFromCompA {
foreach iSurface $surfacesFromCompB {
set distPointSurf [ lindex [ hm_getdistancefromnearestsurface
[ hm_getcoordinates point $iPoint ] $iSurface ] 0]
if { $distPointSurf < $searchTolerance } {
incr closeAB
lappend surfacesB $iSurface
lappend pointA $iPoint
}
}
}
This example represents the scenario where two perpendicular components are
welded together, refer to Figures 3.20 and 3.22 for a visual representation. Fig-
ure 3.24 represents an example similar to welding mounting brackets or cross-
members to a frame rail.
6
A similar procedure would be executed if the points were from component A and the surfaces,
from component B.
68
3.2 Seaming Components 69
Comp B
Selected Surface
from Comp A
Figure 3.24: Simplified Representation of Two Components. Points From Component B Close to
the Surfaces of Component A.
- Store the points ids from the component B into the variable pointsToWeld and
the selected surfaces from components A into the variable surfaceToWeld.
- Retrieve the line ids attached to the points in pointsToWeld with the proce-
dure GetLinesFromPoints and store them in the variable linesToWeld.
- Project the lines stored in the variable linesToWeld into the surfaces (surfaceToWeld)
using the procedure projectLines and store the ids of the lines created in
the variable lineasProjd.
- Create the weld connections between the components A and B using the
procedure seamCompswithCollectors.
69
70 Methodology
is similar to the one used then the weld is just needed in one location. The pro-
cedure follow for welding in one location is repeated in multiple occurrences and
additional process to separate the lines is also expected, the Tcl procedure used is
SeparateLines.
Comp B
Selected Lines from
Comp B
Selected Surface
from Comp A
Figure 3.25: Simplified Representation of Two Components. Points From Component B Close to
the Surfaces of Component A - Multiple Locations.
Points from Both Components Close to the Surfaces of Both Component - One
Location
Figure 3.26 shows a simplified example of the two components two be welded
together. This case points, marked as colored diamonds, from both components
are in weld tolerance to some of the surfaces of both components. This case differ
70
3.2 Seaming Components 71
to the case shown in Figure 3.24 in the need to make a decision of which lines -from
component A or from B- to project to which surfaces-from component A or from B.
Selected Points
from Comp A Comp B
Selected Surface
from Comp B
Selected Line from
Comp A
Selected Surface
from Comp A
Figure 3.26: Simplified Representation of Two Components. Points from Both Components Close
to the Surfaces of Both Component - One Location.
- Obtain a bounding box of the selected lines from component A. Obtain the
orientation of the bounding box and calculate the center of the bounding box
and its size. The orientation of the bounding box of the selected lines from
component A is obtained by a comparison of the center of the bounding box
of the selected surfaces from component A and B.
- Obtain a bounding box of the selected lines from component B. Obtain the
orientation of the bounding box and calculate the center of the bounding box
71
72 Methodology
Selected Surface
from Comp B
Center Bounding Box
from Components A & B
Selected Line
from Comp A
and its size. The orientation of the bounding box of the selected lines from
component B is obtained by a comparison of the center of the bounding box
of the selected surfaces from component A and B.
- After the comparison, set variable linesToWeld with the selected lines and
set variable surfacesToWeld with the selected surfaces from the item above.
Execute procedure projectLines to trim the selected surfaces and store the
recently created lines in the variable lineasProjd1.
Points from Both Components Close to the Surfaces of Both Component - Mul-
tiple Locations
Figure 3.28 shows an example of a simplified weld connection in two –or multiple–
locations. This is common in boxed welds for structural armatures or automotive
structural components, as in Figure 3.21.
72
3.2 Seaming Components 73
Comp B
Comp A
Figure 3.28: Simplified Representation of Two Components. Points from Both Components Close
to the Surfaces of Both Component - Multiple Locations.
The process is similar to the case where points from both components are close to
each other, but there should be a division in creating the weld connections. Instead
of just running one process to generate the weld, multiple serial processes must
be completed to generate the weld in all the possible locations. If not, the weld
creation could generate errors as wrongly creating the welds.
The Tcl code for the detection of type and the creation of weld connectors is shown
in Appendix B.
73
74 Methodology
Comp B
Comp A
Figure 3.29: Simplified Representation of Two Components. Points from Both Components Close
to the Surfaces of Both Component - Multiple Locations.
Figure 3.30 shows the structure of the seaming preference file, which is required to
set the weld union parameters.
collector. Defines the naming convention for the weld connectors. The weld be-
tween a pair of components will have an unique name.
collectorColor. Defines the color of the weld collectors. Follows the color num-
bering convention from Altair Hypermesh. If the collectorColor is set to 3,
this means that the collector color is red.
74
3.2 Seaming Components 75
collector;weld-connectors
collectorColor;3
type;rigid If the distance between the
Defines the type of componets is greater than
elements used for tolerance;6.0 this value, the weld is not
created. Similar to search
creation of the
weld connectors.
connect_location;lines tolerance.
connect_what;components
spacing;6.0
How the seaming process
end_offset;5.0 will be handles. Between
lines and components.
75
76 Methodology
type. Code that defines the element type used for the weld connections between
components: (2) plot, (3) weld, (5) rigid, (21) spring, (55) rigid-link, (60) bar2,
(61) rod, (70) gap, (104) quads, (1001) custom. Defines by Altair Hypermesh
Connectors.
connect location, connect what. Defines how the connections are handled. De-
fined by Altair Hypermesh connectors feature.
spacing. Defines the spacing between elements in the weld union. In most of the
cases the parameter spacing will be similar or equal to the element size used
for the finite element mesh. See Figure 3.32
end offset. Defines the offset distance from the edge, where the weld connection
will start and end. From figure 3.33 can be appreciated a representation of
76
3.2 Seaming Components 77
Comp A
d d d d
Comp B
the end offset parameter, the weld connector (shown in red color) between
components A and B starts and ends at a d distances from the edges.
77
78 Methodology
Comp A
d d
Comp B
This process will only consider creating mesh for surfaces and the output will be a
two dimensional mesh or shell mesh. Solid meshing and creation of 1D elements
will not be considered in this process.
Similar to the two processes mentioned in this chapter, this process -the creation
of the mesh- depends on the way the CAE specialist learned and it is used to do
his/her work.
Table 3.4 shows a list of steps that three CAE specialists will perform to obtain a
finite element mesh from a series of surfaces. In addition to the effort and time
metrics, for the process of the creation of the mesh.
78
3.3 Meshing Components 79
1. Select one component. Work 1. Select one component. Hide all 1. Mesh all the components with-
on the surfaces per component. others. out a surface clean-up process.
2. Add washers per holes or slots. 2. Clean up surfaces of the dis- 2. Fix any quality issues. The user
The surfaces with holes or slots played component. Joint, trim, will re-mesh the elements with
will be trimmed to create a delete, split, add control points low quality criteria.
washer. and lines. Add washers.
3. Clean up surfaces. Joint, trim, 3. Continue surface clean up
delete, split, add control points of other components until
and lines. all components have been
4. Create mesh with commands of cleaned.
the meshing application. 4. Mesh all of the surfaces of the
5. Fix any mesh issues. Re-mesh product or assembly.
the elements with quality is- 5. Quality improvement process.
sues until no bad elements are After all the components have
present on the component. been meshed, the users will
6. Select another component and start a process to review the
repeat the steps mentioned quality of the mesh and fix any
above until all the components quality issue.
have been completed.
79
80 Methodology
1. Obtain a list from all the components and cycle through all of them.
2. Per component, select all of the surfaces and execute a process for cleaning up
the surfaces. This process will require as an input a clean-up criteria, which
is stored in a file located in a specific directory.
3. After the completion of the clean-up process, a process for creating the mesh
will be executed. This process will require as an input the following data:
element size and element quality criteria.
4. Implement a quality process after the component mesh has been completed.
5. After all the components have been meshed, a quality element report could be
implemented so that the CAE Specialist or knowledge worker could review
the quality of the mesh just created. As above, the criteria have to be stored
in a file.
Figure 3.34 shows the flow chart of the algorithm to build a finite element mesh.
This flow chart can be seen as the process that the CAE specialist should follow to
create a finite element mesh. The algorithm would be transformed into computer
code to improve the meshing process by letting the meshing application to execute
this process without any intervention of the CAE specialist or knowledge worker
but reviewing the outcome of the automated process.
80
3.3 Meshing Components 81
Start
Geometry Feature
Mesh Quality Read Parameter Recognition
Parameters Files and Clean-up
Generate List of
Surface
Components
Select Surfaces
Are there more Component
A
Components?
YES of Current
Clean-Up
Component
NO
End
Component Mesh
Creation
81
82 Methodology
82
Chapter 4
Results
In this chapter, the results of this work are presented. The results will be divided in
three sections, the first section will present the results from the procedure to batch
import geometry into the meshing application, batch import and cleaning.tcl.
On the second section, the results for the auto-seam seaming.tcl procedure will be
presented. And finally, the results for the batch-meshing procedure will be shown.
To visualize the differences between the traditional and the improved CAE process
three metrics are tracked: effort, elapsed time and estimated cost per model. The
effort is defined as the amount of instructions or commands that the user needs
to perform to complete the activity. The estimated cost will be computed by
multiplying the cost per hour of a CAE specialist times the elapsed time to complete
the activity.
In order to show the benefits of the procedure to batch import geometry into mesh-
ing application, two examples will be presented showing a comparison between
building the finite element model using the traditional process versus building the
model using a managed process.
83
84 Results
The Ford F-250 model is shown in following figures. A three quarter view of the
truck is shown in Figure 4.1. Figure 4.2 shows a detailed view of the truck frame,
suspension and power-train components of the Ford F-250 model.
1
The crash model was obtained from FHWA/NHTSA National Crash Analysis Center web-
site. http://www.ncac.gwu.edu/. Reverse engineering was used to generate the CAD files and the
bill of materials of the F-250 pickup truck.
84
4.1 Import Product Information into a Meshing Application 85
Figure 4.2: F-250 Detailed Truck Frame, Suspension and Power-train Components View.
85
86 Results
Table 4.1: Ford F-250. Comparison Between Traditional and Managed CAE Process
CAE Traditional Process CAE Managed Process %
Effort 3822 5 76340%
Time (s) 31850 703 4430%
Cost (USD) 575.07 12.69 4430%
After importing the components to create the frame front end assembly (see figure
4.3) and assign the proper properties, the comparison between the two process is
shown in Table 4.2.
Table 4.2: Frame Front End Assembly. Comparison Between Traditional and Managed CAE
Process
CAE Traditional Process CAE Managed Process %
Effort 162 5 3240%
Time (s) 1680 103 1630%
Cost (USD) 30.00 1.86 1630%
As a reference, the component list of the front end module is shown at Appendix G.
The cost comparison on Tables 4.1 and 4.2 just shows cost for importing the CAD
information and assigning properties to the finite element model. No mesh has
been created, yet.
86
4.1 Import Product Information into a Meshing Application 87
The required time to create a model on the traditional CAE process varies depend-
ing on the experience of the CAE engineer and his/her current work-load, while the
time required to import the model and assign the properties by using the improved
workflow only depends on the performance of the workstation or server used to
create or build the model.
The effort of the improved CAE process is defined as the following items:
- Execute the VBA macro ExportBOMData. This is required to translate the bill of
materials into a computer-friendly format.
- If required, manually edit the files created by the VBA macro ExportBOMData.
- Transfer the files created by the VBA macro ExportBOMData to the folder containing
the model CAD information, skip this steps if not required.
- Run the batch import and cleaning.tcl procedure in Altair Hypermesh command
window (graphical or batch mode). The procedure will look for the files just
created by the VBA macro ExportBOMData.
As noted, the structural engineers just need to perform 5 actions to create the re-
quired finite element model(s).
He/She does not have to manually input any information (CAD files names, com-
ponent name, material information or thickness information) to the meshing ap-
plication avoiding human errors like miss-typing a word or number, as typing
the wrong thickness for a sheet-metal. Another benefit is that the job could be
performed after office hours or during the weekend, shortening the development
time by utilizing non-standard work hours and by freeing engineering resources
for value added activities.
The costs for the traditional CAE process, shown in Tables 4.1 and 4.2, represents
the effort of the crash engineer to import the CAD files into the meshing application.
87
88 Results
Otherwise, the cost shown for the managed CAE process is defined as a computer
cost for the elapsed time to complete the import process of the components, the
crash engineer will only have to command the computer to import the files, using
the elapsed time of the import process to complete other value-added activities, as
making design recommendations for safety.
88
4.2 Seaming Procedure 89
Figures 4.6, 4.7, 4.8 and 4.9 show examples of the welded components. The green
dots represents the weld elements, making an assembly of the two components.
89
90 Results
90
4.2 Seaming Procedure 91
Table 4.3: Frame Front End Module. Comparison Between Traditional and Improved CAE Process
CAE Traditional Process CAE Managed Process %
Effort 2122 2 106,100%
Time (s) 3210 545 589%
Cost (USD) 57.95 9.85 589%
to perform: Load the Hypermesh database containing the components to weld and
load the seaming. t c l script into hypermesh.
The costs for shown in table 4.3 for the traditional CAE process represents only
the time invested in creating the seam weld connectors between the components,
it does not count any work breaks. In regard to the managed CAE process, the
cost represents a fixed cost multiplied by the time invested by a computer or server
executing Hypermesh commands in order to create seam connectors between com-
ponents.
91
92 Results
The report presents a summary of the total weld lengths and a detailed tabled
showing the weld lengths per component pair. See Figures 4.10, 4.11, 4.12 and 4.13
for a visual representation of the weld length report.
As in the previous section, time and effort are used as ways to show the differences
between the two processes, but for this section, also, the mesh quality is also used
as a metric to compare the two models. Altair Hypermesh quality report tool is
used to obtain the mesh quality.
For the traditional CAE process, the number of operations is obtained from the
command.cmf file generated by Altair HyperMesh. For the managed CAE process,
the effort is defined by the following tasks: Load the Hypermesh database and exe-
cute the procedure batch meshing.tcl, all other commands are executed without
the CAE specialist intervention.
92
4.3 Batch Meshing Procedure 93
AutoSeam Report
AutoSeam detected 40 weld assemblies with an aproximate weld length of
16371.09 length units. Elapsed time to complete welding the components:
00:09:22. See the images below for a visual representation of the Full Assembly
and the sub-assemblies created by AutoSeam.
Figure 1: Full Welded Assembly. Green Points represents weld connections between compo-
nents. Weld Length: 16371.09) length units.
93
94 Results
94
4.3 Batch Meshing Procedure 95
95
96 Results
96
4.3 Batch Meshing Procedure 97
Table 4.4: Frame Front End Module Meshing. Comparison between Traditional and Improved
CAE Process
CAE Traditional Process CAE Managed Process %
Effort 7165 2 358,250%
Time (s) 4800 1795 267.4%
Cost (USD) 86.7 32.4 267.4%
97
98 Results
From the data shown above, the number of failed elements is 132 elements in the
managed CAE process vs. 462 failed elements in the traditional process. Also,
the number of triangular elements is down from 3226 elements in the traditional
process vs. 2570 in the managed CAE process. The Altair Hypermesh quality
index also was improved, from 1456.00 to 991.50. Figures 4.14, 4.15, 4.16 and 4.17
show the obtained meshes from the managed CAE process.
Both meshes will require additional improvement by the CAE specialist, but the
amount of re-work required for the managed CAE process mesh is less than the
mesh, manually created by the CAE specialist.
98
4.3 Batch Meshing Procedure 99
99
100 Results
100
4.4 Summary of Results 101
2122
162
5
2 2
Figure 4.18: Effort Comparison between Traditional and Managed CAE Processes
The effort shown in Figure 4.18 for the traditional CAE process depends on the
number of components in the product, but the effort for the managed process is
fixed and with additional work, the effort could be reduced. CAE specialist could
submit the creation of the finite element model from Microsoft Excel or the PDM
system.
101
102 Results
102
Chapter 5
Conclusions
This chapter will present the conclusions and contributions of this work. Also, the
future work will be listed at the end of this chapter.
5.1 Conclusions
From the results shown in the previous chapter, the hypothesis presented in the
Introduction Chapter can be set as a valid hypothesis. The CAE process can be
optimized or improved through the usage of knowledge management and task
automation. This conclusion could be extended beyond the CAE process, it could
be applied to any engineering process.
After reviewing the methodology followed and the results obtained, some conclu-
sions are:
- Time consuming tasks are eliminated and replaced by a more efficient way,
which requires almost no human intervention. Complete finite element mod-
els could be generated overnight by workstations/servers. Decreasing the
time required to complete a finite element model.
103
104 Conclusions
- Without knowledge management in the CAE process, the only way to de-
crease the time to market is by increasing the head-count, therefore, increas-
ing fixed costs. The process will not be more efficient, just more man-hours
will be available.
- Avoid re-work as most of the activities related to the CAE process will be
created according to the rules created by managing the knowledge of the
CAE specialist and decrease variance between models created by different
CAE specialist.
- In approximate 5-10 years, the scope of the CAE specialist will change from
creating meshes (finite element models) and applying loads to managing the
information generated applications. Fully detailed finite element models will
be created without any human intervention1 .
- Knowledge workers, not just the CAE specialists, must be efficient in do-
ing their work and innovate in their daily activities. Small changes to the
workflow could result in productivity gains for the process in which they are
involved.
By managing the knowledge of the CAE specialist and automating several sub-
processes of the CAE process, the non-added value activities (Importing CAD
Information, Seaming components) will be performed over night by a server or
workstation while the knowledge worker ( or CAE specialist) could focus on his/her
work in setting boundary conditions, interpreting results and performing more it-
erations to get a more robust design. As a side effect of this work, the quality of the
1
Few steps will be required to specify to the servers which models to generate
104
5.2 Contributions 105
finite element model will be increased and the variation between models (created
by different users) will be eliminated, so models created by an experience CAE
specialist and a novice user will be similar.
As an overall conclusion for this work, we must look at the things we do every
day at work, and analyze what is the knowledge that we could manage better to
improve the efficiency and performance of the processes.
5.2 Contributions
The main contribution of this work is to show the importance of process and
knowledge management in Computer Aided Engineering. The latest match with
the trends in the CAE software, in the coming years, the role of the CAE specialist
will change, due to the fact that CAE software will incorporate knowledge and pro-
cess managements into its work-flow. The CAE specialists will not face extinction,
but they will have to evolve to match the pace of the evolution of the CAE software.
From Results chapter, it can be appreciated the gain in productivity and the con-
siderable reduction in time required to build a finite element model. Instead of
spending time importing models, welding components together and meshing com-
ponents, the CAE specialist could do more iterations, if required.
During the creation of this work, the importance of task automation was shown.
105
106 Conclusions
Knowledge and Process Management could not complete the activities by them-
selves, but by using task automation, repetitive activities can be performed by a
server or workstation.
This work will re-define the scope of the CAE process and the roll of the specialists
doing finite element analyses, making them to focus in their core skill. The CAE
specialist core skill is the ability of abstract physical phenomenon happening in
products under normal or critical operation. The main output of the analyst is to
make any recommendation to optimize, improve or reject a product or component
by simulating its performance under normal or critical circumstances.
- Before adding additional functionality, the code must be validated with more
complex models as full white-in-body structures to prove the reliability of the
code.
- Create the logic for the detection holes in order to automate the creation of
the bolts between components.
- Implement a prodedure to fix the quality issues in the finite element mesh
after the creation of the mesh is completed.
- As the software was created with a modular structure, the logic for detecting
weld connection can be updated to include additional conditions or unions,
2
To re-write existing source code in order to improve its readability or structure without affecting
its meaning or behaviour.
106
5.3 Future Work 107
as spot welds or adhesives. The required changes do not need the re-writing
the application, just small modifications to the code and add the procedures
which contains the logic for the additional unions.
- Set up a meshing server, so all the meshing jobs could be sent to it through a
web interface. At the completion of the meshing process, knowledge worker
will get an URL with the meshing report and a link to the analysis deck.
- Port the code to other scripting languages, as APDL, PCL, VBA and ANSA
scripting language, so it could be used in other prepossessing applications, like
MSC.Patran, ANSA, GiD.
- As a long term goal, expend the concept of this work to the design process,
developing an application that manages the design process, removing the
repetitive task that consumes time and avoid common mistakes during the
design iterations.
107
108 Conclusions
108
Appendices
109
Appendix A
The Tcl programming language was created in the spring of 1988 by John Ouster-
hout while working at the University of California, Berkeley. Tk is an open source,
cross-platform widget toolkit, that is, a library of basic elements for building a
graphical user interface (GUI). The Tcl Developer Site[2] defines it:
Tcl (Tool Command Language) is a very powerful but easy to learn dynamic
programming language, suitable for a very wide range of uses, including web
and desktop applications, networking, administration, testing and many more.
Open source and business-friendly, Tcl is a mature yet evolving language that
is truly cross platform, easily deployed and highly extensible. Tk is a graphical
user interface toolkit that takes developing desktop applications to a higher level
than conventional approaches. Tk is the standard GUI not only for Tcl, but for
many other dynamic languages, and can produce rich, native applications that
run unchanged across Windows, Mac OS X, Linux and more.
111
112 Altair Hyperworks Automation with Tcl/Tk
The code in the Listing A.1 shows the Tcl code required so Hypermesh can create
and return a list of lines attached to a given list of point entities. The returned lines
are the lines which shares two of the points contained in the list.
Listing A.1: Hypermesh Tcl Macro: Select Lines from Given Point List
proc GetLinesFromPoints { pointList } {
# selects the lines attached to somepoints, the two points
# in the list must be in the point list
*clearmark lines 1
hm_createmark lines 1 "by points " $pointList
set lineList [ hm_getmark lines 1]
*clearmark lines 1
This code illustrates the interaction between Altair Hypermesh and Tcl, demon-
strates how repetitive tasks can be automated. If a specialist or analyst frequently
requires to obtain the ids of the lines attached to a group of points, instead of manu-
ally requesting to Hypermesh the ids of the entities, the specialist could execute the
Tcl macro to obtain a list of the line ids. All of the commands shown are common
Tcl instructions but hm getverticesfromedge which is an Hypermesh instruction
to return the lines attached to a given point entity.
112
Appendix B
113
114 Tcl Code to Detect Weld Types
}
}
# checks if the 2nd component is near the 1st component
foreach iPoint $pointsFromCompB {
foreach iSurface $surfacesFromCompA {
generateWeldComponent $compAB
calculateWeldLength $linesToWeld
lappend weldLengthArray [eval hm_linelength $linesToWeld]
114
115
calculateWeldLength $linesToWeld
lappend weldLengthArray [eval hm_linelength $linesToWeld]
}
3 {
calculateWeldLength $linesToWeld
115
116 Tcl Code to Detect Weld Types
*clearmark points 1
*clearmark lines 1
*clearmark surface 2
*createmarklast points 1
#calculateWeldLength $lineListc
*clearmark points 1
*clearmark lines 1
*clearmark surface 2
return $projectedLines
}
variable weldConnectorName
variable weldConnectorColor
variable weldConnectorElem
variable weldConnectorElemCode
variable weldConnectorTole
variable weldConnectorLocation
variable weldConnectorWhat
variable weldConnectorSpace
variable weldConnectorOffset
variable weldConnectorCFile
116
117
*clearmark lines 1
*clearmark comps 2
set lineCounter 0
set separetedLineList {}
set tempLineList $lineList
set numberOfLines [llength $tempLineList]
set totalOfLines [llength $lineList]
set counterOfLines 0
*clearmark points 1
*clearmark lines 1
*clearmark surfaces 1
117
118 Tcl Code to Detect Weld Types
if {$lineList1 != $lineList2} {
set lineCounter 0
set firstLine [lindex $tempLineList 0]
set pointList [hm_getverticesfromedge $firstLine]
set removeTempLines {}
*clearmark lines 1
# ----------------------------------------------------------------
118
119
# ----------------------------------------------------------------
set groupOfLines {}
*clearmark lines 1
foreach surfaceId $surfaceList {
*appendmark lines 1 "by surface" $surfaceId
set tempLineList [hm_getmark lines 1]
*clearmark lines 1
set tempLineList1 {}
foreach lineId $tempLineList {
if {[lsearch -exact $lineList $lineId]!=-1} {
lappend tempLineList1 $lineId
}
}
return $separetedLineList
}
119
120 Tcl Code to Detect Weld Types
120
Appendix C
In this section, the math fundamentals needed for the seam operations will be pre-
sented. See [41], [29]
Point-Point Distance
The distance between two points, as shown in Figure C.1, is calculated as:
q
d= (x2 − x1 )2 + (y2 − y1 )2 + (z2 − z1 )2 (C.1)
If the location of each point is represented as a vector from the origin to the given
point, the distance between two points can be obtained by:
BA = B − A (C.2)
In Equation C.2, the magnitude of the subtraction of two vectors is used to obtain
the distance between the two points. Vector B is defined as B = [x2 , y2 , z2 ] and
vector A, as A = [x1 , y1 , z1 ] .
The following procedure is used to calculate the distance between points, written
in Tcl. The procedure requires two vectors as arguments and returns the distance
121
122 Mathematics for the Seam Operation between Components
x2 , y2 , z2
E
NC
TA
DIS
x ,y ,z
1 1 1
y
z
set c1 [expr ( ($a1 - $b1)*($a1 - $b1) + ( $a2 - $b2 )*( $a2 - $b2 ) +
( $a3 -$b3 )*( $a3 -$b3 ) ) ];
set c1 [expr sqrt($c1 )];
return "$c1 ";
}
122
123
Point-Line Distance
The location of any point Pt that is located in a line between two points (P1 and P2 )
is given by the following vector,
x1 + (x2 − x1 ) · t
v = y1 + (y2 − y1 ) · t (C.3)
z + (z − z ) · t
1 2 1
x2 , y2 , z2
NCE
TA
DIS
x0 , y0 , z0
y x1 , y1, z1
z
The distance from the point P0 to any point in the line formed by P1 and P2 is
obtained using Equation C.1.
123
124 Mathematics for the Seam Operation between Components
To obtain the shortest distance between the line and the point P0 , equation C.4 is
2
derived with respect of t and equating to zero ( dd
dt
= 0 ).
dd2
= 0 = 2 ((x1 − x0 ) + (x2 − x1 )t) (x2 − x1 ) +
dt
2 (y1 − y0 ) + (y2 − y1 )t (y2 − y1 ) +
(x1 − x0 ) · (x2 − x1 )
t=− (C.7)
(x2 − x1 )2
Substituting Equation C.7 into C.2, we obtain that the minimum distance between
the point P0 and the line formed by points P1 and P2 is:
|(x2 − x1 ) × (x1 − x0 )|
d= (C.8)
|(x2 − x1 )|
124
125
Dot Product
n
X
a·b= ai × bi = a1 b1 + a2 b2 + . . . + an bn (C.9)
i=1
The following Tcl code represents the procedure that returns the dot product of two
vectors, which are given as arguments to the procedure, vector1 and vector2:
Cross Product
125
126 Mathematics for the Seam Operation between Components
i j k
c = a × b = det a1 a2 a3 (C.10)
b b b
1 2 3
a2 b3 − a3 b2
c = a × b = a3 b1 − a1 b3 (C.11)
a b −a b
1 2 2 1
The following Tcl code represents the procedure that returns the vector resulting of
the cross product of two vectors, which are given as arguments to the procedure,
vector1 and vector2:
The cross product of two vectors returns a vector or size n. The cross product only
exists in a three-dimensional space.
126
127
Surface Normal
A surface normal, or simply normal, to a flat surface is a vector which is perpen-
dicular to that surface. A normal to a non-flat surface at a point P. on the surface
is a vector perpendicular to the tangent plane to that surface at P. Each face in a
mesh has a perpendicular normal vector. The vector’s direction is determined by
the order in which the vertices are defined and by whether the coordinate system
is right- or left-handed. See Figure C.3.
n1
P1
P2
n2
y
z
The surface normals for a flat surface can be obtained by the cross product of the
vectors that define the surfaces. c = a × b. For non-flat surfaces, a tangent plane
is required to calculate the surface normal at a given point. The later means that
there is no an unique value for the normal within a surface. Refer to Figures C.4
and C.5.
For calculating the surface normals using Altair Hypermesh, execute the Hyper-
mesh Tcl command [hm getsurfacenormal entity entity-id]. This command
will return the normals of the surfaces or elements attached to the points or nodes.
127
128 Mathematics for the Seam Operation between Components
a
n
y
z
b
x
n1
P1
P2 n2
y
z
128
Appendix D
There are two ways of invoking the procedure batch import and cleaning.tcl:
- Batch mode. No GUI. Open a Unix shell or Windows command window and
type import2hm2 , if a Unix or Linux workstations is used or import2hm.bat
for a Microsoft Windows workstation.
The script import2hm launches Hypermesh in batch mode and executes the com-
mands listed in the commandbatch.cmf file.3
1
The actual /path/to/scripts/ may change depending on how the Altair Hypermesh macros
are managed
2
If the operating system is Unix or Linux, the script import2hm must have permission to execute.
Change the permissions of the file by typing the following command chmod +x import2hm.
3
The files shown are for a Linux workstation (server) , changes to the contents of the files may
be required in order to work in a Microsoft Windows workstation (server).
129
130 Invoking the Procedure batch import and cleaning.tcl
*evaltclscript("/scratch/usr/crivas/scripts/batch_import_and_cleaning.tcl", 0)
*quit
Also, there is the requirement of two additional files to exist in the folder contain-
ing the batchmesher criteria and parameters files, these files are: 6mm.criteria and
6mm.user.param. The files should exist in the folder /path/to/altair/hm/batchmesh/4
4
As an example, the criteria and parameter files must exist on the folder
/altair8/altair/hw8.0sr1/hm/batchmesh/ on a Linux workstation.
130
Appendix E
The code of the Microsoft Visual Basic macro that converts the engineering bill of
materials into a computer friendly format is shown below. This macro takes the
information in a Microsoft Excel spreadsheet and converts it to a csv file.
Sub ExportBOMData()
’
’ ExportBOMData Macro: Exports BOM Data into a CSV file
’ by Cesar Rivas
’ please, send any complain to /dev/null
’---------- V A R I A B L E S ------------
’ handles the spreadsheet rows
Dim rw1 As Range
Dim rw As Range
Dim whichSheet As String
Dim Index As Integer
Dim titleFlag As Integer
Dim arrayIndex As Integer
Dim arrayInt As Integer
Dim matFlag As Integer
Dim rowStart As Integer
Dim MaterialArray(150) As String
Dim fileArray(150) As String
Dim tmpText As Variant
Dim tmpText1 As Variant
Dim tmpText2 As Variant
Dim tmpText3 As Variant
Dim tmpText4 As Variant
Dim text2Write As String
131
132 Required Files for Procedure batch import and cleaning.tcl
’ header variables
Dim chgType As String
Dim itemNo As String
Dim description As String
Dim frameVariables As String
Dim Process As String
Dim metalsaPartNo As String
Dim customerPartNo As String
Dim customerLevel As String
Dim materialSpec As String
Dim nomGage As String
Dim weightLbs As String
Dim qtyComps As String
Dim qtyIndex As Integer
Dim fileExtension As String
’ ----------------------
Dim qtyOfAssemblies As Integer
Dim assembliesStartAtRow As Integer
Dim assembliesEndAtRow As Integer
Dim assemblyIndex As Integer
qtyIndex = 0
assembliesStartAtRow = 0
assembliesEndAtRow = 0
qtyOfAssemblies = 0
qtyColumn = 0
columnIndex = 1
chgType = 1
itemNo = 2
description = 3
frameVariables = 8
Process = 10
metalsaPartNo = 11
customerPartNo = 12
customerLevel = 13
materialSpec = 14
132
133
nomGage = 16
weightLbs = 17
qtyComps = 18
compId = ""
compName = ""
compFileName = ""
compMaterial = ""
compThickness = ""
compProcess = ""
’---------------------------------------------------------------
dir2Write = "d:\tmp\" ’ change this variable to define the path
’ where the files will be created
fileExtension = ".stp" ’ change this variable to define the file
’ extension to import.
whichSheet = "Production Bom" ’ change this variable to the name
’ of the worksheet which contains
’ the BOM information
’---------------------------------------------------------------
titleFlag = 0
arrayIndex = 0
matFlag = 0
rowStart = 0
text2Write = ""
’ -----------------------------------------------------------------
’ gets the material information from the BOM
’ -----------------------------------------------------------------
For Each rw In Worksheets(whichSheet).Rows
End If
End If
133
134 Required Files for Procedure batch import and cleaning.tcl
If (matFlag = 0) Then
MaterialArray(arrayIndex) = Trim(rw.Cells(1, 14).Value)
arrayIndex = arrayIndex + 1
End If
matFlag = 0
’End If
End If
End If
Next rw
arrayIndex = arrayIndex - 1
’ -----------------------------------------------------------------
’ gets the number of assemblies in the BOM
’ -----------------------------------------------------------------
If ((tmpText = "CUSTOMER") And (tmpText2 = "PART NO.") And (assembliesStartAtRow = 0)) Then
assembliesStartAtRow = rw.Row + 2
End If
134
135
’-------------------------------------------------------------------
’ collects the information about the components in the file
135
136 Required Files for Procedure batch import and cleaning.tcl
If ((Not (IsEmpty(rw.Cells(1, 3)))) And (IsEmpty(rw.Cells(1, 4))) And (IsEmpty(rw.Cells(1, 5))) And _
(IsEmpty(rw.Cells(1, 6))) And (IsEmpty(rw.Cells(1, 7)))) Then
compName = Trim(rw.Cells(1, 3).Value)
End If
136
137
Next rw
’-------------------------------------------------------------------
’ ---- ends to write out the info for each given assembly -----
End If
qtyColumn = qtyColumn - 1
End If
Next rw1
End Sub
’-------------------------------------------------------------------
$ material information
material;STEEL-CR360;MAT1;210000;0.3;7.85e-9
material;STEEL-HR360;MAT1;210000;0.3;7.85e-9
material;STEEL-HR430;MAT1;210000;0.3;7.85e-9
material;STEEL-HR500;MAT1;210000;0.3;7.85e-9
137
138 Required Files for Procedure batch import and cleaning.tcl
$ component information
component;component_01;269931208280_igs.stp;PSHELL;STEEL-HR430;3.15;1
component;component_02;269932108298_igs.stp;PSHELL;STEEL-HR500;3.15;2
component;component_03;270140108202_igs.stp;PSHELL;STEEL-HR430;3.15;3
component;component_04;270431108219_igs.stp;PSHELL;STEEL-HR500;3.15;4
component;component_05;270431108220_igs.stp;PSHELL;STEEL-HR430;3.15;5
component;component_06;270431108221_igs.stp;PSHELL;STEEL-HR500;2.50;6
component;component_07;270431108222_igs.stp;PSHELL;STEEL-HR430;2.50;7
component;component_08;282631108205_igs.stp;PSHELL;STEEL-HR430;3.15;8
component;component_09;282631108206_igs.stp;PSHELL;STEEL-HR430;3.15;9
component;component_10;282641308206_igs.stp;PSHELL;STEEL-CR360;2.50;10
component;component_11;283031207101_igs.stp;PSHELL;STEEL-HR430;3.15;11
component;component_12;283031208207_igs.stp;PSHELL;STEEL-HR360;3.15;12
The file 6mm.criteria contains the mesh quality parameters for obtaining a high
quality mesh with element size of 6mm.
The parameter file used by the procedure batch import and cleaning.tcl is
shown below. The file 6mm.user.param is needed for geometry feature recognition
and clean-up.
#flags:
geometry_cleanup_flag 1
meshing_flag 5
#mesh:
138
139
element_size 6.0
element_type 2
element_order 1
surf_component 1
feature_angle 30.0
holes_table_begin
# General switches:
appl_surf(1)
appl_solid(0)
appl_cordsfiles(0)
appl_flanged_suppr(1)
flanged_suppr_height(2.0)
holes_table_end
#edge fillets:
edge_fillet_recognition 0
max_fillet_radius 20
#surface fillets:
fillet_mesh_table_begin
appl_fillet_mesh(1)
keep_main_fillet_ribs(1)
rad(0,20.0) do chordal_deviation(.4)
139
140 Required Files for Procedure batch import and cleaning.tcl
fillet_mesh_table_end
#beads:
beads_suppression 1
beads_recognition 1
minimal_beads_height 2.0
#flanges:
flange_recognition 1
flange_elements_across 2
flange_max_width 35.0
flange_min_width 10.0
#thin solids:
extract_thinsolids 1
thinsolid_ratio 0.3
max_thickness 10.0
extract_feature_angle 25.0
#logo:
remove_logo 1
logo_max_size 30.0
logo_max_height 1.1
#element cleanup:
folded_elems_angle 150.0
smooth_elems_target 0.2
move_normal_flag 0
move_normal_dist 0.8
divide_warped_quads 1
ignore_comps_boundary 1
cleanup_tolerances auto
140
Appendix F
1
/altair8/altair/hw8.0sr1 as an example
2
The actual /path/to/scripts/ may change depending on how the Altair Hypermesh macros
are managed by the user.
141
142 Requirements & Invoking the Procedure seaming.tcl
collector;weld-connectors
collectorColor;3
type;rigid
tolerance;6.0
connect_location;lines
connect_what;components
spacing;6.0
end_offset;5.0
142
Appendix G
The csv file used to import the front end module product data into Altair Hyper-
mesh follows:
$
$ material information ..
material;MATL_001;MAT1
material;MATL_002;MAT1
material;MATL_003;MAT1
$
$
$component information ..
component;cab mount 1;CAB_MNT01_11.PRT.4.iges;PSHELL;MATL_001;3.1;101
component;cab mount 11;CAB_MNT01_11.PRT.iges;PSHELL;MATL_001;3.1;102
component;cab mount 2;CAB_MNT02_11.PRT.5.iges;PSHELL;MATL_003;2.5;201
component;cab mount 21;CAB_MNT02_11.PRT.iges;PSHELL;MATL_003;2.5;202
component;cab mount 3;CAB_MNT03A_7.PRT.3.iges;PSHELL;MATL_002;3.0;203
component;cab mount 31;CAB_MNT03A_7.PRT.iges;PSHELL;MATL_002;3.0;204
component;mount bracket 1;MNT_BRACKET_001_1.PRT.2.iges;PSHELL;MATL_002;2.3;205
component;mount bracket 2;MNT_BRACKET_001_1.PRT.iges;PSHELL;MATL_002;2.3;206
component;mnt frame 31;MNT_R_FRAME003_6.PRT.1.iges;PSHELL;MATL_001;4.0;301
component;mnt frame 32;MNT_R_FRAME003_6.PRT.iges;PSHELL;MATL_001;4.0;302
component;rframe 01;R_FRAME_001A_9.PRT.iges;PSHELL;MATL_003;3.6;303
component;rframe 02;R_FRAME_001C_6.PRT.iges;PSHELL;MATL_003;3.6;304
component;frame 001;R_FRAME_001_24.PRT.iges;PSHELL;MATL_001;3.0;305
component;frame 002;R_FRAME_002_5.PRT.iges;PSHELL;MATL_002;3.0;306
component;frame 003;iges-tube-001.iges;PSHELL;MATL_002;3.0;307
component;frame front inner 1;R_FRAME_FRT_INNER_01_21.PRT.iges;PSHELL;MATL_001;2.6;401
component;frame front inner 2;R_FRAME_FRT_INNER_02_2.PRT.iges;PSHELL;MATL_001;2.6;402
component;frame spring seat 01 1;R_FRAME_SPRING_SEAT_001_10.PRT.6.iges;PSHELL;MATL_001;3.3;501
143
144 Product Data Information, Front End Module
144
Appendix H
The Altair Hypermesh userpage.mac file needs to be modified in order to add the
required buttons to execute the three procedures mentioned in this work. Open the
user userpage.mac file and add the following text and restart Altair Hypermesh to
see the buttons in the User Utility Menu.
*createbutton(5, "Import ...", -1, 0, 10, BUTTON, "Import Product Information.", EvalTcl,
"batch_import_and_cleaning.tcl")
*createbutton(5, "Seam ...", -1, 0, 10, BUTTON, "Seam Components.", EvalTcl, "seaming.tcl")
*createbutton(5, "Mesh ...", 0, 0, 10, BUTTON, "Mesh Components.",EvalTcl, "batch_meshing.tcl")
145
146 Modifications to the userpage.mac File
146
Appendix I
%
% Subrutina para Analisis de Elementos Finitos Utilizando Matlab
%
% Tipo de Analisis: Lineal, Estatico. Esfuerzo Plano
%
% Tipo de Elemento: Isoparametrico, Lineal en dos Dimensiones
% (En Espacio Natural)
%
% y ˆ _ _ _ _
% ˆ x = N1 * x1 + N2 * x2 + N3 * x3 + N4 * x4
% |
% 3-----|-----4
% | | | ˆ _ _ _ _
% | |-----|--->x y = N1 * y1 + N2 * y2 + N3 * y3 + N4 * y4
% | |
% 1-----------2
%
% Funciones de Interpolacion
%
% N1 = (( 1 - chi ) * ( 1 - nu )) / 4
% N2 = (( 1 + chi ) * ( 1 - nu )) / 4
% N3 = (( 1 + chi ) * ( 1 + nu )) / 4
% N4 = (( 1 - chi ) * ( 1 + nu )) / 4
%
%
% Desarollado por Cesar A. Rivas Guerra. Nov-15-2001
% Basado en el Programa mef.m del Dr. Sergio Gallegos C.
%
% -----------------------------------------
% | P r e - P r o c e s a m i e n t o |
147
148 Matlab File to Calculate the Stiffness Matrix of a Finite Element Model
% -----------------------------------------
%
clear; % Para limpiar la memoria
grande = 1.0e100; % Numero suficientemente grade
acel_x = 0; % Def. de la aceleracion en el eje X |
acel_y = -9810; % Def. de la aceleracion en el eje Y, la Gravedad [9810 mm/sˆ2] V
elprop=zeros(nel,4);
% Módulo de Elasticidad
% Unidades: MPa
elprop(1,1) = 210000;
elprop(2,1) = 210000;
% Relacion de Possion
elprop(1,2) = 0.3;
elprop(2,2) = 0.3;
elprop(1,3) = 3.0;
148
149
elprop(2,3) = 3.0;
elprop(1,4) = 0;
elprop(2,4) = 0;
% Arreglos de destino.
conect = zeros(nel,nodel);
%
% fuerza(i), si i es impar, la fuerza es en la direccion X
% , si i es par, la fuerza es en la direccion Y
%fuerza(1) = 0;
%fuerza(2) = 0;
%fuerza(3) = 800e3;
%fuerza(5) = 800e3;
149
150 Matlab File to Calculate the Stiffness Matrix of a Finite Element Model
Na = zeros(4,2);
Na = (1 / sqrt( 3 ))* [ -1 -1; 1 -1; 1 1; -1 1]; % Puntos De Gauss para la integracion Numerica
a = zeros(3,1);
b = zeros(3,1);
[ kelem ] = k_elem2d(a , b, Na, matr_const, elprop(ielm,3), ngdl, nodel ); % Matriz de Rigidez del Elemento
kelem
rigidez
save rigidez.dat rigidez
150
Appendix J
CEND
BEGIN BULK
GRID 1 0.0 10.0 0.0
GRID 2 0.0 6.6666670.0
GRID 3 0.0 3.3333330.0
GRID 4 0.0 0.0 0.0
GRID 5 3.33333310.0 0.0
GRID 6 3.3333336.6666670.0
GRID 7 3.3333333.3333330.0
GRID 8 3.3333330.0 0.0
GRID 9 6.66666710.0 0.0
GRID 10 6.6666676.6666670.0
GRID 11 6.6666673.3333330.0
GRID 12 6.6666670.0 0.0
GRID 13 10.0 10.0 0.0
GRID 14 10.0 6.6666670.0
GRID 15 10.0 3.3333330.0
GRID 16 10.0 0.0 0.0
GRID 17 11.0 10.0 0.0
GRID 18 11.0 6.6666670.0
GRID 19 11.0 3.3333330.0
GRID 20 11.0 0.0 0.0
GRID 21 10.0 10.0 1.0
GRID 22 10.0 6.6666671.0
GRID 23 10.0 3.3333331.0
GRID 24 10.0 0.0 1.0
GRID 25 10.0 10.0 4.666667
151
152 Input Nastran Decks for Seaming Examples
CEND
BEGIN BULK
GRID 1 0.0 10.0 0.0
GRID 2 0.0 6.6666670.0
GRID 3 0.0 3.3333330.0
GRID 4 0.0 0.0 0.0
GRID 5 3.33333310.0 0.0
GRID 6 3.3333336.6666670.0
GRID 7 3.3333333.3333330.0
152
153
153
154 Input Nastran Decks for Seaming Examples
CQUAD4 16 1001 25 26 30 29
CQUAD4 13 1001 21 22 26 25
CQUAD4 21 1001 31 32 36 35
CQUAD4 20 1001 30 31 35 34
CQUAD4 19 1001 29 30 34 33
PSHELL 1000 21.0 2 2 0.0
PSHELL 1001 20.75 2 2 0.0
MAT1 2210000.0 0.3 7.90E-09
ENDDATA
CEND
BEGIN BULK
GRID 1 0.0 10.0 0.0
GRID 2 0.0 6.6666670.0
GRID 3 0.0 3.3333330.0
GRID 4 0.0 0.0 0.0
GRID 5 3.33333310.0 0.0
GRID 6 3.3333336.6666670.0
GRID 7 3.3333333.3333330.0
GRID 8 3.3333330.0 0.0
GRID 9 6.66666710.0 0.0
GRID 10 6.6666676.6666670.0
GRID 11 6.6666673.3333330.0
GRID 12 6.6666670.0 0.0
GRID 13 10.0 10.0 0.0
GRID 14 10.0 6.6666670.0
GRID 15 10.0 3.3333330.0
GRID 16 10.0 0.0 0.0
GRID 17 11.0 10.0 0.0
GRID 18 11.0 6.6666670.0
GRID 19 11.0 3.3333330.0
GRID 20 11.0 0.0 0.0
GRID 21 10.0 10.0 1.0
GRID 22 10.0 6.6666671.0
GRID 23 10.0 3.3333331.0
GRID 24 10.0 0.0 1.0
GRID 25 10.0 10.0 4.666667
GRID 26 10.0 6.6666674.666667
GRID 27 10.0 3.3333334.666667
GRID 28 10.0 0.0 4.666667
GRID 29 10.0 10.0 8.333333
GRID 30 10.0 6.6666678.333333
GRID 31 10.0 3.3333338.333333
GRID 32 10.0 0.0 8.333333
GRID 33 10.0 10.0 12.0
GRID 34 10.0 6.66666712.0
154
155
155
156 Input Nastran Decks for Seaming Examples
156
Bibliography
[3] The Procedure Handbook of Arc Welding. Number 99949-25-82-2. Lincoln Electric,
1994.
[6] Altair Engineering Inc., 1820 E. Big Beaver Troy, MI 48083-2031 USA. Altair
HyperMesh Commands, 6.0 edition, 2003.
[7] Altair Engineering Inc., 1820 E. Big Beaver Troy, MI 48083-2031 USA. Altair
HyperMesh Macro Menu and Tcl/Tk, 6 edition, 2003.
[8] Altair Engineering Inc., 1820 E. Big Beaver Troy, MI 48083-2031 USA. Altair
HyperMesh Programer’s Guide, 6 edition, 2003.
[9] Beverly A. Beckert. Is analysis technology used to best effect? Computer Aided
Engineering, pages 52–55, 2001.
[10] Beta CAE Systems SA, Kato Scholari, Thessaloniki, GR-57500 Epanomi,
Greece. Ansa Scripting Language. A guide to ANSA automation, 2007.
[11] Beta CAE Systems SA, Kato Scholari, Thessaloniki, GR-57500 Epanomi,
Greece. Ansa version 12.1.3 User’s Guide, 2007.
157
158 BIBLIOGRAPHY
[13] Howard B. Cary and Scott C. Helzer. Modern Welding Technology. Number
0131130293. Pearson Education, 2005.
[14] John W. Coffey, Thomas C. Eskridge, and Daniel P. Sanchez. A case study
in knowledge elicitation for institutional memory preservation using concept
maps. First International Conference on Concept Mapping, 2004.
[15] Matthias Eick and Christian Alscher. Automated assembly of ls-dyna models.
LS-Dyna Anwenderfourm, 2007.
[16] Matthew Hall. Knowledge management and the limits of knowledge codifi-
cation, 2006.
[17] Kiran Hedge, Horacio Ahuett-Garza, Ganesh Padiyar, and R. Allen Miller.
Fem analysis of die casting die deflections: Part 1 - modeling and simulation.
North American Die Casting Association, 1995.
[18] James J Hoffman, Mark L Hoelscher, and Karma Sherif. Social capital, knowl-
edge management, and sustained superior performance. Journal of Knowledge
Management, pages 93–100, 2005.
[19] Brain Huf. The future of cae software. how to achieve process automation. 7th
International LS-Dyna user Conference, 2002.
[20] Chad Jackson. Engineering decision support: Driving better product decisions
and speed to market. Technical report, Aberdeen Group, 2008.
158
BIBLIOGRAPHY 159
[24] Irene Makropoulou. Template driven ls-dyna model build-up with ansa task
manager. LS-Dyna Anwenderfourm, 2007.
[25] Ricardo E. S. Martins. Reducing modelling time for vehicle structures on finite
element method analysis. Technical Report 2007-01-2580, SAE, November
2007.
[28] Dirk F. Meyer, Radim Cerny, Vladimir Bobrus, and Martin Formanek. Im-
provement of product development time and manufacturing processing with
the help of computer-added process simulation tools. Technical Report 2001-
01-3437, SAE, Octuber 2001.
[30] Irwin Miller, John Freund, and Richard Johnson. Probability and Statistics for
Engineers. Number 968-880-235-2. Prentice Hall, 4th edition, 1992.
[32] Christopher Rupiper. Automating fe model creation and managing cae in-
formation to increase user and global pre-processing efficiencies. Hyperworks
Technology Conference, 2007.
[33] Jochen Seybold, Matthias Eick, and Lars Fredriksson. Cae data management
and quality assessment of ls-dyna crash moels using v-cess. 4th European
LS-Dyna User Conference, 2003.
159
160 BIBLIOGRAPHY
[34] Chandrakant B. Shah and Vijay Tunga. Engineering simulation process au-
tomation using templating and common data model capabilities of simxpert
– an example of powertrain application. MSC.Software, 2007.
[35] Ja suk Koo, Yeon gyoo Lee, Jae seock Choi, and Dohng-Goock Choo. Develop-
ment of durability analysis automation system. Technical Report 2007-01-0949,
SAE, April 2007.
[39] Boris Veytsman and Maria Shmilevich. Automatic report generation with
web, tex and sql. The PracTeX Journal, 2006.
[40] Thomas Wang, Xianming Wang, and Maolin Tsai. Automation of structural
fatigue/reliability assessment using isight, msc/nastran and ncode. Technical
Report 2005-01-0823, SAE, April 2005.
[42] Brent Welch, Ken Jones, and Jeff Hobbs. Practical Programming in Tcl and Tk.
Number 0-13-038560-3. Prentice Hall, 4th edition, 2003.
160