The tiny Finite Element System for Android Smartphones
Composed and edited by
Professor Dr. Frank Rieg
Chair for Engineering Design and CAD
All rights reserved by the editor
Version 1.0
TABLE OF CONTENTS
1 THE FINITE ELEMENTS PROGRAM
Z88TINA
2 A
QUICK TOUR THROUGH Z88TINA
2.1 ENTER A NEW STRUCTURE – 1ST
EXAMPLE
2.2 ENTER A NEW STRUCTURE – 2ND
EXAMPLE
2.3 READ IN AN EXISTING STRUCTURE –
3RD EXAMPLE
2.4 READ IN AN EXISTING STRUCTURE –
4th EXAMPLE
3.2 GENERAL STRUCTURE DATA Z88I1.TXT
3.3 BOUNDARY CONDITIONS Z88I2.TXT
4 DESCRIPTION OF THE FINITE ELEMENTS
4.1 BEAM NO.2 WITH 2 NODES IN SPACE
4.3 CAM ELEMENT NO.5 WITH 2 NODES
4.5 BEAM NO.13 WITH 2 NODES IN PLANE
4.6 PLANE STRESS ELEMENT NO.14 WITH
6 NODES
5.1 CRANE TRUSS WITH TRUSSES NO.4
5.2 TRANSMISSION CAM WITH CAM
ELEMENTS NO.5
5.3 BEAM IN PLANE WITH BEAMS NO.13
5.4 PIPE UNDER INTERNAL PRESSURE,
TORUS NO.15
Z88Tina (www.z88tina.de) is a very, very small cousin
of our full-scale FEA program Z88Aurora (www.z88.de)
for Windows, LINUX and Mac OS-X and is designed for Android Smartphones and
Android Tablets. Z88Tina was thoroughly tested on Samsung smartphones Galaxy S2
and S3, and on a Samsung Tablet Tab3
Z88Tina can operate
in two modes:
1. Enter a new
structure interactively
2. Read in an
existing structure
Before we begin
please keep in mind:
Always compare FE
calculations with analytical rough calculations, results of experiments,
plausibility considerations and other tests without exception!
Sign definitions of Z88Tina (and also other FEA programs) may differ
from the usual definitions of the analytical technical mechanics from time to
time .
If you already have FEA experiences, you can start at
once. If you are a beginner in this area, i would recommend secondary
literature. Here are a few choices – especially the first two ones are
excellent:
·
Zienkiewicz, O.C.; Taylor, R.L.: The Finite Element Method, Volumes 1-3,
5th edition, Butterworth- Heinemann and John Wiley & Sons, 2000
·
Bathe,K.J.: Finite Elemente Procedures. Prentice Hall, 1995
·
Rieg,F.; Hackenschmidt, R., Alber-Laukant, B.: Finite Elemente Analyse
für Ingenieure. Carl Hanser Verlag, München Wien 2012, 4th edition (in German
language – an English edition is under way)
Some hints for operating T88Tina:
Return from
OpenGL graphics screen: Tap on graph screen.
Summary of the Z88 element library:
(You will find the exact description of the element
library in chapter 4.)
Beam No. 2
- Linear function for tensile stress, cubic function for bending stress
- Quality of displacements exact (Hooke 's law)
- Quality of stresses exact (Hooke ' s law)
- Computing effort: Low
- Size of element stiffness matrix: 12 ´ 12
Truss No. 4
- Linear function
- Quality of displacements exact (Hooke 's law)
- Quality of stresses exact (Hooke ' s law)
- Computing effort: Minimal
- Size of element stiffness matrix: 6 ´ 6
- Linear function for torsion and tensile stress, cubic function for
bending stress
- Quality of displacements exact (Hooke 's law)
- Quality of stresses exact (Hooke ' s law)
- Computing effort: Low
- Size of element stiffness matrix: 12 ´ 12
Truss No. 9
- Linear function
- Quality of displacements exact (Hooke 's law)
- Quality of stresses exact (Hooke ' s law)
- Computing effort: Minimal
- Size of element stiffness matrix: 4 ´ 4
Beam No. 13
- Linear function for tensile stress, cubic function for bending stress
- Quality of displacements exact (Hooke 's law)
- Quality of stresses exact (Hooke ' s law)
- Computing effort: Low
- Size of element stiffness matrix: 8 ´ 8
Plane Stress Isoparametric Element No. 14
- Quadratic Isoparametric Serendipity element
- Quality of displacements very good
- Quality of stresses in the corner nodes good
- Computing effort: medium
- Size of element stiffness matrix: 12 ´ 12
Torus No. 15
- Quadratic Isoparametric Serendipity element
- Quality of displacements very good
- Quality of stresses in the corner nodes good
- Computing effort: medium
- Size of element stiffness matrix: 12 ´ 12
Isoparametric Plate Element No. 18
- Quadratic Isoparametric Serendipity element following Reissner-
Mindlin's theory
- Quality of displacements very good
- Quality of stresses in the corner nodes acceptable
- Computing effort: medium
- Size of element stiffness matrix: 18 ´ 18
Let us assume the following very simple structure: A beam fixed on the
left side and with a load on the right side:
The parameters for
cross-section area, second moment of inertia zz (bending around zz
axis), max. distance from neutral axis zz , Young’s modulus and
We want to see results not only for the right side but in addition for x
=
One computes analytically:
Now we’ll solve this problem with Z88Tina:
In the main menu Z88TINA press
Enter new Structure and enter now the
general data, i.e.
- the total number of nodes = 4 for our example
- the total number of DOF (degrees of freedom) = 12 for our example
because we want to use
Beams No.13 (Beam in plane) with
3 DOF each times 4 nodes
- the total number of elements = 3 for our example
- the total number of Element data = 1 for our example because we’ll use
3 beams with the
same parameters
- the total number of BC (boundary conditions) = 4 for our example
because we’ll fix the first
node in all the 3 DOF and enter
a load onto node 4.
- set the appropriate flags, here Beams
(internally IBFLAG). The flags Polar/Cyl.Coor.
(internally KFLAG), Plates (internally IPFLAG) and Surface Loads (internally IQFLAG)
don’t apply here for this
example. See chapters 3 & 4 for a detailled explanation of these
Press Enter general Data then.
The default menu.
After entering the
appropriate data press Enter general Data
to allocate memory. Proceed with Nodes:
The first node.
Press Enter after each node. The node
counter is incremented (though you may enter your own node number if you made a
mistake) up to the highest counter you entered one screen before for total # of nodes.
The second node.
The third node.
The forth node.
Then Return to the Enter new Structure screen. Proceed with
Element Type:
We’ll use Beam
No.13 in plane:
You may enter only
the first two node, i.e. 1st
Node and 2nd Node because a Beam No.
13 is defined by 2 nodes. Thus, don’t care about the nodes 3 to 6.
The second beam.
As you may see on
the screen you’ll get a hint after entering element 3 by pressing Enter for each element’s coincidence
that you may proceed with the next step. Thus, Return to the Enter new Structure screen and proceed
with Element Data:
Please note that
this menu is quite large, thus, you’ll need to scroll.
Here’s why:
from element # |
1 |
this data set is valid from element 1 |
to element # |
3 |
to element 3 |
Young’s Modulus |
206000 |
|
Poisson’s Ratio |
0.3 |
|
INTORD |
1 (arbitrary) |
arbitrary for beams |
QPARA |
100 |
for beams & trusses: cross-section area |
Iyy |
1 (arbitrary) |
Second moment of inertia
yy (bending around yy axis), applies only for Beam No.2 in space |
ezz |
1 (arbitrary) |
max. distance from neutral
axis zz, applies only for Beam No.2 in space |
Izz |
3000 |
Second moment of inertia
zz (bending around zz axis) |
ezz |
10 |
max. distance from neutral
axis zz |
It |
1 (arbitrary) |
Second moment of area
(torsion), only for Beam No.2 |
Wt |
1 (arbitrary) |
Second modulus (torsion), only for
Beam No.2 |
Remark: The Beams
No.2, No.13 and Cam No.5 are so-called
Very important:
Scroll the menu down and press Enter
to store your just entered data internally.
As we have here
only one data set we may now Return
to the Enter new Structure screen and
proceed with Boundary Con.:
Here’s why:
Boundary Condition
# |
1 |
every BC needs an unique #, strictly ascending |
Node # |
1 |
the node with the BC |
DOF |
1 |
the degree of freedom of the node, here: DOF U1 of
node 1 |
ISFLAG |
2 |
2 means Displacement applied, 1 means Force applied |
Value |
0 |
a Displacement of 0 = fixed, i.e. DOF U1 of node 1
is fixed |
Here’s why:
Boundary Condition
# |
2 |
every BC needs an unique #, strictly ascending |
Node # |
1 |
the node with the BC |
DOF |
2 |
the degree of freedom of the node, here: DOF U2 of
node 1 |
ISFLAG |
2 |
2 means Displacement applied, 1 means Force applied |
Value |
0 |
a Displacement of 0 = fixed, i.e. DOF U2 of node 1
is fixed |
Here’s why:
Boundary Condition
# |
3 |
every BC needs an unique #, strictly ascending |
Node # |
1 |
the node with the BC |
DOF |
3 |
degree of freedom of the node, here: DOF U3 of node
1 |
ISFLAG |
2 |
2 means Displacement applied, 1 means Force applied |
Value |
0 |
a Displacement of 0 = fixed, i.e. DOF U3 of node 1
is fixed |
How to enter a
negative sign? Double-tap the key .-
Here’s why:
Boundary Condition
# |
4 |
every BC needs an unique #, strictly ascending |
Node # |
4 |
the node with the BC |
DOF |
2 |
degree of freedom of the node, here: DOF U2 of node
1 |
ISFLAG |
1 |
1 means Force applied, 2 means Displacement applied |
Value |
-150 |
a Force of 150 applied onto DOF U2 of node 4 |
After entering the
last BC, Return to Enter new Structure menu and Return to Z88TINA main menu and launch the Solver:
Looks good, thus, press Store
Input: Your input data will be stored in the two files
-
Z88I1.TXT : the structure data
-
Z88I2.TXT : the boundary conditions
in the Working Directory (usually /storage/sdcard0/z88) you selected in
the Z88TINA main menu.
If the Solver ran successfully, the file Z88O2.TXT containing the
displacements is stored, too, in the Working
Directory. You may now Return to Main
Menu and watch the Results and
the Graphics.
What if the Solver collapsed? You may now press Return to Data Entry Menu (note: this works only if you did not
press Store Input because then the
files are closed!) and enter better data: If a FEA Solver collapses means in
many cases wrong or too few boundary conditions especially for beams.
And quite freaky: Or you may Store
Input and check and edit the input files Z88I1.TXT and Z88I2.TXT directly. How? Download any txt-editor from the
Let us continue with some Results:
And now the Graphics:
You should know:
1. You’ll return
from the OpenGL screen by just tapping it.
2. The graphics of
Z88Tina are optimized for vertical
position, thus, hold your smartphone or tablet in a vertical position.
3. Tapping on
Android’s menu “button” left below let you see this menu directing you to 4 submenus
which are quite self-explaining.
4. You first
“build” an OpenGL scene with this menu and then you Go. If in doubt just press Autosc
and Go and watch the scene. Then
apply improvements. The buttons are:
Zoo+: increase zoom
Zoo-: decrease zoom
PaX+:
increase panning in X direction
PaX-: decrease panning in X direction
… just the same for Y and Z
RoX+:
increase rotation around the X axis by
30°
RoX-
: decrease rotation around the X axis by -30°
… just the same for Y and Z axis
Def+ : increase the
enlargement of the deflections (default is 100)
Def- : decrease the enlargement of the deflections
Autosc(ale)
: fit the structure in the screen, set all graphics parameters to default
values
5. The OpenGL
screen does not react on gestures with the one exception of tapping because
there are too few gestures defined in Android for stearing a real, full-scale
3D graphics program.
Here’s a scene with
the 3 beams deflected (note: Z88Tina connects the nodes always with straight
lines for speed reasons – thus, you see here no real cubic bending curve) and
Let us assume the
following structure of
with these
parameters:
This structure
implements a “beam” similar to chp. 2.1, thus, it will be of interest if there
will be the same results. A serie of screenshots should give you some advise:
To enter the 21
nodes is fairly easy.
The first element.
Please keep in mind to enter at first the 3 corner nodes and then the 3 middle
nodes. You may declare any of the six nodes to 1st node, then enter
the next corner node and so on – counterclockwise!
Thus, you could have entered the coincidence of element 1 also as
3 – 1 – 2 – 6 – 4 –
5 .
Coincidence for
element 2. I think you now know how to enter elements 3 ~ 6 and I’ll present
the screenshot for element 6:
… just before Enter
We may now enter
the element parameters. As all the 6 elements feature a thickness of
Don’t forget to
scroll down to press Enter :
Let us continue
with the Boundary Conditions:
However, we’ll need
to fix the DOF 1 & 2 of the nodes 1,2 and 3 each. The load will be
distributed onto the nodes 19, 20 and 21. Here’s a screenshot of DOF 1 of node
3:
The distribution of
the load is tricky: You'll need to distribute a force put on a side of an
element in this way (see chp. 3.3 for more information):
Of course, it would
be possible to put the whole load on only one single node either node 19 or
node 20 or node 21 but this would lead to a stress concentation in this single
point – not recommended!
Thus:
How to enter the –
sign? Double-tap onto the key .-
Just before Enter
We may now run the Solver:
As the Solver ran
successfully we may now Store the Input. If you want to take a look to
these two files Z88I1.TXT and Z88I2.TXT you may do this by any editor (see chp.
3 for a details of these files):
Z88I1.TXT:
2 21 6
42 1 0 0 0 0
1
2 0 0
2
2 0 15
3
2 0 30
4
2 25 0
5
2 25 15
6 2
25 30
7
2 50 0
8
2 50 15
9
2 50 30
10 2 75 0
11 2 75 15
12 2 75 30
13 2 100 0
14 2 100 15
15 2 100 30
16 2 125 0
17 2 125 15
18 2 125 30
19 2 150 0
20 2 150 15
21 2 150 30
1 14
1 7 9
4 8 5
2 14
1 9 3
5 6 2
3 14
7 13 15
10 14 11
4 14
7 15 9
11 12 8
5 14
13 19 21
16 20 17
6 14
13 21 15
17 18 14
1 6 206000
0.3 7 1.333333
0 0 0
0 0 0
Z88I2.TXT
9
1
1 2 0
1
2 2 0
2
1 2 0
2
2 2 0
3
1 2 0
3
2 2 0
19 2 1 -25
20 2 1 -100
21 2 1 -25
If you want to keep
these files for later use you should move or copy them to a (new) directory
other than the working directory. For control reasons, the file Z88O2.TXT – the
displacements – are stored in your working directory.
Now some results:
The displacement of
If you’ll add the
Nodal Forces of the nodes 1, 2 and
A plot of the
structure with nodes and elements
Choose Deflection from the menu left-side of
the Home button.
Von Mises stresses. If you want to see Pricipal or Tresca stresses adjust this in the menu of the Main page before
running the Solver.
Where is the
difference betwenn Stresses Cornerp(oints)
and Stresses Elements?
Plot of stresses: The kind of plotting the stresses within FEA programs is truly of philosophical character. As a matter of fact, numerous experiments and computer studies at the Institute of Engineering Design and CAD of the University of Bayreuth, Germany, showed, that some very expensive and well-known professional FEA programs produced incorrect stress plots in some situations! The best way is the computation of stresses directly in the Gauss points. However, this is odd for OpenGL in some modes so i decided for the following way after a lot of experiments:
· von Mises/principla/Tresca stresses in corner nodes. In fact, the stresses are computed not really in the corner nodes which would lead to very wrong results especially for very tapered elements but in Gauss points laying in the near of the current corner nodes. Stresses are computed for just the same number of Gauss points like the number of corner points. Because often a node is linked to more than one element the stresses are computed to a mean value from the „corner node“ stresses of all linked elements. This results in pretty balanced stress shadings which are mostly somewhat lower than the maximum stresses in the Gauss points, however.
· von Mises/principla/Tresca stresses as a mean value for each element. The stresses are computed in the Gauss points of the current element, added and then divided by the current number of Gauss points. This results in a mean value for the von Mises/principla/Tresca stress per element.
· von Mises/principla/Tresca stresses in Gauss points. This is most accurate but delivers not always very pretty pictures. Not implemented in Z88Tina, only in Z88Aurora.
Z88Tina may show
these stresses after a run of the Solver
– but only one type of stress:
- von Mises stresses
- Rankine or
principal stresses
- Tresca stresses
Thus, if you have
computed the von Mises stresses with a Solver run Z88Tina’s Graphics
will show the von Mises stresses. If you want to see now the Tresca stresses you must choose Tresca stresses and re-run the Solver This looks awkward but don’t you
know before starting the FE computations which type of stresses is suitable and
correct for your task?
The deflections V
in Y direction.
The following
example is taken from the book
Rieg,F.; Hackenschmidt, R.;
Alber-Laukant, B.: Finite Elemente Analyse für Ingenieure. Carl Hanser Verlag, München
Wien 2012, 4th edition (in German
language – an English edition of this book is under way)
for our full-scaled
FEA program Z88Aurora, see www.z88.de . Thus, because
this structure is too heavy for manual input we’ll read it into Z88Tina.
The is the
torsion element reacting as a torsion spring for a torque sensor. The inner
edge is fixed while the node of the outer edge with a diamter of
Nodes which
are not on 90°, 180°, 270° or 360°/0° need an angular transformation. Let us
assume the node 201 is located on 45° or 1:30 o’clock:
Thus, node
201 features a displacement of –0,494 in
X direction and +
To proceed, please
load the files from example z88-8, see www.z88tina.de.
The following
example is taken from the book
Rieg,F.; Hackenschmidt, R.;
Alber-Laukant, B.: Finite Elemente Analyse für Ingenieure. Carl Hanser Verlag, München
Wien 2012, 4th edition (in German
language – an English edition of this book is under way)
for our full-scaled
FEA program Z88Aurora, see www.z88.de . Thus,
because this structure is too heavy for manual input we’ll read it into
Z88Tina.
The circular plate was modelled in
PTC Pro/ENGINEER.
It features 2.000 mm diameter
and
To proceed, please
load the files from example z88-8, see www.z88tina.de.
The undeflected
structure in default view. Now rotate 90° around the X axis by pressing Rot+ three times:
Now activate Deflected yes:
Now the v. Mises
stresses, deflected:
Z88Tina works in reading mode with the following files and writes them
in editing mode, thus, you may edit these files on a PC and store them via USB
on the smartphone:
(1) Input Files:
·
Z88I1.TXT (general structure data, coordinates, coincidence, material
informations)
·
Z88I2.TXT (boundary conditions, loads, constraints)
Details to the input files
see sections 3.2 pp.
(2) Output Files:
·
Z88O2.TXT (calculated displacements)
Rules for entering values:
There is no need for special rules or field divisions, only the usual C
rules apply:
·
All values are to be separated by at least one blank
·
Integer numbers may contain any point or exponents
·
For floating point numbers no points need to be provided
·
Numerical values which are 0 (zero), have to be entered explicitly.
Integer numbers
Right |
1 |
345 |
55555 |
0 |
Wrong |
1. |
345. |
55555E+0 |
no entry |
Floating
point numbers (Z88 uses internally double
precision floating point numbers [Double])
Right |
1. |
345 |
5.5555E+10 |
0 |
Wrong |
1, |
345, |
O (letter O) |
no entry |
Z88 input files may have comments in every line if all corresponding
data has been filled out before. Separate the last data and the comment at
least by one blank. Blank lines and pure comment lines are not permitted.
Examine when error messages or abnormal program stops of Z88:
·
Are the files really pure
text files, well in the ASCII format? Or have they been added unnoticed hidden
control characters by your text processor?
·
Is the last line of an input
file terminated by at least one RETURN
?
·
Is your structure statically
determined or in any way statically overdefined (allowed!)? Or is it statically
indetermined, i. e. boundary conditions are missing which may cause serious
trouble. Statically indetermined structures can appear easily for Beams No.2,
Cams No.5 and Beams No.13 (take care of the rotation degrees of freedom).
·
Is the coincidence list
defined properly?
·
Plot the initial structure.
If you won’t see some pretty good stuff,
then the rest can hardly be better!
·
Always do a rough
calculation! Are the calculated deflections extremely high? Then check the
boundary conditions quite carefully!
Use the data types [Int] and [Double].
1st input group, i. e. first
line, contains:
Dimension of the structure
(2 or 3) [Int]
Number of nodes of the FEA
structure [Int]
Number of elements [Int]
Number of degrees of freedom
[Int]
Number of material
information lines [Int]
Coordinate flag KFLAG (0 or 1) [Int]
Beam flag IBFLAG (0 or 1) [Int]
Plate flag IPFLAG (0 or 1) [Int]
Surface and pressure loads
flag IQFLAG (0 or 1) [Int] – not used for Z88Tina
V1.0
Write all numbers into a line, separate at least by one blank
respectively.
Explanation KFLAG:
At input of 0 the coordinates are expected cartesian while at input of 1
polar or cylindrical coordinates are expected. The latter are then converted
into cartesian coordinates. Caution: The axisymmetric elements No. 15 positively
expect cylindrical coordinates, set KFLAG to 0 here!
Explanation IBFLAG:
If Beams No.2 or Beams No.13 appear in the structure, then set beam flag
IBFLAG to 1, otherwise it must be 0.
Explanation IPFLAG:
If Plates No.18 appear in the structure, then set plate flag IPFLAG to
1, otherwise it must be 0.
Caution: This Z88 release
allows only beams or plates in a structure, not both in the same
structure, because the DOF of the beams and the plates are not compatible!
Explanation IQFLAG:
Example:
Your
structure features 4 nodes with 3 beams No.13 (=3 DOF per node, 2-dimensional),
the same parameters for all 3 beams, cartesian coordinates.
Thus: 2 4 3
12 1 0 1 0 0
2nd input group, starting
with line 2, contains:
Coordinates, one line per node.
Node number, strictly
ascending [Int]
Number of the degrees of
freedom for this node [Int]
X-coordinate or, if KFLAG is
1, R- coordinate [Double]
Y-coordinate or, if KFLAG is
1, PHI-coordinate [Double]
Z-coordinate or, if KFLAG is
1, Z-coordinate [Double]
The Z coordinate can be dropped at 2-dimensionalen structures. Enter
angles PHI in radian.
Write all numbers into a line, separate at least by one blank respectively.
Example 1: The node no.15 has 2 degrees of freedom and the coordinates X = 45.3
and Y = 89.7 . Thus : 156 2
45.3 89.7
Example 2: The node no.68 is supposed to have 6 degrees of freedom (a Beam No.2 is
attached) and cylindrical coordinates R = 100. , PHI = 0.7854 (corresponds to
45 °), Z = 56.87. Thus 68 6
100. 0.7854 56.87
3rd input group, starting
after last node, contains:
Coincidence, two lines for every finite element
1st line:
Element number, strictly
ascending
Element type (2, 4, 5, 9,
13, 14, 15, 18), i.e.
2 = Beam No.2 in
space, 2 nodes, 6 DOF
4= Truss No.4 in
space, 2 nodes, 3 DOF
5=
9= Truss No.9 in
plane, 2 nodes, 2 DOF
13= Beam No.13 in plane, 2 nodes, 3 DOF
14=
15= Axisymmetric Element No.15, 6 nodes, 2 DOF
18= Plate Element No.18, 6 nodes, 3 DOF
Write all numbers into a line, separate at least by one blank
respectively. All numbers here of the type [Int].
2nd line: Depending on
element type
1st node number for coincidence
2nd node number for
coincidence
.....
6th node number for
coincidence
Write all numbers into a line, separate at least by one blank
respectively. All numbers here of the type [Int].
Example: An Isoparametric Serendipity Plane Stress Element No.14 has element
number 23. The coincidence has the global nodes 16, 8, 17, 20, 38, 51 (locally
these are the nodes 1-2-3-4-5-6, see chapters 4.6 ~ 4.8) . Thus resulting in
two lines:
23 14
16 8 17
20 38 51
4th input group, starting
after last element, contains:
Material information, one line for each material information.
This material information
line starts with element no. inclusively [Int]
This material information
line ends with element no. inclusively [Int]
Youngs's Modulus [Double]
Poisson's Ratio [Double]
Integration order (0, 1, 3, 7 or 13) [Int]
Cross section value QPARA [Double]
... And if beams (but not
plates!) are defined in addition:
Second moment of inertia yy
(bending around yy axis) [Double]
Max. distance from neutral
axis yy [Double]
Second moment of inertia zz
(bending around zz axis) [Double]
Max. distance from neutral
axis zz [Double]
Second moment of area
(torsion) [Double]
Second modulus (torsion) [Double]
... And if plates (but not
beams !) are defined and IQFLAG=0, in
addition:
area load
Write all numbers into a line, separate at least by one blank
respectively.
Explanation cross section
value QPARA:
QPARA is element type-dependent, e.g. for trusses QPARA is the
cross-sectional area and for plane stress elements QPARA is the thickness. See
chapter 4.
Example: The structure has 6 finite elements No.14. The thicknesses is supposed
to vary: Elements 1 to 2 thickness
1 |
2 |
206000 |
0.3 |
7 |
10. |
3 |
3 |
206000 |
0.3 |
7 |
15. |
4 |
6 |
206000 |
0.3 |
7 |
18. |
Use the data types [Int] and [Double].
1st input group, i. e. first
line, contains:
Number of the boundary
conditions: loads and constraints [Int]
2nd input group, starting in
line 2, contains:
Boundary conditions and loads. For every boundary condition and for
every load respectively one line.
node number with boundary
condition: load or constraint [Int]
Respective degree of freedom
(1,2,3,4,5,6) [Int]
Header flag: 1 = force [Int] or 2 = displacement [Int]
Value of the load or
displacement [Double]
Example: The node 1 shall be fixed respectively at his 3 degrees of freedom:
support. Node 3 gets a load of -1648 N in Y direction (i.e. DOF 2), the degrees
of freedom 2 and 3 is supposed to be fixed for the node 5. Resulting in 6
boundary conditions. Thus :
6 |
|
|
|
1 |
1 |
2 |
0 |
1 |
2 |
2 |
0 |
1 |
3 |
2 |
0 |
3 |
2 |
1 |
-1648 |
5 |
2 |
2 |
0 |
5 |
3 |
2 |
0 |
However, for elements with higher shape functions, i. e. Plane Stress
No.14, Torus No.15, and Plates No.18
edge and surface loads have to be put onto the elements according to fixed
rules which are not always physically obvious. Really funny, some load
components can have negative values (for cubic interpolation function).
Though these facts are not obvious, nethertheless they lead to correct results
which is not the case for intuitive distribution of loads to the respective nodes - please see
any good book on finite elements:
An example shall clarify the facts:
We want to distribute a force of 5400 N onto three Plane Stress Eements No.14
- the same is true for Torus Elements No.15 and Plate Elements No.18 because
they feature 3 nodes per edge i.e. a quadratic interpolation function:
An equal distribution for all nodes i.e. 771 N per node is only correct
for elements with linear interploation functions (not true for Z88Tina's continuum
elements). Here's how to do it correctly:
Thus, you'll put on node
Beam element with any symmetric profile (no slanting bend) with the
restriction that the local y-y axis must be parallel to the global X-Y
coordinate system. The profile values are provided in Z88I1.TXT. Thus, you can
use any symmetric profile in contrast to other FEA programs which sometimes
incorporate a variety of different special beam and profile subroutines without
matching all symmetric profiles as necessary. The element matches exactly
Bernoulli's bend theory and Hooke's law. It uses no approximate solution as for
the continuum elements.
Input:
> KFLAG for cartesian (0) or cylindrical
coordinates (1)
> Set beam flag IBFLAG to 1
> 6 degrees of freedom in a node (Attention: DOF5
(not right hand rule), see below)
> Element type is 2
> 2 nodes per element
At
the material information lines:
> Integration order INTORD is arbitrary, has no meaning
> Cross-sectional area QPARA
> Second moment of inertia RIYY (bending around y-y
axis)
> Max. distance EYY from
neutral axis y-y
> Second moment of
inertia RIZZ (bending around z-z axis)
> Max. distance EZZ from
neutral axis z-z
> Second moment of area
(torsion) RIT
> Second modulus
(torsion) WT
Results:
Deflections in
X, Y and Z and rotations around X, Y and Z. Attention DOF5 (not right hand
rule), see below
Stresses: SIGXX, TAUXX: Direct
stress, shear stress, SIGZZ1, SIGZZ2: Bending stress around z-z for node 1 and
node 2, SIGYY1 SIGYY2: Bending stress around y-y for node 1 and node 2
Nodal forces (=
outer forces) for each node.
The truss element No.4 can take any location in space. It is part of the
simplest elements in Z88 and is calculated extremely fast. The truss elements
matches Hooke's law exactly .
Input:
> KFLAG for cartesian (0) or cylindrical
coordinates (1)
> 3 degrees of freedom for each node
> Element type is 4
> 2 nodes per element
> Cross-section parameter QPARA is the
cross-sectional area of the truss
Results:
Displacements in
X, Y and Z
Stresses:
Nodal forces (= outer forces) for each node.
The cam element is a simplification of the general beam element No.2: It
has always a circular cross-cut. The element lies concentrically to the X axis,
consequently local and global coordinates have the same direction. Inputs and
calculations are simplified strongly through this. Like with the beam element
the results are exact according to Bernoulli's bend theory and Hooke's law, and
not approximate solutions like with the continuum elements.
Input:
> Set KFLAG on 0 for cartesian coordinates
> 6 degrees of freedom in a node (Attention DOF5
(not right hand rule), see below)
> Element type is 5
> 2 nodes per element
> Cross-section parameter QPARA is the diameter of
the cam
Results:
Deflections in
X, Y and Z and rotations around X, Y and Z. Attention DOF5 (not right hand
rule), see below
Stresses: SIGXX, TAUXX: Direct
stress, shear stress, SIGXY1, SIGXY2: Bending stress in X-Y plane for node 1
and node 2, SIGXZ1 SIGXZ2: Bending stress in X-Z plane for node 1 and node 2
Nodal forces in
X, Y and Z and nodal moments around
X, Y and Z (= outer forces & moments) for each node.
The truss element No.9 can take any location in the X-Y plane. It is the
simplest element in Z88 and is calculated extremely fast. The truss elements
matches Hooke's law exactly.
Input:
> KFLAG for cartesian (0) or polar coordinates (1)
> 2 degrees of freedom for each node
> Element type is 9
> 2 nodes per element
> Cross-section parameter QPARA is the
cross-sectional area of the truss
Results:
Displacements in
X and Y
Stresses:
Nodal forces (=
outer forces) for each node.
Beam element with any symmetric profile. The profile values are provided
in Z88I1.TXT. Thus, you can use any symmetric profile in contrast to other FEA
programs which sometimes incorporate a variety of different special beam and
profile subroutines without matching all symmetric profiles as necessary. The
element matches exactly Bernoulli's bend theory and Hooke's law. It uses no
approximate solution compared to the continuum elements.
Input:
> KFLAG for cartesian (0) or polar coordinates (1)
> Set beam flag IBFLAG to 1
> 3 degrees of freedom in a node
> Element type is 13
> 2 nodes per element
At
the material information lines:
> Any integration order INTORD (1...4), has no
influence
> Cross-sectional area QPARA
> Insert 0 for second
moment of inertia RIYY (bending around y-y axis)
> Insert 0 for max.
distance EYY from neutral axis y-y
> Second moment of
inertia RIZZ (bending around z-z axis)
> Max. distance EZZ from
neutral axis z-z
> Insert 0 for second
moment of area (torsion) RIT
> Insert 0 for second
modulus (torsion) WT
Deflections in X and Y and rotations
around Z.
Stresses: SIGXX, TAUXX: Direct stress, shear stress, SIGZZ1, SIGZZ2: Bending
stress around z-z for node 1 and node 2
Nodal forces in X and Y and nodal moments
around Z (= outer forces & moments)
for each node.
This is a curvilinear Serendipity plane stress element with square shape
functions. The transformation is isoparametric. The integration is carried out
numerically according to Gauss- Legendre. Consequently, the integration order
can be selected in Z88I1.TXT in the material information lines. The order 7 (=7
Gauss points) is mostly sufficient. This element calculates both displacements
and stresses very exactly.
Input:
> KFLAG for cartesian (0) or polar coordinates (1)
> IQFLAG=1 if edge loads for this element are filed
in Z88I5.TXT
> 2 degrees of freedom for each node
> Element type is 14
> 6 nodes
per element
> Cross-section parameter QPARA is the element
thickness
> Integration order INTORD per each mat info line.
7 is usually good. Possible is: 3 for
3 Gauss points, 7 for 7
Gauss points and 13 for 13 Gauss points.
Results:
Displacements in
X and Y.
Stresses: The reduced stresses SIGV are calculated in the corner nodes and per
element, each. You may choose this when plotting. Choose von Mises or principal or
Tresca stresses in the menu before
running the solver.
Nodal forces(=
outer forces) for each node.
This is a curvilinear Serendipity torus element with square shape
functions. The transformation is isoparametric. The integration is carried out
numerically according to Gauss- Legendre. Thus, the integration order can be
selected in Z88I1.TXT in the material information lines. The order 7 is mostly
sufficient. This element calculates both displacements and stresses very
exactly.
Input:
> In principle cylindrical coordinates are
expected: KFLAG must be 0 !
R
coordinate (= X), always positive
Z
coordinate (= Y), always positive
> IQFLAG=1 if edge loads for this element are filed
in Z88I5.TXT
> 2 degrees of freedom for each node, DOF R and Z
(= X and Y).
> Element type is 15
> 6 nodes
per element
> Cross-section parameter QPARA is 0 or any value,
no influence
> Integration order INTORD per each mat info line.
7 is usually good. Possible is: 3 for
3 Gauss points, 7 for 7
Gauss points and 13 for 13 Gauss points.
Results:
Displacements in
R and Z (= X and Y).
Stresses: The reduced stresses SIGV are calculated in the corner nodes and per
element, each. You may choose this when plotting. Choose von Mises or principal or
Tresca stresses in the menu before
running the solver.
Nodal forces(=
outer forces) for each node.
This
is a curvilinear Serendipity Reissner-Mindlin
plate element with square shape functions. The transformation is isoparametric.
The integration is carried out numerically in both axes according to
Gauss-Legendre. Consequently, the integration order can be selected in
Z88I1.TXT in the material information lines. The order 3 (= 3 points) is mostly
sufficient (reduced integration). This element calculates both displacements
and stresses quite good. Area loads are defined in the appropriate material
lines, file Z88I1.TXT, instead of Second moment of inertia RIYY. For this
element you need to set the plate flag IPFLAG to 1. Attention: In contrary to
the usual rules of the classic mechanics Z88 defines qx the rotation around the X-axis and qy the rotation around the Y-axis.
Input:
>
KFLAG for cartesian (0) or cylindrical coordinates (1)
>
set plate flag IPFLAG to 1 (or 2, if you want to reduce the shear influence)
>
set surface and pressure loads flag IQFLAG to 0 for your convenience. Then the
entry of the pressure is done via the "Second moment of inertia RIYY", see
below.
>
3 degrees of freedom for each node (w, qx,qy )
>
Element type is 18
>
6 nodes per element
>
Cross-section parameter QPARA is the element thickness
> "Second
moment of inertia RIYY" is the
pressure load
>
Integration order INTORD per each mat info line. 3 is usually good. Possible
is: 3 for
3
Gauss points, 7 for 7 Gauss points and 13 for 13 Gauss points.
Results:
Displacements in Z (i.e. w) and rotations qx around X-axis and qy around the Y-axis.
Stresses: T Stresses: The reduced
stresses SIGV are calculated in the corner nodes and per element, each. You may
choose this when plotting. Choose von
Mises or principal or Tresca stresses in the menu before
running the solver.
Nodal forces(=
outer forces) for each node.
Example 1: Crane truss. Modelled with Trusses No.4.
Example 2: Transmission cam.
Example 3: Beam in plane,
repeatedly statically over-defined. On
both sides firmly fixed Beam No.13.
Example 4: Press fit. Axially symmetric problem with Tori No.15.
Copy
the example files Z88I1.TXT and Z88I2.TXT from www.z88tina.de
, directory z88-4.
The example is simple and straight. Experiment with the 3D features of
the Graphics section.
A crane truss consists of 54 trusses, 20 nodes and forms a spatial
framework. The nodes 1, 2 and 19, 20 are fixed, the nodes 7 and 8 are loaded
per -30,000 N. The total length is
This example is taken from the (very good) book SCHWARZ, H.R.: FORTRAN
Programme zur Methode der Finiten Elemente. Teubner
Verlag,
Z88I1.TXT:
3 20
54 60 1
0 0 0 0 (3-dim, 20 nodes, 54 elements, 60 DOF, 1 mat info line, flags 0)
1 3 0
2000 0 (1st node, 3 DOF, X, Y and Z coordinate)
2 3 0
0 0 (2nd node, 3 DOF, X, Y und Z coordinate)
3 3 1000
1000 2000
4
3 2000 2000 0
5
3 2000 0
0
...........
(nodes 6 ..18 dropped here)
19 3
12000 2000 0
20 3
12000 0 0
1 4 (1st element, type Truss No.4)
1 2 (coincidence 1st element)
2 4 (2nd element, type Truss No.4)
4 5 (coincidence 2nd element)
3 4
7 8
..........
(elements
4 ..53 dropped here)
54 4
17 19
1 54 200000
0.3 1 500 (mat info from ele 1 to
54,Young's modulus,Poisson's ratio, INTORD
(any), QPARA is cross-section area of the trusses)
The structure should be fixed to the node 1, 2 and 19,
Z88I2.TXT:
10 (10 boundary conditions)
1 2 2 0 (Node 1, DOF 2, Displacement 0 (=fixed in Y
direction)
1 3 2 0 (Node 1, DOF 3, Displacement 0 (=fixed in Z direction)
2 1 2 0 (Node 2, DOF 1, Displacement 0 (=fixed in X direction)
2 3 2 0 (Node 2, DOF 3, Displacement 0 (=fixed in Z direction)
7 3 1
-30000 (Node 7, DOF 3, load -30,000)
8 3 1
-30000
19 1
2 0
19 3
2 0
20 2
2 0
20 3
2 0
Reduced stresses are not provided in Z88Tina for Trusses No.4. But Z88Tina does it
because tensile stresses of trusses are equivalent to von Mises stresses. Why don’t you try it?
And indeed, there is an element with ~ -160 N/mm2 (Results à Stresses à Ele # 45) and one
with ~ 54.5 N/mm2 (Results
à Stresses à Ele # 38).
Copy
the example files Z88I1.TXT and Z88I2.TXT from www.z88tina.de
, directory z88-3.
However, this example is so short und simple that you should consider to
enter the data interactively.
Basically, the calculation and displaying of reduced stresses is not provided in Z88Tina for cams No.5, because
newer literal sources state correctly that reduced stresses for cams and other
machinery parts under dynamic loads do not only depend on the normal and direct
stresses (which are computed by Z88Tina), but also on stress concentration
factors (impossible to calculate in Z88Tina, Z88Aurora and other FEA systems
with beam or cam elements; however, plane stress elements like No.14 would do
this job, of course) and other factors. Of course, you’ll get the several
stresses for each cam element, and it’s up to you to compute reduced stresses
on your own:
Task: A transmission cam is designed
as follows:
·
·
Gear wheel 1, reference
circle D = 45 mm, L = 20 mm
·
·
Gear wheel 2, reference
circle D = 60 mm, L = 15 mm
·
For the loads we picture the cam with the following coordinate system:
If we look onto the cam as the main view, then the origin should be at the left
end in the middle of the cam. X runs along the cam, Z runs to the upper
direction, Y runs in the rear.
Gear wheel 1 gets the following loads in the (physical) point X1 = 40,
Y1 = -22.5, Z1 = 0: Fx1 = -10,801 N, Fy1 = 6,809 N, Fz1 = 18,708 N. Fx1 results
in a bending moment M1 around the Z axis of -243,023 Nmm.
Gear wheel 2 gets the following loads in the (physical) point X2 =
117.5, Y2 = 0, Z2 = 30: Fx2 = 8,101 N, Fy2 = -14,031 N, Fz2 = -5,107 N. Fx2
results in a bending moment M2 around the Y axis of -243,030 Nmm.
This results in loads in XY and XZ plane. The "physical"
points do not exist in the FE calculation, of course, because a cam element is
formed analytically only of two points along an axis. The Y and Z coordinates
are always 0.
The cam is subdivided into eight cam elements No.5 = 9 nodes. The
bearings are assumed in the nodes 1, 5 and 9. Very important: Node 1 is fixed
in addition in the degree of freedom 4 (the torsion degree of freedom) in order
to compute the torsion angle between the two gears. Otherwise, the structure is
statically under-defined !
Z88I1.TXT:
3 9 8 54
3 0 0 0 0 (3D, 9 Node, 8 Ele, 54 DOF, 3 E-Gesetze,
Flags 0)
1 6 0
0 0 (Node 1, 6
DOF, X-, Y- und Z-Koordinate)
2 6 30
0 0 (Node 2, 6
DOF, X-, Y- und Z-Koordinate)
3 6
40 0 0
4 6
50 0 0
5 6
80 0 0
6 6
110 0 0
7 6
117.5 0 0
8 6
125 0 0
9 6
185 0 0
1 5 (Element 1, cam No.5)
1 2 (Coincidence Ele 1)
2 5 (Element 2, type 5)
2 3 (coincidence Ele 2)
..........
(Elemente 3 to 7 dropped here)
8 5
8 9
1 3
206000 0.3 1 30 (mat info from Ele 1 to
3,Young's,Poisson's, QPARA= 30)
4 6
206000 0.3 1 35 (mat info from Ele 4 to
6,Young's,Poisson's, QPARA= 35)
7 7
206000 0.3 1 40 (mat info from Ele 7 to
7,Young's,Poisson's, QPARA= 40)
INTORD is set here to 1, has no
influence.
The boundary conditions Z88I2.TXT:
18 (18 Boundary conditions)
1 1
2 0 (Node 1, DOF 1 (=X) fixed)
1 2
2 0 (Node 1, DOF 2 (=Y) fixed)
1 3
2 0 (Node 1, DOF 3 (=Z) fixed)
1 4
2 0 (Node 1, DOF 4 (=torsion) fixed)
3 1
1 -10801 (Node
3, DOF 1 (=X), load -10,801 N)
3 2
1 +6809 (Node
3, DOF 2 (=Y), load 6,809 N)
3 3
1 +18708 (Node
3, DOF 3 (=Z), load 18,708 N)
3 4 1 -420930 (Node
3, DOF 4 (torsion) -420,930 Nmm)
3 6
1 -243023 (Node
3, DOF 6 (bend. moment around Z),-243,023Nmm)
5 2
2 0
5 3
2 0
7 1
1 +8101
7 2 1 -14031
7 3
1 -5107
7 4
1 +420930
7 5
1 -243030
9 2
2 0
9 3
2 0
Results:
Keep in mind, that the "forces" of the DOF 4, 5 and 6 are
really moments, because the DOF 4, 5 and 6 are rotations.
The following pictures of the plot program show the deflected structures
in the XY and the XZ plane:
Copy
the example files Z88I1.TXT and Z88I2.TXT from www.z88tina.de
, directory z88-7.
This example deals with a beam, fixed on both sides, and loaded with
1,648 N in the middle in downward direction. This mechanical problem is covered
in every mechanical and civil engineering handbook. Geometry: Length l=
The deflection curve has inflection points, we therefore take 4 beams
No.13. Nodes 1 and 5 will be fixed and node 3 is loaded.
You would calculate analytically:
f in the middle:
f in the inflection points:
The bending moments on the
left, middle, on the right:
The slope angle in the
inflection points:
This example shows that a FEA
basically needs nodes in all locations where you want to get results. As
the beam is fixed left and right, the maximum of displacements appears in the
middle for x = l/2,
but the bending curve features two inflection points for x = l/4 and x = 3l/4.
To calculate results for this locations, the structure must be subdivided with
nodes in x = 0, x = l/4,
x = l/2
and x = 3l/4. The
undeflected and the deflected structure would like this because Z88Tina
connects the nodes with straight lines, although the deflection curve
represents a cubic parable in the case of a Beam No.13 or No.2 or Cam No.5.
This means: Z88Tina shows the deformations correctly for the node, but straight
lines are between the nodes. Therefore, no deflection curve is shown. If you
want to plot a real nice deflection curve with Z88Tina, then use basically more
nodes, e.g. 15 to 20 nodes for this example (the cubic bending curve is then
featured by a couple of straight lines).
Thus, we’ll subdivide the length l into 20 Beam Elements No.13:
Z88I1.TXT so becomes:
2 21 20 63
1 0 1 0 0 (2-D, 21 nodes, 20 ele, 63 DOF, 1 mat info, KFLAG 0, IBFLAG 1, IPFLAG
0, IQFLAG 0)
1 3 0 0 (1.node, 3 DOF, X and Y
coordinate)
2
3 250 0
…
21 3
1000 0
1 13 (1.
element, type beam in plane No.13)
1 2 (coincidence for 1. element)
2 13
2 3
…
20 13
20 21
1 20 206000 0.3 1 500 0 0 4167 5 0 0 (mat info for ele 1 to 4, Young's,
Poisson's, INTORD (any), QPARA = area, Ixx=0, exx=0, Izz,
ezz, It=0, Wt=0)
The node 1 is fixed in all degrees of freedom at the boundary
conditions. It is important to fix especially the DOF 1 = displacement in X
direction so that the structure cannot move. Node 5 is fixed in DOF 2 = displacement in Y direction and DOF 3 =
rotation around Z axis. You could also fix DOF 1 for node 5, if you wish. But
in reality one of the bearings or supports will allow for thermal expansion.
This was taken into account in Z88I2.TXT.
Here Z88I2.TXT:
6 (6 Boundary conditions)
1 1
2 0 (Node 1, DOF 1 = X gets a displacment of 0 = DOF 1 fixed)
1 2
2 0 (Node 1, DOF 2 = Y fixed)
1 3
2 0 (Node 1, DOF 3= Mb fixed (restraining moment)
11 2
1 -1648 (Node 3, DOF 2 gets load of -1,648 N)
21 2
2 0 (Node
21, DOF 2 = Y fixed)
21 3
2 0 (Node
21, DOF 3= Mb fixed
(restraining moment)
Such simple examples are well suitable to become aware of the sign
definitions. Experiment with this example and calculate other bend cases from
good handbooks. Frameworks with Beams No.2 are calculated accordingly. However,
a real spatial structure then must be available: At least one Z coordinate must
not equal 0.
As you see we’ve got a quite
nice line of deflection.
Keep in mind: Place nodes into
your structure where you want to get results!
Copy
the example files Z88I1.TXT and Z88I2.TXT from www.z88tina.de
, directory z88-9.
We look at a pipe under internal pressure. Pipe inside diameter 80 mm,
pipe outside diameter 160 mm, length 40 mm. For Torus elements the cross-section
of the pipe is important.
The inside radius shall be expanded by
The results are:
The deflections in X (= R) direction.
The v.Mises stresses per
element.
The v.Mises stresses at the
corner nodes.
The force is:
One calculates analytically
(assuming Young’s modulus E= 206000 N/mm2
and Poisson’s ratio u= 0,3):
pressure:
radial stresses:
tangential stresses:
von Mises stresses:
So what? The highest v.Mises
stresses are 587 N/mm2, which is considerably lower than the
analytical results of 612 N/mm2.
In fact, it is not possible to calculate the stresses exactly in the
corner points with good results – this is true for all FEA programs, neither Z88Tina nor Z88Aurora nor any of those
expensive commercial FEA programs can do this! As it was described Z88Tina
looks for the nearest Gaussian points to the respevtive corner and calculates
then an average value. To get the exact results we would have to now the
stresses in the Gaussian points (this is only possible with our full-scale FEA
program Z88Aurora or the open source version Z88V14OS, see www.z88.de). Even then you are not ready to go:
You’ll have to extrapolate the stresses in the Gauss points which lare located
inside an element to the according edges. Then you will see results which are very
precise.
Please understand the stress calculations and stress plots of Z88Tina to
give you a first impression.