fem2d_pack, a FORTRAN90 code which contains utility routines for 2D finite element calculations.
The emphasis is on simplicity and clarity. Primarily, the 2D planar case is handled, with a choice of low order triangular ("T") and quadrilateral ("Q") elements.
A few routines are included for computing a "sphere grid", that is, a finite element mesh on the surface of a sphere.
The computer code and data files described and made available on this web page are distributed under the MIT license
fem2d_pack is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version.
FEM_BASIS, a FORTRAN90 code which can define and evaluate basis functions for any degree in an M-dimensional simplex (1D interval, 2D triangle, 3D tetrahedron, and higher dimensional generalizations.)
FEM1D_PACK, a FORTRAN90 code which contains utilities for 1D finite element calculations.
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 code which solves the 2D time dependent heat equation on the unit square.
FEM2D_POISSON, a FORTRAN90 code which solves the 2D Poisson equation on a square, using the finite element method.
FEM2D_SAMPLE, a FORTRAN90 code which evaluates a finite element function defined on an order 3 or order 6 triangulation.
FEM3D_PACK, a FORTRAN90 code which contains utilities for 3D finite element calculations.