FEM2D_SAMPLE
Evaluate a Finite Element Function of a 2D Argument


FEM2D_SAMPLE is a FORTRAN90 program which can evaluate a finite element function of a 2D argument.

The current version of the program can only handle finite element meshes which are made of piecewise linear triangles of order 3 or 6.

Usage:

fem2d_sample fem_prefix sample_prefix
where fem_prefix is the common prefix for the FEM files: and sample_prefix is the common prefix for the SAMPLE files, for which the node file is input, and the values file is created by the program:

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages:

FEM2D_SAMPLE is available in a C++ version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

FEM_BASIS_T3_DISPLAY, a MATLAB program which displays a basis function associated with a linear triangle ("T3") mesh.

FEM_BASIS_T6_DISPLAY, a MATLAB program which displays a basis function associated with a quadratic triangle ("T6") mesh.

FEM_IO, a FORTRAN90 library which reads or writes node, element and data files defining a finite element model.

FEM_TO_TEC, a MATLAB program which converts FEM models into TEC graphics files.

FEM1D_SAMPLE, a FORTRAN90 program which samples a scalar or vector finite element function of one variable, defined by FEM files, returning interpolated values at the sample points.

FEM2D, a data directory which contains examples of 2D FEM files, text files that describe a 2D finite element geometry and associated nodal values;

FEM2D_HEAT, a FORTRAN90 program which solves the 2D time dependent heat equation on the unit square.

FEM2D_PACK, a FORTRAN90 library which contains utilities for 2D finite element calculations.

FEM2D_POISSON, a FORTRAN90 program which solves the 2D Poisson equation on a square, using the finite element method.

FEM2D_PROJECT, a FORTRAN90 program which projects a function F(X,Y) into a given finite element space of piecewise linear triangular elements.

FEM3D_SAMPLE, a FORTRAN90 program which samples a finite element function of three variables, returning interpolated values at the sample points.

HISTOGRAM_DATA_2D_SAMPLE, a FORTRAN90 program which demonstrates how to construct a Probability Density Function (PDF) from a frequency table over a 2D domain, and then to use that PDF to create new samples.

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

TRIANGULATION_ORDER3, a data directory which contains a description and examples of how an order 3 (linear) triangulation is defined by a node and element file.

TRIANGULATION_ORDER6, a data directory which contains a description and examples of how an order 6 (quadratic) triangulation is defined by a node and element file.

TRIANGULATION_ORDER6_CONTOUR, a MATLAB program which makes contours of a scalar quantity defined on the nodes of an order 6 triangulation.

Reference:

  1. Hans Rudolf Schwarz,
    Finite Element Methods,
    Academic Press, 1988,
    ISBN: 0126330107,
    LC: TA347.F5.S3313.
  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.

Source Code:

Examples and Tests:

SQ is FEM data for the function f(x,y)=x^2+y^2, on a 5x5 grid of nodes, organized into linear triangles. The sample data seeks the values of this function on a 4x4 evenly spaced grid.

List of Routines:

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


Last revised on 17 January 2010.