Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
COMPUTER AIDED DESIGN TECHNIQUES
IN DATA PROCESSING
FOR FINITE ELEMENT ANALYSIS
by
FIROOZ-GHASSEMI BSc(Eng), DIC, MSc(Eng)
JULY 1978
A thesis submitted for the degree of
Doctor of Philosophy of the University of London
and for the Diploma of Imperial College
Mechanical Engineering Department
Imperial College of Science and Technology
London SW7
CONTENTS
Page
ABSTRACT
CHAPTER 1 - INTRODUCTION
1.1 The Use of Finite Element Method in Engineering 1
1.2 The Use of Computer Aided Design Techniques in Data Processing for Finite Element Programs and Comparison with Existing Data Processing Techniques
3
CHAPTER 2 - INTRODUCTION TO THE CADMAC,11 SYSTEM AND ITS COMPONENTS
2.1 Hardware 11
2.2 Software Design for GFEMGS (a General Finite Element Mesh Generating System 13
2.2.1 Summary of GFEMGS Facilities 14
2.2.2 GFEMGS System Command Menu 19
CHAPTER 3 - AUTOMATIC MESH GENERATION FOR TWO-DIMENSIONAL AND AXISYMMETRIC SHAPES
3.1 Technique 23
3.2 Automatic Generation of Meshes inside one Quadri- lateral using Triangular or Quadrangular Elements 23
3.3 Combination of Quadrilaterals 34
3.4 Data Storage 36
3.4.1 Topological Description 36
3.4.1.1 Deleting Files (overlay CLRFIL) 38
3.4.1.2 Joining Files (overlay JOIN) 38
3.4.1.3 Transferring Files (overlay PRINT) 39
3.4.2 Data Structure for Picture Construction 40
3.4.3 File Management 42
3.4.4 Input and Output of Workspace (overlays READ and SAVE) 43
3.4.5 Displaying the Workspace (overlay DISALL) 44
3.5 Concentrating Meshes (overlay MESHCN) 45
3.6 Disk or Plate with Holes (overlay MEDISK) 47
3.7 Element Connections (overlay TOPO) 49
3.8 Higher-Order and Isoparametric Elements (overlay HIELEM and ISOPEL 53
Page
CHAPTER 4 - INTERACTIVE FINITE ELEMENT MESH EDITING
4.1 Introduction 78
4.2 Adding Elements (overlay ADDELM) 78
4.3 Deleting Elements (overlay DELELM) 87
4.4 Adjusting the Nodes by continuous Movement (overlay MOVEND) 88
4.5 To Move, Scale and Rotate a Mesh (overlay MEROT) 89
4.6 Line Editor (overlay DELLIN and DELCN) 96
4.7 Macro Editor for Macro Files (overlays MACCLR and MACFIL) 97
4.8 Line Division, Extension and Intersection (overlay DIVIDE) 98
4.9 Checking Data Graphically 99
4.9.1 Checking Element Connections, Nodal Point Coodinates and Finding the Obtuse-Angled Elements (overlay CHECK) 100
4.9.2 Checking Element and Node Numbering Sequences (overlays NUM and NODE) 102
4.10 Load Conditions (overlay PRSELM) 103
4.10.1 Boundary Conditions (overlay BONDRY) 104
4.11 Plotting the Workspace on a Flat-Bed Plotter (overlay DISPLT and PLTNUM) 106
CHAPTER 5 - BANDWIDTH REDUCTION BY AUTOMATIC RENUMBERING OF THE NODAL POINTS
5.1 Introduction 112
5.2 General Pattern for the Stiffness Matrix (overlay MATRIX) 113
5.3 Algorithm for Bandwidth Reduction 114
5.3.1 Previous Renumbering Algorithms 114
5.3.2 New Technique (overlay OPBAND) 116
CHAPTER 6 - AUTOMATIC MESH GENERATION FOR THREE-DIMENSIONAL STRUCTURES
6.1 Introduction ' 129
6.2 Technique 129
6.3 Nodal Point Coordinates (overlay ST3D) 131
6.4 Element Connections (overlay ST3DEL) 132
6.5 Picture Construction for Three-dimensional Structures (overlay DOUBLE) 133
6.6 Joy-Stick Function 135
6.7 Three-Dimensional Mesh Editing (overlay ADD3D) 136
Page
CHAPTER 7 - FINITE ELEMENT SOLUTION AND RESULT PRESENTATION
7.1 Introduction 154
7.2 Data Structure for the ASKA Program 155
7.3 ASKA Processors 156
7.3.1 Description of Thick Cylinder Test Model 158
7.3.2 Comparison of the Results obtained from ASKA with Stresses obtained from Lame Equations for a Thick Cylinder 158
7.4 Result Presentation 161
7.4.1 Introduction 161
7.4.2 Result Preparation from the ASKA Program 161
7.4.3 Scaled Principal Stresses in Terms of Arrows (overlays RRZZ and TTRZ) 164
7.4.4 Oblique View of Surface (overlay OBLIQ) 165
7.4.5 Contour Maps 166
7.4.6 Shading 169
7.4.7 Rastor Scan Display and Colour Jet Plotters 170
7.4.8 Deflections (overlay DEFORM) .171
7.5 Failure Position (overlay MAXTT) 172
CHAPTER 8 -, APPLICATION OF GFEMGS TO A NUCLEAR REACTOR STANDPIPE AND A SHRINK RING FOR A HIGH PRESSURE VESSEL
8.1 Introduction 175
8.2 Nuclear Reactor Standpipe 175
8.3 Case Study 177
8.4 Data Preparation for the Standpipe 179
8.5 Processing Time 181
8.6 Result Presentation for Standpipe 182
8.7 Shrink Ring for a High Pressure Vessel 183
CONCLUSIONS 212
ACKNOWLEDGEMENTS 2.15
REFERENCES 2.16
APPENDIX A - SOFTWARE FOR FLAT-•BED PLOTTER
A-1 Flat-Bed Plotter 219
A-2 Software to Control the Plotter 220
Page
A-3 Software Description 220
A-3-1 Overlay DISPLT 220
A-3-2 Subroutine PLOTDC(X,Y,IPEN) 221
A-3-3 Subroutine RASMCIPEN,IXSN,IYSN,IG,IET) 221
APPENDIX B - FAST DRAWING CIRCLE ON DC PLOTTER
B-1
Introduction 225
B-2 Circle Diameter Restriction 227
APPENDIX C - BUTTON CONTROL 229
APPENDIX D - OPERATING PROCEDURES
D-1 System Initialisation 230
D-2 Graphic Input 232
D-2-1 Line Mode 232
D-2-2 Windowing 232
D-2-3 Control 90° Mode 233
D-2-4 Find Facility 233
D-2-5 Drive Mode 233
D-2-6 Continuous Digitising 234
D-3 Setting up the Working Parameters 234
D-4 Display Workspace 236
D-5 Saving and Recovering Workspace 238
D-6 Line Editor 239
D-7 Macro File and Macro Editor 240
D-8 Plotting 241
D-9 Generation of the Mesh for any Quadrilateral (2D Mesh)
241
D-10 Generation of a 3D Mesh 244
D-10-1 Construction of the Picture of a Three-Dimensional Mesh 245
D-10-2 Store the Coordinates of the 3D Mesh in a Permanent File 245
D-10-3 Generation of the Element Connection for Three. Dimensional Meshes 246
D-10-4 Adding Three-Dimensional Elements 247
D-11 Transfer of Data from PDP to CDC Computers 248
D-11-1 Using Magnetic Tape 248
D-11-2 Using Paper Tape 249
APPENDIX E - PROGRAM LISTING
Page
Separate book
(May be obtained from Dr. Besant at Imperial College.)
ABSTRACT
This thesis describes the work carried out in the design and
implementation of a general computer graphics system for data preparation
and presentation for finite element analysis. An important stage in
using the finite element method for analysis is the large amount of work
involved in the preparation of an idealization of a structure in element
form which is both time consuming and costly. Furthermore, the analysis
of the voluminous results produced by the finite element analysis can be
difficult due to the time needed to interpret the printed output.
A new system (GFEMGS) has been devised for generating finite element
meshes and presenting results which is based on a mini-computer with
graphic facilities forming a CAD workstation. The software controlling
the workstation is arranged so that the designer becomes the focal point
of the system with the ability to interact with the standard CAD processes
existing on the mini-computer. The important aim of the GFEMGS was to
make it as simple as possible in operating procedures and future modifi-
cation. The system is capable of generating uniform and non-uniform
element meshes for any two dimensional and axisymmetric shape by using
a series of quadrilaterals, each quadrilateral being automatically
divided into a number of particular elements such as elements with 3, 4,
6, 8 or 9 nodes. Meshes can be automatically generated by the system for
any disk or plate with or without holes. The user may interact with the
system and manually add in the additional elements, delete the unnecessary
elements or change the position of each element to a better location
using the graphics facilities. The numerical data may be checked
graphically and the user is always guided via the storage tube or on the
keyboard, through the sequence of operations he has to perform for any
particular program, or about any error which may have occurred in the
system. Meshes which have previously been generated may be automatically
renumbered to reduce the bandwidth in the stiffness matrix to a minimum.
A new technique for bandwidth reduction is presented by the author. The
system is also capable of dealing with three-dimensional shapes by using
a 212-D technique for generating a three-dimensional matrix. The result
of the analysis will be displayed on the storage tube in terms of
vectors, contour maps or oblique views of the surface. The results can
be examined on the display and windowed to expose the required detail.
Nodal point deflections may also be displayed in exaggerated form if
desired. The system is at the present running as a pre-processor and
post-processor to the finite element program ASKA. However, the data
processor system can quite well be used with other finite element pro-
grams such as ASAS and NASTRAN. This system has been successfully tested
on a number of particular applications, expecially on a stand-pipe on a
fuel changing machine used for changing fuel elements in a gas-cooled
reactor. The work described in the thesis was carried out entirely by
the author during a period of three years.
CHAPTER 1
INTRODUCTION
1.1 THE USE OF THE FINITE ELEMENT .METHOD IN ENGINEERING
Finite element techniques have become increasingly important in
the last 14 years for carrying out stress and displacement analysis in
a solid component, e.g. pressure and velocities in the flow of a fluid,
temperature distribution in a cooled rotor blade or finding the natural
frequencies and mode shape of a structure (e.g. free vibration mode
shapes and frequencies of a earth dam or cross-country car with passengers
on rough ground).
Many particular problems (e.g. stress analysis) are extremely
difficult or impossible to solve by conventional analytical methods.
Such methods involve finding a mathematical equation which defines the
required variables. It is therefore necessary to resort to numerical
techniques, using a computer to solve such problems. A typical technique
used to solve these complex engineering problem is finite element method.
The finite element method has drastically cut the time required
for accurate analysis and has given rise to a tremendous increase in
scope for the designer of complex structures. The technique is a general-
isation of standard structural analysis procedures. It permits their
extension, so that displacements and stresses can be calculated in two-
and three-dimensional structures by the same techniques used for ordinary
frame structures. The basic concept is that every structure, solid or
fluid continua, may be considered to be an assembly of individual
structural components or elements interconnected at a finite number of
points. It is the finite character of the structural connections which
makes possible a solution by simultaneous algebraic equations and which
distinguishes a structural system from a problem in continuum mechanics.
1
2
It must be realised that the approximation involved in the use of
the method is essentially physical. The assembly of elements is sub-
stituted for the continuum.
There need be no mathemetical approximation in the solution of the
substitute system. This is an important difference between finite
element and finite difference methods.
Finite element methods are also widely used in mechanical engineering,
particularly for the analysis of stress in solid components. Their success
has been such that experimental methods involving brittle coatings,
strain gauges or photoelastic effects are to some extent obsolete. Problems
in fluid mechanics and heat transfer are, however, much less commonly
solved by finite element methods. One possible reason for this is that
such problems are made difficult not so much by geometric complexities
as by the nature of the physical processes involved. One of the main
attractions of finite element methods is the ease with which they can
be applied to problems involving geometrically complicated systems. The
price that must be paid for flexibility and simplicity of individual
elements is in the amount of numerical computation required. Very large
sets of simultaneous algebraic equations have to be solved, and this can
only be done economically with the aid of digital computers. Finite
element analysis based on sophisticated computer programs has become an
effective and widely used design technique in most areas of structural
engineering. There are approximately 450 finite element analysis
programs which are listed in a survey reference produced by the
University of Linkoping in Sweden(1,2).
Some typical examples of these
programs which are in worldwide use are as follows:-
ASKA(3) - developed at the Institute for Statics and Dynamics of Aero-
space Structures (ISD) under the direction of Professor John H. Argyris.
NASTRAN(4)
- NASA STructural ANalysis, developed in America for the
American aerospace industry.
3
ASAS(5) - developed by Atkins Research and Development.
ISTRAN/S(6) - static, free vibration, buckling and large deflection
analysis, developed in Harima Heavy Industries.
These are large well-organized analysis systems designed to solve
particular types of problems. They are very successful at doing this
and have proved, by their popularity, to be very useful analysis tools.
The input to these large general systems tends to be cumbersome
requiring a steering program, specification of overlay structures and
numerical data. To specify the overlay structures and writing the
steering program are always made very easy by reading the relative
training or user manuals. Most of the finite element analysis programs
do not provide any facilities for generating the numerical data, such
as geometric idealization, topological descriptions, material properties,
loading and boundary conditions. From a survey of users of finite element
carried out, it was established that, typically, 70% of the time for a
given finite element analysis activity is spent on data preparation, 10%
for the analysis and 20% for post-processing and final design. Therefore,
a strong need for effective graphics input systems exists. The system
must enable the users to generate data for finite element analysis with
minimal effort, very accurately and more economically. It should be
easy to learn and use, also be able to handle all present and foreseeable
future modelling requirements, and it should interface to all the finite
element analysis programs used; in other words, a general purpose
modelling is required.
1.2 THE USE OF COMPUTER AIDED DESIGN TECHNIQUES IN DATA PROCESSING
FOR FINITE ELEMENT PROGRAMS AND COMPARISON WITH EXISTING DATA PROCESSING
TECHNIQUES
It is stated in Section 1.1 that the user of finite elements has
to divide the physical systems, such as structures, into a number of
elements and translate the graphic finite element data, which is normally
presented in the form of drawings into numerical data. The divisions
of the structure are critical and should be carried out by the engineer
as this approximation is likely to be the most important source of
error in the analysis.
Using all finite element programs involves a great deal of time
generating the numerical data such as nodal point coordinates, element
connections, etc., by the users.
There are a number of different ways used to generate the numerical
data for finite element programs:
(a) Entirely by hand. This is very tedious for large and complicated
regions, it involves manually creating a mesh of elements and nodes for
a given structural component and measuring the coordinates of each nodal
point by hand. Also providing a finer mesh for the regions of maximum
stress than unstressed regions to obtain acceptable overall accuracy.
The coordinates of the mesh points must then be read off and fed into
the computer. This involves a great deal of time punching the nodal
point coordinates ftielement connections or other numerical data. This
is another important source of error in the analysis. So, in some
problems, where the number of nodal points is very large, the user must
spend many hours checking and rechecking data by tedious graphical
methods. For example, a two-dimensional tanker transverse frame
requires about 4,000 cards of input, and a three-dimensional model of
a limited length of a ship may require 12,000 input cards (data from
Lloyd's Register of Shipping). However, this method was the fundamental
way of data preparation for finite element programs, and because of its
tedious and time-consuming technique, it is not used for, any large or
complex structures. Hand compilation methods are generally impractical
for the modelling of complex structures.
(b) Entirely by the computer (Batch mode processing). This method
of computing is usually used for straightforward computing processes
4
involving no interaction between the user and the machine. In most
cases users of a finite element program will reach a point where it
becomes desirable to write a program to generate the meshes. The user
must punch the programs, read them into the machine, and, sometime later
receive a print-out or punched card of results which he can use later
on for analysis.
This method of data preparation is normally time-consuming, expen-
sive and error-prone. Batch programs normally incorporate error checking
routines to detect errors in data before too much processing time is
wasted. Even so, the process of submitting a batch job, waiting for
it to be run, receiving the results, tracing the error, correcting it
and re-submitting the job can take hours or even days.
The user of the finite element method usually wants to analyse
various types of structure, with different geometrical shape or different
types of tolerance, so for this purpose, he has to write a special
program to generate the meshes for each particular problem. When the
geometry of the model is very complicated it is extremely difficult to
write the program to generate the meshes. The idea of automatic mesh
generation is not new, there are a number of programs of this kind, but
the use of such programs can prove to be difficult in many instances.
These programs are not capable of handling different element types or
different types of geometry, as each one must be used for a special
problem. There is a limitation on each program, e.g. on the number of
elements or number of nodes. Normally they specify a special
computer type and it is not possible to use them on different computers.
They are not easy to modify except to a very limited extent, and any
significant changes have to be made by their originators. This includes
the addition of new elements and new types of geometry. The results from
these programs may be a g raph or drawing produced by the computer's
graph plotter. This means extra time spent by the user, because plotting
is very slow compared with displaying the result on a Tektronix screen.
As stated in Section 1.1, one of the main advantages of the finite
element method is the ease with which it can be applied to problems
involving geometrically complicated shapes; the problems for the user
with these geometrically complicated systems come, not frQ-m the
analytical side, but from the data preparation side. Therefore, data
preparation for finite element is very important and a system to generate
the meshes for any geometrically complicated structure will allow use
of finite element methods for complicated structures which would be
nearly impossible without such a system.
(c) Using interactive CAD system. Computer Aided Design is a recent
technique in which man and machine are blended into a problem-solving
team, intimately coupling the best characteristics of each, so that this
team works better than either alone, and offering the possibility for
integrated team work using a multi-discipline approach.
This definition implies that CAD is not designed by computer, nor
is it designed by man with the computer's aid. It is, in fact, designed
by both computer and man, each exercising their respective talents to
form an effective designing force. This means that in an ideal CAD
system no effort should be expended in getting a computer to do that
which a man could do as efficiently, and vice versa ().
A new system has been developed by the author for generating
finite element meshes, and presenting the results using interactive
graphics which is based on a mini-computer CAD system. In an inter-
active CAD system there is a requirement for direct communication between
user and computer. Batch computing is therefore not possible and the
user must be connected to the computer via a teletype terminal or a
similar device. The cost of using online interactive graphics terminals,
because of constant connection to the host computer, is very high, and
also the cost of using a large computer for interactive graphic CAD work
6
7
is very high and may not be justified by increased efficiency. However,
as a large amount of the work involved is graphic, there is no real
need for the power of a large computer in data processing. In recent
years the so-called "mini"-computers have become more powerful and less
expensive. So, for reasons of economy and convenience, it was decided
to use a mini-computer as a CAD workstation with which is included a
digitising table, Tektronix storage tube, flat bed plotter, magnetic
tape, keyboard and a high-speed line printer. The CAD system is used
as a pre-processor, allowing the preparation and editing of graphical
and non-graphical data. After being fully checked, the data is trans-
mitted for processing in the main frame (e.g. CDC or IBM computers).
Also the CAD system is used as a post-processor for displaying the
results from the large computer where the large finite element programs
are usually executed.
Using a CAD system in data processing for finite element programs has
the considerable advantage that the chance of error is greatly reduced
due to the smaller amount of manually prepared data involved. Finite
element programs are expensive to run, and it is essential therefore,
that all the data is thoroughly checked before the analysis is allowed
to proceed. A break is, therefore, made after data generation to allow
time for examination of the data and elimination of errors. The
opportunity may be taken at this point to incorporate additional data
or commands which could not be generated, or to refine parts of the mesh
which would be difficult to generate automatically. As the system is
interactive, the user is able to change meshes instantaneously to arrive
at the best mesh arrangement to suit a particular problem by adding or
deleting elements.
Using interactive graphics could play a major role in the checking
process, since immediate error correction and refinement of the ideal-
isation is possible. Interactive graphics systems have a considerable
advantage because the user is able to see the element connections and
position of each element directly on a display as element generation is
in progress.
By using the very fast-speed display of most graphical output
devices and the very quick reactions of the human eye, it is possible
to provide the user with an insight into the processes of the computer.
The visual display unit interfaced to a computer provides a direct means
of visualising the result of any computation. Also this allows the user
to make decisions very quickly on-line, as the user will always be
guided by instructions via the storage tube through the sequence of
operations he has to perform for any particular program. Another
advantage of using the digitising table and digitising pencil is that
the data input to any program becomes very quick and efficient, e.g, by
digitising the structure on the digitising table. Also the user is able
to communicate with a set of data directly from the digitising table with
the aid of the digitising pencil, for any future modification. For
example, the nodes of an element can be moved to a better position,
or special elements can be deleted or new ones created. The buttons
on the digitising pencil may be used to input data to the programs or
to allow the program execution to jump from one section to another.
The hardware and software of the CAD system will be described later,
in Chapter 2.
Another advantage of using interactive graphics in data processing
for the finite element program is in the presentation of the results.
The majority of the famous finite element programs will print the results
in numerical form. This means that one of the major practical problems
of the finite element method is the voluminous output produced by the
analysis and the time needed to interpret the printer output. Use of
interactive graphics based on a Tektronix storage tube display or
employing an automatic plotter as a means of displaying the results
8
alleviates this difficulty to a great extent. The results can be dis-
played in several ways, for example:-
1. Scaled principal stress vectors in appropriate directions for each
node.
2. Displaying the stresses in the form of oblique surfaces in 3D shape
where the z coordinate of each node will coincide to its principle
stresses.
3. Contours of stress levels.
4. Automatic plotting of deflections.
5. Dynamic responses, temperature distribution, etc.
These pictures will be the most helpful tool for a designer.
Graphical presentation of results on the visual display unit (VDU) is a
very fast method of analysing e.g. stresses and deflections, and allows
the user to identify stress concentrations with ease or to check the
stresses easily against standard criteria such as permissible stress
levels and buckling of safety.
Visualisation of some three-dimensional meshes, and stress dist-
ribution is achieved with the aid of an overlay JOYSTICK which enables
the user to rotate the mesh in three-dimensions and view it from any
direction. This would take hours in a non-interactive system such as
batch mode processing.
The present data processing system is based on a new independent
mesh generation technique using a low cost CAD interactive graphics
system. The system is at the present running as a pre-processor and
post-processor to the finite element program ASKA. This system has
been successfully tested in the Mechanical Engineering Department of
Imperial College of Science and Technology, for a large number of ,
problems; these include: nuclear reactor stand-pipe, pressure case and
drop load case, pressure vessel; threads of a pressure vessel closer
with different tolerances on its threads; designing a shrinking ring for
9
a high pressure vessel. The use of the system can substantially reduce
time and costs, in addition to increasing productivity. However, the
data preparation and data presentation system can quite well be used
with other finite element programs such as NASTRAN, ASAS, etc.
10
CHAPTER 2
INTRODUCTION TO THE CADMAC-11 SYSTEM AND ITS COMPONENTS
2.1 HARDWARE
CADMAC-11 is a low-cost fully interactive computer aided design
system built around a mini-computer. The system was developed for
those users who require more computing power and greater flexibility
than is offered by the standard CADMAC system(8)
.
The CADMAC-11 system comprises:-
1. Digital Equipment Corporation's PDP 11/45 mini-computer of 24K,
16 bit word core capacity, that is expandible up to 124 kilowords.
The computer has two variable disk drives, each of 1.2 million word
capacity. Each user is able to maintain security over his own data and
programs by removing his disk after use. The computer is interfaced
to the peripheral devices via a CAMAC(9) module.
CAMAC provides a common standard interface (the CAMAC dataway)
into which hardware handling modules can be plugged. An interfacing
module, the CAMAC dataway controller, links CAMAC to the computer.
This dataway controller must be designed for the computer being used,
but the hardware handling modules are all independent. These modules
and the controller, in the form of printed circuit boards, are plugged
into a CAMAC crate, which normally has space for 24 boards. Using a
CAMAC interface offers great flexibility and will permit expansion of
the system at a minimal cost,
Modules are present in the system to interface the digitising
table, Tektronix 611 storage tube, Line printer, and DC flat-bed plotter.
2. Digitising/plotting table. The table consists of two surfaces, one
beneath the other. The top surface is of toughened glass and is the
input digitising surface. Beneath this surface is a mechanism consisting
of a carriage containing sensing coils, running in the Y direction, on
11
top of a gantry moving in the X direction. X and Y positional measure-
ment is effected by two moire fringe shaft encoders driven via stainless
steel wires attached to the gantry and carriage, which in turn are
driven via toothed rubber belts or wire by servo motors. The digitising
pen consists of a coil through which a 400 Hz current is passed. The
magnetic field set up by the digitising pen is sensed by the coils on
the carriage and a signal is passed via a feedback network to the servo
motors causing positioning of the carriage directly beneath the 'pen'.
The digitising pen normally contains up to eight buttons and when one or
a sequence of buttons is pressed a command is executed by the computer.
On the table there is a reserved area, known as the menu, which is
divided into a number of squares. Each square is identified by a
name or a number. A point digitised within any one of these squares
causes a routine to be loaded and executed within the computer
(overlay system()).
3. Tektronix 611 storage tube. It has a display area of 21 x 16.2 cm
containing approximately 1,000 units along the horizontal axis and
800 along the vertical. The origin, i.e. the coordinate position
(0,0) is located on the bottom left hand corner of the screen. The
position of the display beam will be controlled by sending the (X,Y)
values of the lines (start and end coordinates) and an ICODE which
defines the condition of the beam (on or off). Subsequently the
vector generator produces increment or decrement pulses for the display
drive at a suitable rate to produce a straight line.
4. Flat-bed plotter. The flat-bed plotter was designed and built at
Imperial College. The plotter is driven by DC printed armature motors
via a stereo power amplifier. The device uses a current division method
to determine the coordinates of thepenposition. The pen is wired to a
control box to inject a current at the point of contact on a special
conductive surface. This allows very accurate positioning with a
12
resolution of approximately 10 bits which is comparable with the screen.
The performance is excellent with no noise problems. The paper is held
on the plotter surface with the aid of an air suction pump. It has a
maximum speed of 15-20 inches per second and three different modes of
plotting: smooth acceleration at the start, steady rate and smooth
deceleration at the end of a line without producing overshoot or
'kinks'. The software for the plotter was developed by the author for
background plotting (see Appendix A).
5. Kennedy seven track magnetic tape, LA 30 DEC writer 15/30 characters
per second, paper tape reader/punch and line printer model 6330 (150
characters per second) by Data Recording Instrument Company Ltd., are
the other CADMAC-11 components.
Figure 1 shows a typical CADMAC-11 system.
2.2 SOFTWARE DESIGN FOR GFEMGS (A GENERAL FINITE ELEMENT MESH
GENERATING SYSTEM)
As discussed in Section 1.2, using a CAD system in data processing
for finite element programs has considerable advantages over conventional
methods. Therefore, the aim of the GFEMGS system was to develop a new
low-cost CAD system to generate the numerical data for finite element
programs and graphically present the results. The system must be very
simple in operation, guide the user via instructions on the VDU or key-
board, print out the error messages and show the correct method of
operation. The system also must be able to run as a pre-processor and
post-processor to the finite element ASKA program and be able to be
used in conjunction with other finite element programs with slight
modification. The GFEMGS must provide meshes for any two-dimensional
axisymmetric and three-dimensional shapes using the CAD system. As
its operation procedures will be very simple, anyone should be able to
use the system after a few hours of training. The software for GFEMGS
13
must be designed and developed in such a way that it is very easy to
understand and it is possible to add continually to the power of the
system without causing old versions of any module to become incompatible.
The GFEMGS was developed by the author at Imperial College for use in
design, research, teaching and development work.
2.2.1 Summary of GFEMGS Facilities
GFEMGS operates under the standard PDP 11/45 disk operating
system, known as DOS-BATCH (Disk Operating 5ystem) version 8 or 10,
which was supplied by DEC. The system possesses a FORTRAN compiler
and the assembly language of the PDP 11 is MACRO 11. The system
software is written in FORTRAN IV, but certain subroutines or overlays ,
necessarily had to be written in assembler code to handle the basic
input/output facilities for filing, digitising, plotting and displaying.
The 24K words of the core are split into various parts. 4K are
used by the operating system monitor which contains the trap vectors,
system communication words, interrupt vectors, DOS-BATCH input/output
handlers, buffer space, system stack area and a small resident area
which contains the resident common, resident main program and resident
subroutine. The remaining 20K words are available for overlaying and
contain overlay common, overlay main and overlay subroutines. The
resident area was kept as small as possible in order to allow the maximum
amount of space for overlays.
The overlaying system is very fast and independent compared with
the system provided by DOS-BATCH. The load module of each overlay is
assigned an overlay number and is written into a contiguous random
access file CADMAC.OVL, on one of the two system disks. At the front
of CADMAC.OVL is a directory containing each overlay name, number, start
record and length that has been written into CADMAC.OVL. When GFEMGS
is run, the directory, excluding the overlay names, is read into the
resident core area. The overlays are called into the core by their
14
relative numbers. The overlay system was developed at Imperial College
by Hamlyn(7)
The digitising table is split into two areas, a digitising surface
and a menu area. When the digitising pencil is pressed over a function
square on the menu the relevant overlay is loaded into the core. When
the pen is pressed over the digitising surface, the coordinates of this
point are logged and used as required. The system incorporates
facilities for constructing three-dimensional data by digitising from
two-dimensional representations of an object. The file structure used
in the system provides the links required between input data, displayed
data and stored data.
At all times the movement of the digitising pen on the digitiser
is mirrored on the storage tube by a non-stored cross-hair and whenever
a coordinate is digitised on the table the software will produce its
coordinates. These coordinates will be used as data input to the main
mesh generation program. Other facilities provided by the system to
enable basic data input are FIND, DRIVE and CONTROL 90 mode. All modes
remain in effect until they are discarded or a new mode is reselected.
In FIND mode when a point is digitised, which is within a given
tolerance of a point previously entered in the data file, then the
coordinates of this previously entered point are returned. This ensures
accurate location of data points. Line division, extension and inter-
sections are the other facilities provided by the system.
If two points are digitised on the table one after another, they
will be joined by a line on the VDU (Visual Display Unit). This line
can be one of the following: continuous line (visible or unvisible) or
dashed line depending on which button has been pressed on the digitising
pencil.
Once DRIVE mode has been entered the user is able to specify
vector increments in X and/or Y coordinates from the last entered point
15
to produce the next point. This facility was included as it was felt
that there were some situations in which a digitiser is less suitable
for input than purely numerical methods and it seemed a suitable com-
promise to make. CONTROL 90 mode, as it suggests, constrains the user
to imput points which either have the same local X or local Y coordin-
ates of the last point digitised, so the cursor is forced to move only
in the X or Y direction. However, the way points are displayed on the
storage tube and filed is the same whether using DRIVE mode or CONTROL
90 or the ordinary digitising method.
It is also possible to use the continuous digitising methods to
produce an approximation to a curved surface. In this case the user
traces the outline of the curve and data points are stored automatically
by the computer at short intervals along the curve. This is a speedy
way of producing contour and cross-section data, but it is only as
accurate as the user can digitise. In situations where data points are
known at sparse intervals along a required curve, the curve fitting
facility can be utilised. The set of points on the curve are defined
by the user, either by digitising or using DRIVE mode and a cubic spline
is automatically passed through the points which maintain continuity of
curvature and slope at all spans(10). Several geometric entities, such
as circles, arcs, rectangles and polygons exist which require a numer-
ical set of data to define them and therefore program modules have been
added to allow their input in a simple fashion. The GFEMGS has two
different modes of operation: automatic mesh generation and non-
automatic mesh generation mode. In the case of automatic mesh generation
for the two-dimensional and axisymmetric shapes, the meshes can be
generated for a model using a series of quadrilaterals (with sides of
different lengths). Each quadrilateral is automatically divided into
a number of particular elements, such as triangular elements with
three nodes or quadrilateral elements with four nodes. Later
16
17
on the user is able to transfer automatically these elements to higher
order elements such as triangular elements with six nodes or isopara-
metric triangular elements with parabolic curved edges, or quadrilateral
elements with eight nodes or nine nodes and isoparametric quadrilateral
elements with parabolic curved edges. The GFEMGS enables the designer
to generate meshes within a quadrilateral in such a way that they are
more concentrated on any side or at one point of the model (Section 3.5).
The system can also generate automatically meshes for circular disks
or plates, with or without holes with meshes of varying concentrations.
The GFEMGS has a graphical checking routine to check the coordinates
and element connections, so that any error in the data will be shown to
the user via the storage tube or keyboard, e.g. after generating the
meshes for a structure using a triangular element with three nodes, the
CHECK routine can identify the missing element on the VDU or display
the element with a suspicious shape (e.g. obtuse-angled elements),
therefore the user will be guided through the generated mesh and any
future action will be recommended by the system.
In the case of non-automatic mode GFEMGS provides a facility for
editing the meshes. Adding and deleting elements or adjusting the nodal
point coordinates to a better position are the editing facilities.
Manual input of elements is performed by displaying the model on the
screen and adding each element to the model until the mesh is complete,
e.g. a triangular mesh would be added by digitising two fixed points
using the FIND mode and the third point of the triangle would be moved
by moving the cursor on the digitiser until the desired position is
obtained. To delete each element the user will simply input the nodes
of the element by the FIND mode, subsequently the shape of the element
will be displayed on the VDU and the user will have a choice of deleting
or restarting by pressing a special button on the digitising pencil.
To adjust the nodes, the user will specify the nodes by the FIND
18
mode and then these nodes will follow the cursor on the VDU until the
desired position is obtained.
The editing facilities of GFEMGS enables the user to generate the
meshes for any complicated two-dimensional shape.
The GFEMGS has an automatic nodal point renumbering routine which
minimises the stiffness matrix bandwidth. The user is able to display
the stiffness matrix directly on the VDU. Subsequently, if the bandwidth
is greater than a permitted value, it is possible to minimise it by
using the GFEMGS automatic renumbering routine. The user is able to
identify the boundary condition for a mesh, directly from the digitiser,
e.g. a node may be suppressed in the X and/or Y and/or Z directions.
The user is able to identify the load conditions from the digitiser.
Once a mesh has been generated, the user may then identify the elements
which will take external forces so that the load conditions can be
applied at the appropriate nodal points. Three-dimensional meshes are
generated by a 21/2 D technique in the present system. Once a mesh has
been generated on a particular plane a second plane may be specified
parallel to the first plane but in any location of space, then the nodal
points from the first plane will be automatically projected onto the
second plane to form a three-dimensional mesh. This process may be
repeated many times and each time it is possible to project one plane
to a smaller or larger plane and the location of each plane varies as
required.
The GFEMGS is able to generate meshes for 3 D shapes using any
of the following elements: pentahedronal elements with six nodes or
pentahedronal macro-elements built of three tetrahedrons; hexahedronal
elements with eight nodes or hexahedronal macro-elements built of six
tetrahedrons; triangular membrane elements in 3-space (three or six
nodes); or quadrilateral plane membrane elements in 3-space (four,
eight or nine nodes).
The GFEMGS enables the user to display the results from the finite
element program on the VDU such as automatic plotting of deflections,
or scaled principal stress vectors in the appropriate direction for
each node, or displaying the stresses in an oblique form of the
surface where the Z coordinate at each node coincides with its principal
stresses.
The GFEMGS contains the software for plotting the results on a
flat-bed plotter. This software can be easily modified for other types
of plotter.
2.2.2 GFEMGS System Command Menu
The GFEMGS menu consists of a 30 x 10 matrix of two centimetre
squares located on the left hand 20 cm of the digitising table,
beginning 9 ter► up from the table's X axis.
To allow flexibility in the arrangement of commands on the menu
there is a mapping routine which translates the position of a square
on the menu to a position on an abstract software menu. The arrangement
of the software menu is fixed, as its square number is an important
parameter in the execution of many commands. When a menu command is
given, the menu square number is mapped onto the software menu and from
the square number on this menu the menu handler determines which overlay
is to be called to service the command. Each square is identified by
name or number and corresponds to a specific command. A point digitised
within any one of these. squares causes a program to be loaded and
executed within the computer. Figures 1.1 and 1.2 show the GFEMGS
system commands menu.
19
20
Figure 1.
21
SCAL MESH
MOVE . MESH X,Y'Z
ROTAT MESH X,Y,Z
DASH LINE --
LINE DIVIS INTER EXTEN
CLEAR MACRO FILES
OPEN CLOSE FILE AS MACRO
DISPLAY STIFF MATRIX
MINIMIS BAND-WIDTH AUTOMAT
SAVE WORK-
MT,DKi SPACE SPACE
INPUT BOUND- ARY. CONDIT
ELEMENT WITH PRESSUF
CHECK ANGLES ELEMEN NUMBER
PRINT ANGLES OF ANY TRIANGL
RECOVER WORK-SPACET MT,DK1
DISPLAY RADIAL AXIAL STRESS
DISPLAY CIRCOM SHEAR STRESS
CALCUL MAX SHEAR STRESS
DISPLAY STRESS IN 3D PICTURE
DISPLAY DEFORM ATION
PROJECT ANY PLANE ADD 3D
--b. DOUBLE X-Y PLANE PROJECT
3D COOR- DINATE FILE
3D ELEMENT CONNECT
PLOT WORKE SPACE
STORE ASCII NODE TO PLOT
ADD ELEMENT TO THE MESH
DELETE ELEMENT FROM MESH
ADJUST NODES OF THE ELEMENT
LINE EDITOR FILE 3
DELETE LINES CONNECT 1 POINT
PLOT FAST CIRCLE V.D.U.
DISPLAY INDIVI- DUAL NODES
DISPLAY ALL THE NODES
PRINT FILES TO ANY DEVICE
JOIN FILES TOGETH
CLEAR FILES
GENERAT MESH FOR ANY QUADRIL
GENERAT CONCEN MESH QUADRIL
GENERAT MESH PART DISK ,
GENERAT ELEMENT CONNECT
.
TRIANGL QUADR- ANGLE
HIGHER :-...p. ISOPARF-METRIC ELEMENT
ORDER ELEMENT
1000
'
100
r
10
41
-1000-100 -10 -1 E ÷i 10 100 moo
-1
-10
• A00
A000
Figure 1-1 GFEMGS System Command Menu
22
•
LINE MODE
CIRCLE MODE
RECTAN MODE
I/P ORIGIN
SET SKEW
SET 2
I/P SCALE
0/P SCALE
GRID FACTOR
ALPHA SIZE
INTEN— SITY
LEVEL PEN NUMBER
EYE POSIT
VIEW DIRECT
FOCAL LENGTH
LINE ----
LINE — — —
LINE _._._
LINE — ---
TRAIL ORIGIN
ASS ORIGIN
WORK—tSPACE TO FILE
FILE 1 TO WORV SPACE
ZERO FILE RANDOM
DISPLAY FILE RANDOM
TIDY WORK— SPACE
RECOVEF WORK—SPACE
DISPLA% X—Y VIEW
DISPLA4 Y-2 VIEW
DISPUTI 2—X VIEW
DISPLAsi ALL
VIEW
DISPLAY ISOMT VIEW
DISPLAY 1
DISPLA" 2
DISPLA" 3
ERASE SCREEN
RESET WINDOW
CENTRE ROTAT
CURVE FIT DISPLAY
CURVE FIT STORE
CON-TINUOUS DIGITIS
LINE EDITOR FILE 1
DEBUG FILES 1,2,3
CLEAR WORK- SPACE
JOY-STICKS
Figure 1-2
CHAPTER 3
AUTOMATIC MESH GENERATION FOR TWO-DIMENSIONAL AND
AXISYMMETRIC SHAPES
3.1 TECHNIQUE
It was stated in Section 2.2.2 that for very complicated shapes
the enclosed area is divided into a number of quadrilaterals (there
may be a large number of combinations in which quadrilaterals can be
generated (Figures 2 and 3)). Each quadrilateral is automatically
divided into a number of particular elements depending on the required
number of nodal points on each side.
Generating meshes for some geometric shapes such as quadrangles
or triangles is simple and so quadrangles and triangles form the basic
element inside each quadrilateral. Later on the user is able to transfer
these elements to higher order elements automatically. The important
problem is that each quadrilateral must be divided automatically into
a number of elements in such a way that the divisions are equal on each
side, as shown in Figure 2. The method of generating meshes for each
quadrilateral with different concentrating meshes on each side will be
discussed later. Meshes for successive quadrilaterals may be generated
using any side of any previously filled quadrilateral.
It is also possible to use any two nodes or one node on one side
of any previous quadrilateral to generate the meshes for the subsequent
quadrilateral (see Section 3.3). Thus it is possible to join a large
quadrilateral to a small quadrilateral with different node numbers on
each side.,
3.2 AUTOMATIC GENERATION OF MESHES INSIDE ONE QUADRILATERAL USING
TRIANGULAR OR QUADRANGULAR ELEMENTS
After dividing the model into a number of quadrilaterals, the
23
24
program commences generating meshes for each quadrilateral from the
digitising table. The interactive capability of the CAD system is used
whenever possible to guide the user. This is done via messages written
on the display or printer.
There are five possibilities in the shape of a quadrilateral, as
shown in Figure 4.
The overlay MESHGE (menu square 1, overlay 128) was built to
generate meshes for the general case of a quadrilateral with four sides
of different lengths as shown in Figure 4-5 using triangular or quad-
rangular elements.
The only data needed for the program in the first step are coor-
dinates of the four corners of the quadrilateral and the number of
nodal points on each side. The four coordinates can be input to the
program very quickly, accurately and efficiently by digitising or by
using FIND mode (FIND mode will only work in the case of existing data,
i.e. shape of the quadrilateral has been digitised). Digitising these
coordinates can be done in any direction, clockwise or anti-clockwise
by chosing any corner to start. The number of nodal points on each side
will be input by using the pen button on the digitising pencil (Appendix
B). The shape of the quadrilateral which was digitised will be displayed
on the VDU.
The second step in the program is to compute and test the number
of nodes and elements. The maximum number of nodes and elements for
each quadrilateral are dependent on the size of the arrays in the MESHGE
program. It was decided to choose a maximum of 250 nodes and 450
elements for each quadrilateral. These numbers can be expanded easily
by another user but the user must remember that as each overlay must
be built at the bottom address of 40,0008
and the core has a top address
of 137,4608, specifying a larger array than that existing in the MESHGE
program, may make the program too large to fit into the available core.
The data input by the user will be checked in the program and the user
may be informed about any unacceptable data which may cause an error in
the system, e.g. exceeding the total permitted number of elements or
nodes. To generate the mesh for the quadrilateral shown in Figure 4-5
the program starts by generating meshes for the rectangle of unit width
and unit depth. The coordinates of the nodes are then modified step by
step as shown in Figure 4, to arrive at the general shape shown in
Figure 4-5. If the global coordinates of a typical node shown in
Figure 5-1 are Xi,Yi, then the new values XI,Y1 for the quadrilateral
1 2 3 4, (Figure 5-2) are obtained from the following equations:-
X! = X. * L 1 1 (1)
Y! = (R - X! * tan 13 - X! * tan a) Y. + X! * tan a (2) 1 1 • 1 1
where R and L are the depth and width of the quadrilateral 1 2 3 4, and
a and 0 are the angles of the oblique lines as shown in Figure 5-2
which will be calculated in the program by using the coordinates of the
four corners of the quadrilateral.
Let ix be used to count the nodes from left to right in a
particular horizontal zone and i be used to count such rows from
bottom to top of the mesh, where 1 ‘ ix
nx and 1 4 i 4 n . n
x is y y
defined as the number of nodal points on one side of the quadrilateral
in the X direction and ny is the number of nodal points on the other
side of the quadrilateral in the Y direction. It is assumed that the
mesh has unit overall dimensions on all sides, and the origin of the
global coordinates is set at the bottom left hand corner, then the
global coordinate shown in Figure 5-1 will be(11)
:
ix - 1 i - 1 X Y.
y nx - 1 1 ny - 1
If the order of node numbering is from left to right along horizontal
rows taken in order from bottom to the top, then the number of a typical
node can be obtained from the corresponding values of the counters as
25
follows:-
i = (iy - 1) * nx + i
x (3)
Therefore the program will first calculate the global coordinates of
each point for quadrilaterals 1 2 3 4, shown in Figure 5-1, then, using
equation (1) and (2) it will calculate the new value X! and Y' for each
nodal point of quadrilaterals 1 2 3 4 as shown in Figure 5-2.
The next step is to modify these coordinates to suit the shape
of quadrilaterals 1 2 3 4 shown in Figure 4-4. The only difference
between the quadrilaterals shown in Figure 4-3 and 4-4 is that the line
3-4 is not vertical anymore, but inclined at an angle y to the vertical.
As is shown in Figure 6, the program has to modify the coordinates of
nodal points which were generated for quadrilaterals 1 2 3 5. All
the nodes on line 1-2 and 2-3 will remain unchanged but the nodes on
line 3-5 will move to line 3-4 by drawing lines horizontal to line
1-4 (or 1-5) and the new position of these nodes will be the inter-
section of these projected lines with line 3-4. Those lines which
connect each new node on line 3-4 with its relative point on line 1-2
will then be divided equally by the number of points on its side, e.g.
line 1-4, A-A', F-F'. These lines will be called connection lines.
To find the new position of each node on line 3-4 it is necessary
to determine the horizontal distance between each new node and the
vertical line 3-5. In Figure 6, SS is the horizontal distance between
point 4 and its old position point 5 (line 3-5 extended), and also SS
can be the horizontal distance between point A and C or F and H. SS is
determined by solving each triangle created between these three points,
one is the node on line 3-5, the other points are the new position on
line 3-4 and the stationary point, point 3; a typical triangle is
shown in Figure 7. SS can be found from solving triangle ABC as follows:-
m = Y3 - Yc
where yc is the Y value of each node on line 3-5 when it was generated
26
inside the quadrilateral 1 2 3 5.
DB = m * cos y
DC = m * sin y
DA = DC * tan (a + y)
DA = m * sin y * tan (a + y)
AB = DA + DB = m {cos y + sin y * tan (a + y)}
SS = AB * sin y
SS = (y3 - yc) sin y {cos y + sin y * tan (a + y)}
Each new nodal point on line 3-4 has a horizontal distance E from line
1-2 which is given by:-
E = K - SS
where K = x3 - x2
The coordinates (x1,171), (x2,Y2), (x3,Y3), (x4,y4) are known as they
were digitised at the start of the program.
The X and Y coordinate of each node on the connection line will
be obtained from the following equation:-
ix - 1 x7 = x. * E - * E 1 1 nx - 1
yl = yi - 6 * tan a
where 8 = x! - x7 1
Each node number is represented by:-
i = (iy - 1) * n + i
x x
x! and yi are the coordinates of one particular node that has been
generated inside the quadrilateral 1 2 3 5. For example, if ix = 3,
iy = 2 and nx = 5, then I = 8 and x8,4 are the coordinates of node
number 8 in quadrilateral ABCD and x"8 and y"8 will be the new coordinates
of node number 8 in quadrilateral ABCD after modification as shown in
Figure 8.
The last step is to modify these coordinates to suit the general
27
28
shape of quadrilateral shown in Figure 4-5.
Having the coordinates of nodal points 1, 2, 3, 4 in Figure 9,
the program is able to generate meshes for quadrilateral 1 5 3 4 by
assuming that the point 5 is simply an X shift of node 2 with Y constant.
Nodal points on line 1-4 and 3-4 will remain unchanged. Lines are
drawn horizontal to the X axis from all nodal points on line 1-5 and
5-3 and the intersection of these lines with lines 1-2 and 2-3 res-
pectively will give the new nodal position for quadrilateral 1 2 3 4
as shown in Figure 10.
The only modification will be on the X coordinates, and all Y
coordinates of all nodal points will remain unchanged. Let us choose
a typical row joining node number 11 on line 1-5 to node number 15 on
line 3-4 from quadrilateral 1 5 3 4, as is shown in Figure 9:-
SD = yll * tan e
DI = x15 - SD
The new ae!' coordinate of each node on this row will be obtained from:-1
x"' = SD + DI * n - 1 x
y
i - yl
where ix varies between 1 and nx. This process will be repeated for
each row until the n row has been completed.
The shape of the mesh (element connection) will be displayed on
the VDU. The user will be guided via the storage tube to digitise the
centre of the global coordinates axis, therefore the coordinate of the
nodes will be measured relative to this axis and it will be checked
automatically by the program for any inconvenient data such as negative
coordinates. In such instances the user will be guided via message on
the printer and the program will jump to the previous section allowing
the user to change the position of the axis.
ix - 1
29
Figure 2
Figure 3
Y • 2 3
4 1
1 i
yi
Y
3
R
1
Figure 5-1
L
Figure 5-2
30
2
3 2 2
\\\
start
4 1 Figure 4-1
Figure 4-2
Figure 4-3
2
3
Figure 4-4 Figure 4-5
Figure 4
Figure 6
K
2
R
Y3
1 .4
SS F
Figure 7
20
32
Figure 8
33 K
z
L
Figure 9
I
5
Figure 10
34
3.3 COMBINATION OF QUADRILATERALS
The first important part is to combine quadrilaterals together
to produce a unique mesh. The user is able to create one quadrilateral
by using one, two, three or four sides of the other quadrilaterals. The
important advantage of using a digitising table is that the user may
select any side of the quadrilaterals directly from the digitising
table without any extra work of reading the coordinates and feeding into
the program. The MESHGE program has also the advantage that in combin-
ations of quadrilaterals the length of the connection side of the
joined quadrilaterals need not necessarily be equal to the side of
the existing quadrilateral. Thus it is possible to join a large quad-
rilateral to a small quadrilateral with different node numbers on each
side, as is shown in Figure 11. It is important to know how the nodal
points in one quadrilateral will be numbered before connecting it to
another quadrilateral and after the connections. The way that the program
numbers the nodes in one quadrilateral depends firstly on the direction
of inputting the four boundary points (clockwise or anti-clockwise) and
secondly, on the first node number (after joining to another quadrilateral).
The first node number for a new quadrilateral is equal to the total node
number in the mesh incremented by one. The node numbering sequence will
be in ascending order along a line which is connected between the first
and the last digitised points when four corners of a quadrilateral have
been digitised. This line will be called X line. The user will be guided
as the program displays the X line and the direction of the basic incre-
menting on the VDU. This will help the user to identify the common
nodes between two quadrilaterals. The direction of incrementing will be•
along the X line, always from the first digitised point towards the last
digitised point. There will be eight different ways the program can
number the nodes inside one quadrilateral (four different starting
nodes and two different directions), as shown in Figure 12.
35
It is very important to remember that choosing the right order
of numbering nodal points in each quadrilateral can save computing time
during the finite element calculation. If the mesh has some badly
numbered elements (i.e. the difference between each node number in an
element is very high) then the bandwidth (the maximum difference between
any two related nodes, plus one to account for the diagonal term) in the
stiffness matrix will be higher than its allowance. Thus, the computer
will spend more time than is necessary solving the stiffness matrix.
When two or three or more quadrilaterals have to be added together, by
choosing the best corner to start and the best direction for digitising
it is possible to avoid some of the bandwidth problems. Later on in
Chapter 5 it will be shown how automatically renumbering the nodes of
a mesh can reduce the bandwidth. An example of quadrilateral combin-
ation shown in Figure 13 in which the mesh for the quadrilateral
A B C D was generated by digitising in a clockwise direction starting
from point A, therefore, the line AD will be the X line and basic
increment will be along this line as shown in Figure 13. The user is
able to create another quadrilateral by using any side of this quadri-
lateral. The second mesh for quadrilateral E F G H was generated in
a similar manner starting from node E. Therefore the line EH will be
the X line for this quadrilateral, and the basic numbering will be
along this line from node E towards the node H as is shown in Figure 13-b.
The common nodes will be node numbers 1, 2, 3, 4, 5, 6. Defining
these nodes as being common to both quadrilaterals allows the program
to delete these coordinates when numbering the second quadrilateral
E F G H. It is very convenient to digitise a quadrilateral joining to
another in such a way that the X line matches the joining line (as in
Figure 13). If this is done, the common nodes will always be a set of
numbers such as 1, 2, 3, 4, etc. and defining these nodes as the
common nodes is easy for the user. The common nodes will be input to
the program by using the button on the digitising pencil (Appendix B).
An example of joining a number of quadrilaterals together is shown in
Figures 11 and 14.
3.4 DATA STORAGE
The term 'data storage' is defined as the process by which infor-
mation is placed on a medium in machine-retrievable form for subsequent
use on the same or another system. The first requirement of any storage
medium is reliability. Other desirable characteristics are:-
1. High capacity.
2. High speeds of access and transfer.
3. Portability.
4. Low cost.
The DOS/BATCH system supports four magnetic media: disk (both
fixed and interchangeable), DECtape, standard magnetic tape and cassettes.
Paper tape input and output devices may also be used to store data(12)
The relative strengths of each medium are shown in the following table,
in which the devices are ranked from 1 (fastest access time) to 5 in
respect of each characteristic.
Disk DECtape Magtape Cassette Papertape
Access speed 1 2 3 4 5
Transfer rate 1 2 3 4 5
Capacity 2 3 1 4 5
Clearly disks are used for the main storage medium which has the
best access speed and fastest transfer rate with adequate capacity.
3.4.1 Topological Description
The topological description portion of ASKA deals primarily with
that information required to describe the topological attributes of the
36
37
idealised structure(3). This includes, of course, a specification of all
nodal points and the structural elements to be used, together with their
interconnections at the respective nodal points. Two specific methods
are usually available for presenting the numerical data to any finite
element program. The first method involves the use of text cards in
the form of punched cards and is currently the most widely used method.
The second method obtains this numerical data from a magnetic tape in
binary format, where this magnetic tape is usually generated from a
pre-processor provided by the user. The GFEMGS will generate the numeri-
cal data such as nodal point coordinates, element connections, boundary
condition, material properties and applied loads. This numerical data
is stored on disk as card images formated in permanent files. Producing
punch cards from these numerical data is therefore very fast and easy.
These permanent files can be varied in size and number and are only
restricted by the size of the bulk storage. Unlike contiguous files,
the user does not need to know the maximum file size before he writes
to it.
These files can be named or numbered for identification purposes.
The user may have access to each file by inputting the file number
directly from the working area on the digitising table. These
permanent files are automatically named by using the STORE or CONECT
subroutine. The FORTRAN call statements are as follows:-
CALL CONECT(IFILE)
CALL STORE(IFILE)
Where integer IFILE described the file number specification to be
opened for any future input/output operations (by a READ or WRITE
statement). The file name which will be created on disk has the form
of:
C IFILE.DAT or M IFILE.DAT
where C, M and extension DAT are unchanged characters and 1 < IFILE < 32767.
For instance, the statement CALL CONECT(237) will create a file named
'C237.DAT'. Similarly the statement CALL STORE(45) will create a file
named 'M45.DAT'. These files can then be accessed by standard Fortran
READ/WRITE statements by the use of the SETFIL Fortran subroutine
(overrides default value for a logical unit at run time), The user may
delete these permanent files directly from the digitising table simply
by inputting the file numbers. For example the statement CALL DELF(22)
will delete the permanent file named 'M22.DAT' on disk or CALL DELFCN(1)
will delete the file named 'Cl.DAT',
This method of data storage has considerable advantages in that
the user may have access to each different set of data directly from the
digitising table by specifying a number which is related to the filets
name. Also, the data in permanent files will not be destroyed when the
operation of the system is terminated (i.e. fatal error or general error
when the system is running). The present CAD system has two variable
disk drives, one is used as the system disk and the other as a data
disk. Therefore, by changing the data disk the user may generate as
many permanent files as desired. The user of GFEMGS is able to transfer
files to any other devices directly from the digitising table,
3.4.1.1 Deleting files (overlay CLRFIL)
This operation is performed by overlay CLRFIL which was built as
overlay number 53 in menu square 18. The user is guided by instructions
via the storage tube to input the file numbers containing the coordinates
or element connections which it is desired to delete. Subsequently by
pressing a button on the digitisng pencil the data stored in the spec-
ified permanent file will be deleted and the user will be informed
via messages on the VDU
3.4.1.2 Joining files (overlay JOIN)
The nodal point coordinates and the element connections for each
38
39
quadrilateral are stored in separate permanent files on disk. There
are many cases, such as bandwidth reduction by automatic renumbering
of the nodes, displaying the general pattern of the stiffness matrix,
adding elements, deleting elements, etc., in which the user must join
the files containing the coordinates of each individual quadrilateral
together to create a single file and same operation for the element
connections. The overlay JOIN (menu square 17, overlay 60) will ask
the user, by a message on the VDU, to input the file numbers in the
order in which they are going to be connected to each other. The user
then inputs a number to identify the single file containing the coor-
dinates of all the nodes or element connections in the mesh. Specifications
related to this file will be printed on the keyboard.
3.4.1.3 Transferring files (overlay PRINT)
At each stage of data preparation the user is able to transfer
some or all the permanent files from the system disk to one of the
other peripheral devices such as the Tektronix storage tube (DS), line
printer (LS), keyboard (KB), magnetic tape (MT), paper tape (PP) or
data disk (DK1). This can be done for the purpose of saving the
permanent files or checking the content of these files. Devices such
as MT, DK1 or PP may be used for saving purposes, therefore allowing the
user to delete the permanent files on the system disk to create more
free blocks. Other devices DS, LS and KB may be used for checking
the content of the permanent files simply by displaying the content on
the VDU or producing a list of the contents on the line printer or
keyboard. The magnetic tape and paper tape also may be used as inter-
mediaries between the PDP and CDC computers. The data is stored as
card images, formated in each permanent file therefore transferring
data between the PDP and CDC computers may take place by feeding the
paper tapes containing the permanent files through an Olivetti terminal
40
to the CDC or transferring permanent files to a special formated magnetic
tape (XT) which may be read by the CDC computer to produce the punched
cards from the required data by the ASKA program. These will be fully
described in Appendix D. Data transfer to any device is initiated by
calling the SETFIL subroutine (overrides default value for a logical
unit at run time). The overlay PRINT (menu square 16, overlay number
45) has a very simple operation; the user is guided, via the VDU, to
input the file number whose transfer is desired. Subsequently, the user
can select any device by pressing one of the buttons on the digitising
pencil. The data will be transferred immediately to the selected
device.
3.4.2 Data Structure for Picture Construction
Each line in the picture is represented by a string of vectors
in (X,Y,Z) Cartesian coordinate form. The vector defines the position
of the points describing the picture. Each point in the picture is
specified by three or four numbers. The first is a code number denoting
the nature of the point, e.g. start of a line, point on a line. The
next two or three numbers are the rectangular Cartesian coordinates of
the point, in either two or three dimensions. The code is a packed
single computer word and each coordinate is stored as a real variable
occupying two words of computer storage. Therefore either 5 or 7 words
are required per record for two or three dimensions respectively.
A storage block in the DEC's RK-05 cartridge pack consists of
256 words , therefore there are thrity-six 3D records per block with
four words to spare, and fifty-one 2D records per block with one word
to spare as is shown in Figure 15.
In Figure 15, the 'I' code specifies the type of data contained
in the (X,Y,Z) locations, normally consisting of coordinate positions
of the data point. The code can have the meanings shown in Table 1 -
mainly 'pen up' or 'pen down' indicators, e.g. I ...., 1 means that the
41
X,Y,Z codes specify the start point of a line. In the PDP 11
implementation, the data parameters are packed in a single 16 bit word.
Four bits of each single word in each record is allocated for 'I' code
so it has a range of 0 to 15 and the rest of 12 bits are allocated for
level/display priority, intensity level, colour, line-thickness, line
type and pen number(13). Subroutine RECORD handles input and output of
data records I,X,Y,Z or I,X,Y in the three-dimensional data and display
files. The routine works on the first in, first out principle in auto-
incremental mode by default, but facilities enabling random access of
data records in files have been included. The I/O entries are as
follows:-
CALL GETR(IFILE,I,X,Y,Z) for IFILE = 1 and 2
CALL GETR(IFILE,I,X,Y) for IFILE = 3
For IFILE > 3 the call is ignored. IFILE is the file number. I,X,Y,<Z>
is the data record, < > optional data.
This entry extracts data records in autoincremental mode.
CALL SETR(IFILE,I,X,Y,Z)
CALL SETR(IFILE,I,X,Y)
Arguments are defined as above. If I = 0, the routine writes off the
core buffer and closes the respective file. The pointer entries
operations are as follows:-
CALL GETIP(IFILE,IDP)
where IDP is the input data record sequence number. To return the
pointer to the next record to be stored:-
CALL SETIP(IFILE,IDP)
To set the pointer to the next record to be output:-
CALL SETOP(IFILE,IDP)
which allows the random access of data records (Appendix D in Reference 8).
The useful length of the digitising table is 0.79 m, therefore
the value of the coordinate data input from the table normally lies in
the range of 0 to 7900 which is well within the range of the PDP 11
integer (-32768 to 32767).
Table 1 - I code
ICODE
Meaning Contents of X,Y,Z
0 end of data
1 invisible vector (pen up) coordinate position
2 visible vector (pen down) coordinate position
3 start macro X - macro number
4 end macro X - macro number
15 null data
3.4,3 File Management
There are other types of file than those discussed in Section 3.4.1
which are used by the system for the purpose of data storage. These
are pre-allocated contiguous files on disk, and they can only be
accessed by program interaction, The user cannot assign them directly.
Two contiguous files are used by the system: one for temporary storage
of data during overlay swapping, and the other is known as the workspace
where data being currently digitised, displayed or processed is stored.
Although these are temporary files, the contents of the file may be
totally or partially recovered after a system breakdown, The other types
of file are pre-allocated permanent files assigned to a special storage
zone on disk (random access files). Each reserved file can be made to
correspond to a square on the filing area on the menu. Files linked to
the menu can be assigned directly by the user, The present configur-
ation allows a maximum of 100 files to be accessed by the user and the
remainder can be accessed by program. The size of these files are fully
42
adjustable depending on the amount of data. Although the data is stored
sequentially, the position of each record is indicated by a pointer
corresponding to its address in the file. Random access of data is
possible and the fact that each data record is self-contained in a
qualitative sense removes the need to refer to previous qualifying
data records. The usual mode of operation is autoincremental mode.
The I/O program automatically increments the pointer to the next record
after each read/write operation.
3.4.4 Input and Output of Workspace (overlays READ and SAVE).
The workspace which consists of two pre-allocated contiguous
files on disk CADMAC.RA1 and CADMAC.RA3, can be totally recovered after
each crash or user breakdown by using the RECOVR overlay (menu square
140, overlay 9). After each breakdown the position of the input pointer
on each file will be set automatically at the first record on each file
to allow the user to start with a new set of data. Therefore if the
user desires to save the data records which he was generating before
the breakdown, he must set the autoincrements pointer at the end of
his data. After running the system (GFEMGS) by digitising the RECOVR
overlay on the menu, the input pointer for data records will be set
at the end of the existing data and the user may continue with data
processing without loss of any data records. There are some cases
where the user wants to deal with a large set of data and at each time
he needs to save all the data records individually. In this case it
is possible to use the permanent files assigned to a special storage
zone on disk, but because they are pre-allocated files, they are usually
useful for small quantities of data. In finite elements there are some
cases where the user desires to deal with substructurals and meshes
have to be generated for each individual part of a structure without
any interference. The user therefore needs to save the workspace for
43
each substructure separately. For this purpose two different overlays
were constructed, SAVE (menu square 41, overlay 65) to save the
existing data records of the workspace on the magnetic tape or RK-05
disk as a permanent file, and READ (menu square 50, overlay 74) to
return the data records from the permanent files which were created by
SAVE overlay. The overlay SAVE starts by displaying the user device
options such as:
'Bl WRITE DATA TO DK1'
'B2 WRITE DATA TO M114'
Subsequently, the user must type any name on the keyboard to identify
each individual workspace which is going to be transferred to a
permanent file. The method of transferring is by setting the output
pointer at the beginning of each contiguous file CADMAC.RA1 or
CADMAC.RA3, reading the data records and writing them to the permanent
file. The overlay READ has the same mode of operation as SAVE overlay
but instead of setting the output pointer, the input pointer will be
kept in its position and data records will be read from the permanent
files and will be written to the workspace without any disturbance
to existing data records (which may or may not exist) in the workspace.
3.4.5 Displaying the Workspace (overlay DISALL)
For display purposes, in three-dimensional work, the data is
arranged in three separate random access high-speed transfer files.
These are known as FILE 1, FILE 2 and FILE 3. FILE 1 contains the
true three-dimensional data describing the object. This data can be
viewed by a suitable projection or by direct viewing, represented by
three orthogonal projections. FILE 2 contains the projected view of
FILE 1. The data structure is identical to FILE 1, in the same
sequence, but X,Y are in terms of screen coordinates and Z contains
the actual spacial depth. This file is usually used for saving a
44
set of data for future modification. FILE 3 contains the actual blue-
print of the digitised artwork. This file contains the two-dimensional
data which is converted to FILE 1 by an input routine. The display
of each file is controlled by the value contained in a switch ND in
the program DISALL where:-
ND = 1 convert and display 1
ND = 2- display 2
ND = 3 display 3
The user is able to display each individual file directly from the
digitising table by digitising the relative square on the menu.
The outline flowcharts of MESHGE program are shown in Figures
16.1, 16.2, 16.3 and 16.4.
It is possible to use quadrangular elements to generate a mesh
for each quadrilateral. It is not necessary to calculate the nodal
point coordinates for quadrangular elements in a technique other than
the method discussed in Section 3.2 for triangular elements. Program
MESHGE will generate the nodal point coordinates for each quadrilateral
using quadrangular elements since each quadrangle can be divided into
two triangles.
3.5 CONCENTRATING MESHES (overlay MESHCN)
The automatic mesh generation system described so far is based
on uniformly spaced nodes on each side of a quadrilateral. There
are many instances, however, where it is necessary to concentrate
the mesh since certain areas of the model could have stress concentrations
and a fine mesh will lead to greater accuracy in calculating stresses
at such points. A mesh concentration factor may be specified, to the
program in both the X and Y directions which permit a mesh to be con-
centrated in any part of the quadrilateral. A quadrilateral is shown
in Figure 17 for which the mesh has been generated by digitising points
45
46
A, B, C and D in order. The mesh has been concentrated in two parts
of this quadrilateral by utilising a concentration factor Sx in the
X direction and Sy in the Y direction. The global coordinate for
any quadrilateral when the mesh has to be concentrated on any side
will be obtained from the following equations:-
X1 (nx -1) S
x — 1,0
(i 1) S y - 1.0
Y. = 1(n -1)
S y - 1.0
The nodal point coordinates for a quadrilateral as shown in
Figure 4-3 when specifying a concentration factor Sx in the X direction
and S in the Y direction are obtained from the following equations,
which are similar to those equations discussed in Section 3.2, but
with different global coordinates:-
X!=X.*L = L * 1 1 (n -1) Sx x - 1.0
* tan (a) x! 4, tan (0) ) * tan a 1 1 1 1 1
(i -1) S y - 1.0 Y! = (R - X! * tan (R) - X! * tan(a)) Y (n -1)
+ X! * tan a 1 1 1
Sy y - 1.0
To modify these coordinates to suit the shape of quadrilateral 1 2 3 4
shown in Figure 4-4, and finally for the general shape of the quadri-
lateral shown in Figure 4-5, the user has to follow the operation
sequences similar to those discussed in Section 3.2, where for the
quadrilateral shown in Figure 4-4:-
X',' = E * X. 1
Y7 = Y! - d * tan a 1 1
and in general for the shape shown in Figure 4-5:-
(i -1) Sx x — 1.0
(4)
(5)
(lx -1)
S x — 1.0
= SD + DI * X. 1 1
• yfll = yfl
where X.1 and Y.
1 are obtained from equations (4) and (5) and SD, E,
and DI will be obtained in the same way as discussed in Section 3.2.
The concentration factor S defines a constant ratio of X or Y distances
between successive rows of nodes and can be any value within the range of
0 < S < 1 or S a 1. If it is greater than 1, then the size of each
element will be increased as the mesh generation is in process and if
it is in the range of 0 < S < 1 then the size of each element will be
decreased. Some typical meshes with various concentration factors were
generated using this techniuqe and are shown in Figures 18.1 and 18.2.
The program MESHCN will generate the meshes with different concentration
factors on each.side for any quadrilateral which may be digitised on
the table. This program, which has a similar outline flowchart to
MESHGE (see Figure 16), is built as overlay 127 in menu square 2 in
the GFEMGS system.
3.6 DISK OR PLATE WITH HOLES (overlay MEDISK)
Many problems, such as flat plates subjected to uniform tension
with a hole at its centre, concentric thick-walled cylinders made from
different materials or fuel elements in nuclear reactors have a common
shape. Therefore using an automatic mesh generating program for these
particular problems will reduce the time needed to generate the meshes.
Figure 19 shows a typical disk with a hole at its centre, Assume that
the mesh has to be generated only for 8 degrees of the disk where it is
bounded by two lines AB and CD as shown in Figure 19. The nodal point
coordinates are calculated from the following equations:-
The global coordinates are:-
ix - 1
X. = 1 n
x - 1
47
i - 1
yi - nY - 1 * (R2 - R1)
where nx and n are the number of nodes on each side. R1 and R2 are Y.
inner and outer radii. If the elements are to be concentrated near
the edge of the hole and the degree of this concentration is to be
varied, then it is convenient to use a scale factor S to define a
constant ratio of radial distances between successive rows of nodes
(similar to Section 3.5). Let fr be the distance between the first
two rows as shown in Figure 19, therefore:-
fr(1 + S + S2 + S
ny-2
) = R2 R1
fr - (n -1) S y - 1
Then the global coordinates are:-
Xi _ n - 1 x
Y. 1 fr (S
(iy-1) - 1)
S - 1
Therefore:-
(S(iY-1) - 1)
Y. .-.=(R2 - R1) * (S(nY-1) - 1)
Assuming the polar coordinates r and cp shown in Figure 19 are used,
then the required curvature can be introduced by a second modification
where the modified position of the typical node i is given by:-
Radius of each row r. = R1 + Y.
1 1
IT 0 X. Angle of each node (I) . 180 - + a 1
The final coordinates of the nodal points are obtained from:-
X! = r. * sin cp. 1 1 1
Y! = r. * cos cp. 1 1 1
48
(R2-R1
)(S - 1)
ix - 1
49
where 0 is the angle between two straight sides AB and CD, a is the
angle of line AB. The program MEDISK will automatically generate a
suitable mesh for any part of a disk which has been digitised on the
table. Data input to this program is very fast and efficient, e.g.
to generate the mesh for part of disk A B C D shown in Figure 19, the
user must input only the coordinates of points 0, A and B (by digitising),
the number of nodes on each side, the concentration factor and the angle
between the two straight sides AB and CD (0), then the program will
generate the mesh for this part of the disk. Clearly the angle a will
be calculated within the program from the coordinates of points 0 and A.
The coordinates of all nodal points will be stored and treated the same
as coordinates obtained from MESHGE program. Outline flowcharts of
this program, which has some similarity of MESHGE, are shown in
Figures 20.1 and 20.2. The MEDISK program is built as overlay number
126 in menu square 3 in the GFEMGS system. Figures 21.1, 21.2,
show meshes which have been automatically generated by using this
overlay. The important advantage of GFEMGS is that by using the
digitiser it is possible to combine any quadrilateral to any part disk
meshes. Further explanation of these combinations can be seen in
Figures 22.1 and 22.2.
3.7 ELEMENT CONNECTIONS (overlay TOPO)
It was stated in. Section 3.2 that each overlay must be built to
the lowest address of 40,0008 and the present CADMAC-11 system has a
top core address of 137,4608. The three main overlays - MESHGE,
MESHCN and MEDISK - have high limits as follows:-
Overlay Low Limit High limit
MESHGE 40,000 131,124
MESHCN 40,000 132,106
MEDISK 40,000 131,374
50
As it shows above, each of these overlays needs the majority of the
existing computer core to execute.
It was therefore decided to generate the element connections for
each quadrilateral in a separate overlay. These are two different
modes of generating the element connections:-
A. Automatically
This mode will be used if the quadrilateral has node numbering
sequences the same as those shown in Figure 12. Therefore considering
Figures 23.1 and 23.2 as examples, the numbers of the three nodes of
each element are defined by:-
First element (Figure 23.1):
N1 = i + i 0
N2 = i + nx + 1 + i0
N3
= i + nx + i 0
Second element:
M1 = i + i0
M2 = i + 1 + i 0
M3
= i + 1 + nx + i 0
where 10 = it - 1, and it is the first node number for each quadrilateral.
The node number counter i, ix, i y , nx and ny were described in
Section 3.2. Since there are nx 1 pairs of elements forming a
square in each row, the above process must be repeated nx - 1 times,
subsequently the whole calculation must be repeated ny - 1 times (ny - 1
pairs of elements in each column).
The four nodes of each element in Figure 23-2 are defined by:-
First element on first row:
L1 = i1 L3 = L2 + nx
L2 = L1 + 1 L4 = L3
- 1
51
where i1 is the first node number for the quadrilateral. This process
will be repeated nx - 1 times, but every time with a different starting
node i1 = L1. Calculation processes for the other rows are the same as
the first row with starting node i1 = i1 + nx, clearly there are n -1
rows of elements in each quadrilateral.
B. Manual
There will be some cases for which the node numbering sequence of
each quadrilateral is not compatible with those shown in Figure 12.
The user must therefore generate the element connections as far as
possible in automatic mode and then use the manual facility to generate
the connection for the remaining elements (odd elements). Since this
is a tedious technique it is more convenient to generate the meshes for
the quadrilateral in such a way that it is possible to use the auto-
matic mode for generating the element connection (e.g. changing the
direction of digitising). Operation of each mode and its relative
data are shown in Figure 23-3. The program TOPO will generate the
element connections for each quadrilateral either using triangular or
quadrangular elements. The outline flowchart of this program is shown
in Figures 24-1 and 24-2. This program is built as overlay 124 in
menu square 5 in the system.
The element connections will be stored in a permanent file as
single statements which describe the element patterns. The element
patterns in the ASKA program are described by statements of the format(3):-
Type - name (egid)(1(0)(P1)(P2) (P11)(ANIS)
where type - name is one of the element type names listed in Appendix A
of Reference 7; (egid) defines a numerical identifier for an element
group. Element groups are used in ASKA to facilitate the description
of the elemental data by subdividing the total number of elements.
Every element is referenced by its group identifier and the element
number within the group. Any number of element groups may be defined.
Consecutive element-type statements may have the same element group
identifier, but every element group may contain only elements of the
same type. Any combination of one to four digits is a permissible
element group identifier. But, the element group identifiers must be
unique. The elements with pressure or nodal point loads must be grouped
separately from the other elements. In the GFEMGS egid = 1 identifies
the normal elements and egid = 2 identifies the elements with distrib-
uted or nodal point loads.
The second argument - K0 - is the loop counter for the evaluation
of the topological variable; this parameter in the GFEMGS is set to 1
but it may be modified by the user in special problems. P1, P2, .... Pn
are topological variables describing those nodal point numbers to which
the element nodes 1, 2, .... n are connected. n is the number of nodal
points associated with the particular element type. The sequence of
the element nodes are very important (in higher-order elements such as
isoparametric elements) and they are dependent on the type of elements.
The last argument consists of the keyword ANIS or ANISOTROPIC.
It must be used if it is desired to input an anisotropic modulus of
elasticity for any element of those described by the statement. If all
elements in the statement are isotropic, this argument should be
omitted, e.g. the element connection of the first element in Figure 23-1
is described by the statement:-
TRIAX3 (1) (1) (1) (7) (6)
where TRIAX3 = axisymmetric ring element with triangular cross-section
(linear displacement field).
The element pattern of the first element in Figure 23-2 is:-
QUAM4 (1) (1) (1) (2) (6) (5)
where QUAM4 = quadrilateral plane memberance element in three space
with bilinear displacement field.
52
53
3.8 HIGHER-ORDER AND ISOPARAMETRIC ELEMENTS (overlay HIELEM and ISOPEL)
Triangular and quadrangular elements introduced in the previous
Chapters are the simplest type of elements available for solving two-
dimensional problems. Triangular elements with linear displacement
fields or quadrangular elements with bilinear displacement fields may
not be suitable for some particular problem where more accuracy of
results is desired. Elements involving higher-order shape functions
can also be used and have both advantages and disadvantages. The
advantage of using elements of a higher order rather than constant strain
triangles is that the shape functions are capable of representing the
true variations more accurately. Although the number of elements can
therefore be reduced, the reduction in the number of linear equations
to be solved may be much less significant because the number of nodal
point variables per element is increased. The additional complexity
will require more computer time to be spent in their formulation. The
question of economics has therefore to be considered. It has been
shown by Zienkiewicz(14) that a dramatic improvement of accuracy arises
with the same number of degrees of freedom when higher-order elements
are used for one specific problem. Therefore if few elements are used
to represent a region, using higher-order elements may be worthwhile,
while conversely, where a large number of elements have to be used to
represent the configuration the simple elements are more economic.
The accuracy of a particular finite element solution can also be improved
by increasing the number of elements (concentrating meshes). Since
there are no general methods short of trial-and-error for determining
which is the more efficient (higher-order elements or concentrating
meshes) in terms of overall cost, it is often more convenient to
increase the number of simple elements. A disadvantage of higher-order
elements is that while they have more than two nodes per side, the
54
sides are straight. Therefore, although it may be possible to use a
relatively small number of such elements inside the solution domain,
a relatively large number may be required near the boundary to adequately
fit its shape. The use of elements with curved sides offers an improve-
ment in this respect. The advantage of higher-order elements and
isoparametric elements will be favoured if efficient automatic mesh
generation processes are used.
GFEMGS will automatically generate meshes using higher-order
elements such as TRIM6, QUAM8, QUAM9, TRIAX6 or isoparametric elements
TRIAXC6, QUAC8, QUAC9. These elements and their specifications are
shown in Figure 25-1 and 25-2(3,15). Two different overlays were con-
structed. HIELEM to generate the higher-order elements and ISOPEL
for isoparametric elements. The technique which has been used consists
of, after generating the mesh for any quadrilateral (see Section 3.2)
using triangular elements with three nodes or quadrilateral elements
with four nodes, without changing the total number of elements the
user is able to transfer the coordinates and element connections to
higher-order elements (by using overlay HIELEM). Afterwards, if it
is desired, this data may be transferred to isoparametric elements (by
using overlay ISOPEL) in the following sequence:-
Simple elements
Higher-order elements Isoparametric elements
TRIAX3 —0— TRIM6 TRIAX6
transfer to transfer to QUAM8 QUAC8 QUAM9 QUAC9
The overlay HIELEM will renumber the original numbering sequence of
each quadrilateral shown in Figures 23-1 and 23-2 according to the
type of elements as shown in Figure 26.
It was shown in Figure 25-1 that the only data necessary to identify
the shape of the higher-order elements are the three or four corner
node coordinates, therefore by using the coordinates of the original
numbering the shape of the mesh will remain constant. The overlay
TRIAXC6
QUAM4
55
HIELEM will generate the new element patterns according to the type
of element, all the data (element patterns and coordinates) will be
stored in the same file number by deleting the original files. The
user can treat these files containing the higher-order elements the
same as the original files. The numbering sequence of the quadrilaterals
shown in Figure 26 will be the same when isoparametric elements are used.
Therefore there is no need to calculate the new node numbering, but
according to Figure 25-2 the coordinates of mid-side points are necessary
for the finite element solution when isoparametric elements are used. In
this case, the overlay ISOPEL will calculate the coordinates of the
mid-side points for each specific element shown in Figure 25-2, The
ISOPEL overlay will generate the new statements for isoparametric ele-r
ments which have the same connections as their relative higher-order
elements but with different element names.
Later on by using the MOVEND overlay (moves the nodes) the user
is able to adjust the position of the mid-side points and corner
points on the curved side of a structure.
The only data needed for overlay HIELEM is the file number con-
taining the coordinates of the original quadrilateral and number of
corner nodes on each side of the quadrilateral, e.g. the mesh shown
in Figure 23-3-a will be converted automatically to higher-order
elements such as QUAM8 or QUAM9 by considering the coordinates of these
three quadrilaterals joined together (overlay JOINE) in a single file
number 1. The only data input will be the number of nodes on each
side and file number (nx=5, n =9). Data requested by ISOPEL is the
file number containing the coordinates of the higher-order elements.
and the original axis of structure (calculating middle points).
HIELEM was built as overlay 123 in menu square 6 and ISOPEL As overlay
122 in menu square 7 in the system.
.411 Ow- etelellSO
IRSIS
itio-rxemegem
eetesse bob- &
gel
0 IN-oss..■10-"*"
11-- N
T*
-.NI ism -6■
-a711ATIVOC#00 No
ce.
g ■ a."' * -40 - ..figinfahWeivOCR a 0 Oa cao
claw,w
0ewalargotamiN
Iffivivegmccom
oca VIVO
, oimes.rtor
-0.. b.'WORPOININII
-oz C.M.
liM■M
EM
OV".
IIMIZIE
SOF
iN. ■
14114 Ma
r&
Q
t■ gscs
619 ag w
ar
f.Netter wingerom
utteleArstaf.,
11
eh
■
IZ
A 1.4 Zi■• faiS ec■ 111%.
Z.12k
01,
1..01
Eel i,W
AV
AT
AT
ATA
VO
IN
4
%0
07
a4jA
ZW
AY
AV
AIW
AV
Int
_..m.._..4
00.40
0AVA
VAVAVAIWA
R
•...-'11Alt■."1.1"-
-444.1"'-.41%
..41■
■■■
41)r
4 x
19 \ /15
14 \ 0 1
\9 ,---7 11 / / 5 4 ----
S=First digitised point —40-Direction of digitising X=Basic incrementing line
1
Figure 12-Basic numbering for a quadrilateral
F 2/5 ,2 27 8 _29
r //,
- _ 2 16r
-. .... I :14 12
X line
58
Figure 13
59
Figure 14
Figure 15 Storage Format for Data Records'
60
Il xl yl
. .
zl
12 X2 Y2 Z2
13 X3 Y3 z3
136 X36 Y36 z36
SPARE
137 x37 Y37 Z37
RECORD 1
RECORD 2
RECORD 3
256 words=Block 1
RECORD 36
Block 2
61 Start Subroutines called
Display message *digitise any quadrilateral*
iPMSGO 1.PLFMG
CURCON
B1 Select pen. button
B7
Yes
Look Look for X1,Y1
not existent _ FIND
GETINT
Warning message on VDU
Repeat section A to B for the other 3 points of quadrilateral
Display the cursor and look for the current pen position
X1,Y1
•
V Display the quadrilateral on the VDU I PLOTSC
BUTNUM Message on VDU
Input the number of nodes on each side of quadrilateral
Check; data input, total nodes
total element ny error?
Yes
--I
r - - , Node calculation'
section / .
Figure 16.1 Outline Flowchart of MESHGE
warning message
on printer
Calculate the nodal point coordinates of a right-angled triangle mesh for quadrilateral
which digitised
B8
not existent Look for X5,Y5
Display the mesh on VDU Mesh
workspace __Idisplaying PLOTSC
save the picture in , section
Display message *digitise the axis* X5,Y5
Select pen button
No button GETINT
Check he position o the axis, any
error?
No
I
Warning message on printer
FIND
4
si
Warning message on VDU
Select type of element
Exit) OVRETN 10.
Quadrangular element
Triangular elements
'Plot the axis on VDU PLOTSC
Writes off the core buffer and close the workspace
V Scale the coordinates relative
to axis digitised
Figure 16.2
SETR
62
63
Display message *store the coordinates*
PMSGO PLMSG
OVERTN Not stored. Exit
Message on VDU Input file number for data storage IFILE
no button Select B8
BUTNUM STORE
BUTNUM
Display the direction of the basic increment for node numbering
Message on VDU input common nodes, ICOM
BUTNUM
PLOTSC
GETINT
Warning message on printer all input common nodes
are ignored .1111-
Detect the common nodes and renumber the mesh
according to the first node number
Print common nodes and save them
Message on VDU Input first node number
Figure 16,3
Print out File number First node number Total node in the file
Write the coordinates to the file number, IFILE
64
V I Convert table coordinates to
screen coordinates
V Generate ASCII code of each node number
'Display the node numbers on VDU
14
Display message *B1 new mesh*
me,
SCREEN
BITAC
PMSGO PLMSG
PMSGO PLMSG
Go to A No button to- GETINT
Exit OVRETN
Figure 16.4
Figure 17
P.m." ••■..e gPla w'.• • •••"-aill IP% Nr.% 101%1 gig ransone. aural mien. MI MOPNIMArArAlre ATA
Mir% IPIIMIMArArAtAWATA Kid KI arAWATATATAVA mi weal ogeozoom a streAssvAufik ea WASSTATIlik
P411211111111% p.amszaninrit 4.,,-0"4/-srailkalen454 1a -+Nar„---wallanii i Amm==.'----"'TMamaromis
▪ m
▪ illmmoto2: ,
Figure 18.1
65
66
Figure 18.2
- 05,70 irineAritair.5 00:011 "MO nig ing Pi "I '4
-6-dtit" P■ " 4 Mnd •
iNti4 4
g"tualmoss :Igg,i&zwaKdra-p 4r04jamm4 rogii 4,04,,ogiaisArAfia
:1-1/0,-..1110,0000%-eggivs■ *wig 060200%,,,00 §..** AropEIMMilk 0A NSW' I /0 VAST/tiff V01101101 TAVArArATATP VAOPAIWA tratUrrialea
Display cursor and look for current pen position X2,Y2
B7
Search in file for
X2,Y2
Yes
67
Display message *digitise centre of disk*
Display cursor and look for current pen position X1,Y
B1 Look
or pen butto interrupt
no button
not existent
111 Warning message on VDU
Display message *digitise first point on internal diameter clockwise*
B1 Look or pen button
interrupt
no button
not existent Warning message on VDU
Figure 20.1 Outline Flowchart of MEDISK
no button Look
for pen butto interrupt
not existent
■ Display the cursor and look
for current pen position X3,Y3
Check data input ny error?
Yes Warning message on printer
V Message on VDU
Input points on curve sides
Message on VDU Input points on straight sides
Message on VDU Input angle between two straight sides
Message on VDU Input concentration factor in radial direction
No 'Calculate the nodal point coordinates'
Same as MESHGE
see Figures 16-2, 16-3 and 16-4
Figure 20,2
Display message *digitise first point on outer diameter clockwise*
68
Calculate angle al
Warning message on VDU
Figure 19
Figure 21.1
x
69
OppOovo;
Z'IZ 9,111bT3
"0111
Wa4Oltlf
"OeddIDOAt
;P°44.1 giri■Av
11100e■eiWalgighNe,!"
agglAS '01"i/1P/ft-
00000011.6-1 trvAMPAI
.g\V\
ZZ aanfrra
OL
405012/2110. vAglig%it.. 40? OK4P2 Ili'►eitor■
V, tet tAv'eAvg:',:le;:ver4 A■ -iv -"A 0 to■•• t •%, wo 410111P-
Z4V040i."!1"
- 'Too 167 V •■■ ■ ' . • :
w000g 04.41f..
Mae Elha Ka PI Pi r, : War Ili Prdirgair, MilelAltiriVe,
mica nu K. n r. Vi ....05011205• ric t. 151N131,2 .....m•Prainel;
Prat Kg tra 05 ta !A SMOG% ....121150SIYA Pra 'Ur Mg CI 12 ll C 5 11 SIG El Plfil Mi1/121% "Ir. i i !!.1,12171112Wri
11100....sanuonia IP% PM PS. gra e % i 1 4.41 vio......-...---... nalialinVA PorilIngnilr2 0 5
none ...trL.....„,,t Au 00r -:_-...z....7.1. -...a. ,vtry A 40 iv fogottiA, ,et,4.0„.. , 020;ri, ..„ .41,AF 4 r4 -4.0...**4 11 ZwZiVo4F Aoner4,-A," to, eta 11,10 0 N Aero imtirrotovw 0 4& Asr_lien psorA IgrAN.
gedasi07
Figure 22.2
71
automatic mode n3 x
n =3
e.4■X33
44
45 .
1 12
71
16 1 2
_ft_
76-1 141 — —la I I
111
2 3 4 17
31 36 41
automatic mode
nx 2
n 3
42
16-- -- -17 ------19 --- 19 20
1 " 18 19 20
24
2 1 123
11 12 13 14 15
1 1 11 12 1 13
)0 10 t4 45 16
6 4 9
1 6 2 -
1 2 / 17
3 4
Figure 23.1
13 -----14 15
8 9
9 10 —11 4 5 6
7 5 6
I 1 2
1 2 3 Figure 23.2
72
16
12
3 4
(a) automatic mode n=5 x n=9
i =1
Direction of digitising each
quadrilateral.
Manual mode must be used for
the elements with the cross-hatch.
(b) automatic mode
n x
n =8
1 i1=1
Figure 23.3 Technique for generating the element connections
Warning message Yes
on printer
—41 No odd element
B2
Manual mode Input nodes of the triangle element by using pen button
Warning message on printer
Error in data
No .Print out nodes of this element
Select options
B1 Store the pattern of this element
Select B8 options
73 Close file
Print file number, Total elements
Message on VDU *Input file number* IFILE
4
Open file CIFILE.DAT for data input
1 Messages on VDU
*Input number of nodes on X line* *Input number of nodes on Y line*
*Input first node number*
4
Select Options
B7
QUAM4
Automatic mode Calculate the element connection and write the element statements
to the file
Figure 24-1 Outline Flowchart of TOPO
Automatic mode Calculate the element connection and write the element statements
to the file
Select options 00- No odd elements
B1
141
Warning message Yes on printer
74
B2
Manual mode Input the nodes of quadrilateral
element by using pen button
Print out the nodes of this element
B2 Select B1 options
Store the pattern of this elementl-t
Figure 24-.2
Type of Element and Node Numbering Sequence
Number of Nodes
Input Node Coordinates
Displacement Field
Polynomial Terms in a Cartesian x-y frame
TRIM6 5
6 4 6 1 3 5 ,, complete
quadratic x 1
X2 Xy
y y2
Triangular Lagrangian
1 2 3
QUAM4 7 8 .. ,
9
.6 9 1,3,7,9 biquadratic x2
1 x
xy X2 y
X2 y2
y y2
xy2
Quadrilateral Lagrangian
4 5 0
• _
1 2 3
QUAM8
8
7 6 5
8 1,3,5,7 incomplete biquadratic
1 x
x2 xy x2 y
y y2
xy2
Quadrilateral Serendipity
4
1 2 3
Figure 25-1 Higher Order Elements
Type of Element and Node Numbering Sequence
Number of Nodes
Input Node Coordinates
Displa6ement Field
TRIAXC6 5
6
4
1
2 6 1,2,3 4,5,6
quadratic
Axisymmetric ring element
Parabolic curved edges
QUAC9 7
4
1
8
9 1,2,3 4,5,6 7,8,9
biquadratic
Quadrilateral plane membrane element in 3D-space, with parabolic curved edges
9
0 5 6
2 3
QUAC8 7
8
1
6
2 3
5
4 8
1,2,3,4 5,6,7,8
incomplete biquadratic
Quadrilateral plane membrane element in 3D-space, with parabolic curved edges
Figure 25-2 Isoparametric Elements
55-56-57-5 1 /I 4.6 4.7 48 4. 1/ 1/ 37-38-39-4
218 29/310 3 I 19-20-21--2 I /1
10 11 12 1 V I /
8-59-60-61-62-63 /1 A I 9 50 S I 52 53 54.
1/ • 1/ I 0-41-42-43-4-4-45 /I 71 /I
2-2I 32 3 34 35 3 6 / I 3-24-2 -26-27
/1 J 1/1
4 15 1/16 17 18 1/I 4-5- 5-- I /7-8-9
77
Figure 26.1 TRIAX6,TRIM6 TRIAXC6.
3,I4 -35-3
I6 -37-31
I8-39-
I410
3,0 31 • 32 313 1 23-24-25 -26-217-28-29
I I I I 19 20 21 22 I I 12-13-14,-15-1 16-17-18
I I . 1 8 9 0 1,1
• 12--3 --4 -A--6-17
Figure 26.2 QUAMB,QUAC8
413-44-415-46-417-48-4- 9 316 37 3,8 39 0 41 42 29-30-311--32- 3-34-3,5 2 23 24 25 6 27 28 1 -16-117-18-11 9-213-1 8 9 1,0 11 12 13 11 4
11-2-3- 4- -- 6-7 Figure 26.3 QUAM9,QUAC9
Fugure 26. Numbering sequence for each quadrilateral with different type of elementes .
CHAPTER 4
INTERACTIVE FINITE ELEMENT MESH EDITING
4.1 INTRODUCTION
There are instances when the graphical shapes do not facilitate
the use of the automatic mesh generation system. Clearly this will
happen when the structure cannot be divided efficiently into a series
of quadrilaterals. In this case the elements must be added, deleted
and adjusted manually, utilising the interactive graphics capability
of the system. The user will normally generate automatically as far
as possible, then with the aid of the manual facilities modify the
mesh very efficiently to reach the exact shape of the structure. The
manual input facilities permit rapid generation of meshes for difficult
shapes and complement the automatic generation system.
4.2 ADDING ELEMENTS (overlay ADDELM)
This mode must permit the user, to add elements of any size at
any position on a model. The size of the elements must be very flex-
ible and entirely dependent on the user's choice, otherwise modification
will not be very efficient. In the GFEGMS system the manual input of
elements is performed by displaying the model on the screen and
continuously adding each element to the model until the mesh is complete.
A triangular mesh would be added by digitising two fixed points using
FIND mode and the third point of the triangle (vertex of the triangle
element) would be moved relative to the movement of the digitising
pencil until the desired position is obtained. Subsequently the
position of the element is fixed by pressing a button on the digitiser.
The program will then find the connection of this element, subsequently
adding its pattern to the existing data file. The user is able to
create elements by using two or three existing nodes. Clearly when two
78
nodes are used, the third node number, relative to the last node
number in the mesh will be automatically added to the mesh. The shape
of the element will be displayed continuously on the VDU, while the
user is looking for the correct position. As soon as the position of
the elements is fixed on the VDU, the final shape of the elements will
be stored in the data records for future display and a symbol '*'
will appear at the centre of the elements to identify the additional
elements. The overlay ADDELM (menu square 24, overlay 62) is written
in such a way that the user is able to add continuously triangular
elements to any part of a mesh without any break. This program will
permit the user to add as many elements as required. The process of
adding elements is very fast and efficient as the user is constantly
guided through the digitising process via prompting instructions on
the VDU.
As the process of adding extra elements is in progress, the
coordinates of nodes of each element are written to a dummy file to
permit the user to continue with the process of adding elements without
any delay while searching in the file to find the connection of each
element. It will be therefore very fast for the user to reach the end
of the element generation. But, once the user has completed this
process, the computer will search in the file to find the connection of
each element, and those node numbers which belong to the new elements
will be written into a dummy file. Afterwards, the original files will
be deleted and recreated by transferring data from dummy files. The
user must accept a delay in these processes according to disk access.
A complete description of file number, total nodes in the file, number
of additional elements and total number of elements in the file is
printed on the keyboard. The outline flowchart of this overlay is
shown in Figures 27-1, 27-2, 27-3, 27-4 and 27-5. Figures 28-1, 28-2
and 28-3 show some meshes generated by the manual and automatic mode of
the system.
79
Open dummy file M77,DAT at logical unit number 5
Open original file MIFILE.DAT at logical unit number 7
Warning message on VDU
FIND
SETFIL
PMSGO PLMSG T
Message on VDU *digitise the axis* X5,Y5
Select button
B7
No selection GETINT
4 Open dummy file M88.DAT at logical unit number 4
Subroutines called 80
BUTNUM
SETFIL
STORE
Read the coordinates from original file and write to dummy file
No
Close file 7
Figure 27-1 Outline Flowchart of ADDELM
PMSGO PLMSG CURCON
Message on VDU *digitise first existing node of element* X1,Y1
No selection No more elements
B8 A GETINT Select button
B7
Search 'n file for
1,Y
FIND
Yes
PI Not existent Warning message
on VDU
PMSGO PLMSG CURCON Message on VDU
*digitise second existing node* X2,Y2
elect button S GETINT No selection
B7
earch in file for
X2,Y2
Not existent Warning message on VDU
Yes
Message on VDU *fix the vertex of the triangle* X3,Y3 IIIF"'
Display only the current shape of the new element
FIND
PMSGO PLMSG CURCON
DSPNST PLOTSC DSPSTR
New node number No button
GETINT Select options
B2
B7
Existing node FIND New node number
FIND mode
earch in file for
X3,Y3
Not existent Pm
t
Warning message on VDU -4*
Figure 27-2
Store the shape of the element PLOTSC in data records and display CONVRT a non-stored syMbol 'lc' at SETR the centre of the element STAR
SCREEN BITAC PMSGO PLMSG
Yes Display the new node number
at its position
Write the new node and its coordinate to dummy file M77.DAT
82
Write the coordinates of this element to dummy file M88.DAT
Go to A
End file 5 End file 4
4 Delete the file MIFILE.DAT
Open dummy files M77.DAT at logical unit number 5, and MIFILE.DAT at unit 7
Read from 5 and write to 7
Yes
End file 7 End file 5
Figure 27-3
DELF
SETFIL STORE
Open dummy file M77.DAT at logical unit 5 M88.DAT at logical unit 4
Delete dummy files open files
CIFILE.DAT at logical unit 7 M88.DAT at logical unit 4
Read from 7 and write to
No
End file 7 delete file CIFILE.DAT
Figure 27-4
83
SETFIL
Read the coordinates of additional element from M88.DAT
Yes
Read node number and its coordinates from dummy file M77.DAT
Yes Rewind 5
No
Save nodes in the array I
.End file 4 End file 5
DELF CONECT SETFIL
DELFCN.
1 End file 4
Read from 4 and write to 7
Write the connection of the extra elements from the. array to the
file M88.DAT
CONECT SETFIL
Open CIFILE.DAT at M88.DAT at
files logical logical
unit unit 4
7
Delete file M88.DAT DELF
84
Print out file number
total elements and nodes
OVRETN
Figure 27-5
rez aJnbTa
-rez eanbTa
S8
86
Figure 28.3
87
4.3 DELETING ELEMENTS (overlay DELELM)
The element editing facilities permit the user to delete
elements inside a mesh. For example if a hole is added to a plate,
then the elements inside the hole may be deleted and rearranged around
the hole. This is done quickly and efficiently by using the interactive
graphics capability of the system. This mode of operation is operated
by digitising the three nodes of one element (FIND mode), this element
will subsequently be displayed on the screen and the user may delete
it by pressing a button on the digitising pencil. The enclosed area
of this element will be shaded to inform the user that this element
has been deleted. As the user specifies an element to be deleted, the
connections of this element are checked with the other existing elements
in the mesh, therefore if this element has any single node which is
not connected to any other nodes, the single node will be deleted and
the whole mesh will be renumbered, clearly the connection of the ele-
ments will be rearranged. The user will be guided by a message on
the keyboard 'ELEMENT DOES NOT EXIST IN THE FILE' if a non-existing
element in the mesh is digitised. Therefore, as the user has an option
to delete or restart when the existing element is displaying, it may
be useful for the user to use this overlay DELELM (menu square 25,
overlay number 116) to check the connection of each element. Later
in this Chapter a discussion of hoW the user may automatically check
the connections and shape of the elements for any error such as elements
with suspicious shapes or diagonal dominance condition is included.
The specification about each file such as file number, total elements
and nodes left in the file will be printed on the keyboard. The shaded
area of the deleted elements will not be stored in the data records, as
it is not necessary for future progress, it will be only displayed on
the VDU. This technique enables the user to add any shape of a hole to
an existing mesh without any difficulty in deleting the elements inside
88
the hole, as the program renumbers the mesh itself, deletes the element
connection in the connection file, checks the coordinate and recreates
the coordinate file and connection file. This overlay has a very easy
operation mode for the user. It should also be remembered that the
user will be guided via instructions on the screen through the digitising
process. A brief outline flowchart of overlay DELELM is shown in
Figure 29. Some examples of deleting elements are shown in Figures
30-1, 28-2 and 28-3.
4.4 ADJUSTING THE NODES BY CONTINUOUS MOVEMENT (overlay MOVEND)
It is essential that in some complicated shapes the user is able
to move the position of each element to a better location without
changing the element connections or total number of nodes. This is
done by moving the position of each node of the element to the desired
position. The user will be asked to digitise the node which is
desired to be moved, subsequently the movement of the node will be
controlled by the movement of the digitiser and may be entered by
pressing a button on the digitising pencil.
The position of this new node will be substituted .for its
previous position in the coordinates file and data records files.
Clearly it should be remembered that one node usually connects to
several other elements, therefore its movement has an effect on all the
neighbouring elements. The overlay MOVEND (menu square 26, overlay 50)
was constructed for the purpose of editing the meshes especially when
isoparametric or higher-order elements are used. In these cases the
user is able to move the position of each node and fix it on the curved
side of a model without adding any other elements to the mesh. Figure
31-1 shows a simple quadrilateral where isoparametric elements QUACK
are used to generate the mesh, and Figure 31-2 shows the same quadri-
lateral when the position of the nodes has been moved to another location.
The user is also able to modify some part of a mesh when simple elements
are used with the aid of this overlay as the examples show in Figures
31-3 and 31-4.
4.5 TO MOVE, SCALE AND ROTATE A MESH (overlay MEROT)
The two and three-dimensional meshes may be moved, scaled or
rotated about any axis.
1. Movement. This will be done by adding three constant parameters
(D x ,D y ,D z) to the three-dimensional data. This mode is proportional to
changing the position of the original axis.
2. Scaling. The three-dimensional data (X,Y,Z) may be multiplied by
the constant parameters OD x ,D y ,D z). This will increase the size of the
original mesh in any direction.
3. Rotation. It is necessary to define a system of reference axes and
adopt a convention for the direction of rotation. The conventional
right-handed reference set of orthogonal axes is shown in Figure 31-5.
The X-Y plane is chosen to correspond to any flat working surface,
e.g. the table, the tablet or the viewing screen. The Z direction is
always forwards and towards the observer. The angle of rotation 0 about
the axis is taken to be positive when the rotation is anti-clockwise
and negative when clockwise, i.e. the rotation is said to be positive
when in the sense of a right-handed corkscrew. The rotation is given
by the matrix:-
{
cos 0 - sin 0
sin 0 cos 0
with 0 measured in the anti-clockwise direction. The rotation refers
to the set of axes on the plane of rotation. For the rotation of the
mesh in a space with a_fixed set of reference axes, the opposite applies
and the matrix becomes:-
[
cos 0 sin 0
- sin e cos e
89
For three-dimensional data (X,Y,Z) the rotation can be represented by:-
(a) Rotation about Z axis:
X' = X cos 0 + Y sin 0
Y' =Y cos e - X sin 0
Z' = Z
where (X',Y',Z') the transformed coordinates and (X,Y,Z) the original
coordinates.
(b) Rotation about Y axis:
Z' = Z cos o + X sin 0
X' = X cos 0 - Z sin 0
Y' = Y
(c) Rotation about X axis:
Y' = Y cos 0 + Z sin 0
Z' = Z cos 0 - Y sin 0
X' = X
These transformations allow data to be repositioned anywhere and in any
orientation in space. The movement, scaling and rotation can all be
combined together. The overlay MEROT (menu square 71,72,73, overlay
16) was constructed for the purpose of transforming the two or three-
dimensional meshes. The coordinates in the data file and workspace are
both affected by this program when one of the transforming options has
been selected by the user. These coordinates will be written back to
the same file numbers after modificatiOns. The user may select each
option by pressing a button on the digitising pencil, e.g.:-
B1 - rotation about X axis
B2 - rotation about Y axis
B3 - rotation about Z axis
Subsequently by inputting the angle of rotation, the program will modify
the nodal point coordinates and the new position of the mesh will be
displayed on the VDU.
90
Read the coordinates and element connections
from the original files
Select options
I, B7 Digitise three nodes of element to be deleted FIND mode
STORE CONECT
DELF DELFCN STORE
Delete the original files and recreate them with the
new set of data
• Print out file number total elements.and nodes
left in the file
GETINT
B8 PMSGO PLMSG CURCON FIND
Exit OVRETN
B2 -f-- Restart
Select options
GET INT
Delete B1
Find this elemen 1.1 Warning message on the keyboard
Yes
Delete this element and shade its area
SUPPER
Compare the connection of this element with
the other existing elements
is there any single mode
belonging to this element and not connected to
any other elements?
Yes
( Start DELELM
Subroutines called 91
No
Delete this node, renumber all the nodes in ascending order
and rearrange the element connection
Figure 29 Outline Flowchart of DELELM
92
Figure 30.1
93
Figure 31.1
Figure 31.2
y
Rotation about z-axis
95
x'
Rotation about y-axis
z
z
Rotation about x-axis
Figure 31-5 Direction of Rotation
96
4.6 LINE EDITOR (overlay DELLIN and DELCN)
Data digitised from the table and constructed by viewing on the
screen often contains mistakes which must be rectified, and this
should preferably be done without the unnecessary burden of redigitising
the entire picture. The essential function of an editor is to correct
mistakes in data, but may be used for a much more powerful end - as a
design tool. Once a data base has been constructed, it is often more
economical to modify this data base to produce a new design rather than
defining a new one. In most cases design consists of modifying and
updating an old design. The computer data bank can have a file with
all the old designs. As a modification is required the old one is
recalled and edited to new specifications and a new updated drawing can
be produced. The line editor is used to delete lines in the workspace.
The operation of the overlay DELLIN (menu square 28, overlay 49) takes
place by digitising menu number 28, subsequently the current position
of the cursor will be displayed on the VDU, then the user must move the
cursor near to the mid-point of a line which it is desired to delete.
Afterwards, the program searches for the line with its mid-point nearest
to the cursor. Only lines within an area of interest are tested. Once
a line has been found it is continuously displayed on the screen
awaiting a decision from the user: to delete the line or advance the
search. The line editor can be used to eliminate large areas of data
on the screen by continuously deleting lines. In some cases it is more
suitable to delete all lines connecting to one point at the same time.
In this case overlay DLCN (menu square 29, overlay 59) was constructed
for this purpose. The user must input a point in the workspace by
FIND mode, subsequently the program searches in the file and all the
lines connecting to this point are deleted. This is faster than the
line editor when a large area of data on the screen must be eliminated.
In both cases, the lines are deleted by replacing meaningful data pointers
in data records with dummy data. Dummy data will be ignored by any
program and is equivalent to a no-operation instruction for a display
processor. A subsequent program (overlay TIDY menu square 138, overlay
12) can then be used to eliminate this redundant data and compress the
files. Data can be inserted in any position on the screen to the work-
space. Therefore if by mistake the necessary lines were deleted, the
user is able to create them again.
4.7 MACRO EDITOR FOR MACRO FILES (overlays MACCLR and MACFIL)
The data records in the workspace may be constructed as a series
of individual data sets, where each set of data is represented by I
codes of 3 and 4 for its start and end in the data file respectively.
This technique will enable the user to have direct access to a large
set of data (known as a Macro) without searching in the workspace for
each particular point. The user is therefore able to delete each set
of data very fast without any effect on the other data sets. To make
each set of the data separate from each other in the workspace, a single
data record (3,0,0) will be written to the workspace to specify the
starting of this data (open file). Afterwards the user may continue
digitising any picture or generating a mesh for a part of the model.
Subsequently writing a single record (4,0,0), indicates the end of
this set of data (closed file). This process is done by overlay MACFIL
(menu square 56, overlay 85). The file will be opened or closed by
pressing a button on the digitising pencil. These Macro files may be
deleted by using overlay MACCLR (menu square 55, overlay 84). Each
set of data files, will be located in the workspace and continuously
displayed on the screen awaiting a decision from the user: to delete
this part of the picture or advance the search. This technique has
considerable advantages over the line editor when a large number of
lines have to be deleted in the workspace. The user may also employ
97
this technique for any symbol such as circle, rectangle, etc. It is
more convenient for the user to generate a mesh as a series of Macro
files, rather than a single data set covering the whole mesh. In many
cases it may be desired to modify a part of the mesh which has been
generated. Therefore, if the Macro facility was used to construct the
mesh, a selected part may be very quickly deleted without any need to
regenerate the mesh (using overlay MACCLR). Once a Macro file has been
selected to be deleted, the program rewrites the data records into the
workspace but passes over the data records inside the indicated Macro
file. Clearly if there are no Macro files in the workspace, nothing
will be deleted.. Since one continuous line may have start and end
points in two different Macro files (only at the start and end of the
Macro file), when a Macro file has been deleted, the condition (ICOD)
of the first data record after that Macro file is checked and changed
in such a way as to avoid the addition of a non-existent line to the
workspace.
4.8 LINE DIVISION, EXTENSION AND INTERSECTION (overlay DIVIDE)
1. Line division. There are many applications for line division such
as adjusting the nodes of the elements on a particular line or creating
elements by using the points on that line. Therefore the user must
create some dummy points on these lines to be able to fix the position
of the element exactly on each individual line. The overlay DIVIDE
(overlay 47) is operated by digitising menu square 52, then by digitising
the start and end of a line and inputting the number of divisions, the
line will subsequently be equally divided into the required number of
divisions and a small arrow will indicate the position of each division
on the screen. The coordinates of these points are stored as dummy
data in data files and they may be easily removed by overlay TIDY.
The important feature of this dummy data is that it will be recognised
98
99
by the other modes of the system, such as FIND mode. Therefore, the
user can treat it the same as the normal data points in data files.
Once a line has been divided by a number of the points, the user may
use these points for future modification, such as in overlay MOVEND
where the nodes have to be moved to a desired position, e.g. a point
on a line, or in overlay ADDELM where the vertex of the element has to
be fixed on a particular line.
2. Line extension. This will permit the user to extend any line in
the workspace without changing its angle. It is very useful when the
user desires to digitise a series of the points on the same line. Line
extension may be used for editing the picture in workspace, the model
is thus extended without the unnecessary burden of digitising the
complete picture. The lines are identified by digitising two points
on each one, then it is displayed continuously on the VDU and the
extension of the line depends on the movement of the digitiser. Once
a button has been pressed on the digitiser, a new line is added to the
existing line. Line extension is a very useful tool especially when
the points must be digitised to construct a straight line.
3. Intersection of lines. The intersection between any two lines may
be found by digitising any two points on each line. Subsequently a small
cross will appear on the screen at the position of intersection. The
coordinates of this point will be stored in a data file for future
use. Line intersection is used especially when the mesh has to be con-
centrated at one specific point. Therefore the elements will be added
manually by using overlay ADDELM, and the vertex of the elements will
be fixed at the position of the lines, intersection, as shown in
Figure 32.
4.9 CHECKING DATA GRAPHICALLY
There are many obvious reasons for checking the numerical data
such as element connections, coordinates, elements and node numbering
100
before inputting this data to any finite element program. Bad numerical
data input to any finite element program will cause the program to
produce the wrong results, or in some cases, errors which will terminate
future execution. In many cases there will be a time where the results
obtained from the finite element programs are not compatible with the
analytical solution. If the finite element program which has been used
has an execution control and debugging aids, the user may be (infre-
quently) guided during the execution time by printout messages.
Otherwise, a reasonable explanation for the error or wrong results will
be very difficult and tedious to find. Even if the user is informed
by warning or error messages that, for example, there are bad nodal
point coordinates, or there are some elements with a suspicious shape,
it will be the numerical data which has to be checked by the user to
trace the error. CAD techniques are well suited to ease these problems
and application of computer graphics in its simplest form offers many
benefits to the users of finite element programs. The GFEMGS system
includes the facility for automatically indicating the obtuse-angled
elements (diagonal dominance condition) on the screen, checking
graphically the element connections, coordinates, element and node
numbering sequences.
4.9.1 Checking Element Connections, Nodal Point Coordinates and
Finding the Obtuse-angled Elements (overlay CHECK)
The overlay CHECK (menu square 47, overlay number 82) provides
the requirement facilities as follows:-
(a) Checking element connections and coordinates
In this case the connection of each element and its coordinates
are read from the permanent files by the program, subsequently these
elements are displayed on the screen to represent their shapes and
locations on the mesh. Therefore, because of the very quick reactions
of the human eye, an error will immediately become obvious to the user.
After each element has been displayed on the screen, the element
number will be displayed at their centres to indicate the existing
elements in the data file belonging to the mesh. Therefore, by looking
at the mesh on the screen the user will be able to indicate the missing
elements. In the case of existing elements with bad dimensions such
as triangular elements with two nodes or triangular elements with
three nodes on one straight line, the user will be guided by message
printed on the keyboard which indicates the element with bad dimensions
by its element number and node number connections, This is done by
checking the coordinates of the three nodes of the elements, if these
nodes are on one straight line, the warning message will be printed on
the keyboard.
(b) Obtuse-angled Elements
Examination of the first, second and third rows of the typical
element stiffness matrix serves to confirm that the equality in the
diagonal dominance condition is satisfied for all rows if none of the
angles of the element exceeds 90o(11)
. While the absence of obtuse-
angled elements is sufficient to ensure convergence of the Gauss-Seidel
method for problems of the harmonic type, it may not be necessary: the
inclusion of some obtuse-angled triangles may be permissible. When the
Gaussian elimination method is used for solving sets of simultaneous
linear algebraic equations, obtuse-angled elements may affect the
solution and the equations are said to be ill-conditioned or singular.
Singular sets of equations do not have unique solutions, and solutions
obtained from ill-conditioned sets may be subject to significant errors(16)
The overlay CHECK will calculate the angles of each triangular element
within a mesh, the element with the maximum angle subsequently is
displayed continuously on the.VDU and its maximum angle printed on the
keyboard. Therefore, after generating a mesh the user is able to check
if there are any obtuse-angled elements. Clearly the user will be able
101
to delete these elements (overlay DELELM) and recreate them again
(ADDELM) or change the position of the nodes (MOVEND) in such a way
that the angle of these elements will be less than 900. It is also
possible to check manually the angles of each element. By digitising
three nodes of each element in FIND mode, the three angles of this
element may be printed on the keyboard (ANGN overlay number 70, menu
square 48).
4.9.2 Checking Element and Node Numbering Sequences (overlays NUM and
NODE)
(a) Node Numbering
The node numbering sequence is very important in finite element
solution as a large bandwidth in the stiffness matrix will result from
bad numbering of the nodal point coordinates. The technique of auto-
matically renumbering the nodes to minimise the bandwidth will be fully
described in Chapter 5. The overlay NUM (menu square 14, overlay 119)
permits the user to display the node numbering sequence on the screen.
The node numbers and their coordinates are read from the permanent file
and the nodes automatically displayed on the screen. The nodes will
be displayed by sending the ASCII (American Standard Code for Information
Interchange) code of each node number and its coordinates to the hard-
ware character generator, subsequently the node number will appear on
the screen. This technique for displaying the node numbers is very
fast, but the node numbers are only displayed on the VDU and the
specification about each node will not be stored in the data file,
therefore it is not possible to plot the node numbering with this tech-
nique on a flat-bed plotter. To plot the node numbering sequence the
user must store the vector for each character in data files, thus the
characters will be generated by using the software rather than hardware.
This will be discussed later on in this Chapter. There are many cases
102
103
such as concentrated or dense mesh where it will be very difficult for
the user to identify each node number on the screen. Therefore the
GFEGMS system provides the facility of windowing a selected portion
of the model. The user has to specify an area of the mesh which was
constructed, the program subsequently expands it to fill the screen.
Displaying each individual node is possible by using overlay NODE (menu
square 13, overlay number 120). The coordinates of each node are input
to the program by FIND mode, the program will then search in the data
file for these coordinates, if the node exists in the file, the node
number will be displayed at its position on the screen, otherwise the
user will be guided by message *NODE DOES NOT EXIST IN THIS FILE' on
the screen. Therefore, the user can employ this routine for checking
manually the node numbers and their coordinates in a file,
(b) Element numbers (CHECK)
The element numbers are not very important in finite element
analysis as they have no effect on stiffness matrix bandwidth. Therefore
the user can number the elements in any random order without any
hesitation. In the GFEMGS system the elements are numbered in ascending
order according to their arrangement in data files. Therefore the first
topological card in the connection file represents the element number
one and the nth
element will be described by topological card number
n. As previously discussed the user may display the element numbers
by employing overlay CHECK.
4.10 LOAD CONDITIONS (overlay PRSELM)
This routine was especially written to handle the load conditions
in the ASKA program. Once a mesh has been generated, the user may
identify the elements which will take the external forces so that the
load condition can be applied at the appropriate nodal points. As
stated in Section 3.8 (element connections) the elements which will
take pressure or nodal point forces must be identified in a separate
group from the rest of the elements. The user is asked by overlay
PRSELM (menu squarenumber 45, overlay 57) to input the element
numbers which will take the external loads. Subsequently the group
numbers of these elements will be changed (e.g. from group 1 to group
2) and their connection statements will be added to the bottom of the
existing file for future use in the ASKA program. The specification
about the file number and total elements in each group will be printed
on the keyboard. These elements have a separate group identification
(group 2 in GFEGMS), therefore they will be numbered in ascending order
according to their arrangement in the connection file. It is very
important to mention that in the ASKA program(3) the topological cards
for all the elements in one group must be consecutive. The statements
for the element connections will be arranged by the overlay PRSELM
starting with the statements for the elements in group one, followed
by the statements for the elements in group 2. A brief flowchart of
this overlay is shown in Figure 33.
4.10.1 Boundary Conditions (overlay BONDRY)
The ASKA program can handle four different types of freedoms(3):-
(a) Local freedoms are unknown deformations on the net substructure
level.
(b) External freedoms are unknown deformations on the main•net level.
Thus they are only allowed for nets, that are to be inserted into
a main net.
(c) Prescribed freedoms are deformations with certain prescribed
values that must be input in external format into ASKA.
(d) Suppressed freedoms are deformations to be nullified due to rigid
supports, symmetry considerations, etc.
The ASKA program assumes a priori that each nodal point has only
104
105
those freedoms associated with the elements connected at that point.
These freedoms are automatically treated as local freedoms, unless the
user specifies a different freedom family in the topological description.
The freedom families are specified by the statements:
SUPPRESS (frd)(Ko)(P)
PRESCRIBE (frd) (K0) (P)
EXTERNAL (frd) (K0) (P)
The first argument 'frd' singles out which degree of freedom is affected
by the statement, where:-
frd = 1 translation in direction of X-axis
frd = 2 translation in direction of Y-axis
frd = 3 translation in direction of Z-axis
The second argument 'K0' is the loop counter for the evaluation of the
topological variable 'P'.
The third argument 'P' is a topological variable describing the
net nodal point numbers for which the given freedom family specification
applies. The statements for these freedoms will be generated automatically
by using overlay BONDRY (menu square 44, overlay 67) in the GFEMGS
system. A file number for storing these statements and the node numbers
is input by the user, subsequently the type of the freedom and its
direction are selected by pressing a button on the digitising pencil
such as:-
PRESS BUTTON 1 SUPPRESS
PRESS BUTTON 2 PRESCRIBE
PRESS BUTTON 3 EXTERNAL
and similarly for translation:-
PRESS BUTTON 1 X DIRECTION.
PRESS BUTTON 2 Y DIRECTION
PRESS BUTTON 3 Z DIRECTION
Subsequently the statements for each type of freedom in the format
described, will be stored in a permanent file for future data input to
the ASKA program.
4.11 PLOTTING THE WORKSPACE ON A FLAT-BED PLOTTER (overlay DISPLT
and PLTNUM)
The meshes may be plotted in hard copy form using the flat-bed
plotter to reveal the required detail. The user is able to plot each
individual file (File 1, File 2, File 3) directly from the digitising
table by inputting the file number. The speed of the plotter during the
plotting'of the mesh will be controlled by using the Switch Register on
the system operator's console. The user is able to control the speed,
accuracy, acceleration at the beginning of a line and deceleration at
the end of a line by setting a number (e.g. 070002) on the switch
register. The operation of the plotter may be interrupted by the user
at any time during the process of plotting by pressing the HALT or
CONT switch on the system operator's console, to stop or restart the
processing of the plotter. This gives the user the ability to change
the pen or paper without losing the coordinates of the original drawing,
The overlay DISPLT (menu square 21, overlay 44) was constructed to plot
the picture from the information contained in the permanent files (File
1, File 2, File 3). This overlay has a similar operation to overlay
DISALL which was described in Section 3.4,5, but instead of using the
displaying routine, the plotting routine (PLOTDC, RASM) are employed.
The plotter and its software are fully described in Appendix A. As
stated in Section 4.9.2, the user is able to display the nodes and
element numbering sequences on the screen by using the hardware
character and vector generators. These node numbers are only displayed
on the screen by sending the ASCII code representation of each number
to the hardware character generator (a SEN Electronique CG 2018 CAMAC
module).
106
107
There is a chance of two character sizes which can be generated
at very high speed at any position on the VDU. These techniques are
suitable only for displaying messages, node and element numbers on
the VDU. Clearly this technique of displaying the node numbers is not
suitable for the plotting process as the characters generated by the
hardware are not in the form of vectors as required by the plotter,
For the purpose of plotting the characters, a different technique,
employing a linear software character set, was incorporated into the
PLTNUM overlay (menu square 22, overlay 68). Using this technique, the
characters are generated as a series of vectors by subroutine CHAR,
which by calling CRPLOT, stores the appropriate coordinates in the
workspace. The characters are defined on a 5 x 8 matrix with the
corresponding matrix points stored in a special list where the appropriate
section for each character is referenced by the corresponding ASCII code,
The current configuration offers 59 characters but may be expanded
freely to include non-standard characters if required. These characters
can be stored either as symbols, so remaining unaffected by any trans-
formation, or be made an integral part of the data. Once these vectors
have been stored in the display files (workspace) the user is able to
plot them on the plotter (employing overlay DISPLT). The user has the
options of changing the height of each character or the angle relative
to the horizontal axis. This provides a large flexibility on plotting
the node and element numbers, A brief flowchart of the overlay PLTNUM
is shown in Figure 34. Also Figure 35 shows an example of a two-
dimensional mesh plotted on the flat-bed plotter with its node and
element numbers in two different sizes employing overlay DISPLT,
108
Figure 32
(I-Start :) PRSELM
Input file number'
4
Print the connections of this element on the keyboard
109
Select options
B1
B3
Write the connections to a dummy file
Delete dummy file M77.DAT End file
non-existent 0 for exit End file 51
1
Write to connections of the elements in group 1 to
the file
I
Open dummy file M77.DAT at logical unit 5
Warning message
Display messages, B1 - accept this element
B3 - restart
Read the connections from dummy file, write as group 2 to the file CIFILE.DAT
Rearrange the connection of the elements in group 1
4, Open the file CIFILE.DAT
at logical unit 7
4, Read the element connection from the file CIFILE.DAT
Read the node numbers and their coordinates from file MIFILE.DAT
IPlot the numbers on the screen
4,
Find the centre of each element and call the character generator
subroutines
Element numbers
Read the coordinates and node number
4,
Test the string of the ASCII characters
Generate the ASCII code of each number
Store the vector of each number in the workspace
Exit
B3
4 Scale the character for the
height and angle input
4. Extract the vector for each character input e.g. element number
Bi
Subroutines called ( Start
PLTNUM
BUTNUM CURCON GETINT FIND
BUTNUM
PMSGO PLMSG
Input file number and digitise the axis
Input the height and angle of the numbers
Select B8 Node numbers Exit GETINT
options
110
STORE
CONECT
ELMPLT
BITAC
TSTEXT
SYMBL .
CHAR
CRPLOT PLOTSC
STD
OVRETN
Figure 34 Outline Flowchart of PLTNUM
111
Figure 35
CHAPTER 5
BANDWIDTH REDUCTION BY AUTOMATIC RENUMBERING OF
THE NODAL POINTS
5.1 INTRODUCTION
The most commonly used techniques for solving sets of simultaneous
linear equations are the direct Gaussian elimination and iterative
Gauss-Seidel methods, which have the advantages of speed and of using
minimum computer core. To take the fullest advantage of the benefits
from using these methods, the engineer must make sure that the matrix
bandwidth is as narrow as possible, Automatic node renumbering can
reduce both the storage requirements and solution time for a set of
linear simultaneous euqations whose form is a function of the topology
or interconnection of nodes in a structural framework. The programming
language and the computer to be used influence any economic appraisal
of automatic node renumbering. The bandwidth is defined as the
maximum difference between any two related nodes, plus one for the
diagonal term. Automatic node renumbering allows the user to manually
number the nodes in any order without regard for the constraints
imposed by a particular solution technique. Much attention has centred
on bandwidth minimisation as a criterion for reducing the store
requirements. The practical engineer who concerns himself with the
business of design and manufacture however, often does not immediately
understand the reasons for careful node numbering and has to be inst-
ructed on the subject. Even when, after gaining experience in the
matter, he becomes adept at node numbering, he might find himself faced
with the possibility of preparing his input anew because a design change
may have necessitated the addition of a new node at an inconvenient
location. Therefore, using an automatic renumbering algorithm allows
112
the user to add nodes or elements at any position on a mesh without
any hesitation (e.g. using overlay ADDELM).
5.2 GENERAL PATTERN FOR THE STIFFNESS MATRIX (overlay MATRIX)
The element stiffness matrix (K) is given by a symmetric matrix
n x n where n is the total number of nodes.
(K) =
all
a21
and
a12
a22
an2
aln
a2n
ann
j
where a.. are all known constants. ij
For each element the stiffness matrix as well as the corresponding
nodal loads are found in the form of:-
{F} = (K){6} + {F}P + {F} e0
in which {F}P represents the nodal forces required to balance any dis-
tributed load acting on the element, and {F}a the nodal forces
required to balance any initial strains such as may be caused by temp-
erature change if the nodes are not subject to any displacement. Each
element has its own identifying number and specified nodal connection.
For example, let imaginary triangular element number 1 be connected to
nodes 1, 3 and 6. The non-zero coefficients in the element stiffness
matrix have the form am., where I = 1,3,6 and J = 1,3,6. Therefore the
non-zero coefficients are(14)
:-
1 2 3 4 5 6 7 •■•■
1 a11 a31 a61
2
3 a31 a33
a36
4 K =
5
6 a61 a63 a66
7 . .
n . .
113
114
The non-zero coefficients for the element stiffness matrix are displayed
on the screen by employing overlay MATRIX (menu square 58, overlay 81).
The user is asked by the overlay to input the file number which contains
the element connections and total number of nodes (n) in the mesh,
subsequently a matrix n x n is displayed on the screen. The program
automatically reads the element connections and marks the relative
square on the matrix with the symbol 1 X1 to indicate a non-zero coeff-
icient in the stiffness matrix. Therefore, the user can see the general
pattern of the stiffness matrix on the VDU, if the bandwidth is excessive
it is possible to renumber the nodes automatically in such a way that
the matrix bandwidth becomes as narrow as possible,
5.3 ALGORITHM FOR BANDWIDTH REDUCTION
5.3.1 Previous Renumbering Algorithms
Alway and Martin(17)
presented an algorithm for reducing the
bandwidth of an n x n symmetric matrix. The routine laboured through
factorial n different combinations of the rows and columns of the
matrix to produce the particular order that corresponded to a minimum
band. In common with most permutation problems, it is a feasible
method for low values of n but because the number of combinations is
based on n!, the computing time soon becomes prohibitive.
Iterative methods designed to initiate beneficial row and column
interchanges to reduce the bandwidth have been presented from at least
three different sources, Akyu and Utku(18)
, Rosen(19)
, and Grooms(20)
All these routines took large computation times and it is difficult to
see how the total solution times could be reduced by using these routines.
It is appreciated that renumbering times are a function of the number of
nodes, whereas solution times depend upon the number of equations or
degrees of freedom. Most published work in this field is based on the
tree concept, in which a starting node is selected and the rest of the
numbering is systematically generated from this seed or root. Collins
introduced a new algorithm which is very simple in programming and it
has an extremely short execution time. Cuthill and McKee(22)
also
produced a major band algorithm which has a number of features that are
logically superior to the Collins routine, Collins presented a routine
that systematically investigates all nodes as starting nodes and selects
the numbering that produces the minimum bandwidth. Millar(23)
produced
a major and minor band renumbering and in his algorithm, each node is
initially assigned a classification number equal to the number of dir-
ectly linked adjacent nodes and a link table is set up which lists the
nodal numbers of all adjacent nodes. Subsequently a dynamic selection
list of nodes that are waiting to be renumbered is created from the
nodal links to the renumbered nodes. The sequence of renumbering is
based on the minimum class of the appropriate nodes in the selection
list where the class is modified to take account of the common links
and the period a node has remained in the selection list. The Millar
algorithm can be briefly summarised as follows;-
1. Select a starting node and renumber it 1. This starting node may
be a node of minimum class or some pre-defined criterion, Millar
will use the Collins• algorithm to generate starting nodes,
2. Decrease the class of all nodes that are linked to the last
selected node by unity and place them in the selection list if
they are- not already present.
3. Select the first node with the lowest class from the selection list
and renumber it with the next ascending number. Eliminate the
reference to the selected node in the selection list,
4. Decrease the class of all remaining nodes in the selection list by
a weighting factor of unity.
5. Repeat steps 2, 3 and 4 until all nodes have been renumbered.
This algorithm compared with Collins' algorithm consumes more
computer time where the computation time is very short for Collins'
algorithm. Therefore the author decided to modify the Collins'
algorithm in such a way as to produce a better bandwidth. The Collins'
algorithm can be briefly summarised as follows:-
1. Select the starting node sequentially starting from the original
node 1 and renumbering it 1 (level 0).
2. From the link table number the adjacent nodes 2, 3, etc. (level 1),
3. Calculate the maximum nodal difference of any two linked nodes,
4. Abandon the renumbering from the current starting node and skip to
step 8 if the maximum nodal difference is greater than or equal to
the previous 'best value'. (At the beginning of the algorithm, the
'best value' is set to the bandwidth of the original numbering.)
5. Renumber nodes linked.to level 1 nodes starting with those connected
to new node 2, then those connected to 3, etc. as in step 2 above.
Calculate the nodal differences as step 3 and check for premature
termination as in step 4,
6. Repeat the sequence of operations through successive levels until
nodes are renumbered,
7. Store the improved node numbering,
8. Return to step 1 until all nodes have been tried as starting nodes.
5.3.2 New Technique (overlay OPBAND)
The author realised that the Collins' algorithm is influenced by
the order that the elements are read into the computer and hence by the
order that they are listed in the link table. For example, if node
number 3 is connected to nodes 7, 8, 4, 2, 17 and 21, the link table
for this node will be as follows:-
Node number Link table
3 7, 8, 4, 2, 17, 21
Selecting the node number 3 as starting node 1, the link table will be
116
changed to:-
Node number Link table
1 2, 3, 4, 5, 6, 7
The new numbering sequence will be:
Table 1
New node number 2 3 4 5 6 7
Old node number 7 8 4 2 17 21
The user may realise that the order of the nodes which appears
in the link table affects the sequence of the node numbering. For
example, if the link table of the node number 3 changes as follows:-
Node number Link table
3 4, 17, 8, 7, 21, 2
The new numbering sequence wil be as follows:-
Table 2
New node number 2 3 4 5 6 7
Old node number 4 17 8 7 21 2
Clearly, from tables one and two, it can be seen that node
number 7 in the original mesh has been changed once to number 2
(Table 1) and again to number 5 (Table 2). Therefore, it can be seen
that the bandwidth in the stiffness matrix may be reduced by changing
the order of the nodes in the Collins' link table.
The author arranged a new algorithm which is based on Collins'
algorithm, but the differences are that, after selecting the best node
to start and finding the new bandwidth, the order of the nodes in the
link table is automatically rearranged for each node by specifying a
change factor at the beginning of the program, and the whole process
117
118
is repeated (e.g. six different times for an element with three nodes)
until the better bandwidth is obtained. The user may control the number
of interactions by a factor requested at the start of the program. The
user is also guided by messages printed on the keyboard about the new
bandwidth during the renumbering process, therefore, if a satisfactory
bandwidth is obtained, the user may interrupt the renumbering process.
The user is asked by overlay OPBAND (menu square 59, overlay 83) to
input the file numbers which contain the element connections and nodal
point coordinates. Subsequently by specifyirig the iteration factor,
the program renumbers the nodes and the new bandwidth is printed on the
keyboard. The original files containing the old element connection and
nodal point coordinates are then deleted and replaced by the files
containing the new node numbering sequence. A brief outline flowchart
of overlay OPBAND is shown in Figures 36-1 and 36-2. This algorithm was
applied to several examples and compared with Collins' algorithm, the
results show that in most cases a better bandwidth is obtained by the
author's algorithm.
Table 3 gives a brief description of the types of examples that
have been processed.
Table 3 - Bandwidth
Example number 1 2 3 4 5 6
Total nodes 21 45 93 120 185 172
Total elements 22 63 148 161 256 292
Original bandwidth
19 42 88 120 185 172
Collins' new bandwidth
8 12 15 15 10 15
Author's new bandwidth
7 11 13 13 9 15
Figures 37-1, 37-3, 38-2,
37-2 38-1 38-3
39-1, 40-1,
39-2 40-2
41-1, 41-2 42-1, 42-2
119
Example number 1: Figure 37-1 shows the original numbering for a mesh
with 21 nodes and 22 elements. This mesh has an original bandwidth
of 19 as the general pattern for its- stiffness matrix shows in Figure
38-1. The Collins' algorithm reduced the bandwidth to 8 as shown in
Figures 37-2 and 38-2 (46 %57,89 reduction of bandwidth). The
bandwidth is reduced to 7 by the author's algorithm as shown in
Figures 37-3 and 38-3 (# %63.15 reduction of bandwidth).
It can be seen from Table 3 that the author's algorithm in
most cases obtains a smaller bandwidth than that obtained by Collins'
algorithm. Therefore, for a large variety of problems, a new numbering
can be generated that will considerably reduce the store required and
the number of effective operations necessary to analyse a structure
by a direct elimination method. The automatic node renumbering also
has other uses such as in problems where the structural stiffness matrix
corresponding to the original numbering would not fit into the computer
core, therefore renumbering the nodes will make the solution possible.
A renumbering facility saves a great deal of data modification if extra
nodes have to be added to a structure. This observation is particularly
significant in the case of structures involving automatic mesh generation
techniques which are an essential feature of any general finite element
system. It has been assumed that a linear analysis is to be performed
on the structure. The arguments in favour of renumbering are even
stronger in the case of non-linear analyses where the equations have to
be solved many times, as in the Collins' algorithm. This method of
node renumbering is not suitable for the 'cartwheel' type of problem
where the node at the hub is assigned a new node number of low order
(1, 2, 3 or 4). The program then proceeds to number the nodes around
the rim of the wheel. Collins has shown that the optimum numbering in
this case is produced when the hub is assigned a number equal to half
the number of spokes plus one. This kind of situation rarely occurs
in practice, and its incompatibility with the algorithm is not con-
sidered a serious limitation.
120
( Start OPBAND
121
Input file number, total elements and nodes
Input the change factor to arrange a new link table
BUTNUM
BUTNUM
Yes
N
Read the element connection from CIFILE.DAT and arrange the link table according to
the change factor
Bandwidth = total number of nodes
Take node number 1 as starting node
CONECT INSET
Renumber the nodes in the link table, at each time check the new bandwidth with the old bandwidth •
Print the new bandwidthyes
Save the new node numbering and new bandwidth
Subroutines called
Figure 36-1 Outline Flowchart of OPBAND
PMSGO PLMSG GETINT
B2
DELF DELFCN
al Delete the coordinates and connection files
Print the list of the B1 new and old node numbers
on the keyboard
Subroutine called 122
Write the new node numbering and their coordinates to the
file MIFILE.DAT
Arrange the new element connection according to the new node numbering and write the connections to the
file CIFILE.DAT
( Exit ) OVRETN
STORE
CONECT
t
Figure 36-2 Outline Flowchart of OPBAND
9 13 11 12
13 5
6A/I
7 - 8
\ 4- 2 3 4-
/ ZIA 18-16 15 17 21
I Zjr.A 19 Figure 37.1 Original numbering
8 17
I / N
1
/
1
/91 /171/ 19-16-112 7
2@-21
Figure 37.2 Callins numbering
11 13 18 21
\ 1
6/19171 16/ 19
5 1 C/ 1
/VIZI/ I/
?8 7 12 17 Figure 37.3 Authors numbering
123
1
lXlXlX [XIX lXlX lX
[X lXLX [XX rx lXlXX 2<X
lXiX [Xl>< lX rx [XX D< [XIX IX KlX
x~x lXlX
[X IxX D< IX ><lX[x
lX X[)(r-x-
lX 'XX IX IX:
~ ~ l>< LX
~ ~ )< LX IX [X X X )< [X X
~ [2s [)< LX [X D< LX l>< [X [X ~ lX 1)< X [X lX X X X [)< )< X
[)< X [)< D< rx IX LX D< X X r>< [)< :x IX X X
rx I) rx IX [)< D< Ix [)< [X r)<
rx ~ X X D< IX IX X X[X [X X xiX lX lX [)< X X X )< IX ~
i'X [)( Y lX lX >< lX :X X
lX [X )<[)< )< rx D< ~ X r>< X
~ ex I)< lX .~ lX L>< IX rx [X [X [)( .'X r'x" X lX ~ X lX lX
X IX X X X X X-X X x: X [X
IX IX [X rx [X IX X IX
X X lX [X X L><-X X X ~ X X
lX IX [X [X X >< ~ IX rx
[X l>< X i)( lX IX [X [X IX [X
rx rx X rx [X X X IX X [X X lX X X
[X lX X 'X [X lX IX [)< [)<
lX rx [X X [X rx X lX IX
[X X X IX
124
Figure 38.1
origina,l Ma;t1:'ix
Collines final
Matrix
_I!~~_~~.!.~
Authors final
Matrix
v 6_2 34-22-- (.3 39
/ 5 /\ L 21- -8 7i6/ 17
337 X I / 8/
NI, /21\
:36(7- I
35 4, 4%/
h 27 \23
/11
1/ 2r/ 4.5 38
32 I 3@ X31/
it
Ofd
125
Figure 39.1 Original numbering
30
21
45 /I
/1\ 2, 1 7 .
4 3 // 12
\)<.3
\g 9 11\ 3 16
3Z--\28-27_,22/ 7 327
N
2 \5
Figure 39.2 Authors numbering
126
[,>-
Figure 40.1 Original Matrix.
Figure 40.2 Final Matrix author algorithm
127
Figure 41.1 Original Matrix.
Figure 41.2 Final Matrix author algorithm
Figure 42.1 Original Matrix
128
Figure 42.2 Final Matrix author algorithm
CHAPTER 6
AUTOMATIC MESH GENERATION FOR THREE-DIMENSIONAL STRUCTURES
6.1 INTRODUCTION
Three-dimensional meshes are generated automatically and non-
automatically by a 21/2 D technique in the present system. As stated
in previous Chapters, the GFEGMS system is capable of generating meshes
for any two-dimensional shape. Therefore once a mesh has been generated
on a particular plane a second plane may be specified parallel to the
first plane of any size at any location in the space, the meshes on
the first plane may then be automatically projected onto the second
plane to form a three-dimensional mesh. This process may be repeated
many times and each time the location and the size of the projection
plane may be varied as required. This method is very easy to use and
is a very fast technique for generating the meshes for most proportional
three-dimensional structures. Visualisation of these complex 3D meshes
is accomplished with the aid of an overlay JSTICK which enables the
user to rotate the mesh in three dimensions and view it from any
direction on the VDU in a perspective projection.
6.2 TECHNIQUE
The first plane which contains the two-dimensional meshes is
usually the X-Y plane. The second plane (projection plane) will be
selected parallel to the first plane at a location of D x , D and D
z,
Y
where these constant parameters are the distances between a point on
the two-dimensional plane and its new position on the projection plane.
Therefore if the coordinates of a particular point on the first plane
are X., Y.3. (Z. = 0) the new coordinates of this point on the projection
plane will be obtained as follows:-
X; = X. + D 1 x
129
Y!=Y.+D 1 1
Z' = Z. + Dz D 0
Clearly all the nodes on the two-dimensional plane will be shifted by
three constant parameters DX, D and Dz. Figure 43 shows the'four y
different types of projecting a simple quadrilateral on the. X-Y plane
to another plane.
Up to this stage of discussion, the projection and repetition
factors of unity were assumed. There are many three-dimensional
structures which have a different cross-section - along their length
(e.g. pipe joints, turbine blades). To generate the meshes for these
structures, the user must control the projection process by at least
two factors, firstly the projection factor which allows the mesh to be
scaled to the right size before actually projecting; secondly, by the
repetition factor which allows the user to identify the number of planes
onto which the mesh is to be projected. Let R and P be the repetition
and projection factors. The coordinates of a particular node on any
projection plane will be obtained as follows:-
Z! = (Z. + DZ) * R Z. = 0 1 1 1
Z! = DZ * R (1) (indicates the distance between each plane)
All the X and Y coordinates of the nodes on projection planes will be
scaled relative to any specific point (the centre of projection point
X c ,Y c) which the user must indicate on the X-Y plane. The distances
between the nodes and the projection node are scaled by the projection
factor (F). Therefore:-
H = /Xi - Xc/ * P
L = /Yi - Yc/ * P
when X. < X X. = X - H 1 c 1
X.1 X 1 X. = Xc + H
130
Y.<Y -------- Y. = Y - L
1 c 1
Y. Y Y. = Y + L c
1 1 c
The new coordinates on the projection plane:-
X! = X. + DX * R (2) 1 1
y! = DY * R (3) 1 1
6.3 NODAL POINT COORDINATES (overlay ST3D)
The nodal point coordinates for a two-dimensional structure are
stored in a permanent file as stated in previous Chapters. These
permanent files are modified for three-dimensional meshes, simply by
adding the coordinates and node numbering of the projection nodes to
these permanent files to represent a three-dimentional structure. The
numbering sequence of the nodes on the projected plane will be the same
as the numbering sequence on the X-Y plane for each projection. Each
node number on the projected plane has a number equal to its number on
the X-Y plane plus the total number of nodes on that plane. Therefore
if the mesh has a node numbering sequence on its X-Y plane as follows:-
1, 2, 3, 4, , n
the numbering sequence on the first projected plane will be:-
n+1, n+2, n+3, n+4, , 2n
on the second projected plane:-
2n+1, 2n+2, 2n+3, 2n+4, , 3n
Clearly on the Rth plane:-
R*n+1, R*n+2, R*n+3, , n(R+1)
This method of node numbering for three-dimensional structures has the
advantage that indicating the nodes on each plane presents no difficulties
by using the equation below:-
i =i+n* R (4)
where, i is the node number on the X-Y plane, ip is the node number
131
132
on the projection plane, n is the total number of nodes on the X-Y
plane and R is the repetition factor.
This technique is very easy to program, for example, writing the
connections of each element (Equation 4). The only temporary problem
with this method of node numbering is that it results in a bandwidth, ,80A444,4e. RAND
of n4-11 in the stiffness matrix (n is the total.nUmber of nodes on the
X-Y plane). Therefore, the user must reduce this bandwidth by renum-
bering the nodal points as stated in Chapter 5 (overlay OPBAND). The
overlay ST3D (menu square 38, overlay 51) was constructed to provide the
facility of projecting two-dimensional meshes into three-dimensional meshes.
The user is asked by this overlay to input the file number which contains
the nodal point coordinates of the two-dimensional mesh, the location of
each projection plane ()x D
y,DZ), projection (P) and repetition factor
(R), and the centre of projection on the X-Y plane will be read from a
dummy file which was generated by the overlay DOUBLE. A new set of nodal
point coordinates will be created by employing Equations 1, 2, 3 and 4.
These coordinates and their node numbering sequences will be added to
the same file number to represent a three-dimensional mesh. This overlay
must be employed after execution of overlay DOUBLE.
6.4 ELEMENT CONNECTIONS (overlay ST3DEL).
The overlay ST3DEL (menu square 39, overlay 52) was constructed for
the purpose of generating the element connections for three-dimensional
structures. Various types of elements will be obtained when a two-.
dimensional mesh is converted into a three-dimensional mesh by using
the projection technique, e.g. if triangular elements with three nodes
(i1,i2,i3) were used in the two-dimensional meshes, pentahedronal elements
with six nodes (i1,i2,i3,i4450.6) will replace them in the three-
dimensional meshes. The connection of these elements will be obtained
from the following equations, assuming that the mesh has the same node
numbering sequences as stated in Section 6.3:-
133
it = ii + n * (R - 1)
i2 = i2 + n * (R - 1)
+ n * (R - 1)
i4
= i1 + n * R
i5 = i2 + n * R
i6 =i3 +n*R
where R is the repetition factor (R = 1, 2, 3, , R) and n is the
total number of nodes in the X-Y plane.
Table 4 shows the type of elements in a two-dimensional structure
and their three-dimensional substitute elements.
6.5 PICTURE CONSTRUCTION FOR THREE-DIMENSIONAL STRUCTURES (overlay DOUBLE)
This overlay was constructed for the purpose of storing the
three-dimensional data in the workspace in such a way that it repre-
sents the shape of the three-dimensional structure. The operation of
this overlay is similar to overlay ST3D. The only difference is in the
method of data storage, as in overlay DOUBLE (menu square 37, overlay
71) the coordinates of the projection nodes are added to the workspace
(File 1), while in overlay ST3D the coordinates are stored in permanent
file (MIFILE.DAT) with a different format. This overlay will generate
the requirement data for the overlay ST3D. The data records in File 1
are read by the program (coordinates on the X-Y plane), subsequently
this data is modified by employing Equations 1, 2 and 3 and their new
values (coordinates on the projection plane) will be added to File 1 and
File 2. File 2 is used as a scratch file for the purpose of generating
the walls between the X-Y plane and its projection plane. The word
walls was used here to describe those lines joining the nodes on the
X-Y plane to their relative point on the projection plane. These lines
which have a starting point on the X,.,Y plane and an end point on the
projection plane are added to File 1. Figure 44 shows the process of
data records in each file when a three-dimensional picture has to be
constructed by using the projection technique. The shape of the three-
dimensional meshes is displayed by this overlay on the VDU. Therefore
it may be used prior to overlay ST3D for the purpose of checking the
nodal point coordinates and element connections. The visualisation of
the objects will be improved by perspective transformations which are
based on the elementary laws of optics and can be represented mathe-
matically, and are therefore most suitable for three-dimensional finite
element meshes. Perspective is used extensively throughout the system
and is regarded as the standard way of viewing graphical output, An
advantage of perspective is that it is defined by only a few parameters
related to the position of the observer, A new perspective view can
be generated by simply redefining these parameters, leaving the object
unchanged. Once the data concerning location and direction of the
observer's eye is defined, a program sets up and positions a viewing
plane at a given distance from the observer, on which the perspective
view of an object can be projected. The overlay JSTICK which controls
these parameters enables the user to view the complex three-dimensional
meshes from any direction. There are other forms of projections which
can be used instead of perspective, True perspective drawings are
useful in increasing understanding, but for work where measurements
are required, isometric or orthogonal projections, which enable easy
measurement, might be preferred. Overlay ISOMT (menu square 125,
overlay 93) was constructed for the purpose of displaying the isometric
projections of the three-dimensional structures. The point'i(Xi,Yi,Zi)
in space is mapped onto a projection plane (VDU) by the following
relationships:-
Xp = X0 1- (Xi - Yi) * cos 30
Yp -"X1 .1-"* sin 30 0
134
where X0 and Y
0 are the origin of the isometric projection plane and,
Xp,Yp are the coordinates of the projected position of the point i.
The overlay DVIEW (menu square 120, 121, 122, 123, overlay number 15)
projects the data in the workspace onto three major planes which are
then unfolded for presentation on the screen. The projection is equi-
valent to the transformation from File 3 into File 1, but in reverse.
However, the three views are complete orthogonal representations of
the data. Each view is generated by taking the coordinate terms in
File 1 corresponding to the plane being considered. Therefore from
an (I,X,Y,Z) record only X,Y are used for the X-Y plane and so on,
The cross displayed on the screen represents the position of the datum
point.
6.6 JOY-STICK FUNCTION
The variation in perspective parameters allows a very convenient
solution of a joy-stick controlled display. The joy-stick function allows
the operation of a joy-stick to be emulated on a patch on the menu.
By pressing the pen button on the menu the user can control two functions:
rotation and zoom. Rotations are possible about two axes: Y-axis and
an axis on the X-Zplane(13)
. The movement of the new position of the
axis will be continuously displayed on the VDU, the user can therefore
select desired positions by pressing the button on the digitising pencil.
Subsequently the program changes the perspective parameters and a new
view of the object is displayed on the VDU. Rotation can be accumulated
before display, which is activated by the 'enter' switch. The joy-stick
control facility enables the user to select quickly the best orientation
of an object for inspection. Because the display is linked point by
point to the object data, it provides a convenient means of isolating
data for construction and editing purposes. Some examples of three-
dimensional meshes which have been generated automatically by the present
135
system are shown in Figures 45-1, 45-2, 45-3 and 45-4.
6.7 THREE-DIMENSIONAL MESH EDITING (overlay ADD3D)
There are some cases when the graphical shapes do not facilitate
the use of the automatic projection technique. The elements must be
added, adjusted or deleted manually as in the technique described in
Chapter 4. Adding elements to the three-dimensional meshes by digitising
the coordinates of one particular element may be very difficult and
tedious when large numbers of elements have to be added. The user may
apply the projection technique to any particular element in the three-
dimensional meshes. The elements are selected by digitising their points
on one plane, in FIND mode, subsequently this surface can be projected
to another plane by using the same technique as described in Section 6,2.
For example, eight hexahedronal elements may be added to a simple three-
dimensional mesh as shown in Figure 46, by digitising only the four
points 1, 2, 3 and 4 on each surface, subsequently these surfaces will
be selected and displayed on the VDU, by the overlay ADD3D (menu square
40, overlay 90), then the user may project these surfaces in any direction
as many times as required with any projection factor to construct more
elements. This technique allows the user to select any surfaces (not
only the X-Y plane as described in Section 6.2) and project them to a
plane parallel to the previously selected plane. The overlay ADD3D is
used usually after overlay DOUBLE to complete the process of mesh
generation. Figures 46-1, 46-2 and 46-3 show some examples of three-
dimensional meshes generated by using DOUBLE and ADD3D overlays,
An outline flowchart of overlay ADD3D is shown in Figures 46-4, 46-5
and 46-6.
136
TABLE 4 137
3D Substitute Elements 2D Elements
Triangular elements with three nodes (constant strain elements)
Pentahedronal element in 3-space Number of nodes 6 Degrees of freedom u, v, w at each node Displacement field incomplete quadrat-ic - —
Pentahedronal TET4 - macroelement in 3-space Number of nodes 6 Degrees of freedom u, v, w at each node Displacement field linear within each TET4 built of three TET4 tetrahedrons (1,2,3,5),
' (1,4,5,6), C3,1,5,6).
Pentahedronal TET4 macroelement in 3-space built of the three TET4 tetrahedrons (1,2,3,6 (1,4,5,6), (2,1,5,6).
TABLE 4 (continued)
138
3D Substitute Elements 2D Elements
Quadrangular elements with four nodes
7
Hexahedronal element in 3-space Number of nodes 8 Degrees of freedom u, v, w at each node Displacement field incomplete quadratic
Hexahedronal TET4 macroelement in 3-space Number of nodes 8 Degrees of freedom u, v, w at each node Displacement field linear within each TET4 built of the six TET4 tetrahedrons (1,2,4,8), (1,5,6,8), (2,1,6,8), (2,3,4,7), (2,6,7,8), (4,2,7,8).
TABLE 4 (continued) 139
3D Substitute Elements 2D Elements
Triangular elements with six nodes quadratic displacement field
Pentahedronal element in 3-space Number of nodes
18
Degrees of freedom u, v, w at each node Displacement field incomplete cubic
Pentahedronal TET10 Number of nodes Degrees of freedom Displacement field
macroelement in 3-space 18 u, v, w at each node quadratic within each
TETIO
17 16 15
Pentahedronal TETIO macroelement in 3-space Number of nodes 18 Degrees of freedom u, v, w at each node
9
TABLE 4 (continued) 140
3D Substitute Elements 2D Elements
Isoparametric elements with six node parabolic curved edges
Pentahedronal element in 3-space with curved edges
Number of nodes 18 Degrees of freedom u, v, w at each node Displacement field incomplete cubic
Parabolic curved edges are the only difference to PENTA18.
Quadrilateral elements with nine nodes 27
26 ?4
Hexahedronal element in 3-space Number of nodes 27 Degrees of freedom u, v, w at each node Displacement field incomplete quartic
TABLE 4 (continued)
2D Elements
3D Substitute Elements
Quadrangular elements with nine nodes parabolic curved edge
27
9
7
Hexahedronal element in 3-space with curved edges
Number of nodes 27 Degrees of freedom u, v, w at each node Displacement field incomplete quartic
Parabolic curved edges are the only difference to HEXE27.
141
Dz= A
R= 1
D = C
P= 1
Dx= 0
1
2
Dz= A
R= 1
Dx= B
P= 1
Dy= C
142
1 2
X
Dz= A
R= 1
Dx= B
P= 1
D = 0
Dz= A
R= 1
Dy= 0
P= 1
Dx= 0
Figure 43
IPEN X Y Z
* * * 0.0
0 End data of
1 * * *
2 * * *
1
2
1
2
1
2
1
2
0 End of data
IPEN X Y Z
* * * *
0 End of data
Projection process
Read Modify Write X,Y,Z
applying equations 1, 2 and 3
41.
ip-
Read
-OP
.10
wall generating
X-Y plane data records'
projec-tion plane data records
wall data records
File 1
File 2
143
Figure 44 Data Records Process during Projection of
X-Y Plane onto another Plane
144
Figure 45..1
145
,..
Figure 45,2
146
Figure 45.3
147
Figure 45.4
148
X
Z
Figure 46
149
Figure 46.1
Figure 46.2
£•9 eanbTa
1-•
(J1 0
No
Input file number 3D coordinates
PMSGO PLMSG CURCON
Display message: *digitise axis B7
X-Y plane*
4
Select the pen button
B8 No button
A
GETINT
Message on the VDU *no near point*
BUTNUM
FIND
Read the node numbers and their coordinates from permanent file and write them to a dummy file
at logical unit number 5
DELF STORE
Read the element connections and write them to a dummy
file at logical unit number 4
DELFCN CONECT
Select a plane start digitising the connecting nodes of
the element on this plane using B6 press button 8 to exit
B6
Yes
Display symbol + at the position of the digitised node
No button B8
Subroutines called 151
Start
OVRETN
Exit
PMSGO PLMSG CURCON
GETINT
FIND
PERPEX PLOTSC
Figure 46-4 Outline Flowchart of Overlay ADD3D
Display the digitised plane which is the connection side of the elements. Select options
B1 - accept the plane B2 - restart
o-
Select B2 the pen button
GETINT
Input: Increment in X direction in mm Increment in Y direction in mm BUTNUM Increment in Z direction in mm Number of additional elements
Warning message on the keyboard
♦ VPq
Subroutines called 152
PMSGO PLMSG PLOTSC
31
Calculate the coordinates of the additional elements
Display and store the shape of the additional elements on the VDU and write the node numbers
and coordinates of the additional elements to the dummy file at logical
unit number 5
Find the node number of the connection side
SETR PERPEX PLOTSC
FNODE3
Warning message on the keyboard
Write the node number of all additional elements to the dummy file at logical unit number 4
Figure 46-5
Select option: B1 - more elements to be added
B8 - Exit
Select the pen button
B1
Delete the element connection file, transfer the new element connection from the dummy file
to the permanent element connection file CIFILE.DAT
1
Delete the dummy file, write the file number, total nodes and total elements on
the keyboard
IB8
End file 4 End file 5
1 Delete the coordinates file, transfer the new coordinates from dummy file at logical
unit 5 to permanent coordinate file MIFILE.DAT
Exit'
Subroutines called 153
PMSGO PLMSG
GETINT
DELF STORE SETFIL •
DELFCN CONECT SETFIL
DELF
OVRETN
Figure 46,6
CHAPTER 7
FINITE ELEMENT SOLUTION AND RESULT PRESENTATION
7.1 INTRODUCTION
The ASKA program, as mentioned earlier in this thesis, is one of
the most successful finite element programs. It was written by
Professor J.H. Argyris and has been developed during the past ten
years. The ASKA program has been running on the Imperial College
CDC (6400, 6600 and 7600) since 1974. When the meshes have been
generated and numbered for a particular model by the GFEMGS system, the
data consisting of element connections, boundary conditions, (topological
descriptions), nodal point coordinates, load and material properties
(numerical data) is dumped onto magnetic tape or paper tape. These data
are then transferred to the CDC mainframe computer where they are used
as data input to the ASKA program. On completion of the solution, the
results are dumped onto paper tape or magnetic tape (for a CAD system
with a card reader the results may be transferred to punched cards)
for transfer back to the mini-computer based CAD system. Here the
results are presented both graphically and numerically as requested by
the user. The graphical presentation consists of displaying stresses
as vectors which are superimposed on the model, or as an oblique view of
the surface to form a three-dimensional picture where Z coordinates of
each point are relative to the stress at that particular point.
Deformation may also be superimposed on the original mesh on the VDU
to give a clear impression of the overall displacement. The maximum
stress for each particular type of stress is displayed at its location.
These results can be examined on the display and windowed to expose
the required detail. The results may also be plotted in hard copy form
using the flat-bed plotter.
154
155
7.2 DATA STRUCTURE FOR THE ASKA PROGRAM
There are two specific methods available for presenting the
numerical data and topological descriptions to the ASKA program, The
first method involves the use of text cards presented to ASKA in the
form of punched cards and is currently the most widely used method.
It provides for a compact description of the topology especially in
problems which have a consistent element pattern. Any future modifi-
cations to the topological description may be done very easily by
changing a few cards without the necessity of regenerating the whole data.
The main input stream for the topological description is always punched
cards. It is possible, however, to switch the data input from cards
to any other sequential data set tape, disk or drum.
The second method obtains this numerical data and topological
description from a magnetic tape in binary format. This magnetic tape
is usually generated from pre-processors provided by the user. This
method involves the user expending extra time to generate the magnetic
tape and also any slight changes in the structure (e.g. adding extra
elements to the existing mesh) will force the user to regenerate the
magnetic tape completely. There are thee types of data card/records
for each set of numerical data or topological description data as
follows:1
1. Header cards/records. These are the first card/record in the block
and serve to identify the following data cards of the block
(numerical data) or contains topological descriptions (topological
data).
2. Data cards/records. These are the actual data of each block using
a free format field in data cards or a fixed record length of 51
computer words (60 bit) in data records(3)
3. Delimiter cards/records. These identify the beginning of data, end
of subfile, end of file or end of information. This data card is
156
generated by the GFEMGS system and may be dumped to magnetic tape or
paper tape to be transferred to the CDC computer where it will be copied
to punched cards to be used as input for the ASKA program.
7.3 ASKA PROCESSORS
The sequence of the different steps in the solution of a problem
is controlled by subroutine calls (in the FORTRAN sense), which
normally are contained in the main program of an ASKA solution. The
highest level subroutines in ASKA are called processors, since their
main task is to process data or hypermatrices.
The sequence of calling each processor is usually dependent on
the problem. To test the ASKA program a thick cylinder of 32 cm thick-
ness with a diameter ratio of 1.18 was considered, that was suppressed
only in one point in the Y direction as is shown in Figure 47, The
sequence of calling each processor in this specific problem was as
follows(3):-
ASKA Processor
1. Initialisation, load case 1 single precision START(1,-1)
2. Evaluate the topological description SA
3. Print out the types of freedom INFUNK
4. Print element structure connection INFEL
5. Print the pattern expected for the assembled
structural stiffness matrix, also an estimate
of CP - time units and number of I/O
operations PATA
6. Input data in external format DATIN(0,4HFIN )
7. Store element coordinates ELCO
8. Check all loading case independent element
data and confirm if there is any error in
data input TS
ASKA Processor
9. Calculate the elemental stiffness matrices SK
10. Assembles via the kinematic connection matri4
the element stiffness hypermatrix into the
global structural stiffness matrices BK
11. Print out the pattern of the assembled
stiffness matrix INFBK
12. Calculate the kinematically equivalent
nodal-load vectors due to distributed loads
on the elements BQ
13. Build complete load matrix BR
14. Modification of control variable set con-
ditioning information for structural
stiffness matrix calculated during processor
step TRIA SET(4HCOND,.TRUE.)
15. Produce the main net displacement SR
15.1 The structural stiffness matrix is
triangularised by the Chelesky method
15.2 Use the triangularised stiffness
matrix to calculate the displacement
caused by the nodal point forces
16. Convert the displacement matrices in interna
format into user format USR
17. Print out the nodal point displacement DATEX(0,4HUSR )
18. Rearrange the displacement in internal
representation into element-wise repre-
sentation SP
19. Calculate the elemental stresses referred
to the global Cartesian coordinate system ST
20. Print out the element stress for all
loading cases SIGEX(0,0)
157
ASKA Processor
158
21. Calculate the average 'stresses in the net
nodal points from the contributions of
every element connected with this node
22. Print out the average nodal point stresses
NPST
DATEX(0,4HNPST)
These ASKA processors will be followed by the system support
utility routine (HIOB), the topological description and the numerical
data.
7.3.1 Description of Thick Cylinder Test Model
The model was an axisymmetric pressure vessel and it was decided
to calculate the principal stresses along the thick cylindrical wall.
The description of the model is as follows:-
Thickness 32 cm
Internal diameter 1.88 m
Outer diameter 2.22 m
Internal pressure 17.16 * 108 N/m
2
Modulus of elasticity E = 206.85 * 109
N/m2
Poisson ratio v = 0.3
Total number of elements 64 triangular elements with six nodes TRIAX6
Total number of nodes
Total unknowns
Degrees of freedom
Suppressed point
153
305
2
1 (point 17 in Y direction)
Figure 47 shows the arrangement of the element and nodal points.
7.3.2 Comparison of the Results obtained from ASKA with Stresses
obtained from Lame Equations for a Thick Cylinder
From the analysis of Lame and Clapeyron(24)
, it can be shown that
the stresses in a long elastic closed-ended cylinder subjected to an
internal pressure P are:-
159
G0 = 2 (1 4-
2)
K - 1 r
2 a - (1 -
2)
r K2 - 1 r
Gr
2 G 0
az = = constant K2 - 1
ae - G
r ( P ) b2
T = 2 ‘-
K2 - i r
2
where (Ye, ar, az and T are the circumferential, radial, axial and
shearing stresses; P is the internal pressure, a and b are internal
and external radii, K is the diameter ratio = b/a and r is any
intermediate radius.
The ASKA program was run under J7 on the CDC 6400 computer using
1.332 units and 95.648 seconds of computer time. Computer time was
expended as follows:-
23.5 seconds run time for calculating the element stiffness
matrix
9.6 seconds run time for building the structural stiffness matrix
22.0 seconds run time for triangularising the structural stiff-
ness matrix
3.0 seconds run time for rearranging the displacement in
internal representation into element-wise representation
3.6 seconds run time for calculating the element stresses
referred to the global Cartesian coordinate system
33.948 seconds of the remaining computer time was spent for data
input, output and some sundry information asked by
the user.
The a and ar stresses obtained from ASKA and Lame equations are
plotted in Figure 48. 1 comparison of the resutls shows that the results
calculated using Lame equations agreed with those produced by the ASKA
program to better than 1.4%.
160
Figure 47
circumferential stress
N 106
~ at = -x m2 . ~
106 ~ ~
:::... ~
::,..
~
102 ~ :::...
~ ~
:..... ~
98
91.
90 1-88 7·92 '·96 2.00
2 Diameter (m)
6
8 1<' Lame equation
12 • ASKA program
radial stress 16
Figure 48
161
7.4 RESULT PRESENTATION
7.4.1 Introduction
Graphical presentation of the results provides a very fast method
for analysing stresses, deflections, temperature distribution, mode
shape of a structure, pressure and velocities in the flow of a fluid.
The results can be displayed in several ways, for example:-
1. Scaled principal stress vectors in appropriate direction.
2. Display the results in the form of oblique views of the three-
dimensional surfaces.
3. Contouring the regular or irregular data such as stresses or
temperatures.
4. Matrix mapping to create pictures that are views of three-dimensional
surfaces.
5. Shading.
6.. Rastor scan display and colour jet plotter.
7.4.2 Result Preparation from the ASKA Program
Result presentation usually requires a special program to read
the results (e.g. stresses or deformations) from punched cards, paper
tape or magnetic tape and converts these results into suitable data for
graphical systems such as VDUs or plotters. Therefore the first step in
result presentation is to store the results from the finite element
programs on one of the storage media such as punched cards, paper tape
or magnetic tape. The ASKA program is a system program and all the output
formats are fixed for the line printer by the original writers, the
user cannot easily change these formats to the ones he desires unless
he has access to the source of the program. The ASKA user has no access
to these source program in the Imperial College Computer Centre. This
program has been used in the College as a 'black-box', i.e. input data
- output result without any modifications to any ASKA processor.
Therefore, if the user wishes to present the numerical results in a
graphical form, he must punch many cards manually from the results
obtained on the line printer. A special technique was introduced by the
author to transfer the ASKA output to punched cards, paper tape or
magnetic tape without changing any of the ASKA processors. This
technique is also used for transferring the results to the CAD system,
which is based on a mini-computer (PDP 11/45). As stated previously,
the CAD system is used for the presentation of the results, The user
may use punched cards or paper tape as an intermediary between the two
computers (CDC and PDP). The author's technique can be summarised as
follows:-
1. The ASKA output after a successful run including all the information
such as messages, header description and results, e.g. stresses and
deformations must be stored in card image (ASCII code) format on a
magnetic tape. This is done while the ASKA program is executing.
The job cards for this purpose on a CDC 6400 computer are as
follows:-
JOB (job number,J13,T600,LC5000,CM50000,MT2)
PASSWORD
GET '(ASKA2/UN=CMAAE53)
CALL,ASKA2
/MAIN(,OUT)
REWIND(OUT)
REQFILE(TAPE,VSN=name,W,F=SI)
COPY(OUT,TAPE)
FDUMP (I=TAPE)
FDUMP(I=TAPE,LO,BK=2)
REWIND(OUT)
COPYSBF(OUT)
End of Record
The ASKA output'is thus saved on a magnetic tape indicated by
162
*VSN=name* and the results also are printed on the CDC line printer.
2. The user must edit the magnetic tape to delete the unnecessary
information. For example, on one run the average nodal point stresses
was printed from page 65 on the ASKA output listing. Therefore if the
user desires to transfer only this data to punched cards he may delete
all the information before page 65 on the magnetic tape and save only
the part of the data which is required. This can be done on the CDC
6400 computer by copying the magnetic tape to the disk, editing it on
disk and saving the useful information on a permanent file as follows:-
JOB (job number,J4,MT1,CM15000,LC1500,T20)
. PASSWORD
REQFILE(TAPE,VSN=name,F=SI)
COPY(TAPE,DISK)
REWIND (DISK)
RETURN(TAPE)
PACK (DISK)
EDIT (DISK)
SAVE(DISK=name of the permanent file, e.g.'STRESS)
End of record
F:/PAGEbbbbbbbb55/
EXTRACT;*
RESET
D;*
ADD
L;*
END
End of file
Now the permanent file named STRESS contains only the average
nodal point stresses.
3. The user may transfer the results in this permanent file to punched
cards, paper tape or magnetic tape, which is suitable for transferring
to the PDP computer, or using it on the CDC computer for plotting
purposes. For example, the user may produce punched cards or paper
tape from the results in the permanent file named STRESS as follows:-
163
(a) Login on one of the CDC terminals and input the following command
sequence under the batch subsection:-
/GET (STRESS)
/QUEUE(STRESS=PUNCH)
/QSTATUS(Q=FREE,QT=PH,QN=punch identification)
The content of the file STRESS is therefore copied to punched cards,
The user may transfer this file to the paper tape as follows:-
(b) Login on a CDC Olivetti Terminal which has paper tape punch
facilities and input the following commands:-
/GET(STRESS)
/LNH,F=STRESS switches on the paper tape punch
This file is then transferred to paper tape in ASCII form which is
suitable for the mini-computer paper tape reader.
7.4.3 Scaled Principal Stresses in Terms of Arrows (overlays RRZZ and
TTRZ)
This technique is a very convenient way of presenting the stresses
It involves plotting or displaying an arrow at each node which is pro-
portional in length to the stress at that point at its appropriate
direction. The shape and angle of the arrows indicate the direction of
the stresses. In the GFEGMS system the arrow 4-+ will be used for positive
stress (tension) and 4-4- for negative stresses (compression). The
overlays RRZZ (menu square 31, overlay 55) and TTRZ (menu square 32,
overlay 56) were constructed for the purpose of displaying the principal
stresses in terms of arrows in appropriate direction for each node, The
user must store the average nodal point stresses, calculated from the
contributions of every element connected with the nodes (Processor NPST)
in a permanent file on disk. This can be done by reading the stresses
from the paper tape or punched card and storing them on a permanent file
on a mini-computer disk by using the PIP commands (see Section 7.4,2)
The stresses in the permanent file are read, scaled and converted to
164
165
arrows by overlays RRZZ and TTRZ. The shape, direction and length
of the arrows are stored in the workspace to allow the user to window,
examine or plot them on the VDU or flat-bed plotter.
After displaying each individual stress such as radial, circum-
ferential, axial or shearing on the VDU, their maxima are displayed
continuously on the VDU at their locations and the user is informed by
messages on the keyboard about the position and values of the maximum
stresses. For example:-
MAXIMUM RADIAL STRESS = 0.53354E+03, AT NODE NUMBER = 168
MAXIMUM AXIAL STRESS = 0.45328E+04, AT NODE NUMBER = 91
MAXIMUM CIRCUMFERENTIAL STRESS = 0.48049E+04, AT NODE NUMBER = 16
MAXIMUM SHEARING STRESS = 0.59821E+03, AT NODE NUMBER = 98
This technique has considerable advantages in that the user is able
to see the direction, condition and exact value of the stresses at each
nodal point without any need to refer back to the numerical value of the
stress at that particular point. The size of the arrows at each point
corresponds to the stresses, therefore it is very easy to find the area
of high or low stress concentration on a model, The technique may
become less efficient for those parts of the model which have a very fine
mesh. There will be some interference between the arrows as the dis-
tance between two successive nodes is very small in fine meshes.
Therefore, it becomes rather difficult for the user to see the
variation of the stresses. For this sort of problem presenting the
result in the form of an oblique view of the surface is more convenient.
7.4.4 Oblique View of Surface (overlay OBLIQ)
This technique may be used for two-dimensional or axisymmetric
meshes. Three-dimensional representation of stresses or temperature at
each nodal point in X-Y coordinates is achieved by making the third
space coordinate (Z coordinate) proportional to the stress or temperature
at that point. Perspective projection can then be used to show the
relative stresses at each node. To show the axact value of the
stresses at each node isometric projections, which enable easy measure-
ment, may be preferred.
Overlay ISOMT (menu square 125, overlay 92) was constructed for
the purpose of displaying the isometric projection of the three-
dimensional data (see Section 6.5).
Overlay OBLIQ (menu square 34, overlay 761 was constructed to
store the nodal point stresses or temperatures in three-dimensional
files (workspace). For example, the nodal point coordinates (X-Y plane)
of a typical mesh with their stresses are read by the program from
permanent files on disk. Subsequently, after scaling the stresses, the
X, Y and Z coordinates (proportional to the stress at each nodal point)
are stored in File 1 (workspace). Therefore, visualisation of the
stresses may be achieved by displaying File 1 with the aid of the
JSTICK overlay.
7.4.5 'Contour Maps
Another way of representing three-dimensional data, particularly
in presentation of finite element solutions is contour mapping.
Contours of stress levels are one of the most convenient types of
display. They may be drawn over the whole area of the system or over
some particular area of interest. In the simplest application, element
stresses are averaged to nodal values. Contours are then plotted as
a series of straight lines over each element consistent with this nodal
data. The lack of smoothness of the plot gives some idea of the
validity of the solution.
166
167
Most elements currently in use exhibit discontinuities in stresses
from one element to the next, although the stresses in two adjacent
elements often straddle the true stress curve. To facilitate the inter-
pretation of .stresses by smoothing out the stress jumps (and sometimes
to obtain better accuracy), two types of stress averaging are in common
use. The first type involves averaging the stresses of two adjacent
elements, e.g., a quadrilateral is formed from two triangles, and the
average stress of the two triangles is taken as the stress at some point
in the quadrilateral. In the second type the stresses of all the
elements connected to a node are summed and divided by the number of
elements. This approach usually gives a fairly smooth and accurate
stress distribution, except at the boundary points or in regions of high
stress gradients.
Contour diagrams are a widely accepted means of visualisation of
surfaces defined over two-dimensions, and are the best way of producing
a graphical representation which is quantitative at the same time.
There are two packages available in the Imperial College Computer
Centre for contouring regular or irregular data. The Monro package(25)
provides high quality diagrams for a wide range of data specifications
in a versatile manner. While it has a comprehensive range of facilities,
it is at the same time fast, compact and straightforward so that imple-
mentation on modest computer installations is possible. It can deal
with regular grids of data such as might be produced by a computer model
calculation or with irregularly arranged measurements like most types of
field data. The method used to, interpolate the surface from an irregular
grid is unique in that the interpolated surface fits the given points
exactly and is not prone to oscillation in between, unlike most weighted
interpolation schemes. This is a result of the technique of segmentation
of the surface into triangular elements, partial derivative estimation,
and parameterised bicubic fitting used within the triangles. Regular
168
data occurs in a uniform rectangular field and so is in the form of a
matrix representing equally spaced values to be contoured in a rectangular
area. Incomplete rectangular fields can be handled by presenting a
complete matrix filled with dummy values. Irregular data is obtained at
unequal spacings over a surface, such as in finite element meshes or in
land surveys where more nodes or measurements are taken around features
of interest. The philosophy of the package is to interpolate irregular
data into a fine regular grid and then proceed to contour in the same
way as with regular data. This is more efficient than complicated direct
contouring schemes with elaborate smoothing arrangements. Figure 49
shows a contour map generated by using this package.
The second package is Martinets MATrix MAPping package, (MATMAP)(26)
MATMAP is an interactive graphics package which maps matrix-type data.
It runs as a Telex job on the CDC 6400 and communicates through the
CDC 1700 with the Tektronix tube via a fast output line. This package
only deals with the regular data that occurs in a uniform rectangular
field. There is a choice between five mapping programs: HIDE, BLOCK,
CONTR, MPLT and TMAP.
HIDE draws a picture of a set of parallel plane sections through a
surface from any reasonable viewpoint with elimination of hidden
lines.
BLOCK draws a picture of a set of traverses parallel to the X-axis of
the base grid from various viewpoints with elimination of hidden
lines.
CONTR draws a contour map of a variable number of contours regularly
spaced from an initial level.
MPLT draws a picture of a field as two sets of traverses, one parallel
to the X-axis and the other to the Y-axis with hidden line
removal.
TMAP. draws a total map based on the intensity of various character
combinations.
The packages are all available on the Kingmatic, Microfilm or
Quick-look facilities at Imperial College Computer Centre(27)
Figure 50 shows an example produced by the Matrix Mapping package
using the MPLT program. The hard copy has been obtained by using the
Microfilm facilities.. These packages enabled contour plotting of results
obtained from two-dimensional planes or axisymmetric meshes.
Owing to the large amounts of output which can be produced by
finite element computation, automatic plots are very important aids to
the assessment of results. Contour plots can be obtained for all types
of two-dimensional elements.. They may also be obtained in any prescribed
section - not necessarily flat - in a three-dimensional body, as it is
very difficult to produce visual results in complete, general, three‘-,
dimensional structures. These structures may be divided into a series
of planes and contour plotting of results may be obtained for each
individual plane.
7.4.6 Shading
This is a technique which has a great similarity with finite
element methods. The surface of the solid is divided into small patches
and in regions of greater curvature smaller patches are used and vice-
versa. Each individual element is then tested for the degree of shading
required. The amount of shading is determined by the level of stress
over that element. Therefore elements with higher stress will be pre-
sented as high intensity and vice-versa. The intensity is interpolated
to provide smooth shading of the surface. For illumination purposes
either a point or parallel beam source of light can be used. The surface
can also be given a reflective index to make it shiny, dull or even
transparent. The output is obtained on devices that can scan at different
intensity levels, either by drawing a series of parallel lines or by
overwriting, i.e, multiple exposure of individual dots, Good quality
results are dependent on powerful special purpose hardware,
169
170
This technique has also been developed extensively in work related
to hidden-line or hidden-surface (more applicable here) removal, mainly
at the University of Utah(28)
and the CAD Centre at Cambridge(29)
. The
technique is based on the recognition of distance and shape as a function
of illumination. Each individual element will be tested for visibility
and the degree of shading required. The visibility test is the same as
that required in hidden-surface removal. Hidden-line removal is an
essential pre-requisite for any shading algorithm.
7.4.7 Rastor Scan Display and Colour Jet Plotters
This is a very advanced technique in result presentation. Due to
the excellent ability of the human eye to extract relevant information
from a complex picture, mechanical and electrostatic plotters are used
increasingly to present computer data in the form of graphs and pictures.
However, besides other disadvantages, these plotters mostly generate
black and white pictures only and thus do not make use of the special
property of the human eye to perceive colour. Since colour would add a
further dimension to the pictorial type of information displayed, a
colour type of display allows the presentation of computer-based infor-
mation in the form'of coloured graphs, maps or pictures. The colour
jet plotter was developed by Professor Hellmuth Hertz at Lund Institute
of Technology in Sweden(30)
. This plotter makes use of three fine ink
jets in the colours red, yellow and blue, which can be electrically
controlled at high speed resulting in a plotting time of one minute for
coloured pictures of unlimited complexity.
The plotter itself consists of a drum which holds the recording
paper and which is rotated at high speed by a motor. A screw drive
moves the recording head carrying the three ink jet system along the
surface of the drum. Since ink jets are used in the plotter, no special
demands are made on the record receiving surface. Thus, nearly all kinds
171
of plain paper can be used and even films for overhead projectors can
be prepared. This type of plotter is an excellent way of producing
hard copy from the results which can be in the form of contour maps,
three-dimensional graphics, histogram routines and other patterns.
The software for generating coloured contour maps may be summarised
as follows:-
1. Read the results (e.g. stresses) from a peripheral device,
2. Calculate the maximum and minimum valid elevation for stresses.
3. Select the intervals between the stresses according to the number
of available colours.
4. Calculate the area of the constant stresses according to the stress
intervals (same as contour maps, see Section 7.4,5),
5. Display the colour at each individual area relative to its stress
intervals and colour table. For example, tension may be depicted
in red and compression in blue.
Another technique in result presentation is rastor scan display
which was developed by Professor H.N. Christiansen at the University of
Utah. This method requires a colour VDU and powerful software to
generate the colour picture. However, it is recognised that this kind
of computer graphics for result presentation is, for the time being,
relatively expensive.
7.4.8 Deflections (overlay DEFORM)
It is very important for the designer to see the overall distortion
of a model under external loads. This will help to understand the final
behaviour of the structure when it is in the operation mode. Deflections
may be superimposed on the original mesh plot in different colours or
with different line type, for example dashed lines. The overlay DEFORM
(menu square 35, overlay 79) was constructed for the purpose of dis-
playing or plotting the original mesh and its deformation when the load
172
condition is applied. The original mesh and its deformation will be
stored in the workspace with two different line types, continuous lines
for original mesh and dashed lines for deformation. These different
line types give a clear impression on the VDU of the overall distortion.
The user may magnify deformation and original plots as much as required
and also he may then plot them on a flat-bed plotter in two different
colours.
7.5 FAILURE POSITION (overlay MAXTT)
In order to determine allowable design stresses for multiaxial
stress conditions which occur in practice, several theories of failure
have been developed. Their purpose is to predict when failure will
occur under the action of combined stresses on the basis of data obtained
from simple uniaxial tension or compression tests. Failure refers to
either yielding or actual rupture of the material, whichever occurs
first. There are three stress theories of failure that are used for
converting the uniaxial to combined stress data.
(a) "Maximum stress", or Rankine Theory. This is the oldest theory of
failure and is based on the maximum or minimum principal stress as a
criteria of failure and postulates that failure occurs in a stressed
body when one of the principal stresses reaches the yield point value
in simple tension a , or compression a' . The condition of yielding y.P y.P
of materials whose tension and compression properties are the same,
such as mild steel, become as follows:-
for
for
for
ax
> a or az
a > ax or a
z y
az
> ax or a
failure occurs when
failure occurs when
failure occurs when
ax
= ±a 1) Y-
a = ±ay y.P
az = ±a y.P
where ax ay and az are the principal stresses.
(b) "Maximum shear stress", or Tresca Theory. This theory postulates
173
that yielding in a body subject to combined stresses will occur when the
maximum shear stress becomes equal to the maximum shear stress at yield
point in a simple tension test. This theory is in better agreement with
experimental results for ductile materials whose tension and compression
properties are the same than in the "maximum stress" theory. The
maximum shearing stress may be obtained from(31) _-
2 vfa - ar,
s1 2 + T
max j T
2 xy min
where ax, ay and Txy are known for an element as principal and shearing
stresses.
Unlike the principal stresses, for which no shearing stresses occur
on the principal planes, the maximum shearing stresses act on planes
which are usually not free of normal stresses. The normal stresses which
act on the planes of the maximum shearing stresses are:-
ax + a a' = y z 2
Therefore a normal stress acts simultaneously with the maximum shearing
stress unless ax + aY vanishes.
The overlay MAXTT (menu square 33, overlay number 66) was const-
ructed for the purpose of calculating the maximum shearing stress at
each nodal point number by reading the principal stress obtained from
the ASKA program. These stresses may be displayed in terms of vectors
on the VDU. The program will inform the user by displaying continuously
the position of the model which has the maximum shearing stress,
Therefore, if this stress is greater than permissible stress (greater
then half the normal stress at yielding), the user may modify this
section and repeat the finite element calculation with the new section
until satisfactory shear stress is obtained.
174
Figure 49
Figure 50
CHAPTER 8
APPLICATION OF GFEMGS TO A NUCLEAR REACTOR STANDPIPE
AND A SHRINK RING FOR A HIGH PRESSURE VESSEL
8.1 INTRODUCTION
The method of data preparation was tested on a number of practical
applications such as on pressure vessels, a shrinking ring, a screwed-
plug closure of a pressure vessel and especially on a standpipe in the
Advanced Gas Cooled Reactor (AGR). However, the original approach was
to find the stress distribution along each model and see the effect of
a CAD system on a large amount of data processing, The results of CAD
analysis of the nuclear reactor standpipe were compared with the results
obtained from ASAS (Atkins Stress Analysis System) by GEC Reactor
Equipment Limited at Leicester.
8.2 NUCLEAR REACTOR STANDPIPE
The standpipe is an important link in the chain of equipment
handling Advanced Gas Cooled Reactor irradiated fuel elements. The
fuelling machine removes fuel from an 'on load' reactor operating at
600 PSIA and transfers it for dismantling to an Irradiated Fuel Discharge
Facility via the access standpipe.
First, the fuelling machine is seated on top of the standpipe to
form a pressure seal and then the two components are pressure balanced.
Next a valve at the base of the Fuelling Machine is opened and the fuel
stringer lowered into the standpipe. In this position the irradiated
fuel is cooled by a natural convection thermosyphon in carbon dioxide
at an absolute pressure of 600 PSIA, the heat being transferred to a
water jacket around the outside the standpipe. The water cooling for
the tubes can be part of the main concrete vessel cooling water system.
The pressure vessel of the refuelling machinery is mainly a pipe of 18"
175
176
diameter with a housing for the hoist at the upper end and an enlarged
cylindrical section at the lower end to house the standpipe plug and its
mechanism. The standpipe connection is a simple tube rigidly bolted to
the bottom flange of the pressure vessel and having an internal seal
inside the lower end. The pressure vessel is mounted by jacks off the
top of the shielding so that as the jacks are lowered the standpipe
connection slides over the standpipe and the seal is made on the outside
diameter of the standpipe. During the initial stage of lifting a fuel
stringer from the core it will still be cooled by the channel-gas flow.
After the base of the stringer has passed above the hot base seal, the
forced convection cooling ceases. While the stringer is being hoisted
through the standpipe it is cooled by thermosyphon cooling and radiation
cooling to the standpipe and fuelling machine, When fully in the
fuelling machine, the element stringer is cooled by a natural convection
flow up through the string and down between the graphite sleeve and the
cool pressure vessel wall. The heat is lost from the pressure vessel
wall by air passing up the annulus between the vessel wall and shielding,
the driving force for this air flow being generated by the 'chimney'
effect of the hot air in the annulus. Ideally the irradiated stringer
should be handled as few times as possible as the strength of the
irradiated tie-rod may be low. However, to handle an element string
immediately on discharge from the fuelling machine means handling it
while it still generates about 90 kW. This will involve an inert pres-
surised atmosphere and the use of special equipment. If the element
is allowed to decay for a week then the decay heat reduces to 20 kW,
The most economic compromise is to store the complete fuel assembly on
discharge from the reactor in externally water-cooled carbon dioxide
pressurised. tubes, After about one week's storage in these tubes, the
assembly is transferred by the fuelling machine to the facility where the
fuel stringer can be separated from the plug and taken apart, The use
of a pressurised water-cooled tube store allows the high initial decay
heat to fall so that the fuel breakdown facility can be simpler and can
use cheaper equipment(32)
. Figure 51 shows the position of the access
standpipe on an AGR and Figure 52 shows its exposed detail.
8.3 CASE STUDY
The situation produces both radial and axial temperature gradients
in the standpipe structure which give rise to thermal stresses. This
is in addition to the pressure stress and the end load stresses pro-
duced by the fuelling machine dead weight. Under fault conditions,
the standpipe can also be subjected to various impact forces caused by
falling fuel stringer components. The portion of the standpipe which
was selected, by the designer at the GEC Reactor Equipment Ltd. for the
original approach to find the stress distribution is shown in
Figure 52 (reference number 1 in this figure) and Figure 52-1.
Advantage is to be taken of the symmetry of the problem to con-
sider it as bodies of revolution (axisymmetric solids). There were
two axisymmetric loading cases to apply to the standpipe as follows:-
1. Pressure case
This is the original working case of the standpipe which is under
the gas pressure, water pressure, vertical load at the top and applied
load at the bottom as are shown in Figure 53-1. Their numerical values
were obtained from the GEC Reactor Equipment Ltd. are as follows:-
Total carbon dioxide gas pressure on the inner tube of the standpipe
P = 585.0 Psig
Load upwards on the inner tube (11.5" diameter) of pressure vessel of
the refuelling machinery
f = 585 x x 11,52 = 60763,307 lbf
down loads at the top of the standpipe produced by the fuelling machinery
f = 123200 lbf
177
net vertical load at the top
ft = fm - fp
= 62436.693 taken as 62500 lbf
area at the top of the standpipe
= L (16.52 - 11.52) = 109.899 in2 4
total pressure at the top of the standpipe
178
P = t area
- 568.7 Psig f t
net applied load at the bottom
fb = 29690.00 lbf
area at the bottom of the standpipe (inner)
= -z (12.752 - 11.5
2) = 23.793 in2
total pressure at the bottom of the standpipe
fb Pb area = - 1247.8 Psig
cooling water pressure outside of the standpipe
Pw = 100.0 Psig
The model for the pressure case is shown in Figure 53-1.
2. Drop load case
This is superimposed on the original pressure case. The effect
of dropping a fuel stringer is to produce a static load of 55 tons on
the bottom of the standpipe. Therefore, the applied load at the
bottom will be as follows;
fb = additional load due to drop + original load
= 52460 + 29690 = 82150 lbf
total pressure at the bottom of the standpipe
fb Pb area - = 3452,6 Psig
The model for the drop load case is shown in Figure 53,-2.
179
8.4 DATA PREPARATION FOR THE STANDPIPE
It was decided to use an axisymmetric ring element with triangular
cross-section TRIAX3(3) to generate the mesh for the standpipe finite
element model. The standpipe was divided into ten different sections
as shown in Figure 54-b. The mesh for 'each quadrilateral will be
generated automatically by digitising the four boundary points and
specifying the number of nodes on each side. Table 5 shows the operation
of overlays with their corresponding data in generating the mesh for
each section. There were other overlays involved in this data preparation
which may be summarised as follows:-
JOIN To combine the nodal point coordinates of each individual
section together creating a single file containing all the
nodal point coordinates of the mesh. The same operation will
take place for the element connections of each section.
CHECK To check the nodal point coordinates and the element connection.
NUM and To check the order of nodes and element numbering NODE
BONDRY To select the type of freedom for each node and create its
statements.
PRSELM To identify the load conditions, and to'select the elements
with the external forces.
MATRIX To display the general pattern of the stiffness matrix.
OPBAND To minimize the bandwidth by automatic renumbering of the nodes.
PRINT To transfer the coordinates, node number, element connections
to a special device (e.g, magnetic tape, paper tape or line
printer).
• PLTNUM To store the ASCII code of the nodes and element numbers in
the workspace for further use in plotting processes.
DISPLT To plot the mesh (Figure 54-al and its nodes and element num-
bering on the plotter,
Table 5
Section Overlay MESHCN ME
Overlay MESHGE
Overlay ADDELM
Overlay TOPO
Concentration factor on each side
Nodes on each side
Total nodes
Total elements
1 * - - * 1, 0.80 3 x 10 30 36
2 - * - * 1, 1 3 x 8 21 3 common nodes
28
3 * - - * 1, 0.85 3 x 14 42 52
4 - - * - - - 17 27
5 * - - - 1, 1.20 4 x 10 36 4 common nodes
54
6 - * - * 1, 1 4 x 4 12 4 common nodes
18
7 - * - * 1, 1 4 x 4 12 4 common nodes
18
8 - * - . * 1, 1 4 x 3 9 3 common nodes
12
9 - - * - - - 1 1
10 - * - * 1, 1 4 x 2 3 5 common nodes
6
Total nodes and elements in the mesh 183 252
The complete process of generating the mesh shown in Figure 54-b
was completed in less than 40 minutes. A total of 438 statements were
generated by the GFEGMS system which contained 1311 different numerical
data. This data was transferred to the CDC 6400 mainframe computer
where they were used as input for the ASKA program.
8.5 PROCESSING TIME
The ASKA program was run twice, once for the pressure case and
again for the drop load case. Both jobs were run under J13 category
on the CDC 6400 computer and the computer time was expended as follows:-
Pressure case
Time (seconds) ASKA Processor
1.3 START, initialisation
14.1 ACCU, evaluate the topological description
1.4 BELDA, prepare the element characteristics
0.4 BSB, build transformation matrix
1.0 BSA, assemble the kinematic connection matrix
0.2 INFUNK, print out the type of freedoms
0.7 INFEL, print out the element connections
1.8 PATA, print out the pattern for the triangularised matrix
7.7 DATIN, input data in external format
1.5 ELCO, store element coordinates
1.9 TST, check the data input
15.2 SK, calculate the element stiffness matrix
10.4 BK, assembles the global structural stiffness matrix
0.2 INFBK, print out'the pattern of the assembled stiffness matrix
1.5 BQP, 'calculate the kinematically equivalent nodal vector due to distributed load
1.8 BRQ, add the elemental nodal point forces into the net nodal point force matrices
12.4 TRIAS, triangularises the stiffness matrix
1.9 SOLVS, calculate the displacements caused by the nodal point forces using triangularised stiffness matrix
0.8 USR, change the displacement matrices in internal format to user format
0.6 DATEX, print out the nodal point displacements
181
182
Time (seconds) ASKA Processor
5.5 SP, rearrange the displacement in internal repre- sentation into element-wise representation
11.9 ST, calculate the elemental stresses
3.3 SIGEX, print out the elemental stresses
2.6 NPST, calculate the average stresses in the net nodal points
1.1 DATEX, print out the average nodal point stresses
The computer required a total of 2.145 units and 120.5 seconds of
computer time.
The computation time and the number of units needed for the drop
load case were similar to the pressure case.
8.6 RESULT PRESENTATION FOR STANDPIPE
The results obtained from ASKA program are dumped onto paper
tape (see Section 7.4.2) for transfer back to the mini-computer based
CAD system. These results consisted of nodal point displacements,
radial, axial, circumferential and shearing stresses. They were stored
on disk as permanent files named as follows:-
File Name Contents
COORGE nodal point coordinates
ELEMGE element connections
NPSTGE average nodal point stresses for pressure case
USERGE nodal point displacement for pressure case
STDROP average nodal point stresses for drop load case
USDROP. nodal point displacement for drop load case
The results from the analysis of the standpipe are shown in the
following Figures:-
Pressure case:
Figure 55-1 Nodal point displacement
Figure 55-2, 55-2-1 Radial stresses
Figure 55-3, 55-3-1 Axial stresses
Figure 55-4, 55-4-1 Circumferential stresses
Figure 55-5, 55-5-1 Shearing stresses
Drop load case:
Figure 56-1 Nodal point displacement
Figure 56-2, 56-2-1 Radial stresses
Figure 56-3, 56-3-1 Axial stresses
Figure 56-4, 56-4-1 Circumferential stresses
Figure 56-5, 56-5-1 Shearing stresses
Figure 56-5-2 Maximum shearing stress
8.7 SHRINK RING FOR A HIGH PRESSURE VESSEL
Figure 57-1 shows a shrink ring for a high pressure vessel. The
relief port-hole represents a stress raiser for the circumferential
stresses. The shrink fit causes an interfacial pressure P = 10 N/mm2
acting on the 1254 mm diameter face over the distance 235 mm wide.
For this stage of the study it is assumed that there are no radial
holes through the ring. The original approach was to find the dist-
ribution of the stresses over the ring. The finite element model used
for the calculation is shown in Figure 57-2 and the results of the
calculation are shown in Figures 57-3 and 57-4. The complete mesh
consisted of a total of 190 elements and 120 nodes have been generated
by the system in less than 15 minutes.
183
GG...; A C
▪
YO uotrc .L.11701141(101 tt• kb, 14111
aEtZ22"" Otei▪ ....cado
if
1.. ....I* me •■• arlo ••••••••••••• •••••• •• V.• •••••••• ••••••• mom ••••• ••••••••• •••
4% Immo.. 1••••••• 6.1.1. • cl.• %WI 1•••• •••••• • • ••• 41. •• • ••■••
Figure 51 .
[;i2:7-'11 '..' • I: . , ... ,
I 4 • • ! ,••••••:,t-.0-,r-t• .
I" (III. ....au I t- I .c. . .. • .:..-...e i :'• '. .. ..:.:•
ef......_,..-.1•
4_ _4,• ........:._..—L.___............4. _.„.
I I I ' • 1
.1%. ..,,L,' . • • . •:t.! I, , ..r....... )
Il
.%. :It , r... " r■ e, r 0...c ., V, . :
4.21:..-1.5..r.'1, ::. '3 ; ' : ......_ .., ..,„ -„•:,-.,-,
-.1.,* '.....•"----' • :' : - - - .,,,,. e.....- - t•-.. I . . :-... c.
4.•,,,ez...•••.;.e!Ict•:•••/* • : e•••••• • •••••
14, ,„.1.• af a•-LI•rd I. • • L.
. I 1 "
•-."1 I
LL•-•7 I
,
aLlij :rte ins
477-:e•f•4: ".'' • " • -•
•*. " : • •••.
ge=-•:.. Qs, ;5.5. •
OC., A o_..?"
(.2) %1•C.TIOKACI3
.411
44.:;:yrwry
• zs einbTa
;•:.'fl.3..; 7.9
1443rti3 )t•
on 2 lot3..J*SIP ..... ••,. ,
••••••••••.".• • • . • ;... :
C.-lMN•••••1•0....0, /..• 4... • • si •
1,... • •■•12.• 4.•• • I I II •••.,...... •• I • • I . II:. ...22 • ..•4
L,7 61I. I • II • • • . I . 1;7.. ,.,r•,. . 4-.7 . 4 : .• , .4, , .... 4. 4. -.4
.....4 •.• ,.....• • .,t •,,, • • . ••. • , • ... • • , • .., 41.44.•• 0
. • . : • • ..
y.
o .• .
I.7
*4*.4—••••/*/••• ..II • I • I ,o• 0......... .•. .
. '
....•.,••,,,.7, r..1:11 .■ ......, . a:.:•4.•'71,1-,r. ...•.••• 3 •-7,=. : r.
li
•••••,•••• sd •• •.... -- • ,.. , • — • ..... -...:Irney• •■• •••■•••• ,..i.Iy, 7•11,14:,./ 11-71 ••• ...A,. • •1 I I•IIII .......".." ....*.1•1./ .0 .::t.'' ''''"1:....1 '..;;:i.....,--4 •4 -
mil ClIsItt4}4,4,•,...,-.4..,3-404r ••,..1....,.:::::::
.--- - n '0 ',..;/ .....`4::7.3
117: _, .0. • . 1 ' .4. .-. 7-7.-'777.4. ,;,' . ' • . I c , • ../: • .., ,, ,,,,,-,,,........... .. . • Yr.7y •••• '1 \ I. PI . . 4
I, . • .
I. t .4, ' I i...-7.i....-......; lo \ .., \ ..
'• iy- .--/ 1' ‘ ..•....., • ....\----,_.---":' 0: i
-.. -far '.7.,, r .. . .\..,_..••• I\ 01.1 .$4.".-.....
WM.* ;mai. Or.. ....; lIal• e.g.-S.2 ' ,tD7,174 a
6.o., 10.1 • II .1.11 • • DI I
..------\
•-"• • • - r•••••7
• • A • •—• • 1:I
• IA 111
I
• '4.0",
• "•:.7...;;; ; . 4.• • ••
• :f.-:is'.: •.• i71:77,7 ••••
••••1 1.1 • 411,..0 a. 44 4 •11■414 1.111 ••• •I V.•••••■ • .•
IMF:UT°
• •••• • •■••,••••• • In ao••■
•41:4':"."4"."
"I $.1 I 111 • i1.1!!!7=.f..• • 4•7,, • , 0-11; ••:; rd.: I
it -0 I r-
4. • •.• X.... So •••• . • ....I .••111
•-• r •c; ,:*:•• j • •;, • 1
• 0
•••■••,1
II. 4.4 43 f• 441 ,1■111.0
C,)
. • --4
I
70(•71g7 •••::4•4 * aol • In .0,11 • %IV%
••■I ..... I • ••••44 (41 •.010-y ye Y...., 6,..1 C•
••••
• —IL-
1••••■■
•• •.&•
• • 1,
S.
,o .11111111. • 1.1..06
19 14;•1.:'.. -•• •■■••■••...•
*Ws
-• -
•- .11 1•134.4 •••••••• ..11••• roso.m. ...Do, .P11 ••••1•4 11.,1,14 •••
ID .1 ./.• .1 .00
■••••1. ••■••• .•••■•••■•••■• oll,•••• .1D •• .•. 4.4.0rn,.• DOI C.1 14 fel
47, t•fq. -I•c=imme3
_ • - • - • - _ • -___ • • - •• — •
crc•imsolea-.0r.,... fl
11.500 DIA .1- .015
R.25
22.0o DIA
16.75 DIA 15.75 DIA
Figure 52.1
186
13.75 DIA
15.51 DIA
14.24 DIA
12.75 DIA
Scale 1" 3.34" DRG.NO 083A1315
Title:
Nuclear Reactor standpipe longitudinal section thro' vessel.
Pb= 568.7 Psig
Pte= 585 Psig
Pw= 100 Psig
Pb 1247.8 Psig
Material properties:
Young's modulus E= 29*106 Psig
Poission ratio v= 0.3
187
P = 585 Psig
P t = 568.7 Psig
4k
\\\\\\\
P = 100 Psig
1 1
A A.
Pb 3452.6 Psig
Figure 53.2 Drop load case. Figure 53.1 Pressure case
188
(a)
Figure. 54.
10
7 8
6
5
(b)
•
I. 5. IIII II
II II I I
189
# •/1 - -
,e1t I I I ; #.0 „a , .1 II I 1 .* 1 0 I, ; - - - - K_ I 'is 1 I/1 I I I III I I'
1 ' 1 /I • I I .,• I 11 • I • • • #1 1 , ,/ 1 I I
—; —; 1• =;+=;+=;
P+ j F;* 4
. 1' a I. 14-4
1,'• t Fa n a
I /I 11al a II I I F÷ F
l it I I 1,1
t F+
F I II
yrl "1: 111 Ill 1
f.÷
I I II I I
II f I, I I F
I I 1 11 11
1,1 II II 1-+ /I/
II 111 1 fl
1,
ti F 11 I I II I II st
II I It I II I V
Figure 55-1 3
Overall deformation Pressure case.
rI II 11 II II 11
1 t
-300 psig 1110-4
Figure 55-2
Radial stress-pressure case
190
191
Radial stress
X
Figure 55-.2-1
Radial stress-pressure case
i+2000 psig
Figure 55-3
Axial stress-pressure case
192
Y Axial stress
Figure 55-3-1
193
Axial stress-pressure case
194
~ -~
Figure 55-4
Circumferential stress-pressure case
195
Y
sb, X circumferential stres:
Figure 55-4-1
Circumferential stress-pressure case
196
I I I
1+150 psig
Figure 55-5
Shearing stress-pressure case
shearing stress
Figure 55-5-1
Shearing stress-pressure case
197
198
- -; •• F . .I F • i F.
- _
11; ■,' t,"
I /1 /1 /: t t
11 ,./ :// :/'
I II Ii li
I 1 /1,,
1 1 I 1,1 1,1
I II P I 11 1j1i111
1 /, II/ I/
1 I /I I
II I I I I/ I/ Ij
1 I1 ;# - -
1 ; 1 I,, I/ I,
/:
e I,I '
1•=;4' -;4
pi. 1,44 1(.1.1
,F1,1
4 I-+4
"I,
-1 II 'I F4-4 ti 1/ I I F44
: Fi4 I 11 II 1,11 r1
IP4-4 I II It It 1 11 11
if II F# -I u 11 I
F-1-4 IAA 1 f11: UII
44 }4--; °
I
II II
I
Figure 56-1
Overall deformation
Drop load case.
1/1.1
F-14 I ll 11 VW: I A P 1 /I /1 I/1 , 1 II IF I I-4- -I 1401 I III
:1:/:
II 11 1111 II I
II I V I
1 1 L.J.J
(Drop load case)
- 300 psig
199
Figure 56-2 Radial stress
(Drop load case)
radial stress
Figure 56-2-1 Radial stress
200
(Drop load case)
+ 2,000 psig
201
Figure 56-3 Axial stress.
Figure 56-3-1 Axial stress
202
(Drop load case)
Y
Axial stress
(Drop load case)
+ 4,000 psig
Figure 56-4 Circumferential stress
203
204
(drop load case)
circumferential stress
Figure 56-4-1 Circumferential stress
(Drop load case)
+ 150 psig
Figure 56-5 Shearing stress
205
(Drop load case)
shearing stress
Figure 56-5-1 Shearing stress
206
1■.41. •••••
207
(Drop load case)
Figure 56-5-2 Maximum shearing stress.
Cis
1286
1 12.57
1660
14 50
Figure 57.1
32
21
4
42
37
26 27 8 39 41 _ A
A Z\Z\V '24 —25 13,-34 16
\•4 A 7i5 ,
15 V\Y V),
\/
NN 5/.
Figure 57.2
R
209
52- 51 49
--4-
43 48
—.-97
—4- 91
---b- 85
- 61 • 6
e, •-•••••• 5
— ,- 73
1z0 1r
\
3-1
~ 10 107
1 11
5- 5s
66
60
108
02
96
90
109
78
115
negative stress
I t
positive stress
.11■■•
+ 1›.-1-43
Axial stress
1cm = 1.75 N/mm
111...11
0 ›-.±‹ 10`
> 1 <
V r A
Lx
V
6
v7
A
T
4
Figure 57.3
210
Radial stress opp___411 negative stress
1cm = 2.47 N/mm
2
Circumferential stress 4C .. Positive stress
1cm = 12.51 N/mm2
Shearing stress
1cm = 1.22 N /rnrn2
f positive stress I negative stress
±<l I [> !
~* <l I D> , <3 I E>
<J I <J I f>
<1 I [> <2 I t> <J I C> <J I 1>
<J I E> <3 I ~ <3 f [> <3 I ~ !
<] I E> <J I E> <l I ~ ~~ ,
<ll~ -E3 ~ EEj ['? . ~ I ~
<J E> <l £> <l E>
~~ + +
+ ~~ + + + + + + ~
t
~ + • + • ~ ~
+- +t .. -t+
- ..... ~
Figure 57.4
211
CONCLUSIONS
The work described here demonstrates the use of computer-aided
design techniques in data processing for finite element methods. The
wider use of the finite element method for analysis has created the
need for input data-handling packages to make the method more efficient
and attractive. The main aims of CAD techniques are to maximise the
accuracy of design work and to minimise the drudgery. As an aid to
minimising the amount of preparation effort required to run finite
element analyses (via the pre-processor) and presenting the results,
not only as lists, but (via the post-processor) also as plots; a
General Finite Element Mesh Generation System has been developed. The
system described in the thesis is designed for maximum flexibility and
a good degree of generality. It enables the user to exercise a fair
amount of control over the final idealisation. The system gives the
user a feel for the problem and is oriented so that it is very easy to
use at all levels. The operation of the system is almost self-explanatory
and should not be too difficult to master. For every user there should
be a learning period, not just to learn how to operate the system,, but
to discover its potentials and to learn to plan the work in order to
exploit these potentials to the fullest. The system enables users to
generate uniform and non-uniform element meshes for two and three-
dimensional structures. The results of the finite elements may be
presented by the system in terms of scaled vectors or oblique views of
the surface. The overall deformation of the meshes may be superimposed
on the original meshes to help to understand the final behaviour of the
structures. The greater part of the preparation pre-processor and
presentation post-processor are independent of the specific finite
element program; only the output or input format of the numerical data
has to be changed to suit the actual finite element program, A new
212
213
algorithm for minimising the bandwidth by automatic renumbering of the
nodes has been developed for use on mini-computers and it has been
successfully tested for the elements with 3, 4, 6, 8 and 9 node elements.
Some main advantages of interactive graphics and GFEMGS are:-
- Easy to generate the mesh for two-dimensional and especially for three-
dimensional structures using the projection technique.
- Easy to add elements to two and three-dimensional meshes.
- Easy to modify the mesh such as deleting or adjusting the elements
using.online interactive systems.
- Easy to obtain nodes and element numbering.
- Easy to use with a minimum of input.
- Easy to display the two and three-dimensional meshes on a storage tube
display
- Easy to orientate the users during operation sequences.
- Easy to display a selected portion of the model.
- Easy to rotate and view the idealisation from any desired angle,
- Easy to move, scale and rotate the two and three-dimensional meshes.
- Easy to control element density and generation of non-uniform meshes.
- Facility for bandwidth reduction by automatic renumbering of the
nodes.
- Preparation of numerical data for the ASKA program.
- Ability to check the input and output data.
- Facility to specify the boundary and loading conditions proportionally
for the ASKA program.
- Facility for displaying the results on the storage tube display in
terms of scaled vector or oblique views of the surface.
Facility for displaying the overall distortion of the idealisation,
- Facility to plot the results, meshes, nodes and element numbering on
the flat-bed plotter.
- Economical with respect to both computer time and manual effort,
A survey of the use of the system has shown that the amount of
time required for data preparation has been reduced by a factor of 50
in most cases. The advantages of using mini-computers for this type
of application are quite obvious; lower cost, better online response
and less restricted usage.
The system described in the thesis also provides two and three-
dimensional interactive graphics facilities which can be used in the
study of certain dynamic phenomena in science and technology.
214
ACKNOWLEDGEMENTS
The author would like to thank the following for their help
throughout the GFEMGS project:-
Dr. C.B. Besant for making the project possible.
Professor J.H. Argyris and Mr. K.A. Stevens for their advice on the use
of the ASKA program.
Mr. C. Ford and Mr. D. Chapman of GEC Reactor Equipment Ltd, for advice
on the nuclear reactor standpipe.
Professor Sir Hugh Ford and Professor W.S. Elliott for the many ideas.
Mr. A. Eagles for his advice on the CAMAC system.
Members of the Imperial College Mechanical Engineering CAD Unit for
collaborative work on certain graphics programs.
Thanks are also due to the Iranian Atomic Energy Commission for
their financial support.
For her patience in typing this thesis, I would like to thank
Christine Todorovitch, and also Maria G. Fedon for her general help.
215
REFERENCES
1. Fredriksson, B. & Mackerle, J. 'Structural Mechanics Finite Element Computer Programs - Surveys and Availability' Report LiTH-IKP-R-054, LinkOping Institute of Technology, Linkoping, Sweden (1976)
2. Pilkey, W, Saczalski, K., Schaeffer, H. 'Structural Mechanics Computer Programs Survey, Assessment and Availability' University Press of Virginia, Charlottesville (1974)
3. E. Schrem ASKA Part 1 - Linear Static Analysis, User's Reference Manual ISD-Report No. 73 (ASKA UM 202), University of Stuttgart (1971)
4. MacNeal, R.H. NASTRAN Theoretical Manual NASA SP-221, Scientific and Technical Information Office, National Aeronautics and Space Administration, Washington DC (1972)
5'. Spooner, J.B. ASAS, a General Purpose Finite Element System' Finite Element Symposium, Atlas Computing Laboratory (1974)
6. Fujii, T. 'General Purpose Program for Shell Structures: ISTRAN/S' IHI Engineering Review, vol. 8, no. 2 (March 1975)
7. Hamlyn, A.D. 'Computer Aided Techniques for Building Engineering Design' PhD Thesis, Imperial College, London (1974)
8. Besant, C.B. & Jebb, A. 'CADMAC-11, a Fully Interactive Computer Aided Design System' Journal of CAD, vol. 4, no. 5 (1972)
9. CAMAC - a Modern Instrumentation System for Data Handling Euratom, EUR4100E (1964)
10. Nutbourne, A.W. 'Curve Fitting by a Sequence of Cubic Polynominals' Part 1 and 2 Journal of CAD, vol. 1, no. 4 (1969)
11. Fenner, R.T. 'Finite Element Methods for Engineers' McMillan Press Ltd. (1975)
12. DOS/BATCH Handbook 1974/1975 Digital Equipment Corporation, Maynard Massachusetts (1974)
13. Yi, C. 'The Use of Computer-Aided Design Techniques in Dynamic Graphical Simulation' PhD thesis, Imperial College, London (19761
216
14. Zienkiewicz, O.C. 'The Finite Element Method in Engineering Science' McGraw-Hill, London (1971)
15. Argyris, J.H. & Willam, K.J. 'Some Consideration for the Evaluation of Finite Element Models' Nuclear Engineering and Design, 28, 76-96, North-Holland Publishing Company (1974)
16. Fenner, Roger T. 'Computing for Engineers' Macmillan Press Ltd., London (1974)
17. Alway, G.G. & Martin D.W. 'An Algorithm for Reducing the Bandwidth of a Matrix of Symmetrical Configuration' The Computer Journal, 8, 264-272 (1965)
18. Akyu, F.A. & Utku, S. 'An Automatic Relabelling Scheme for Bandwidth Minimization of Stiffness Matrices' AIAA Journal, 6, 728-730 (1968)
19. Rosen, R. 'Matrix Bandwidth Minimization! Proc. 23rd Nat. Conf. of Assoc. for Comp. Machinery, Brandon Systems Press, Princeton, NJ, pp. 728-730 (1968)
20. Grooms, H.R. 'Algorithm for Matrix Bandwidth Reduction' Journal Struct. Div. A.S.C., 98, 203-214 (1972)
21. Collins, R.J. 'Bandwidth Reduction by Automatic Renumbering' International Journal for Numerical Methods in Engineering, vol. 6 345-356 (1973)
22. Cuthill, E. & McKee, J. 'Reducing the Bandwidth of Sparse Symmetric Matrices' Nat. Conf. of Assoc. for Comp. Machinery, San Francisco, Calif., pp. 157-172 (1969)
23. Millar, M.A. 'Node Renumbering in Structural Computing Systems' PhD Thesis, University of Manchester (1974)
24. Lame, G. & Clapeyron, B.P.E. 'Memoire sur l'equilibre Int4rieur des Corps Solides Homogenes' Mem. Acad. Sci., Paris, 4, 465 (1833)
25. Monro,.D.M. 'A Contouring Package for Regular or Irregular Data' Imperial College Computer Centre, ICCC Bulletin 4.8/2. Second version (June 1976)
26. Scragg, Martine L. . 'Matrix Mapping Package' ICCC Bulletin (Imperial College Computing Centre) 6.3/8. Second version (February 1976)
217
27. Beckwith, R.C. & Couzens, J.J. 'Interactive Microfilm Preview Package - Version 2' ICCC Bulletin 6.3/7, Imperial College, London. Third version (November 1977)
28. Gourand, H. 'Computer Display of Curved Surfaces' PhD Thesis, Dept. of Electrical Engineering, University of Utah (1971)
29. Newell, R.G. 'The Visualisation of Three-Dimensional Shapes' Proceedings of conference of Curved Surfaces in Engineering, Cambridge (March 1972)
30. Hertz, Hellmuth 'A Hard Copy Colour Display System for Computer Graphics' Dept. of Electrical Measurements, Lund Institute of Technology, S-22007, Lund, Sweden (1974)
31. Popov, E.P. 'Introduction to Mechanics of Solids' Prentice-Hall Inc., Englewood Cliffs, New Jersey, p. 290 (1968)
32. Lawson, D.S. 'Proposals for Advanced Gas-Cooled Reactor Refuelling Machinery for Hartlepool AGR' Symposium on Refuelling of Gas-Cooled Reactors. Paper No. 13, London (1968)
33. Buck, K.E., Bodisco, U-Vand & Winkler, K. 'Finite Element Data Generation and Presentation of Results' CAD 78. Third International Conference on Computers in Engineering and Building Design. Brighton Metropole, Sussex, UK (March 19781
34. Yu, J. Chulsoo 'Automatic Generation of Finite Element Mesh Within a Bandwidth and an Efficient Solution of the Bandmatrix. Theory and Practice in Finite Element Structural Analysis' Proc. of the 1973 Seminar on Finite Element Analysis - sponsored by the Soc. of Steel Construction of Japan. Copyright University of Tokyo Press (1973)
35. Grieger, Ingolf 'Integrated Interactive Structural Analysis with Finite Elements' CAD 78. Third International Conference on Computers in Engineering and Building Design. Brighton Metropole, Sussex, UK (March 1978)
36. Betason, J. 'Iterative Formulae for the Plotting of Conic Section Curves' Computer Instrumentation Ltd., London
218
APPENDIX A
SOFTWARE FOR FLAT-BED PLOTTER
A-1 FLAT-BED PLOTTER
The flat-bed plotter was designed and built at Imperial College.
The plotter is driven by direct current printed circuit motors via a
stereo power amplifier. The gantry and carriage are of a rigid light-
weight construction supported by compressed rubber wheels to reduce
noise. Carbon brushes bearing on a copper track on the gantry provided
power for the pen control without the necessity for leads tracks which
tend to become tangled at high speeds.
The encoder increment used on the DC plotter was 0.0001". This
is about ten times smaller than that used previously, enabling much
finer control to be maintained but necessitating faster computation by
the control computer. An error register content of about 12 position
increments was necessary to drive both D-Mac and DC plotter systems
consistently at a reasonable running speed. However, the D-Mac
system was normally run with an error of 30 increments 00.03"1 and the
DC plotter with 20 (0.002").
With this amount of error the DC plotter system ran at maximum
speeds of 15-20" per second. However, as the motors were deliberately
over-powered, acceleration and deceleration tended to be violent
producing overshoot and 'kink& in lines where X and Y acceleration
rates differed. To overcome this the target point set by the computer
was not moved at a steady rate, but was delayed near the start and end
of a line as shown in Figure A-1. This produced smooth acceleration
and deceleration of the carriage without overshoot.
The computer supplies the table with an input signal and is
capable of monitoring the error signal produced within the system and
219
220
using it to adjust the input signal. The plotter is fed with a string
of Cartesian position coordinates, together with a 'flag' indicating
whether the next line is drawn or just a movement to the start of another
line, i.e. whether or not the pen solenoid should be energised. As the
drawings are plotted in the order in which the coordinates are stored
on the disk, it is essential that the plotting speeds are as high as
possible. The final design has an accuracy of ± 0.15 mm and draws at
a maximum of 40 cm/second,
A-2 SOFTWARE TO CONTROL THE PLOTTER
The plotter was designed for high speed, accurate drawing. The
controlling software must, therefore, be capable of providing the
required accuracy whilst still maintaining a high average plotting
speed. Past experience showed that the use of Fortran Language was
inadequate because it was only possible to maintain this accuracy at
the expense of drawing speed, owing to the high computing time for even
very simple mathematical operations. Macro assembler language provides
simple mathematical and logical commands with a very fast computing
time. The program RASM was written by the author in Macro assembler to
draw straight lines to perform the more complex calculations deter-
mining the direction and length of the line.
A-3 SOFTWARE DESCRIPTION
Overlay DISPLT (menu square 21, overlay 44) subrouting PLOTDC,
RASM.
A-3-1 Overlay DISPLT
The overlay DISPLT transfers data from the workspace (I,X,Y) to
PLOTDC subroutine.
221
A-3-2 Subroutine PLOTDC(X,Y,IPEN)
This subroutine converts data X,Y into plotter format, calculating
the X and Y dominant (increment/decrement), specifying the dominant
vector. The method used to generate the vector is called Digital
Differential Analyser. It generates points along the axis to greater
delta (X or Y). Thus the line length estimate is the absolute value of
the largest delta (dominant vector). The ratio Ay/Ax or Ax/Ay is always
less than one (gradient) and determines the spacing in the non-dominant
direction (X,Y,IPEN) is the data from the workspace.
A-3-3 Subroutine RASM(IPEN,IXSN,IYSN,IG,IET)
This is the main subroutine which calculates the acceleration
and deceleration zone and controls the flat-bed plotter. This sub-
routine contains an interactive loop in which the dominant coordinate
is incremented and the non-dominant coordinate is incremented every Nth
time round the loop where N is the gradient of the line. There are two
smaller loops within the main loop. The- first reads the total error
from location 164710 (CAMAC module, ECRDY, module 7, subaddress 1,
function 0) and if it is less than an 'accuracy' which is set on the
PDP 11 switch register (SW, location 177570), the program continues, if
not, the loop is executed again. This tends to keep the error signal
constant and gives much tighter control and hence, accuracy. The
second loop introduces another time delay, effectively reducing the
'accuracy' value. This is done by simply decrementing a 'delay factor'
until its value reaches zero. This loop is used to accelerate the pen
carriage at the start of a line and decelerate it at the end, thus
reducing overshoot to an acceptable level. The plotter may be moved in
X and/or Y direction by sending a digit number to the location 164712
(CAMAC modules, EC 1004, Module 7, subaddress 1, function 1, ECSND).
222
15 3 2 1 0
L when set
X increment X decrement Y increment y decrement
The Macro instruction
MOV #1, @ #164712 ; sends 1 pulse to the X increment
MOV#4, @ #164712 ; sends 1 pulse to the Y increment
Each pulse corresponds to one step
9 pulses = 1 unit = 1/40 mm
Pen position is controlled by sending a digit number to the location
164520 (CAMAC module, ECPEN, module 5, subaddress 2, function 16).
Macro instruction for CAMAC module:
MOV #3, @ #164520 ; pen down
CLR 164520 ; pen up
The argument of subrouting RASM:
INX = 1 X dominant
= 0 Y dominant
IXSN = 0 Dominant increment +ve DX
= 1 Dominant decrement -ve DX
IYSN = 0 Non-dominant increment +ve DY
= 1 Non-dominant decrement -ve DY
IG = Gradient 32768)
IET = Dominant vector DX or DY (in 1/10 mm)
IPEN = 0 ; pen up
= 1 ; pen down
Linking of the programs;
$ RU LINK
#DISPLT < table symbol, DISPLT, PLOTDC, RASM, FRLIB/L
#FTNLIB/L/B: 40000/U/E
The speed and accuracy of the plotter can be directly controlled by the
user by setting a number at the switch register. A recommended number
to be set at the switch register for high speed and accurate drawing
is 070003.
223
D/4 D/4 L._ D/2
constant running speed
Deceleration zone
D/4 D/4 D/2
Figure A-1
224
Distance
Dead band retardation
Dead band acceleration
F/4
1
speed
Acceleration zone
225
APPENDIX B
FAST DRAWING CIRCLE ON DC PLOTTER
B-1 INTRODUCTION
There are many methods of drawing circles by using circle equations
in different coordinates on a DC plotter, such as using circle equations
in polar coordinate (x = Rcos., Y = Rsin4) or using circle equations
in Cartesian coordinate (x2 + y2 = R2), but if someone wishes to draw
a circle (e.g. with 12 ins/sec velocity) it is only possible by using
good compact software that does not involve any function like multipli-
cation or square root or sin or cos, as these involve a great deal of
computational time.
So, the best way of doing it is by writing the software in Assembler
language and if there is any calculation to use only the adding and
shifting functions, which are quick, e.g. if arithmetical shift is used
the contents of the register will shift right or left depending on the
number of times specified by the source operand, negative is a right
shift and positive is a left shift, for example:-
ASH4 2, R. means 4 * RO
ASH4f-1, R. means R./2
The equation of the circle is:-
x2 + y2 =R2
if the x value is incremented by dx and y by Sy r then (x + 642 + + (Sy)2= R
2
so the errors will be:-
EX = 2xdx + dx 2
Ey = 21roy + dy2
dx and dy can be + or - , assume only one increment, so:-
dx = +1 El = 2x + 1 + ER
dx = -1 E2 = 1 - 2x + ER
226
Sy = +1
E3 = 2y + 1 + ER
Sy = -1
E4 = 1 - 2y + ER
where ER is the running error which is zero at the beginning of the
calculation. Figure B-1 shows the area that 6x and Sy can be positive
or negative:-
6x 2 1 Sx 617 6y.
Figure B-1
6x+
Ix+ 6y 617
Clearly it is necessary to calculate only two of the possible error
cases for each increment, because in each area there are only two
possible changes, (6x and 6y) the particular two cases being determined
by knowledge of the circle quadrant being drawn, simply by knowledge
of the signs of Ix and I.
In each area only two error cases are calculated:-
Ex, Ey
(e.g. if drawing the first area shown in Figure B-1, e2 and E3 must be
calculated, because 6x is negative and Sy is positive), After
calculating two error cases, Ex and Ey, by finding whether lexl or ley!
is the smaller value, it is possible to decide how to increment x or y.
Having made this decision, use increment or decrement x or y as
appropriate, and then use the new value in the next calculation, e.g.
in the first area if:-
1E21 > 1E31 increment y by one
1E21 < 1c31 decrement x by one
Because the incrementation can be only by unity values, the error
calculated will not normally be zero. So after each calculation we will
have an error value, ex or cy. We may call this error value ER - the
227
running error, depending upon which of these errors is the smaller, ER
will be equal to the smaller value, and thus a better approximation for
the next calculation will be:-
Ex = Ex(calculated) + eR = etx
cy = cy(calculated) + ER = c'y
We base our next decision on IE'xl and IclY1 and then obtain a new ER,
which will be E'x on E'y as appropriate.
This way as discussed here only considers incrementation in x or
y but not both together. It is possible to consider the case of incre-
menting x and y together, but this is not recommended for the following
reasons: average acceleration becomes non-sinusoidal, and pen to paper
velocities can go up to 1.4 x axis speed. For proper control of
accelerating forces, and to obtain constant ink density of the plotted
line, a constant pen to paper velocity is preferred. With only x or y
incrementation the velocity will change from 0.5 to unity, but it is
proposed to use interpolation hardware which will provide high resolution
and perform an averaging function to keep pen to paper velocity constant.
Under these conditions, velocities are forced to be non-sinusoidal
in each axis, but proper control can be kept of acceleration forces.
• This discussion refers only to the condition when the plotter is
travelling at maximum speed. From rest it is required to ramp up to
this velocity.
This is a separate consideration, but naturally during ramping the
accelerations are kept to values within the maximum capability of the
plotter.
B-2 CIRCLE DIAMETER RESTRICTION
Because of the need to keep axis acceleration within the rated
values of the plotter, we must consider the accelerating forces as a
(36) function of circle diameter .
In polar coordinates:-
r = Rsine
where r is the x axis projection and R is the circle diameter. So:-
= (Rcos6)5 so r is maximum when cos@ = 1
rmax
=V= 8xR
V is tangential velocity which is kept to a constant value by hardware.
So, 6 = V/R and r = Vcos6 .
The second derivation gives us:-
ta. r = dd (Vcos6) = — (Vcos0)
* de dt t dO
• • r = -Vsin0 x
r = -Vsin6 x -7-
Irl = - V2 sine
For example, if we know that V = 12'/sec and rmax = 0.3 g, so 0.3 g = V2/R
R (for maximum allowed acceleration) = V2/0.3 g, therefore R = 1.25".
The maximum diameter circle that can be drawn at 12"/sec is 2.5".
Below this diameter we must reduce velocity to keep the acceleration to
within the 0.3 g value, so:-
V = /0.3 g R for R less than 1.25"
V = 7.6/5 for V down to 0.6"/sec
In the software it will be necessary to put a window round the final
coordinate of the curve. When the plot reaches this window the plotter
will be forced to draw directly to the end coordinates. This allows
for round-off and other errors in the computation. A successful program
was written by the author, and tested on a DC plotter.
228
APPENDIX C
BUTTON CONTROL
The functions use a facility called BUTNUM to input numerical
parameters. This is done by using the pen buttons on the cursor.
There are eight buttons on the cursor and by pressing one or a sequence
of buttons a number can be input.
Button 'Value
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8,1
8,2 8
8,3 9
8,4 0
8,5
8,6
8,7 enter number
8,8 rub out mistake
Fortran call to this subroutine:
CALL BUTNUM('Input data',INT,REAL)
INT = integer value of the data input
REAL = real value of the data input
229
APPENDIX D
OPERATING PROCEDURES
This Appendix describes the operating procedures for the GFEGMS
system.
D-1 SYSTEM INITIALISATION
The system operates from a removable cartridge running on a
DEC RK-05 disk drive. The system can operate on either a single or
double disk configuration. The two disk configurations use the top
drive for system programs and the bottom one for data storage. On the
single drive configuration, the top disk contains both programs and
data, so- the amount of store allocated is more limited. In the des-
cription of the operations, the following conventions have been
adopted:-
Boxed letters correspond to menu commands.
BN corresponds to the operation of button number N.
Messages listed on the keyborad are underlined.
Messages displayed on the screen are within single quotes,
To start up the system, use the disk with the label GFEMGS, load
the DOS monitor into the core by using the hardware bootstrap as follows
(Appendix G of DOS/BATCH Handbook):-
1. Move HALT/ENABLE switch to HALT position.
2. Load the processor switch register with 173100.
3. Depress LOAD ADDRESS processor switch.
4. Load the switch register with 177406.
5. Move HALT/ENABLE switch to ENABLE position.
6. Depress START processor switch.
When the monitor is loaded into the core it identifies itself by
printing on the keyboard:-
2.30
BATCH V08-0814
The monitor if now ready to accept a command. The $ sign indicates'
that the monitor is awaiting user action. The system operates under
a User Identification Code (UIC) of {2,2}. To gain access to it, the
user must log in under that number, therefore type on the keyboard:-
$ LO 2,2
The system replies by printing the date and time.
The GFEMGS is started by loading the program into the core and
running it. The instruction is:-
$ RU MEGE
The system replies on the screen with :-
'ZERO TABLE, MENU'
The user must respond by digitising the lower left-hand corner of the
menu. The system erases the screen and displays the Z datum cross on
the VDU. The screen is divided into four different areas:-
Z Z datum position
X
Y
X
Y
Z
The user must digitise only on the X-Y place for generating the two-
dimensional meshes. To increase the area of the X-Y plane, digitise
the menu:-
SET
Z DATUM
1
'DIGITISE Z DATUM'
231
Move the cursor to the top right-hand corner and press Bl.
D-2 GRAPHIC INPUT
D-2-1 Line Mode
Graphic input takes place in one of a number of symbol modes. The
basic one being line mode. Digitise menu:-
LINE
MODE 'LINE MODE'
In this mode, all digitised points are taken as being connected by
.straight lines. A point is normally digitised by pressing B1 when the
digitising 'pen' is in the correct position. A line (AB) is therefore
drawn by digitising point A, then digitising point B. Digitising a
further point (C) will cause a line (BC) to be drawn and so on. If
B2 is pressed before a point is digitised 'LINE BROKEN' mode is operated.
Therefore the first time B1 is pressed it will be assumed as the start
of a new line.
D-2-2 Windowing
A section of a drawing can be viewed on the screen to a large
scale by windowing the section. This is done by pressing B4,
'LEFT-HAND WINDOW POINT'
The user must digitise a point on the left side of the area to be
windowed. After digitising the left-hand point, a rectangle representing
the window is displayed on the screen with its bottom left-hand corner
fixed at the left-hand window point and its bottom right-hand corner at
the cursor position.
'RIGHT-HAND WINDOW POINT'
As the cursor is moved about the screen, the rectangle expands or con-
tracts, Press B1 when the rectangle encloses the area to be windowed.
232
To reset the window to the original size, digitise menu;
RESET
WINDOW
the display is then erased and the window will reset to its original
form.
D-2-3 Control 90° Mode
Angular control constrains the cursor to move only along
angular grid lines centred on the last point digitised. Control 90°
is switched ON or OFF by pressing B6.
'CONTROL 90 MODE'
The grid lines will be at 90 degree intervals.
D-2-4 Find Facility
This facility allows input points to be accurately superimposed
on existing data. When a point is digitised with B7, the workspace is
searched for points within an area of interest represented by a square
of fixed dimensions with the digitised point at the centre. If there
are points within the area of interest, then the point nearest to the
digitised point is stored in the workspace, if not, a message 'NO NEAR
POINT' is flashed on the screen.
D-2-5 Drive Mode
Drive mode forms an alternative means of specifying the positions
of points. In this mode the cursor can be driven around the screen
from the drive mode patch. This facility allows vectors of exact
dimensions to be input. Entry to and exit from drive mode is by
pressing B8, 'DRIVE MODE'
The increments are in units of 1, 10, 100, 1000 multiples, or
combinations of these. When drive mode is entered the cursor on the
233
screen ceases to be related to the pen position and jumps to the last
point digitised. Digitising a square on the drive mode patch causes
the cursor to move by an amount determined by the position square as
its value is shown on the Coordinate Display Unit (CDU) which is
positioned at the top of the table. When the cursor has been driven to
the required position, the centre square of the patch (marked E) is
digitised. This has the same effect as if a point has been digitised
at the position shown by the cursor.
D-2-6 Continuous Digitising
It is possible to digitise complex shapes by a series of short
straight lines using the continuous mode facility. In this mode, a
line is drawn to the cursor position every tenth of a second in a time-
based mode of operation, or after the digitising pen has moved four
millimetres in a distance-based mode.
Continuous mode is entered by digitising menu:-
CONTINUOUS
DIGITISING
The user has the following button options:-
'CONTINUOUS DIGITISING'
'Bl - START/BREAK'
'B2 - DISTANCE'
'B3 - TIME'
'B4 - DISPLAY ONLY'
'B8 - EXIT'
D-3 SETTING UP THE WORKING PARAMETERS
The working parameters are set to their default values by the
system at the initial stage. The user may change them individually by
234
235
digitising the following menu:-
IIP
ORIGIN 'SET INPUT ORIGIN'
Digitise the bottom left-hand corner of the drawing to be digitised.
Possible error message:-
'ERROR INPUT ORIGIN ON MENU'
Digitise a new point.
SET
DRAW
'DIGITISE HORIZONTAL LINE FOR SKEW CONTROL'
'FIRST POINT'
Digitise the left-hand point of the skew control line:-
'.DIGITISE 2ND SKEW CONTROL POINT'
Digitise the right-hand point of the skew control line. Possible error
message:-
'ERROR REDIGITISE SKEW'
This is indicating that the skew control line was digitised from right
to left.
1/p SCALE 'INPUT SCALE'
This is the scale at which the drawing is being input from the table
to the computer.
0/P SCALE
'OUTPUT SCALE'
The drawing is scaled by output scale factors,
236
GRID
FACTOR 'GRID FACTOR'
The grid factor defines the spacing of a uniform grid of points extending
from the input origin. The points on the grid can only be digitised.
D-4 DISPLAY WORKSPACE
The user may digitise any of the following menu squares for
displaying the workspace on the VDU:-
DISPLAY
3
DISPLAY
1
DISPLAY
2
DISPLAY ISOMT VIEW
Display- the X-Y view from data in
File 3.
Read the data from File 1, convert'
it to perspective projection, store
the X-Y projection data in File 2, then
display File 2.
Display perspective projection data
in File 2.
'Bl - DISPLAY ISOMETRIC PROJECTION'
'B2 - STORE 3D ISOMETRIC DATA IN WORKSPACE'
'DIGITISE THE ORIGIN OF ISOMETRIC PROJECTION'
If the user pressed Bl, the data in File 1 will be read and converted
into an isometric projection and it will be displayed on the VDU.
If the user pressed B2, this data after converting to an isometric
projection will be stored in File 2 and displayed on the workspace.
DISPLAY
X -Y
DISPLAY
Y-Z
DISPLAY ALL VIEW
JOY-
STICKS
237
Display X-Y view of the 3D data in File 1
Display Y-Z view of the 3D data in File 1
Display Z-X view of the 3D data in File 1
Display all the three orthogonal views of 3D data in File 1
1.70Y-STICKSk
ANY BUTTON START/BREAK'
DISPLAY
Z -X
Take the digitising pencil on the drive mode patch and press B1 on
any square , you can see directly the movement of the axis on the VDU;
after selecting the desired angle, press B1 and enter these axes by
digitising the centre square marked E. The three-dimensional data will
be rotated according to the selected axis.
CLEAR WORK- SPACE
It clears the content of the workspace by setting the input pointer at the .beginning of each file (File 1, 2 and 3)
The user may print out the content of the workspace for data
checking purposes to one of the three devices indicated by two alfa-
numerics which represent the device, by digitising the menu square:-
DEBUG !DS; B11 to VDU FILES 'LS; B2' to line printer 1,2,3 !KB: B31 to keyboard
The user may select the part of the workspace by inputting the following
parameters:-
'INPUT FILE NUMBER' e.g. 1
'1ST RECORD 11 e.g. 1
'NO OF RECORDS' e.g. 500
The content of the File 1 will be printed on the selected device.
D-5 SAVING AND RECOVERING WORKSPACE
The user may save the workspace on random access files or on the
data disk or magnetic tape as permanent files. To save the workspace
on random access files digitise menu square:-
WORK- SPACE
TO FILE
then digitise any square on the filing area (from menu square number
201 to 300). The contents of File 1 will be saved on this file square
number.
FILE TO WORK- SPACE
Digitise this menu for recovering the workspace from the random access
file, then digitise the square on the filing area whose contents are
desired to be brought to the workspace.
To save the workspace on data disk or magnetic tape, digitise the
menu square:-
238
SAVE WORK-SPACE DK1,MT
•B1 'B2 'B8
WRITE WRITE EXITS
DATA TO DK1' DATA TO MTO'
After pressing the selected button, this message will be printed'on the
keyboard:-
TYPE THE NAME OF THE FILE UPTO 8 CHARACTERS
The user may type any name to identify the permanent file which will
contain its workspace.
'Bl FILE 1'
'B3 FILE 3'
By pressing Bl, the content of File 1 will be saved on a permanent
file. Similar operations will be undertaken for File 3 if B3 is pressed.
To recover the workspace from the permanent files on data disk
or magnetic tape, digitise menu square:-
RECOVER WORK-SPACE MT,DK1
,B1 'B2 'B8
READ READ EXIT'
DATA FROM DK11 DATA FROM MTO'
After pressing the selected button, a message will be printed on the
keyboard:-
TYPE THE NAME OF THE FILE UPTO 8 CHARACTERS
The user must type the name of the permanent file which contains the
workspace.
'31 FILE 11
'B3 FILE 3'
The content of the permanent file will be added to the workspace.
D-6 LINE EDITOR
The line editor is used to delete straight lines from a drawing,
The user may edit the content of File 1 or File 3 of the workspace by
239
digitising the following menu square:-
LINE EDITOR FILE 1
'Bl START' 'B2 EXIT'
The user must place the cursor near the middle of the line which is
desired to be edited. The program will search in the workspace to find
the nearst line to the cursor.
'Bl DELETE'
'B2 ADVANCE'
'B8 EXIT'
The selected line will be displayed continuously on the VDU. The
user may delete this line by pressing Bl. Similar operations may be
undertaken by the user to edit lines in File 3 by digitising menu
square:-
LINE EDITOR FILE 3
D-7 MACRO FILE AND MACRO EDITOR
The user may create data in the workspace as a series of Macro
files. Therefore he has an access to each individual file for future
editing purposes. To open or close a file as Macro, digitise the menu
square:-
OPEN CLOSE FILE AS MACRO
181 - FILES OPEN AS MACRO' 'B3 FILE CLOSE AS MACRO' 'B8 T., EXIT'
If B3 is pressed a record (3,0,0,01 will be added to the workspace
at the existing input position, A record (4,0,0,0) is added to the
240
workspace by pressing B4.
The Macro editor operates on Macro files and items which are not
straight lines such as circle and rectangles. The user may enter the
Macro editor by digitising:-
CLEAR MACRO FILE
'Bl - DELETE' 'B3 - ADVANCE'.
Each individual Macro file will be displayed on the VDU continuously.
The user may delete the displayed Macro file by pressing B1 or
advance on searching by pressing B3.
PLOTTING
Any drawing displayed on the screen can be plotted by digitising
the menu square:-
PLOT WORK- SPACE
!FILE NUMBER TO BE PLOTTED'
The user may plot the workspace by inputting a number specifying the
file number in the workspace:-
1 File 1 of the workspace
2 File 2 of the workspace
3 File 3 of the workspace
The user must set the switch register for the speed and accuracy of
plotting, e.g. 070002.
D-9 GENERATION OF THE MESH FOR ANY QUADRILATERAL (2D MESH1
The user may generate the mesh for any quadrilateral by digitising
menu square:-
241
242
GENERAT CONCEN MESH
QUADRIL
!DIGITISE ANY QUADRILATERAL CONCENTRATED MESH'
!OVERLAY 127'
The user must digitise four points of any quadrilateral using
B1 or B7 (for Find mode), then input the following parameters:-
'POINT IN X' e.g. 20
'POINT IN Y' e.g. 10
'CONCENTRATION FACTOR IN X' e.g. 1.3
'CONCENTRATION FACTOR IN X' e.g. 0.85
After specifying the above parameters,
'Bl QUADRANGULAR ELEMENTS'
'B2 TRIANGULAR ELEMENTS' e.g..B2
'B8 EXIT'
By pressing B1 or B2 the mesh with the selected elements auto-
matically will be displayed on the VDU.
'DIGITISE THE CENTRE OF THE GLOBAL COORDINATES B1 4
'B7 FIND POINT'
The user must digitise the axis whose nodal point coordinates are
desired to be measured relative to them. Possible error:-
YOU HAVE NEGATIVE COORDINATES, DIGITISE AXIS AGAIN
After digitising the axis:-
'B2 STORE THE COORDINATES!
'BB
If the user presses B8, the program will exit without storing
the nodal point coordinates in a permanent file.
After pressing B2:-
'INPUT FILE NUMBER' e,g. 1
The user must input an integer number which will identify this permanent
file which is going to be created. on disk. The file number must be
unique.
'FIRST NODE NUMBER' e.g. 1
Input the first node number for this quadrilateral,
'X LINE IS DISPLAY ANY BUTTON TO CONTINUE'
'1 SHOWS THE DIRECTION OF BASIC INCREMENT'
The user can see the direction of the node numbering on the VDU. Press
any button to continue the program.
'INPUT COMMON NODE, 0 EXIT, DELET' e.g. 0
The user must input the node numbers which are in common with this
quadrilateral and the other quadrilaterals. If there is no common node
or you input all the common nodes, input a zero number to continue the
program. All the input common nodes will be printed on the keyboard.
Therefore if you make a mistake on inputting the common nodes, you may
delete them and restart this part of the program by inputting a negative
number.
ALL COMMON NODES INPUT ARE IGNORED. START AGAIN
The node numbering sequences will be displayed on the VDU and the
specification about this permanent file will be printed on the keyboard,
e.g:
FILE NUMBER = 1
FIRST NODE = 1 TOTAL NODES = 200
'Bl NEW MESH'
'B8 EXIT' e.g. B8
The user may press B1 to digitise a new quadrilateral or B8 to exit
from this overlay.
To generate the element connection for each quadrilateral, digitise
the menu square:-
243
GENERAT TRIANGLE QUADR- ANGLE
'FILE NUMBER ELEMENT CONNECTIONS' e.g. 1
The user must input the file number - the same as the coordinates'
file.
'NUMBER OF NODES IN X•' e„ 20
'NUMBER OF NODES IN Y' e.g, 10
'FIRST NODE NUMBER' e,g. 1
These parameters must be input by the user, This section of the
program may be repeated for all the quadrilaterals, therefore their
element connections will be stored in one single permanent file.
'Bl NO ODD ELEMENTS' e.g. B1
'B2 INPUT NODES OF ODD ELEMENTS!
If there are some elements whose element connections cannot be
generated automatically, press B2 (see Section 3.8), otherwise press
B1 to continue the program.
After pressing B2:-
'INPUT THE NODES OF THE ELEMENT'
Possible error, node number less than zero, equal node number, node
greater than 9999:-
DATA ERROR - - INPUT DATA AGAIN
The connections of each element will be printed on the keyboard,
IB1 STORE THIS ELEMENT!
'B2 INPUT DATA AGAIN'
The specification about each permanent file containing the ele-
ment connections will be printed on the keyboard, e.g:-
FILE NUMBER = 1 TOTAL ELEMENTS = 342
D-10 GENERATION OF A 3D MESH
After generating the two-dimensional mesh CX.-Y plane), the user
may transfer it to three-dimensional meshes by using the automatic
projection techniques,
244
245
D-10-1 Construction of the Picture of a Three-Dimensional Mesh
Press Bl to
1 131
'B8
NEW PLANE'
EXIT'
e.g. Bl DOUBLE X-Y
PLANE PROJECT
start.
'NUMBER OF REPEATING' e.g. 3
'SHIFTING ALL X OF X-Y PLANE BY MM' e.g. 0,0
'SHIFTING ALL Y OF X.-Y PLANE BY MM' e.g. 0.0
'SHIFTING ALL Z OF X-Y PLANE BY MM' e.g. 40,0
'PROJECTION FACTOR RELATIVE TO FIRST PLANE' e.g. 1
'DIGITISE THE CENTRE OF PROJECTION'
The user must input the above parameters and digitise a point
on the X-Y plane which specifies the centre of the projection process.
'Bl NEW PLANE'
'B8 EXIT' e.g. B8
Press B1 to project to another plane or B8 to exit from the
overlay. Message on the keyboard:-
+++ DATA FOR OVERLAY ST3D IS PREPARED +++
Subsequently the shape of the mesh will be displayed on the VDU. The
user may rotate these meshes for a better view with the aid of the
overlay JSTICK.
D-10-2 Store the coordinates of the 3D Mesh in a Permanent File
Digitise the menu square:-
3D COOR- DINATE FILE
IS DATA PREPARED FOR THIS OVERLAY?' '81 YE$' e.g. B1 1 B2 - NO EXIT'
The user must digitise overlay DOUBLE before starting this overlay
(see D-10-1).
246
Press B1 if you have already digitised the overlay DOUBLE.
'FILE NUMBER' file number of 2D mesh, e.g. 1
'DIGITISE AXIS X-Y PLANE'
The user must digitise the axis on the X-Y plane.
Possible error:-
POINT BELOW X-AXIS FOUND START AGAIN FROM OVERLAY DOUBLE
POINT BELOW Y-AXIS FOUND START AGAIN FROM OVERLAY DOUBLE
POINT BELOW Z-AXIS FOUND START AGAIN FROM OVERLAY DOUBLE
The data (NODE,X,Y,Z) of the three-dimensional mesh will be stored
in the same file number as the two-dimensional mesh (i.e. the two-
dimensional mesh will be transferred to the three-dimensional mesh).
The specification about this permanent file will be printed on the
keyboard.
FILE NUMBER = 1 TOTAL 3D NODES = 800
D-10-3 Generation of the Element Connection for Three-Dimensional Meshes
To transfer the element connections of two-dimensional meshes
to three-dimensional meshes, the user must digitise menu square:-
3D ELEMENT CONNECT
'FILE NUMBER 2D ELEM TRANSFER INTO 3D' e.g. 1
'TOTAL NODES ON 2D PLANE' e.g. 200 'TOTAL NUMBER OF REPEATING' e.g. 3
The user must input the above parameters.
'WHAT IS YOUR 2D ELEMENTS'
'Bl - TRIANGULAR' e.g. B1
'B2 - QUADRANGULAR'
'B8 - EXIT'
If the user presses B1:-
'B1 PENTAHEDRONAL ELEMENT PENTA 6' e.g. B1
1 B2 PENTAHEDRONAL TET4 MACRO ELEMENT PERTET4'
'B3 RETURN'
247
The user may select the type of the three-dimensional element by
pressing B1 or B2.
If the user presses B2 (quadrangular two-dimensional elements).
'Bl - - HEXAHEDRONAL ELEMENTS HEXER'
'B2 - HEXAHEDRONAL MACRO ELEMENTS HETET4'
'138 - - RETURN'
At each time the shape of the selected three-dimensional element
will be displayed on the VDU.
The program will generate the element connections for the selected
three-dimensional elements. Message on the keyboard:-
FILE NUMBER = 1 TOTAL 3D ELEMENTS = 1026
D-10-4 Adding Three-Dimensional Elements
To add manually elements to three-dimensional meshes, the user
must digitise the menu square:-
PROJECT ANY
PLANE ADD 3D
'B3 - DISPLAY SHAPE OF THE ELEMENTS' 'B7 - STORE AND DISPLAY ELEMENTS' e.g. B7 'B8 - EXIT' 'DIGITISE AXIS X-Y PLANE'
The user may press B3 only to display temporarily the shape of
the additional elements or B7 to store and display the connections and
coordinates of the extra elements. B7 is also used to digitise the
axis on the X-Y plane. Therefore bring the cursor on the position of
the X-Y plane axis and press B7.
'3D FILE - NUMBER' e.g. 1
This number will identify the coordinates and element connection files.
'SELECT THE PLANE'
'DIGITISE THE NODES ON THE PLANE B6'
'B8 - EXIT'
The user may choose any plane of the existing three-dimensional
elements by digitising the nodes on that plane, e,g, the user may
248
digitise three nodes for adding PENTA6 elements or four nodes for adding
HEXER elements,
After pressing B8, the selected plane will be continuously dis-
played on the VDU.
1 B1 ACCEPT THE SURFACE' e.g. B1
'B2 RESTART'
The user must input the following parameters:-
'INCREMENT IN X MM'
e.g. 0,0
'INCREMENT IN Y MM!
e.g. 0.0
'INCREMENT IN Z MM'
e,g, 40,0
'NUMBER OF ELEMENTS!
e.g, 20
The shape of the element will be displayed on a three-dimensional
mesh and the new node numbers and element connections will be added
to the same file number. Message on the keyboard:-
FILE NUMBER = 1 TOTAL 3D NODES = 860 TOTAL 3D ELEMENTS = 1046
D-11 TRANSFER OF DATA FROM PDP TO CDC COMPUTERS
D-11-1 Using Magnetic Tape
First you must label your magnetic tape on the CDC machine, to
do this:-
JOB (job number,J4,MT)
PASSWORD
LABEL (TAPE7,VSN=name of tape,F=S,D=800,W)
FOR
EOF
Now put this magnetic tape on PDP magnetic tape drive and type
the following commands:,-
$ RU PIP
*XT:< name of the permanent files, e,g. M1.DAT, Cl,DAT
Run the program TRANSF on the CDC computer with the following job control
cards:-
JOB(job number,J4,MT)
PASSWORD
LABEL(TAPE 7,VSN=name of tape,F=S,PO=R,D=800,MT,R)
FILE (TAPE 7,RT=S,BT=C)
TEST (MNF)
MNF(B)
LDSET(FILE5=TAPE7)
LGO.
QUEUE(TAPE 8=PUNCH)
FOR
PROGRAM TRANSF(INPUT,OUTPUT,TAPE5=INPUT,TAPE6=OUTPUT
1,TAPE7,TAPE8)
C READ THE NODAL POINT COORDINATES
DO 10 I=1,ITOTAL
READ(7,11)IN,X,Y,Z
11 FORMAT(10X,I4,3(8X,F8.3))
C SCALE THE COORDINATES OR CHANGE THEIR FORMATS
C TO GENERATE THE PUNCH CARDS
WRITE(8,11)IN,X,Y,Z
10 CONTINUE
C READ ELEMENT CONNECTIONS E.G. TRIANGULAR ELEMENTS DO 20 I=1,IELM
READ(7,21)N1,N2,N3
21 FORMAT(21X,3(1X,I4,1X))
WRITE(8,21)N1,N2,N3
20 CONTINUE
STOP
END
EOF
D-11-2 Using Paper Tape
Type the following commands to transfer the permanent files to
paper tape:-
$ RU PIP
PP:< name of permanent files, e.g. Ml.DAT, C1.DAT
249
250
Log in on the Olivetti CDC Terminal, after it responds (/), type
the following commands:-
/NEW, DATA 1
/TAPE
Now press STX switch and put the paper tape on its paper tape reader
drive and type:-
TEXT
As the paper tape reaches its end, stop the paper tape reader
and type the following commands:-
NORMAL
/PACK
/SAVE, DATA 1
/QUEUE(DATA 1=PUNCH)
/QSTATUS(Q=FREE,QT=PH,QN=punch ID)
The content of the permanent file will be transferred to the
punched cards which may be used as input for the finite element programs,