Chrispell and Howell FreeFem++ Examples

CHRISPELL_FREEFEM++, examples which associated with a presentation on FreeFem++ by John Chrispell and Jason Howell.

Local information:

FreeFem++ is installed on the hallway machines, and can be accessed by typing:



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

Related Data and Programs:

BAMG, examples which illustrate the use of BAMG, a program for generating 2D meshes that can be used to define the geometry for the the finite element package FREEFEM++.

FREEFEM++, examples which illustrate the use of the FREEFEM++ package, a high-level integrated development environment for the numerical solution of nonlinear multiphysics partial differential equations (PDE's) in 2D and 3D.

FREEFEM++_MSH, a data directory which contains examples of the mesh files created by the FreeFem++ program, which use the extension ".msh".

FREEFEM++_MSH_IO, a FORTRAN90 library which can read and write files used by the FreeFem++ finite element program to store mesh information.

HECHT_FREEFEM++ examples which accompanied the standard reference paper for FREEFEM++, used by Frederic Hecht to illustrate special features of the program.

MITCHELL_FREEFEM++, examples which illustrate the implementation of the Mitchell 2D elliptic partial differential equation (PDE) test problems using FREEFEM++.


  1. John Chrispell, Jason Howell,
    Finite Element Approximation of Partial Differential Equations Using FreeFem++, or, How I Learned to Stop Worrying and Love Numerical Analysis.
  2. Frederic Hecht,
    New development in FreeFem++,
    Journal of Numerical Mathematics,
    Volume 20, Number 3-4, 2012, pages 251-265.

Examples and Tests:

ADAPTMESH demonstrates how a mesh can be adapted corresponding to some function.

CAVITY sets up and solves the Stokes flow equations for the driven cavity problem.

COMMAND shows how FreeFem++ can accept user input from the commandline.

FLOW_MESH demonstrates how a mesh can be created by specifying a sequence of lines that form the boundary.

IO demonstrates how FreeFem++ can read arrays from a file, or write them to a file. Note a peculiarity: a file containing a vector of data must have an initial line listing the number of data items.

NS_CAVITY sets up and solves the Navier-Stokes flow equations for the driven cavity problem.

POISSON sets up and solves a Poisson problem in a square.

SCRIPTING shows how the EXEC command can be used to run system commands during FreeFem++'s execution. In this case, FreeFem++ writes out a file containing data, and then issues an EXEC command that asks gnuplot to display a plot of the data.

SQUARE_MESH is a very simple example that creates and plots a square mesh. Two variations have been added.

You can go up one level to the Examples directory.

Last revised on 05 February 2015.