FEM1D
Piecewise Linear Finite Element Method for 1D problem.


FEM1D is a MATLAB code which applies the finite element method (FEM) to a linear two point boundary value problem (BVP) in one spatial dimension.

Licensing:

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

Languages:

FEM1D is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.

Related Data and Programs:

BVP4C, MATLAB codes which illustrate how to use the MATLAB command bvp4c(), which can solve boundary value problems (BVP's) in one spatial dimension.

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

fem1d, a MATLAB code which applies the finite element method (FEM) to a 1D linear two point boundary value problem (BVP).

fem1d_test

FEM1D_ADAPTIVE, a MATLAB code which applies the finite element method to a linear two point boundary value problem in a 1D region, using adaptive refinement to improve the solution.

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

FEM1D_DISPLAY, a MATLAB code which reads three files defining a 1D arbitrary degree finite element function, and displays a plot.

FEM1D_FUNCTION_10_DISPLAY, a MATLAB code which reads a prefix defining three finite element data files, reads the data, samples the finite element function, and displays a plot.

FEM1D_LAGRANGE, a MATLAB code which sets up the matrices and vectors associated with the finite element method (FEM) solution of a boundary value problem (BVP) -u''+u=f(x), using Lagrange basis polynomials.

FEM1D_NONLINEAR, a MATLAB code which applies the finite element method to a nonlinear two point boundary value problem in a 1D region.

FEM1D_PMETHOD, a MATLAB code which applies the p-method version of the finite element method to a linear two point boundary value problem in a 1D region.

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

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:


Last revised on 17 January 2019.