AppendixE_User-Manual.pdf

E
DOCUMENTATION AND
USER INSTRUCTIONS OF
PROGRAM `PREP'
Appendix E contains the documentation for the program PREP developed
in Chapter 2. It gives some information about the general features of the
programs. It also presents detailed input instructions and the specimen
input data les.
E-1
E-2
E. Documentation and user instructions of program PREP
E. Documentation and User Instructions of
Program PREP
E.1 Program Documentation
E.1.1 Overview of the Program
PREP is the preprocessor that can be used for the programs for linear elastic
stress and dynamic analysis and shape optimization of shells of revolution and
also prismatic shells of rectangular and curved planform which are supported
on diaphragms at two opposite edges with the other two edges arbitrarily restrained. It contains: (a) a shape modelling tool using cubic splines, (b) an
automatic mesh generation program, (c) bandwidth and frontwidth minimization algorithm, and (d) a plotting program which is written in Fortran 77.
However, except the plotting module, all other modules of the PREP program
is already implemented in SANOPT-S and SANOPT-F analysis and optimization programs.
E.1.2 Block Structure and Main Routines
A modular approach is adopted, in that separate subroutines are employed
to perform the various operation required in curve tting and plotting. Each
module in turn is composed of one or more subroutines relevant only to its
own needs and, in some cases, of subroutines which are common to several
modules. Control of the modules is held by the main or master segment. The
main segment of the program structure for PREP is given in Figure E.1. Only
the important subroutines are shown. The modules are described in relation
to their general functions as follows:
1. FIMA handles the le management. This subroutine open and close the
necessary data les.
2. PREDAT handles input data dening the geometry, boundary conditions,
material properties and plotting control parameters.
3. PREPAR calculates the control points for every cubic B-spline segment in
turn and computes the end tangents.
4. PREGEN this subroutine generates the nodes along the cubic B-spline
curves according to the spacing specied by the background grid. In other
words, it generates meshes.
5. PRECOR is called when there is a need to carry out geometric corrections
in convergence studies.
E.1 Program documentation
E-3
FIMA
PREDAT
PREPAR
PREGEN
PRECOR
MINCON
PREPOS
PREFIX
PREP
PRELOA
PREINT
PREPLO
PLOGEO
PLOGEL
PLOMES
PLOMEL
PLOFIL
FIMA
Fig. E.1.
Main block diagram of program PREP.
6. BANDWM perform a simultaneous frontwidth and prole minimization
prior to the use of the equation solver (such as, Gaussian elimination,
frontal solver or prole solver).
7. PREPOS updates some variables after renumbering (frontwidth and prole minimisation) has been completed
8. PREFIX nds the nodes of the newly generated mesh which have got some
boundary conditions and assigns the according values to them.
9. PRELOA automatically updates the loading data (forces and moments at
the nodes) for the new generated nodes.
10. PREINT interpolates the parameters in the array paras at the t-values for
the generated nodes using a natural cubic B-spline representation.
11. PREPLO set up the plotting parameters.
E-4
E. Documentation and user instructions of program PREP
12. PLOGEO plots the geometry of the structure.
13. PLOGEL plots the loaded geometry of the structure.
14. PLOMES plots the generated mesh with the xed nodes and the loads
with point loads marked.
15. PLOMEL plots the loaded mesh.
16. PREFIL outputs the data into a le which can be read by the analysis program. furthermore, it creates an additional output le which is necessary
for a remeshing procedure.
E.1.3 File Structures
Program PREP uses the following les for input and output:
unit 5 (from keyboard) reads name of the les and some plotting control
parameters.
unit 6 (print screen) some basic data of preprocessing.
unit 10 reads the control parameters, background mesh, key points coordinates, segment data, boundary condition, loading data and material properties.
unit 11 contains the results of preprocessor. The output le can be used
as input data le for analysis program. It contains analysis control data,
element connectivity, nodal point coordinates, boundary conditions, loading
and material properties.
E.1.4 Main Dimensions and Limitations of the Program
The program at present can handle 10000 element/strip, 10 dierent material
properties, 10000 points, 100 geometry key points points, 20 segment and 10
interpolation parameters.
E.2 Input Instructions
E.2.1 Main Structure of Input Data
In the following section user instructions for preparing the input data are
presented for program PREP.
E.2 Input instructions
E-5
Data set 1: Title of problem | Three record (a80)
cols. variable name
1-80
title
description
Title of the problem
Data set 2: Parameters for preprocessor and analysis | One record (*)
cols. variable name
description
nnode
Number of nodes in each element or strip
nsegg
Number of segments in the structure
npoig
Number of key points in the structure
nnbog
Number of boundary conditions
nnlog
Number of load points at which concentrated
load is applied
nmats
Number of material sets
ngaus
Number of Gauss point (see user hints)
ngrav
Gravity loading control parameter
= 0, no gravity load to be considered
= 1, gravity loading to be considered
nrota
analysis parameter (currently undened variable)
npara
Number of parameters to be interpolated
= 1, free vibration and buckling analysis
= 2, static analysis
ncorr
Geometry correction switch
= 0, no correction required
= 1, correction required
npoco
Number of key points expressed in polar coordinates
Data set 3: Background mesh parameters title data | One record (a80)
cols. variable name
1-80
text
description
Title of the geometry control data
E-6
E. Documentation and user instructions of program PREP
Data set 4: Background mesh parameters data
Total of nsegg records
First record | One record for each segment. (*) :
cols.
variable name
jsegb
nnseb(jsegb)
description
Segment number
Number of points in each segment
Second record | One record for each segment key points. (*) :
However, denition of the rst and last key points is also suÆcient.
lnogb
Point number in each segment
coobt
h-coordinate of the segment
delta
Mesh density
Data set 5: Title of geometry denition | One record (a80)
cols.
variable name
1-80
title
description
Title of the geometry
Data set 6a: Geometry denition
One record for each key point. Total of npoig records (*).
Omit this record, if npolr 6= 0
cols.
variable name
jpoin
description
Key point number
coorg(jpoin,1) x1 -coordinate of key point
coorg(jpoin,2) x2 -coordinate of key point
Data set 6b: Geometry denition
One record for each key point. Total of npoig records (*)
Omit this record, if npolr = 0
cols.
variable name
jpoin
lpoco(jpoin)
description
Key point number
Key point coordinate identication
= 0, global Cartesian coordinates system,
< 0, local coordinate system,
> 0, local polar coordiante system
coorg(jpoin,1) x1 -coordinate of key point
coorg(jpoin,2) x2 -coordinate of key point
E.2 Input instructions
E-7
Data set 7: Coordinates of origin (polar coord.) points
Omit this record, if npolr = 0; one record for each point expressed in
polar coordinates. Total of npolr records (*)
cols.
variable name
jpoco
description
Key point number
polco(jpoco,1)
Value of x1 -coordinate of origin
polco(jpoco,2)
Value of x2 -coordinate of origin
Data set 8: Segment data
Four sets of records for each segment. Total of nsegg records.
First record set (*) :
cols.
variable name
jsegg
description
Segment number
nnseg(jsegg)
Number of key points in each segment
maseg(jsegg)
Material set number of each segment
Second record set (*): (repeated) for each key point of segment
cols.
variable name
lnodg
description
Key point number
paras(isegg,innse,1) Thickness value at key point innse (see user
hints)
paras(isegg,innse,2) Pressure value at key point innse (see user
hints)
Third record set (*) : end tangents
cols.
variable name
description
icotg(1)
Tangent indicator for cubic spline at start of
segment
icotg(2)
Tangent indicator for cubic spline at end of segment
= 0, natural spline condition,
= 1, horizontal tangent specied,
= 2, vertical tangent specied,
= 3, inclined tangent specied
E-8
E. Documentation and user instructions of program PREP
Fourth record set : correction parameters (*)
If the segment is straight line or no correction for this particular segment.
cols.
variable name
lcorr(isegg)
description
Segment correlation identication number
= 0, no correction required
= 1, put all points on a straight line
Fourth record set: correction parameters (*)
If the segment is circular.
cols.
variable name
lcorr(isegg)
description
Segment correlation identication number
= 2, put all points on a circular segment
corrf(isegg,1)
Coordinate of origin: x-coordinate
corrf(isegg,2)
Coordinate of origin: y -coordinate
corrf(isegg,3)
Radius of circular segment
Fourth record set: correction parameters (*)
If the segment is elliptic.
cols.
variable name
lcorr(isegg)
description
Segment correlation identication number
= 3, put all points on a ellipse segment
corrf(isegg,1)
Coordinate of origin: x-coordinate
corrf(isegg,2)
Coordinate of origin: x-coordinate
corrf(isegg,3)
Radius of end circle a
corrf(isegg,4)
Distance between origins b
Data set 9: Fixity condition title | One record (a80)
cols.
variable name
1-80
text
description
Fixity condition title
E.2 Input instructions
E-9
Data set 10: Fixity condition data
One record for each restrained point. Total of nnbog records (*)
cols.
variable name
nboug(iboun)
description
Key point number at which boundary condition
is specied
ifixg(1)
Constraint on u-displacement,
=0, no constraint
=1, constraint
ifixg(2)
Constraint on v -displacement
ifixg(3)
Constraint on w-displacement
prfig(1)
Value of u-displacement
prfig(2)
Value of v -displacement
prfig(3)
Value of w-displacement
Data set 11: Loading title | One record (a80)
cols.
variable name
1-80
text
description
Load title
Data set 12: Loading data
One record for each point load. Total of nnlog records (*)
cols.
variable name
nloag(iload)
description
Key point number at which load is applied
rloag(1)
Value of load in x-direction
rloag(2)
Value of load in y -direction
rloag(3)
Value of load in x-direction
Data set 13: Material properties title | One record (a80)
cols.
variable name
1-80
text
description
Title of the material type
Data set 14: Material properties data
One record for each dierent material. Total of nmats records (*)
cols.
variable name
jmats
description
Material set number
props(jmats, 1) Elastic modulus E
props(jmats, 2) Poisson's ratio props(jmats, 3) Material density E-10
E. Documentation and user instructions of program PREP
E.2.2 User Hints
The purpose of user hints is to guide the user in the preparation of the data.
In the following some comments are made about various parts of the input le.
In the data sets (*) indicates that free format is used for inputting the data.
ngaus is an analysis parameter and equal to 1, 2 and 3 for linear, quadratic
and cubic FEs and FSs respectively.
The variable npolr species the number of polar coordinate systems, the
values of which are read in data set 1.2; the rst integer species key point.
Then centre of polar coordinate system is specied in the appropriate cartesian coordinate system.
The variable ncorr is a ag for geometric correction. If set to 1, geometric
correction is used and the FE nodes are moved onto their exact location.
Furthermore, the program reads the kind of correction to be carried out for
each segment. The values are 0 for no correction, 1 for a straight line, 2 for
a circle and e for a ellipse.
npara species the number of parameters for each nodal point which would
be read in data set 1.8. The parameters will be interpolated from the background mesh to the generated FE/FS nodes. For instance, for the free vibration analysis, the parameter interpolated was the cross-sectional thickness
of structure.
As mentioned in Chapter 2, the thickness values along the shell segment
are interpolated using the thickness values at some or all the key points.
If any key point is to be excluded from the interpolation process then an
identication character is used which in the present case is '-' (see section
on specimen input data).
Segments are dened by a sequence of geometry or key points (data set
1.5). The end conditions of segments (icotg(1) and icotg(2)) inuence the
shape of the geometry (see Chapter 2). The values which can be specied
are 0 for natural end condition, 1 for horizontal alignment, 2 for vertical
alignment, 3 for alignment between rst two or last two key points of a
segment. The two values are for the start and the end of a segment.
As can be seen from data set 1.10 | boundary conditions are associated
with the geometric model and are later on transferred to the FE/FS model
after mesh generation has been completed.
E.3 Specimen input data les
E-11
E.3 Specimen Input Data File
In this section input and output graphic les are provided for a numerical
example presented in the book. This information will be of assistance to readers
who wish to run the program contained in the book on their own computer.
For clarity of the manual, presentation is limited to one example. Also the
PREP output result le is not provided for the same reason.
E.3.1 Cylinder with Hemispherical Bottom under Internal Pressure
Problem denition: Cylinder with hemisperical bottom under internal pressure is presented as an example. The geometry of cylindrical tank is dened
using 5 key points and 2 segments. The key points are dened in Cartesian
coordinate system. In other words, the polar coordinate system is not used.
The rst segment is a hemispherical bottom which is modelled using 4 key
points. The geometry correction is applied. First segment dened as circular
segment and second segment is a straight line. For circular segment origin of
the polar coordinate system (0:0; 0:0) and radius of the circle 1000.0 unit. For
the straight segment, correction factor is 1 which is suÆcient information for
denition. Two parameters are interpolated from key points to nodal points.
These parameters are applied distributed load, and thickness of the elements
respectively. In the rst circular segment uniform distributed load and in the
second straight segment linearly distributed load applied. The rst segment
is variable thickness whereas second segment is uniform thickness segment.
Typical output postscript graphs of the program is shown in Figures E.2-E.5.
A typical input le for PREP is displaced in Table E.1.
Table E.1. The input data le for cylinder with hemispherical bottom under internal pressure.
Data set
Cylinder with hemisperical bottom under internal pressure.
1
Control Data:
node segg poig nbog nlog mats gaus grav rota para corr poco
4
2
5
2
0
1
3
0
0
2
1
0
2
Backgroundmesh:
3
1
4
4
1
0.00000000
50.0000
2
1.00000000
50.0000
3
2.00000000
50.0000
4
3.00000000
50.0000
2
2
4
0.00000000
25.0000
E-12
E. Documentation and user instructions of program PREP
5
1.00000000
50.0000
Definition of Geometry:
1
0.0000000000
1000.0000000000
2
230.6158651000
973.0448719000
3
448.7991854000
893.6326377000
4
642.7876097000
766.0443100000
5
642.7876097000
1693.4444430000
1
4
1
1
0.92740000
10.75000000
2
16.36063840
3
21.29032286
4
0.92740000
21.46846000
1
3
2 0.0000000000
0.0000000000
1000.0000000000
2
2
1
4
0.92740000
21.46846000
5
0.00000000
21.46846000
2
2
1
Fixity Conditions:
1
1
0.0000
0
0.0000
1
0.0000
4
0
0.0000
1
0.0000
0
0.0000
Applied Nodal Point Loads:
Material Property:
1 210000.00 0.3000 1000.000 9.8100 0.007850
5
6
8
9
10
11
13
14
E.3 Specimen input data les
E-13
5
1
2
3
4
The output postscript le for cylinder with hemispherical bottom under
internal pressure.
Fig. E.2.
The output postscript le for cylinder with hemispherical bottom under
internal pressure.
Fig. E.3.
E-14
E. Documentation and user instructions of program PREP
The output postscript le for cylinder with hemispherical bottom under
internal pressure.
Fig. E.4.
The output postscript le for cylinder with hemispherical bottom under
internal pressure.
Fig. E.5.