time dependent, 28
accuracy, 19
acos, 61
acosh, 61
adaptmesh, 90, 92
abserror=, 93
cutoff=, 93
err=, 92
errg=, 92
hmax=, 92
hmin=, 92
inquire=, 93
isMetric=, 93
iso=, 93
keepbackvertices=, 93
maxsubdiv=, 93
metric=, 94
nbjacoby=, 93
nbsmooth=, 92
nbvx=, 92
nomeshgeneration=, 94
omega=, 93
periodic=, 94
powerin=, 94
ratio=, 93
rescaling=, 93
splitin2, 94
splitpbedge=, 93
uniform, 94
verbosity= , 93
alphanumeric, 55
append, 75
area, 58
area coordinate, 133
argument, 60
array, 56, 64, 73, 134
.l1, 66
.l2, 66
.linfty, 66
.max, 66
.min, 66
.sum, 66
?:, 65
= + - ⋆ / .⋆ ./ += -= /= ⋆= , 65
column, 68
dot product, 66
FE function, 73
fespace, 121
line, 68
max, 65
mesh, 219
min, 65, 73
quantile, 66
renumbering, 68
resize, 65
sort, 65
sum, 65
varf, 138
asin, 61
asinh, 61
assert(), 58
atan, 61
atanh, 61
axisymmetric, 28
backward Euler method, 181
bamg, 83
barycentric coordinates, 13
bessel, 62
BFGS, 151
block matrix, 70
bool, 56
border, 80
boundary condition, 136
break, 74
broadcast, 219
bubble, 124
buildmesh
fixeborder, 80
fixeborder=1, 162
nbvx=, 80
catch, 76
Cauchy, 53
ceil, 61
CG, 131
Characteristics-Galerkin, 33
checkmovemesh, 87
Cholesky, 131, 150
cin, 58, 75
column, 68
compatibility condition, 130
compiler, 55
Complex, 56
complex, 45, 60, 71
Complex geometry,, 30
concatenation, 92
connectivity, 140
continue, 74
convect, 34, 192, 194
cos, 61
cosh, 61
cout, 58, 75
Crout, 131
de Moivre’s formula, 60
default, 75
degree of freedom, 13
DFFT, 252
diag, 71, 197
diagonal matrix, 71
Dirichlet, 19, 25, 53, 129
discontinuous functions, 207
Discontinuous-Galerkin, 33
displacement vector, 169
divide
term to term, 70
domain decomposition, 200, 201
dot product, 71, 73
dumptable, 58
EigenValue, 178
ivalue=, 177
maxit=, 177
ncv=, 177
nev=, 177
rawvector=, 177
sigma=, 177
sym=, 177
tol=, 177
value=, 177
vector=, 177
eigenvalue problems, 26
elements, 13
emptymesh, 86
endl, 75
erf, 62
erfc, 62
exception, 76
exec, 58, 146
exp, 61
expression optimization, 138
external C++ function, 36
factorize=, 150
false, 56, 58
FE function
[], 126
complex, 45, 64, 71
n, 126
value, 126
FE space, 121
FE-function, 63, 121
FEspace
(int ,int ), 140
ndof, 140
nt, 140
fespace, 119
P0, 119
P1, 119
P1b, 120
P1dc, 120
P1nc, 120
P2, 120
P2dc, 120
periodic=, 131, 160
RT0, 120
FFT, 252
file
am, 225, 226
am_fmt, 83, 225, 226
amdba, 225, 226
bamg, 83, 223
data base, 223
ftq, 227
mesh, 83
msh, 226
nopo, 83
finite element space, 119
Finite Volume Methods, 36
fixed, 75
floor, 61
fluid, 190
for, 74
formulas, 63
Fourier, 28
func, 57
function
tables, 86
functions, 61
gamma, 62
geometry input , 24
GMRES, 131
gnuplot, 146
graphics packages, 19
hat function, 13
Helmholtz, 45
hTriangle, 57, 166
ifstream, 75
ill posed problems, 26
imag, 60
include, 8, 194
includepath, 8
init, 36
init=, 131
initial condition, 53
inside=, 139
int1d, 132
int2d, 132
intalledges, 35, 132, 166
interpolate, 138
inside=, 139
op=, 139
t=, 139
interpolation, 128
isotropic, 170
jump, 166
label, 57, 79, 80, 221
label on the boundaries, 25
label=, 94
lagrangian, 89
Laplace operator, 19
lenEdge, 57, 166
level line, 35
line, 68
linearCG
eps=, 149
nbiter=, 149
precon=, 149
veps=, 149
LinearGMRES
eps=, 149
nbiter=, 149
precon=, 149
veps=, 149
load, 8
loadpath, 8
log, 61
log10, 61
LU, 131
macro, 35, 212
mass lumping, 36
matrix, 15, 57, 150
=, 194
block, 70
complex, 71
constant, 69
diag, 71, 197
factorize=, 176
interpolate, 138
set, 69
solver=, 194
stiffness matrix, 15
varf, 69, 137
eps=, 137
precon=, 137
solver=, 137
solver=factorize, 137
tgv=, 137
tolpivot =, 137
max, 65
maximum, 58
medit, 146
membrane, 19
mesh, 57
(), 84
[], 84
3point bending, 100
beam, 96
Bezier curve, 98
Cardioid, 97
Cassini Egg, 97
connectivity, 84
NACA0012, 96
regular, 90
Section of Engine, 98
Smiling face, 100
U-shape channel, 99
uniform, 94
V-shape cut, 99
mesh adaptation, 37
min, 65, 73
minimum, 58
mixed, 28
mixed Dirichlet Neumann, 19
modulus, 60
movemesh, 87
mpirank, 219
mpisize, 219
multi-physics system, 30
multiple meshes, 30
N, 57, 133
n, 126
Navier-Stokes, 192, 194
ndof, 140
ndofK, 140
Neumann, 53, 132
Newton, 151, 176
NLCG, 151
eps=, 149
nbiter=, 149
veps=, 149
nodes, 13
non-homogeneous Dirichlet, 19
nonlinear, 30
nonlinear problem, 28
normal, 35, 133
noshowbase, 75
noshowpos, 75
nt, 140
nTonEdge, 35, 58
nuEdge, 57
number of degree of freedom, 140
number of element, 140
nuTriangle, 57
ofstream, 75
append, 75
on, 132
intersection, 193
optimize=, 138
outer product, 68, 71
P, 57
P0, 119
P1, 119
P1b, 120
P1dc, 120
P1nc, 120
P2, 120
P2dc, 120
parabolic, 28
periodic, 119, 131, 160
pi, 58
plot
aspectratio =, 144
nbiso =, 144
bb=, 144
border, 80
boundary =, 144
bw=, 144
cmm=, 144
coef=, 144
cut, 144
grey=, 144
hsv=, 144
mesh, 80
nbarraw=, 144
ps=, 144
value=, 144
varrow=, 144
viso=, 144
point
region, 84
triange, 84
pow, 61
precision, 75
precon=, 131, 137, 195
problem, 36, 57, 129
eps=, 131
init=, 131
precon=, 131
solver=, 131
strategy =, 131, 137
tgv=, 131
tolpivot =, 131
tolpivotsym =, 131, 137
processor, 219
product
Hermitian dot, 71
dot, 71, 73
outer, 71
term to term, 70
qforder=, 194
quadrature: qf5pT, 135
quadrature:default, 134
quadrature:qf1pE, 134
quadrature:qf1pElump, 134
quadrature:qf1pT, 135
quadrature:qf1pTlump, 135
quadrature:qf2pE, 134
quadrature:qf2pT, 135
quadrature:qf2pT4P1, 135
quadrature:qf3pE, 134
quadrature:qf7pT, 135
quadrature:qfe=, 135
quadrature:qforder=, 135
quadrature:qft=, 135
quantile, 67
radiation, 30
rand, 62
randinit, 62
randint31, 62
randint32, 62
random, 62
read files, 83
readmesh, 81, 102
real, 56, 60
region, 57, 84, 207
region indicator, 30
renumbering, 68
resize, 65
Reusable matrices, 192
rint, 61
Robin, 28, 129, 132
RT0, 120
savemesh, 81, 102
schwarz, 219
scientific, 75
sec:Plot, 143
set, 36
matrix, 69
showbase, 75
showpos, 75
shurr, 200, 201
sin, 61
singularity, 91
sinh, 61
solve, 57, 129
eps=, 131
init=, 131
linear system, 70
precon=, 131
solver=, 131
strategy=, 131, 137
tgv=, 15, 131
tolpivot=, 131
tolpivotsym=, 131, 137
solver=, 150
CG, 92, 131
Cholesky, 131
Crout, 131
GMRES, 131
LU, 131
sparsesolver, 131
UMFPACK, 131
sparsesolver, 131
split=, 94
square, 166
flags=, 79
Stokes, 190
stokes, 188
stop test, 131
absolue, 194
strain tensor, 170
streamlines, 191
stress tensor, 170
string, 56
subdomains, 207
sum, 65
tan, 61
Taylor-Hood, 193
tetgconvexhull, 107
tetgtransfo, 106
transpose, 70, 73, 242
triangle
[], 84
area, 84
label, 84
region, 84
triangulate, 85
triangulation files, as well as read and write, 24
true, 56, 58
trunc, 94
label=, 94
split=, 94
try, 76
tutorial
LaplaceRT.edp, 165
adapt.edp, 91
adaptindicatorP2.edp, 165
AdaptResidualErrorIndicator.edp, 167
aTutorial.edp, 154
beam.edp, 171
BlackSchol.edp, 187
convect.edp, 186
fluidStruct.edp, 203
freeboundary.edp, 210
movemesh.edp, 89
NSUzawaCahouetChabart.edp, 194
periodic.edp, 160
periodic4.edp, 160
periodic4bis.edp, 162
readmesh.edp, 83
Schwarz-gc.edp, 202
Schwarz-no-overlap.edp, 200
Schwarz-overlap.edp, 198
StokesUzawa.edp, 193
tutotial
VI.edp, 196
type of finite element, 119
UMFPACK, 131
upwinding, 33
varf, 15, 57, 132, 134, 194
array, 137
matrix, 137
optimize=, 138
variable, 55
variational formulation, 20
veps=, 151
verbosity, 3, 8
vertex
label, 84
x, 84
y, 84
viso, 35
weak form, 20
while, 74
write files, 83
x, 57
y, 57
z, 57
Book Description
Fruit of a long maturing process freefem, in its last avatar, FreeFem++, is a high level integrated development environment (IDE) for partial differential equations (PDE). It is the ideal tool for teaching the finite element method but it is also perfect for research to quickly test new ideas or multi-physics and complex applications.
FreeFem++has an advanced automatic mesh generator, capable of a posteriori mesh adaptation; it has a general purpose elliptic solver interfaced with fast algorithms such as the multi-frontal method UMFPACK. Hyperbolic and parabolic problems are solved by iterative algorithms prescribed by the user with the high level language of FreeFem++. It has several triangular finite elements, including discontinuous elements. Finally everything is there in FreeFem++to prepare research quality reports: color display online with zooming and other features and postscript printouts.
This book is ideal for students at Master level, for researchers at any level and for engineers also in financial mathematics.
Editorial Reviews
”…Impossible to put the book down, suspense right up to the last page…”
A. Tanh, Siam Chronicle.
”…The chapter on discontinuous fems is so hilarious ….” B. Galerkine, .
About the Authors
Frédéric Hecht is a professor of numerical analysis at the university of Paris VI and does his research at the Laboratoire Jacques-Louis Lions (LJLL). He is also a member of the project gamma at INRIA. He is the author of several advanced software tools for automatic triangulations including the public domain EMC2. |
Olivier Pironneau is a professor of numerical analysis at the university of Paris VI and at LJLL. His scientific contributions are in numerical methods for fluids. He is a member of the Institut Universitaire de France and of the French Academy of Sciences |
Koji Ohtsuka is a professor at the Hiroshima Kokusai Gakuin University, Japan and chairman of the World Scientific and Engineering academy and Society, Japan chapter. His research is in fracture dynamics, modelling and computing. |
Antoine Le Hyaric is a research engineer from the ”Centre National de la Recherche Scientifique” (CNRS) at LJLL . He is an expert in software engineering for scientific applications. He has applied his skills mainly to electromagnetics simulation, parallel computing and three-dimensional visualization. |