FEM
Three Files Describing a Finite Element Model


The FEM format is a simple dataset of three files that can be used to describe a finite element model.

The finite element model is assumed to include three items:

FEM File Characteristics:

Related Data and Programs:

MESH_BANDWIDTH is an interactive executable FORTRAN90 program which returns the geometric bandwidth associated with a mesh of elements of any order and in a space of arbitrary dimension.

TET_MESH_ORDER4 describes legal node coordinate and element files for a 3D FEM model using tetrahedrons of order 4.

TET_MESH_ORDER10 describes legal node coordinate and element files for a 3D FEM model using tetrahedrons of order 10.

TRIANGULATION_ORDER3 describes legal node coordinate and element files for a 2D FEM model using triangles of order 3.

TRIANGULATION_ORDER6 describes legal node coordinate and element files for a 2D FEM model using triangles of order 6.

Reference:

  1. Hans Rudolf Schwarz,
    Methode der Finiten Elemente,
    Teubner Studienbuecher, 1980,
    ISBN: 3-519-02349-0.
  2. Gilbert Strang, George Fix,
    An Analysis of the Finite Element Method,
    Cambridge, 1973,
    ISBN: 096140888X,
    LC: TA335.S77.
  3. Olgierd Zienkiewicz,
    The Finite Element Method,
    Sixth Edition,
    Butterworth-Heinemann, 2005,
    ISBN: 0750663200,
    LC: TA640.2.Z54

Programs to Read a Set of FEM Files:

FEM_IO is a library of routines that can read a set of FEM files. It is available in a FORTRAN90 version and a MATLAB version.

Programs to Write a Set of FEM Files:

DISTMESH is a set of MATLAB routines that can start with the boundary of a geometric shape in 2D, and compute a node coordinate file and element file for a "reasonable" triangulation of the region.

FEM_IO is a library of routines that can write a set of FEM files. It is available in a FORTRAN90 version and a MATLAB version.

FREE_FEM_POISSON is a MATLAB program that can read a node coordinate file and an element file describing a triangulated region in 2D, and compute a scalar quantity satisfying Poisson's equation, and write that solution out as a node data file.

FREE_FEM_STOKES is a MATLAB program that can read a node coordinate file and an element file describing a triangulated region in 2D, and compute a vector quantity satisfying Stokes's equation, and write that solution out as a node data file.

Programs to Display a Set of FEM Files:

CONTOUR_SEQUENCE is a MATLAB program that can read a 2D node coordinate file and a sequence of scalar node data files and create an sequence of contour plots suitable for an animation.

DIRECTION_ARROWS is a MATLAB program that can read a 2D node coordinate file and a node data file defining a velocity field, and create an image of the velocity direction field.

TRIANGULATION_ORDER1_PLOT is a MATLAB program that can plot piecewise constant data associated with a triangulation.

TRIANGULATION_ORDER3_CONTOUR is a MATLAB program that can make a contour plot based on a 2D node coordinate file, an order 3 element file, and a scalar node data file.

TRIANGULATION_ORDER6_CONTOUR is a MATLAB program that can make a contour plot based on a 2D node coordinate file, an order 6 element file, and a scalar node data file.

TRIANGULATION_PLOT is a FORTRAN90 program that can read the node coordinate and element files of an FEM model and create an EPS image of them.

VELOCITY_ARROWS is a MATLAB program that can read a 2D node coordinate file and a node data file defining a velocity field, and create an image of the velocity field.

Programs to Convert a FEM File to another format:

FEM_TO_TEC is a program that can convert an FEM model into a TEC graphics file. It is available in a FORTRAN90 version and a MATLAB version.

Programs to Convert a file to FEM format:

TEC_TO_FEM is a program that can convert a TECPLOT graphics file defining a finite element dataset into a set of FEM files. It is available in a FORTRAN90 version and a MATLAB version.

Sample FEM Files:

ELL is an example of a 2D finite element model in which a scalar value is stored. This data was computed by the FREE_FEM_POISSON program.

TINY is a "tiny" example of a 2D finite element model in which a vector value is stored. This data was written by the FEM_WRITE routine from FEM_IO.

You can go up one level to the MATLAB source codes.


Last revised on 02 March 2006.