VECFEM3 Reference Manual
DESCRIPTION
The finite element tool package VECFEM provides routines for the numerical
solution of 1-D, 2-D and 3-D functional equations over an arbitrary domain
using the finite element method. VECFEM solves steady, non-steady and eigenvalue
problems. The data structures are especially designed for parallel processing
with vector processing on every process. The problems have to be formulated
as functional equations as for instance they are produced by variational
problems or the Galerkin method for elliptical boundary value problems.
The solution method is the finite element method for the space direction
and the finite differences method with variable order and step size for
the time direction. An estimation of the quality of the solution is computed.
Click here to get a list of VECFEM examples.
Click here to get
the VECFEM home page.
LIST OF TOOLS
All tools can be started from the ksh or bash shell.
X-environment for the definition and solution of non-linear functional
equations.
Tool for the generation of a FORTRAN code for the solution of a steady
or non-steady, non-linear functional equation.
Tool for the compilation of a FORTRAN code that calls VECFEM routines.
Tool to start a VECFEM program.
Creates a tar-file of data sets involved in the VECFEM calculation.
Tool to analyse the error output from VECFEM programs. See also vemlst.
Builds a control/script file for postprocessing.
LIST OF FORTRAN77 SUBROUTINES OF THE VECFEM LIBRARY:
The subroutine prepares the mesh for the VECFEM calculation. vemdis
distributes the FEM mesh to the processes to optimize the load balancing
for the parallel processing and optimizes the element succession for the
vector processing.
The subroutine solves a linear, steady functional equation
L(v,u)=F(v)
for the unknown function u using the finite element method. The domain
and the finite element mesh are arbitrary. An error estimation is not available
in this routine. veme00 calls lsolpp
to solve the system of linear equations.
The subroutine solves a non-linear, steady functional equation
F{u}(v)=0
for the unknown function u using the finite element method. The domain
and the finite element mesh are arbitrary. veme02
uses the Newton method to solve the non-linear, discretized equation. In
every iteration step lsolpp is called to solve
the system of linear equations.
The subroutine solves a non-linear, non-steady functional equation
F{t,u,ut}(v)=0
for the unknown, t-dependent function u using the finite element method
in space direction. In the time direction the finite differences method
with self-adapted step size and order control is used. In every time step
vemp02 solves a system of non-linear equations
by the Newton method. In every iteration step lsolpp
is called to solve the system of linear equations.
The subroutine prints the finite element mesh.
The subroutine reads a user-defined mesh from an external data set in the
list-directed format. The data format to be used for such an external data
set is specified in the vemu02 manual page.
The subroutine computes a function C at the centre point of inner elements.
C depends on a solution u and its derivatives given at the global nodes,
e.g. C is the gradient or the stress.
The subroutine computes the integral of a function C over inner elements.
C depends on a solution u and its derivatives given at the global nodes.
The subroutine computes a function C at the geometrical nodes. C depends
on a solution U and its derivatives given at the global nodes, e.g. C can
be used to interpolate a solution onto the geometrical mesh.
The subroutine computes a function C at the global nodes. C depends on
a solution u and its derivatives given at the geometrical nodes, e.g. C
can be used to distribute a solution to the processes.
The subroutine computes a function C at the geometrical nodes using extrapolation
from integration nodes. C depends on a solution U and its derivatives given
at the global nodes, e.g. C can be used to interpolate a solution onto
the geometrical mesh.
The subroutine sets the initial guess for the steady solver veme02
and the non-steady solver vemp02.
The subroutine evaluates values given at the geometrical nodes of the FEM
mesh at the centre points of the elements.
The subroutine is a tool to check the programming of the Frechet derivatives
of the functional equation.
vemgen(later)
The subroutine creates a mixed finite element mesh for Lagrangian proposal
functions of a prescribed order from a given geometrical mesh.
The subroutine creates a mixed finite element mesh with isoparametrical
proposal functions from a given geometrical mesh by an elimination of nodes.
vemopt(later)
The subroutine calls a bandwidth optimizer to reduce the number of occupied
diagonals in the global matrix. The structure of the global matrix will
be well suited for lsolpp.
PATRAN is a pre- and postprocessor program for the finite element method.
The interface is the neutral file. The subroutine patvem
reads a neutral file into the VECFEM mesh. So PATRAN can be used for the
generation of geometrical meshes.
PATRAN is a pre- and postprocessor program for the finite element method.
The interface is the neutral file. The subroutine vempat
creates a neutral file. The neutral file can be read by PATRAN for postprocessing.
The routine vepa97 creates a nodal result file
and vepa99 creates an element result file.
I-DEAS is a pre- and postprocessor program for the finite element method.
The interface is the universal file. The subroutine idevem
reads a universal file into the VECFEM mesh. So I-DEAS can be used for
the generation of geometrical meshes. The subroutine idve97
reads a nodal result file to set a solution.
I-DEAS is a pre- and postprocessor program for the finite element method.
The interface is the universal file. The subroutine vemide
creates a universal file. The universal file can be read by I-DEAS for
post-processing. The routine veid97 creates a
nodal result file and veid99 creates an element
result file.
ISVAS 3.1 is a postprocessor program for the finite element method. The
subroutine vemisv creates the node coordinate
and element file. The files can be read by ISVAS for post-processing. The
routine veis97 creates a variable field file.
Ensight is a postprocessor program for the finite element method. The subroutine
vemens creates the geometry file. The file can
be read by EnSight for post-processing. The routine veen97
creates a variable file.
AVS is a visualization tool for 3D data. The subroutine vemavs
creates a UCD file (unstructured call data file).
DataExplorer is a visualization tool for 3D data. The subroutine vemdx
creates a file to view the finite element mesh. The routine vedx97
creates a file to view the results.
The subroutine writes a result file, which can be read by easy postprocessors
like Gnuplot or Excel.
PARALLELISM
The programming scheme for the parallelism is the explicit message passing
with asynchronous communication. VECFEM uses its own communication routines,
which call the communication routines of your parallel computer. The communication
is started by combgn and is terminated by comend.
So before any VECFEM routine is called, combgn
has to be called to initialize your parallel computer. Before any calculation
ends or is stopped, comend has to be called to
ensure a controlled end of the calculation.
NOTATIONS
In the manual pages the keywords are printed in bold style (e.g. VECFEM).
Important variables are printed in Italic style (e.g.NPROC). In
the description of the argument lists, 'local' means that this argument
or value may depend on the process id, and 'global' means that this argument
has the same value on all processes.
ARRAYS
All arrays A are declared in the main program with a maximal length LA.
Mostly the array length can not be exactly determined before the first
VECFEM run. So at first the lengths have to be estimated. If during the
VECFEM run the array lengths are not sufficient, the correct length is
printed and the calculation stops. Than you have to correct the array length
and have to start your program again. VECFEM tries to get all informations
to minimize the number of program starts.
According to the FORTRAN standard, we identify an array A(N1,N2,...,Ni)
with the one-dimensional array A(LA) of length LA=N1*N2*...*Ni. We use
the one-dimensional and more-dimensional notations for an array simultaneously.
For instance, the array NOD(NN,DIM) equals the array
NOD(LNOD), where LNOD=NN*DIM. The entry NOD(i,j)
equals NOD(i+NN*(j-1)).
COMPILATION
A description to compile a code calling a routine of the VECFEM library
is given in vemcompile.
REFERENCES
-
[THEOMAN]
-
L. Grosz and C. Roll and W. Schoenauer: The
Nonlinear Finite Element Solver VECFEM3: The Numerical Algorithms;
University of Karlsruhe, Computing Center; Internal report 65/93; 1996.
-
[DATAMAN]
-
L. Grosz and C. Roll and W. Schoenauer: Non-linear
Finite Element Problems on Parallel Computers; in: J. Dongarra and
J. Wasniewski: Parallel scientific Computing, First Int. Workshop, PARA'94,
1994, pp. 247-261.
-
[DATAMAN2]
-
L. Grosz and P. Sternecker and W. Schoenauer: The Finite Element Tool Package
VECFEM (Version 1.1); University of Karlsruhe; Computing Center; Internal
report 45/91; 1991.
-
[LINSOL]
-
R. Weiss, H. Haefner, W. Schoenauer: LINSOL
(LINear SOLver) - Description and User's Guide for the Parallelized Version
(DRAFT Version 0.96); University of Karlsruhe; Computing Center; Internal
Report 61/95; 1995.
-
[P_MPI]
-
H. Haefner: P_MPI User's Guide; University of Karlsruhe; Computing Center;
1996.
-
[I-DEAS]
-
I-DEAS: User's Guide. Address: SDRC,
Corporate Headquarters, 2000 Eastman Drive, Milford, Ohio 45150-2789, USA.
-
[PATRAN]
-
PATRAN: User's Guide. Address: MSC,
Corporate Headquarter, 815 Colorado Blvd., Los Angeles, CA 90041, USA.
-
[EnSight]
-
EnSight: User Manual; Address: EI
Computational Engineering International, Inc., PO Box 14306, Research Triangle
Park, NC 27709, http://www.ceintl.com.
-
[DX]
-
IBM Corporation: IBM Visualization Data
Explorer; User's Guide; 1994. Address: .
-
[MAPLE]
-
Maple User's Guide. Address: Symbolic
Computation Group, Department of Computer Science, University of Waterloo,
Waterloo, Ontario, Canada N2L 3G1.
-
[Tcl/Tk]
-
J.K. Ouserhout: Tcl and the Tk
Toolkit; Addison-Wesley; 1994. \
-
[GNUPLOT]
-
T. Williams , C. Kelley: GNUPLOT:
An interactive Plotting Program; Dartmouth, 1986; e-mail:info-gnuplot@dartmouth.edu
-
[AVS]
-
AVS User's Guide.
-
[FAQ]
-
L. Grosz and S. Manias: Frequently Asked Questions on VECFEM; 1996. (not
available)
-
[ISVAS]
-
Karlson,K.; ISVAS 3.1, Interactive System for Visual Analysis, User's Guide,
Fraunhofer-IGD, FIGD-93i006. Address: Kennet Karlsson, Fraunhofer-IGD,
Wilhelminenstr. 7, D-64283 Darmstadt, Germany, e-mail: karlsson@igd.fhg.de.
AUTHORS
The VECFEM tool package was developed by L. Grosz, C. Roll, P. Sternecker,
W. Schoenauer, .B. Lagler, K. Schreiber, C. Gerke, C. Stocker, S. Scheffrahn,
T. Nordmeyer, M. Moujahed, T. Schoenit and S. Manias at the 'Numerikforschung
für Supercomputer' group (research department for numerical methods
on supercomputers) at the computing centre of the University of Karlsruhe,
Germany.
COPYRIGHTS
Copyrights by Universitaet Karlsruhe, 1989-1996. Copyrights by Lutz Grosz,
Canberra, 1997. All rights reserved.
CONTACT
Lutz Grosz
Institute of Information and Mathematical Sciences
Massey University at Albany
Private Bag 102-904
NSMSC
Auckland
New Zealand
Tel: +64 9 443 9799 ext. 9258
Email: L.Grosz@massey.ac.nz
By Lutz Grosz, Auckland, May 2000