1 THE FINITE ELEMENT PROGRAM Z88

1.1 GENERAL OVERVIEW FEA PROGRAM Z88

The Z88 philosophy:

+ Fast and compact: Developed for PC, no ported mainframe system
+ Flexible and transparent: Controlled by text files
+ "Small is beautifull" - a modular system vs. monolithic monsters
+ native Windows and UNIX programs, no emulation
+ Windows and UNIX programs use the same computing and grafic kernels
+ Full data exchange from and to CAD systems with DXF-Interface
+ mesh import from Pro/ENGINEER
+ Context sensitive online-help under Windows and UNIX
+ Simplest installation: No subdirectories, no change of system files
+ Under UNIX: Automatic control and cumulative runs possible

Notes:

Always compare FE calculations with analytical rough calculations, results of experiments, plausibility considerations and other tests without exception!

Keep in mind that sign definitions of Z88 (and also other FEM programs) differ from the usual definitions of the analytical technical mechanics from time to time .

Z88 is a complex computer program. How Z88 deals with other programs and utilities etc. is not predictable. We cannot give any advice and support here! You should switch off at first all other programs and utilities. Run Z88 "purely" and then start further programs step-by-step. Z88 uses only documented operating system calls of Windows and UNIX !

Summary of the Z88 element library:
(You will find the exact description of the element library in chapter 4.)

Twodimensinal problems: Plane stress, plates, beams, trusses

Plane Stress Triangle Element No. 3

- Shape functions quadratic
- Quality of displacements very good
- Quality of stresses in the center of gravity good
- Computing effort: average
- Size of element stiffness matrix: 12 * 12

Plane Stress Isoparametric Element No. 7

- Quadratic Isoparametric Serendipity element
- Quality of displacements very good
- Quality of stresses in the Gauss points very good
- Quality of stresses in the corner nodes good
- Computing effort: High
- Size of element stiffness matrix: 16 * 16

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

Plane Stress Isoparametric Element No. 11

- Cubic Isoparametric Serendipity element
- Quality of displacements excellent
- Quality of stresses in the Gauss points excellent
- Quality of stresses in the corner nodes good
- Computing effort: Very high
- Size of element stiffness matrix: 24 * 24

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 Gauss points very good
- Quality of stresses in the corner nodes good
- Computing effort: High
- 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 Gauss points good
- Quality of stresses in the corner nodes acceptable
- Computing effort: medium
- Size of element stiffness matrix: 18 * 18

Isoparametric Plate Element No. 19

- Cubic Isoparametric Lagrange element following Reissner-Mindlin's theory
- Quality of displacements very good
- Quality of stresses in the Gauss points very good
- Quality of stresses in the corner nodes good
- Computing effort: High
- Size of element stiffness matrix: 48 * 48

Isoparametric Plate Element No. 20

- Quadratic Isoparametric Serendipity element following Reissner-Mindlin's theory
- Quality of displacements very good
- Quality of stresses in the Gauss points good
- Quality of stresses in the corner nodes quite good
- Computing effort: medium
- Size of element stiffness matrix: 24 * 24

Axisymmetric problems:

Torus No. 6

- Linear function
- Quality of displacements average
- Quality of stresses in the corner nodes inaccurate
- Computing effort: Low
- Size of element stiffness matrix: 6 * 6

Torus No. 8

- Quadratic Isoparametric Serendipity element
- Quality of displacements very good
- Quality of stresses in the Gauss points very good
- Quality of stresses in the corner nodes good
- Computing effort: High
- Size of element stiffness matrix: 16 * 16

Cam No. 5

- 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

Torus No. 12

- Cubic Isoparametric Serendipity element
- Quality of displacements excellent
- Quality of stresses in the Gauss points excellent
- Quality of stresses in the corner nodes good
- Computing effort: Very high
- Size of element stiffness matrix: 24 * 24

Torus No. 15

- Quadratic Isoparametric Serendipity element
- Quality of displacements very good
- Quality of stresses in the Gauss points very good
- Quality of stresses in the corner nodes good
- Computing effort: High
- Size of element stiffness matrix: 12 * 12

Space problems:

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

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

Hexahedron No. 1

- Linear shape functions
- Quality of displacements average
- Stresses in the Gauss points useable
- Stresses in corner nodes inaccurate
- Computing effort: very high
- Size of element stiffness matrix: 24 * 24

Hexahedron No. 10

- Quadratic Isoparametric Serendipity element
- Quality of displacements very good
- Stresses in the Gauss points very good
- Stresses in corner nodes good
- Computing effort: extremely high
- Size of element stiffness matrix: 60 * 60

Tetrahedron No. 17

- Linear shape functions
- Quality of displacements bad
- Stresses in the Gauss points inaccurate
- Stresses in corner nodes very inaccurate
- Computing effort: medium
- Size of element stiffness matrix: 12 * 12

Tetrahedron No. 16

- Quadratic Isoparametric Serendipity element
- Quality of displacements very good
- Stresses in the Gauss points very good
- Stresses in corner nodes good
- Computing effort: very high
- Size of element stiffness matrix: 30 * 30

The Z88 computing units:

Overview:

Z88 always exclusively works at the tasks required at the moment. Thus, Z88 is no gigantic, monolithic program, but consists of several separate running modules according to the UNIX philosophy "Small Is Beautiful". They are loaded into the main memory according to your requirements, execute their tasks and release the main memory again. In this way Z88's achieves its enormous speed and faultlessness beating many other FE programs! The Z88 modules communicate by files, cf. Chapter 3.

Short description of the modules:

I. The Solver

The solver is the heart of any FEA system. It reads the general structure data Z88I1.TXT and the boundary conditions Z88I2.TXT and, if nessesary, the file for surface and pressure loads Z88I5.TXT. Basically, the Z88 input files can be created by CAD converter Z88X , by COSMOS converter Z88G , by mesh generator Z88N , by editor or word processor system or by a mixed procedure, e.g. by CAD and editor. The solver generates prepared structure data Z88O0.TXT and processed boundary conditions Z88O1.TXT, calculates the element stiffness matrices, compiles the total stiffness matrix, scales the system of equations, solves the (huge) system of equations and stores the displacements in Z88O2.TXT. Therefore, the main task of every FEA system, the calculation of displacements, is solved. Thereupon, if you wish, the stresses can be calculated by Z88D and/or nodal forces by Z88E .

Z88 features three different solvers:
Z88F : This is a so-called direct solver with skyline storing scheme and an in-situ Cholesky solver. It is the standard solver of Z88, easy to handle and very fast for small and medium structures. However, like any direct solver Z88F reacts badly on ill-numbered nodes but you may improve the situation with the Cuthill-McKee program Z88H. Z88F is your choice for small and medium structures, up to 20,000 ... 30,000 degrees of freedom.
Z88I1 and Z88PAR: This is a so-called direct sparse matrix solver with fill-in featuring two modules. Z88I1 computes the pointers for the storage scheme of the total stiffness matrix. Z88PAR uses the PARDISO solver and computes the stiffness matrices, addes the boundary conditions and solves the system of equations. This solver is very fast but uses very much dynamic memory. Z88I1/Z88PAR is your choice for medium-sized structures up to 150,000 DOF on ordinary 32 bit PCs. However, we’ve computed structures with ~ 1 million of DOF very fast using a computer featuring 32 (!) Gbyte of memory, 4 CPUs, 64 bit Windows version of Z88.
Z88I1 and Z88I2: This is a so-called sparse matrix iteration solver featuring two modules. Z88I1 computes the pointers for the storage scheme of the total stiffness matrix. Z88I2 computes the stiffness matrices, addes the boundary conditions and solves the system of equations by the method of conjugate gradients featuring SOR preconditioning or precontitioning by an incomplete Cholesky decomposition depending on your choice. Like any iteration solver Z88I1/Z88I2 deals well with bad node numbering. This solver needs some considerations but deals with structures with more than 100,000 DOF at nearly the same speed as the solvers of the large and expensive commercial FEA programs as our tests showed. In addition, a minimum of storage is needed. So, this solver is your choice for large structures with more than 150,000 … 200,000 DOF. Structures with ~ 5 million DOF are no problem for Z88I2 if you use a 64 bit operation system (Windows or LINUX) along with the 64 bit version of Z88 and about 6 GByte of memory (with tricks i.e. compiling Z88 with 8 Byte pointers and 4 Byte integers, 4 GByte will do). This very stable and proved solver works always, thus, you may use it as your standard solver.

II. The link to CAD programs

The CAD converter Z88X converts DXF files from CAD systems into Z88 input files (mesh generator input file Z88NI.TXT , general structure data Z88I1.TXT , boundary conditions Z88I2.TXT , the file for surface and pressure loads Z88I5.TXT and stress parameters file Z88I3.TXT ) or, and this is the real goodie, also converts Z88 input files into DXF files. You cannot only produce input data in the CAD system and then use in Z88, but you can also complete Z88 entry files which are always simple ASCII files, e.g. by text editor, by word processing, by EXCEL or e.g. by your own special programs and then convert the data sets back into the CAD system by CAD converters Z88X. In the CAD system you can add more informations, then push the data again to Z88. This flexibility is unique!

The 3D converter Z88G reads FEA input files following the COSMOS or the NASTRAN format and generates the Z88 input files Z 88I1.TXT , Z88I2.TXT , Z88I5.TXT and Z88I3.TXT automatically. You may produce COSMOS or NASTRAN data files by various CAD programs. However, Z88G is properly tested with Pro/ENGINEER with the Pro/MECHANICA option by Parametric Technology, USA. Thus, you may directly use Pro/ENGINEER 3D models with Z88!

The Cuthill-McKee program Z88H was mainly designed for use with Z88G. It allows the re-numbering of finite elements meshes and may heavily decrease the memory needs for meshes generated by automeshers i.e. Pro/MECHANICA.

III. The mesh generator for ordered meshes

The mesh generator Z88N reads the super structure data Z88NI.TXT and computes the general structure data Z88I1.TXT . In principle, the mesh generator file Z88NI.TXT has the same construction as the file of the general structure data Z88I1.TXT. It can also be generated by CAD converters Z88X, by editor or word processor system or with a mixed procedure.

IV. The postprocessors

Stresses are calculated by Z88D . Z88F or Z88I1 and Z88I2 or Z88I1 and Z88PAR must have run before. Z88D reads a small parameter file Z88I3.TXT and stores the stresses in Z88O3.TXT.

Nodal forces are calculated by Z88E . Z88F or Z88I1 and Z88I2 or Z88I1 and Z88PAR must have run before. Z88E stores the nodal forces in Z88O4.TXT.

The plot program Z88O plots deflections and stresses. Operating in 3D mode, you may use wireframe or hidden line scenes or scenes with lighting. Z88O replaces the former plot programs Z88P and Z88O V12. The Windows version works with the WinAPI and OpenGL, the LINUX version works with GTK+ and OpenGL.

V. The file checker

The Filechecker Z88V checks the input files Z88NI.TXT or Z88I1.TXT to Z88I3.TXT for formal correctness. In addition, it can show the actual memory defined by you in the file Z88.DYN.

All modules of Z88 request Memory dynamically:

The user can define this in the file Z88.DYN . Z88 is delivered with default values which you can and also should change if necessary. This is possible at any time. The Z88 modules are genuine 32 bit (or 64 bit) programs and request their memory by operating system calls via calloc. The header file Z88.DYN provides how much memory shall be requested. You can request all virtual memory (virtual memory = main memory + swap area), which is provided by the operating system. Therefore there is no limit for the size of the Z88 finite element structures ! You can also fix whether Z88 works with English or German language in Z88.DYN: Keyword ENGLISH or GERMAN .

Multitasking of Z88:

Absolute multitasking is possible under Windows and UNIX, i. e. several Z88 modules or other genuine Windows programs can run parallel. Make sure that you do not overlap the windows (put them side by side), as if the Z88 modules have once started they are not evaluating WM_PAINT signals for speed reasons. This means, that, although the Z88 programs are properly working, displays and window images can be destroyed if you enlarge, reduce, move or cover Z88 windows by other programs. This does not have any influence on the computing results and only by this trick the outstanding speed of Z88 can be gained. Keep in mind that big space structures, e.g. with 20 nodes hexahedrons, can put very heavy load on your computer which can slow down the machine totally. Thus, let Z88 run alone and do not start any memory eaters like the various office programs.

Hints for the start of Z88:

Windows:

All Z88 modules can be started directly via Explorer, from a group which contains the various Z88 modules or via Start > Run. It suffices to call the Z88-Commander Z88COM for launching all other modules.

UNIX:

Launch the modules directly from a UNIX shell, from the Z88-Commander Z88COM , or, as an extended possibility, e.g. for night runs, from a shell-script (sh, bash, ksh etc.). You have all unlimited liberties of the UNIX operating system. All modules except Z88COM and Z88O can be started in text mode from consoles, but naturally also in an X window. As GTK+ programs the Z88-Commander Z88COM and the plot program Z88O are to start from an X-term.

For a convenient use of Z88, fire up your X-Window-manager, open an X-term and launch Z88COM. Put Z88COM and the X-Term, which started Z88COM, side-by-side or over-and-under to see both.

The Input and Output of Z88:

The input and output files are generated either by an editor (e.g. the editor or notepad of Windows, UNIX tools like vi, emacs, joe), word processor program (e.g. WinWord etc.), spreadsheet program (e.g. Excel) or via CAD converter Z88X directly in a CAD program, which can read and write DXF files (e.g. AutoCAD) or by converting a COSMOS or NASTRAN file with Z88G , which came from a 3D CAD program e.g. Pro/ENGINEER..

For the user this means maximum flexibility and transparency, as the input and output files of Z88 are quite simple ASCII text files. You can fill the files by arbitrary tools or by hand, and also by self-written programs, of course. Only make sure to meet the Z88 conventions for the respective file structure cf. Chapter 3.

You can modify output files as you like, enlarge them with your own comments, reduce them to the essential or use them as input for other programs.

Dimensions, i. e. measurement units, are not used explicitly. You can work in optional measurement systems, e.g. in the Metric or Imperial measurement system. Use inches, Newtons, pounds, tons, millimeters, meters, yards - whatever you prefer. But make sure to keep the one chosen measurement units throughout all computations of this structure. Example: You want to work with mm and N so Young's modulus must be used in N/mm*mm.

Note:

The Z88 input files read always:

+ Z88G.COS COSMOS Input file coming from a 3D CAD program, for converter Z88G
+ Z88G.NAS NASTRAN Input file coming from a 3D CAD program, for converter Z88G
+ Z88X.DXF Exchange file for CAD programs and for CAD converter Z88X
+ Z88NI.TXT Input file for the mesh generator Z88N
+ Z88I1.TXT Input file (general structure data) for the solvers Z88F, Z88I2 and Z88PAR
+ Z88I2.TXT Input file (boundary conditions) for the solvers Z88F, Z88I2 and Z88PAR
+ Z88I3.TXT Input file (control values) for the stress processor Z88D
+ Z88I4.TXT Input file (control values) for the sparse matrix solvers Z88I1/Z88I2 and Z88I1/Z88PAR
+ Z88I5.TXT Input file for surface and pressure loads for the solvers Z88F, Z88I2 and Z88PAR

The Z88 output files read always:

+ Z88O0.TXT Prepared structure data for documentation purposes
+ Z88O1.TXT Prepared boundary conditions for documentation purposes
+ Z88O2.TXT Computed displacements
+ Z88O3.TXT Computed stresses
+ Z88O4.TXT Computed nodal forces

These file names are expected from the Z88 modules and they must reside in the same Directory as the Z88 modules. You cannot allocate your own names for data sets. Of course, you may rename the Z88*.* files after all calculations have been done and save them in other directories.

Making:

You may allways create the mesh generator file Z88NI.TXT, the general structure data file Z88I1.TXT, the boundary conditions file Z88I2.TXT, the file for surface and pressure loads Z88I5.TXT and the control values file Z88I3.TXT for the stress prozessor by hand using an editor or the like.

Using automatic generation consider the following possibilities:

CAD system, e.g. | creates | converter | creates | mesh generator | creates
Pro/ENGINEER Pro/MECHANICA | Z88G.COS Z88G.NAS | Z88G | Z88I1.TXT, Z88I2.TXT, Z88I3.TXT, Z88I5.TXT | not necessary | files still exist
AutoCAD | Z88X.DXF | Z88X | Z88NI.TXT | Z88N | Z88I1.TXT
AutoCAD | Z88X.DXF | Z88X | Z88I1.TXT, Z88I2.TXT, Z88I3.TXT, Z88I5.TXT | not necessary | files still exist

Z88 protocol files:

The Z88 modules always store protocol files .LOG, e.g. Z88F.LOG documents the steps or errors of the calculation of Z88F. Look at the various .LOG files in case of doubt. They also document the current memory needs. UNIX: If different users work in the same Z88 directory, make sure to have the proper permissions for the .LOG files, too. Use umask.

Printing of Z88 files

Is not supported by the Z88- Commanders. You print them by the Explorer of Windows or by an editor or word processing program. Use the printing routines of the UNIX operating system.

Which Z88 finite Element types can be produced automatically ?

element type | function | COSMOS NASTRAN (Z88G ) | DXF (Z88X ) | super element (Z88N) | creates FE (Z88N)
Hexahedron No.1 | linear | No | Yes | No | -
Hexahedron No.10 | quadratic | No | Yes | Yes | Hexa No.10 & No.1
Tetrahedron No.16 | quadratic | Yes | No | No | -
Tetrahedron No.17 | linear | Yes | No | No | -
Plane stress No.3 | quadratic | No | Yes | No | -
Plane stress No.7 | quadratic | Yes | Yes | Yes | Plane stress No.7
Plane stress No.11 | cubic | No | Yes | Yes | Plane stress No.7
Plane stress No.14 | quadratic | Yes | Yes | No | -
Torus No.6 | linear | No | Yes | No | -
Torus No.8 | quadratic | Yes | Yes | Yes | Torus No.8
Torus No.12 | kubisch | No | Yes | Yes | Torus No.8
Torus No.15 | quadratic | Yes | Yes | No | -
Plate No.18 | quadratic | Yes | Yes | No | -
Plate No.19 | cubic | No | Yes | No | -
Plate No.20 | quadratic | Yes | Yes | Yes | Pla No.19 & No.20
Truss No.4 | exact | No | Yes | No | -
Truss No.9 | exact | No | Yes | No | -
Beam No.2 | exact | No | Yes | No | -
Cam No.5 | exact | No | Yes | No | -
Beam No.13 | exact | No | Yes | No | -

Z88 files:

Name | Type | Direction | Purpose | change, modify | MS-Win | UNIX
Z88.DYN | ASCII | Input | Memory & Language header file | Yes, Recom. | Yes | Yes
Z88G.COS | ASCII | Input | COSMOS to Z88 | Yes, 1) | Yes | Yes
Z88G.NAS | ASCII | Input | NASTRAN to Z88 | Yes,1) | Yes | Yes
Z88X.DXF | ASCII | In/Output | DXF from and to Z88 | Yes, 1) | Yes | Yes
Z88NI.TXT | ASCII | Input | mesh generator input file | Yes | Yes | Yes
Z88I1.TXT | ASCII | Input | general structure data | Yes | Yes | Yes
Z88I2.TXT | ASCII | Input | constraints, boundary conditions | Yes | Yes | Yes
Z88I3.TXT | ASCII | Input | stress parameter header file | Yes | Yes | Yes
Z88I4.TXT | ASCII | Input | header file for sparse matrix solvers | Yes | Yes | Yes
Z88I5.TXT | ASCII | Input | Surface and pressure loads | Yes | Yes | Yes
Z88O0.TXT | ASCII | Output | processed structure data | Possible | Yes | Yes
Z88O1.TXT | ASCII | Output | processed constraints | Possible | Yes | Yes
Z88O2.TXT | ASCII | Output | computed displacements | Possible | Yes | Yes
Z88O3.TXT | ASCII | Output | computed stresses | Possible | Yes | Yes
Z88O4.TXT | ASCII | Output | computed nodal forces | Possible | Yes | Yes
Z88O5.TXT | ASCII | Output | for internal use of Z88O | No 1) | Yes | Yes
Z88O8.TXT | ASCII | Output | for internal use of Z88O | No 1) | Yes | Yes
Z88O.OGL | ASCII | Input | Color header file Z88O MS-Win | Possible | Yes | No
Z88.FCD | ASCII | Input | Fonts, Colors, Dimens. UNIX for Z88COM and Z88O | Possible | No | Yes
Z88COM.CFG | ASCII | Input | configuration file Z88COM | No 2) | Yes | No
Z88O1.BNY | Binary | In/Output | fast communication file | No 3) | Yes | Yes
Z88O3.BNY | Binary | In/Output | fast communication file | No 3) | Yes | Yes
Z88O4.BNY | Binary | In/Output | fast communication file | No 3) 4) | Yes | Yes

- (1) in principle yes, but not necessary, automatically produced
- (2) only if needed
- (3) positively no, otherwise serious faults
- (4) may become quite large, for communication of sparse matrix solvers