FEM1D_SAMPLE
Evaluate a Finite Element Function of a 1D Argument


FEM1D_SAMPLE is a C++ program which can evaluate a finite element function of one argument.

The current version of the program can only handle finite element meshes which are made of piecewise constant or piecewise linear basis functions.

Usage:

fem1d_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:

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

Related Data and Programs:

FEM1D, a data directory which contains examples of 1D FEM files, three text files that describe a 1D finite element model;

FEM1D, a C++ program which applies the finite element method to a 1D linear two point boundary value problem.

FEM1D_ADAPTIVE, a C++ program which applies the finite element method to a 1D linear two point boundary value problem using adaptive refinement to improve the solution.

FEM1D_BVP_LINEAR, a C++ program which applies the finite element method, with piecewise linear elements, to a two point boundary value problem in one spatial dimension.

FEM1D_HEAT_STEADY, a C++ program which uses the finite element method to solve the steady (time independent) heat equation in 1D.

FEM1D_NONLINEAR, a C++ program which applies the finite element method to a 1D nonlinear two point boundary value problem.

FEM1D_PACK, a C++ library which contains utilities for 1D finite element calculations.

FEM1D_PMETHOD, a C++ program which applies the p-method version of the finite element method to a 1D linear two point boundary value problem.

FEM1D_PROJECT, a C++ program which projects data into a finite element space, including the least squares approximation of data, or the projection of a finite element solution from one mesh to another.

FEM2D_SAMPLE, a C++ library which evaluates a finite element function defined on an order 3 or order 6 triangulation.

FEM3D_SAMPLE, a C++ program which evaluates a finite element function defined on 3D tetrahedral mesh.

HISTOGRAM_DATA_2D_SAMPLE, a C++ 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.

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:

P1 is FEM data for the vector function f(x)=[ 1, x, x^2], on a grid of 11 evenly spaced nodes from -5 to 5, using piecewise constant basis functions.

P2 is FEM data for the vector function f(x)=[ 1, x, x^2], on a grid of 11 evenly spaced nodes from -5 to 5, using piecewise linear basis functions.

List of Routines:

You can go up one level to the C++ source codes.


Last revised on 04 July 2013.