fem1d, a FORTRAN90 code which applies the finite element method (FEM) to a 1D linear two point boundary value problem (BVP).
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
fem1d is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.
FEM1D, a data directory which contains examples of 1D FEM files, three text files that describe a 1D finite element model;
FEM1D_ADAPTIVE, a FORTRAN90 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 FORTRAN90 code 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 FORTRAN90 code which uses the finite element method to solve the steady (time independent) heat equation in 1D.
FEM1D_LAGRANGE, a FORTRAN90 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 FORTRAN90 code which applies the finite element method to a 1D nonlinear two point boundary value problem.
FEM1D_PACK, a FORTRAN90 code which contains utilities for 1D finite element calculations.
FEM1D_PMETHOD, a FORTRAN90 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_PROJECT, a FORTRAN90 code 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.
FEM1D_SAMPLE, a FORTRAN90 code which samples a scalar or vector finite element function of one variable, defined by FEM files, returning interpolated values at the sample points.