FreeFEM Programs

FreeFEM  [Old web site]  FreeFEM on CoMFoS  FreeFEM by JavaScript  

Contents in this page are provided with no warranties and no liability. This page is also available on CoMFoS.

Patches

PDF/SVG output by the built-in plot() command

This patch adds PDF and SVG output function to the built-in plot() command, which can generate only PostScript files as default.

This feature has been included in official release of FreeFEM 4.12 or later.

By default in FreeFEM ver 4.12, the compression feature is not supported.
In order to generate compressed PDF files, apply this patch and recompile from sources.

Downloading MUMPS patch for FreeFEM-4.12

In FreeFEM ver 4.12, MUMPS is not correctly downloaded from the specified server when compiling with the --enable-download option.
This patch allows you to download MUMPS from the FreeFEM official site.

Avoiding Segmentation Fault Error of FreeFEM-4.12 on macOS with clang 14.0.3

In macOS 13.3.1 (Ventura) with Apple clang version 14.0.3 (clang-1403.0.22.14.1, for target arm64-apple-darwin22.4.0) provided in CommandLineTools,
both FreeFem++ and FreeFem++-nw cannot be executed due to a segmentation fault error. They might be failed around in the constructor of
struct StackOfPtr2Free in src/fflib/ffstack.hpp.
(After I updated CommandLineTools, I met this error.)

This patch will avoid the error.

PETSc patch

FreeFEM-4.11 automatically downloads/compiles/includes PETSc Ver 3.17.0 by configuration. However, I met an error on Linux (Ubuntu 20.04.3) such as:

/usr/bin/ld: .../FreeFem-sources-4.11/3rdparty/ff-petsc/petsc-3.17.0/fc/lib/libpetsc.so: undefined reference to `GOMP_loop_nonmonotonic_guided_start'
/usr/bin/ld: .../FreeFem-sources-4.11/3rdparty/ff-petsc/petsc-3.17.0/fc/lib/libpetsc.so: undefined reference to `omp_get_max_threads'
(in FreeFem-sources-4.11/3rdparty/ff-petsc/petsc-3.17.0/fc/externalpackages/git.slepc/installed-arch-linux2-c-opt-complex/lib/slepc/conf/configure.log)

This patch modifies some options in order to compile it with PETSc.




Dynamic Loading Modules

plotPDF : Save Numerical Solutions/Mesh/Indices to PDF file

As default, FreeFEM uses text file and PostScript to store mesh and numerical results respectively. This module enables us to store them in a single PDF file. Both contours drawing and fill-style output of P0/P1/P1nc/P2 finite elements solutions are available. Meshes are drawn with/without indices (vertex, element, and edge, and boundary labels).

plotGnuplot : Save 2D Numerical Solution for gnuplot

A data file which gnuplot can use in 'splot' is generated by this module.

Element_CR : Crouzeix-Raviart Element in 2D,3D

Crouzeix-Raviart Element, known as one of "Non-conforming Finite Elements"

SaveHB : Save System of Linear Equations to Harwell-Boeing format

Harwell-Boeing is one of popular formats to store a system linear equations. Since it is available in various software e.g. in Matlab, NAG Library, and SparseLib++, users can use favorite environments in order to solve and to examine properties of linear systems discretized with FreeFEM.




EDP Files

Shepp-Logan Phantom

Boundary Element Methods

See details in JASCOME Review vol. 2023-2 (2023), pp.11-35.


fujiwara (at) acs.i.kyoto-u.ac.jp