Top Banner
An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation, Bath, July 6–9, 2015
208

An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

May 14, 2018

Download

Documents

vandieu
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

An Introduction to

Finite Element Methods

Veronika Pillwein

RISC

ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation, Bath, July 6–9, 2015

Page 2: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Finite element methods (FEM)

Numerical methods for finding approximatesolutions to partial differential equations(PDEs) on non-trivial domains.

The domain is subdivided into simple geo-metrical objects (triangles, tetrahedra, . . . )and the solution is then approximated bylocally supported, piecewise polynomial basisfunctions.

The task of solving the PDE is reduced to thesolution of a (large scale) linear system.

(Solving the PDE) −→ (Solving Au = f )

Page 3: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Finite element methods (FEM)

Numerical methods for finding approximatesolutions to partial differential equations(PDEs) on non-trivial domains.

The domain is subdivided into simple geo-metrical objects (triangles, tetrahedra, . . . )and the solution is then approximated bylocally supported, piecewise polynomial basisfunctions.

The task of solving the PDE is reduced to thesolution of a (large scale) linear system.

(Solving the PDE) −→ (Solving Au = f )

Page 4: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Finite element methods (FEM)

Numerical methods for finding approximatesolutions to partial differential equations(PDEs) on non-trivial domains.

The domain is subdivided into simple geo-metrical objects (triangles, tetrahedra, . . . )and the solution is then approximated bylocally supported, piecewise polynomial basisfunctions.

The task of solving the PDE is reduced to thesolution of a (large scale) linear system.

(Solving the PDE) −→ (Solving Au = f )

Page 5: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Another non-trivial domain

Page 6: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Another non-trivial domain

Page 7: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Consider the two-point boundary value problem: given f , findu such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Let v be a sufficiently smooth function with v(0) = 0.

Wemultiply the equation above by v(x) and integrate over Ω.Next we do integration by parts. Now we use the Neumannboundary condition and the essential condition on v .

−∫ 1

0u′′(x)v(x) dx =

∫ 1

0f (x)v(x) dx∫ 1

0u′(x)v ′(x) dx −

[u′(1)v(1)− u′(0)v(0)

]=

∫ 1

0f (x)v(x) dx

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

Page 8: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Consider the two-point boundary value problem: given f , findu such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Let v be a sufficiently smooth function with v(0) = 0.

Wemultiply the equation above by v(x) and integrate over Ω.Next we do integration by parts. Now we use the Neumannboundary condition and the essential condition on v .

∫ 1

0

u′′(x)

v(x) dx

=

∫ 1

0

f (x)

v(x) dx∫ 1

0u′(x)v ′(x) dx −

[u′(1)v(1)− u′(0)v(0)

]=

∫ 1

0f (x)v(x) dx

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

Page 9: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Consider the two-point boundary value problem: given f , findu such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Let v be a sufficiently smooth function with v(0) = 0. Wemultiply the equation above by v(x)

and integrate over Ω.Next we do integration by parts. Now we use the Neumannboundary condition and the essential condition on v .

∫ 1

0

u′′(x)v(x)

dx

=

∫ 1

0

f (x)v(x)

dx∫ 1

0u′(x)v ′(x) dx −

[u′(1)v(1)− u′(0)v(0)

]=

∫ 1

0f (x)v(x) dx

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

Page 10: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Consider the two-point boundary value problem: given f , findu such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Let v be a sufficiently smooth function with v(0) = 0. Wemultiply the equation above by v(x) and integrate over Ω.

Next we do integration by parts. Now we use the Neumannboundary condition and the essential condition on v .

−∫ 1

0u′′(x)v(x) dx =

∫ 1

0f (x)v(x) dx

∫ 1

0u′(x)v ′(x) dx −

[u′(1)v(1)− u′(0)v(0)

]=

∫ 1

0f (x)v(x) dx

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

Page 11: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Consider the two-point boundary value problem: given f , findu such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Let v be a sufficiently smooth function with v(0) = 0. Wemultiply the equation above by v(x) and integrate over Ω.Next we do integration by parts.

Now we use the Neumannboundary condition and the essential condition on v .

−∫ 1

0u′′(x)v(x) dx =

∫ 1

0f (x)v(x) dx∫ 1

0u′(x)v ′(x) dx −

[u′(1)v(1)− u′(0)v(0)

]=

∫ 1

0f (x)v(x) dx

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

Page 12: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Consider the two-point boundary value problem: given f , findu such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Let v be a sufficiently smooth function with v(0) = 0. Wemultiply the equation above by v(x) and integrate over Ω.Next we do integration by parts. Now we use the Neumannboundary condition

and the essential condition on v .

−∫ 1

0u′′(x)v(x) dx =

∫ 1

0f (x)v(x) dx∫ 1

0u′(x)v ′(x) dx −

[u′(1)v(1)− u′(0)v(0)

]=

∫ 1

0f (x)v(x) dx

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

Page 13: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Consider the two-point boundary value problem: given f , findu such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Let v be a sufficiently smooth function with v(0) = 0. Wemultiply the equation above by v(x) and integrate over Ω.Next we do integration by parts. Now we use the Neumannboundary condition and the essential condition on v .

−∫ 1

0u′′(x)v(x) dx =

∫ 1

0f (x)v(x) dx∫ 1

0u′(x)v ′(x) dx −

[

u′(1)v(1)

− u′(0)v(0)]

=

∫ 1

0f (x)v(x) dx

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

Page 14: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Consider the two-point boundary value problem: given f , findu such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Let v be a sufficiently smooth function with v(0) = 0. Wemultiply the equation above by v(x) and integrate over Ω.Next we do integration by parts. Now we use the Neumannboundary condition and the essential condition on v .

−∫ 1

0u′′(x)v(x) dx =

∫ 1

0f (x)v(x) dx∫ 1

0u′(x)v ′(x) dx

−[u′(1)v(1)− u′(0)v(0)

]

=

∫ 1

0f (x)v(x) dx

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

Page 15: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Consider the two-point boundary value problem: given f , findu such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Let v be a sufficiently smooth function with v(0) = 0. Wemultiply the equation above by v(x) and integrate over Ω.Next we do integration by parts. Now we use the Neumannboundary condition and the essential condition on v .

−∫ 1

0u′′(x)v(x) dx =

∫ 1

0f (x)v(x) dx∫ 1

0u′(x)v ′(x) dx

−[u′(1)v(1)− u′(0)v(0)

]

=

∫ 1

0f (x)v(x) dx

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

Page 16: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f , find u such that

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

for all v sufficiently smooth with v(0) = 0.

Page 17: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f , find u such that

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

for all v sufficiently smooth with v(0) = 0.

Page 18: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f , find u such that

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

for all v sufficiently smooth with v(0) = 0.

Page 19: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Galerkin method

I Problem: Given a bilinear form a(·, ·) and a linear form F (·),

find u ∈ V : a(u, v) = F (v) ∀ v ∈ V ,

where V is some infinite dimensional function space.

I Approximate V by finite dimensional subspaces Vh ⊂ V .

I Discrete problem: Given a(·, ·) and F (·),

find uh ∈ Vh : a(uh, vh) = F (vh) ∀ vh ∈ Vh.

I Let Nh = dim Vh and φ1, . . . , φNh be a basis for Vh, then

we can expand

uh(x) =

Nh∑i=1

uiφi (x)

and it is sufficient to consider vh(x) = φj(x) for j = 1, . . . ,Nh.

Page 20: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Galerkin method

I Problem: Given a bilinear form a(·, ·) and a linear form F (·),

find u ∈ V : a(u, v) = F (v) ∀ v ∈ V ,

where V is some infinite dimensional function space.

I Approximate V by finite dimensional subspaces Vh ⊂ V .

I Discrete problem: Given a(·, ·) and F (·),

find uh ∈ Vh : a(uh, vh) = F (vh) ∀ vh ∈ Vh.

I Let Nh = dim Vh and φ1, . . . , φNh be a basis for Vh, then

we can expand

uh(x) =

Nh∑i=1

uiφi (x)

and it is sufficient to consider vh(x) = φj(x) for j = 1, . . . ,Nh.

Page 21: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Galerkin method

I Problem: Given a bilinear form a(·, ·) and a linear form F (·),

find u ∈ V : a(u, v) = F (v) ∀ v ∈ V ,

where V is some infinite dimensional function space.

I Approximate V by finite dimensional subspaces Vh ⊂ V .

I Discrete problem: Given a(·, ·) and F (·),

find uh ∈ Vh : a(uh, vh) = F (vh) ∀ vh ∈ Vh.

I Let Nh = dim Vh and φ1, . . . , φNh be a basis for Vh, then

we can expand

uh(x) =

Nh∑i=1

uiφi (x)

and it is sufficient to consider vh(x) = φj(x) for j = 1, . . . ,Nh.

Page 22: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Galerkin method

I Problem: Given a bilinear form a(·, ·) and a linear form F (·),

find u ∈ V : a(u, v) = F (v) ∀ v ∈ V ,

where V is some infinite dimensional function space.

I Approximate V by finite dimensional subspaces Vh ⊂ V .

I Discrete problem: Given a(·, ·) and F (·),

find uh ∈ Vh : a(uh, vh) = F (vh) ∀ vh ∈ Vh.

I Let Nh = dim Vh and φ1, . . . , φNh be a basis for Vh, then

we can expand

uh(x) =

Nh∑i=1

uiφi (x)

and it is sufficient to consider vh(x) = φj(x) for j = 1, . . . ,Nh.

Page 23: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Galerkin method

I Plug uh(x) =∑Nh

i=1 uiφi (x) and vh(x) = φj(x) into

find uh ∈ Vh : a(uh, vh) = F (vh) ∀ vh ∈ Vh

to obtain

find u ∈ RNh :

Nh∑i=1

uia(φi , φj) = F (φj), ∀ j = 1, . . . ,Nh.

where u = (u1, . . . , uNh).

I LetA = (a(φi , φj)

Nhi ,j=1 and f = (f1, . . . , fNh

),

then we arrive at the linear system

find u ∈ RNh : Au = f .

Page 24: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Galerkin method

I Plug uh(x) =∑Nh

i=1 uiφi (x) and vh(x) = φj(x) into

find uh ∈ Vh : a(uh, vh) = F (vh) ∀ vh ∈ Vh

to obtain

find u ∈ RNh :

Nh∑i=1

uia(φi , φj) = F (φj), ∀ j = 1, . . . ,Nh.

where u = (u1, . . . , uNh).

I LetA = (a(φi , φj)

Nhi ,j=1 and f = (f1, . . . , fNh

),

then we arrive at the linear system

find u ∈ RNh : Au = f .

Page 25: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f , find u such that

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

for all v sufficiently smooth with v(0) = 0.

I Let

L2(Ω) = f :

∫Ω

f (x)2 dx <∞,

then we require that f ∈ L2(0, 1) and define

V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.

Page 26: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f , find u such that

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

for all v sufficiently smooth with v(0) = 0.

I Let

L2(Ω) = f :

∫Ω

f (x)2 dx <∞,

then we require that f ∈ L2(0, 1) and define

V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.

Page 27: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (1D)

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f , find u such that

a(u, v) :=

∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx =: F (v)

for all v sufficiently smooth with v(0) = 0.

I Let

L2(Ω) = f :

∫Ω

f (x)2 dx <∞,

then we require that f ∈ L2(0, 1) and define

V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.

Page 28: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Weak derivative

A function f ∈ L2(a, b) is weakly differentiable, if there existsw ∈ L1

loc(a, b) satisfying∫ b

af (x)v ′(x) dx = −

∫ b

aw(x)v(x) dx

for all v ∈ C∞0 (a, b). If such a w exists, then it is unique a.e.and we write f ′(x) = w(x).

I Weak and strong derivative coincide (in the L2-sense) if f isclassically differentiable.

I Continuous functions that are piecewise differentiable areweakly differentiable.

I Functions with jumps are not weakly differentiable.

Page 29: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Weak derivative

A function f ∈ L2(a, b) is weakly differentiable, if there existsw ∈ L1

loc(a, b) satisfying∫ b

af (x)v ′(x) dx = −

∫ b

aw(x)v(x) dx

for all v ∈ C∞0 (a, b). If such a w exists, then it is unique a.e.and we write f ′(x) = w(x).

I Weak and strong derivative coincide (in the L2-sense) if f isclassically differentiable.

I Continuous functions that are piecewise differentiable areweakly differentiable.

I Functions with jumps are not weakly differentiable.

Page 30: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Weak derivative

A function f ∈ L2(a, b) is weakly differentiable, if there existsw ∈ L1

loc(a, b) satisfying∫ b

af (x)v ′(x) dx = −

∫ b

aw(x)v(x) dx

for all v ∈ C∞0 (a, b). If such a w exists, then it is unique a.e.and we write f ′(x) = w(x).

I Weak and strong derivative coincide (in the L2-sense) if f isclassically differentiable.

I Continuous functions that are piecewise differentiable areweakly differentiable.

I Functions with jumps are not weakly differentiable.

Page 31: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Weak derivative

A function f ∈ L2(a, b) is weakly differentiable, if there existsw ∈ L1

loc(a, b) satisfying∫ b

af (x)v ′(x) dx = −

∫ b

aw(x)v(x) dx

for all v ∈ C∞0 (a, b). If such a w exists, then it is unique a.e.and we write f ′(x) = w(x).

I Weak and strong derivative coincide (in the L2-sense) if f isclassically differentiable.

I Continuous functions that are piecewise differentiable areweakly differentiable.

I Functions with jumps are not weakly differentiable.

Page 32: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Examples

I

g(x) = |x |

- 2 - 1 1 2

0.5

1.0

1.5

2.0

g

- 2 - 1 1 2

- 1.0

- 0.5

0.5

1.0

g ¢

I

g(x) = |(x − 1)(x − 3)(x − 5)|

1 2 3 4 5 6

2

4

6

8

10

g

1 2 3 4 5 6

- 20

- 10

10

20

g ¢

Page 33: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Examples

I

g(x) = |x |

- 2 - 1 1 2

0.5

1.0

1.5

2.0

g

- 2 - 1 1 2

- 1.0

- 0.5

0.5

1.0

g ¢

I

g(x) = |(x − 1)(x − 3)(x − 5)|

1 2 3 4 5 6

2

4

6

8

10

g

1 2 3 4 5 6

- 20

- 10

10

20

g ¢

Page 34: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Model problem in 1D

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f ∈ L2(0, 1), find u ∈ V such that∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx , ∀ v ∈ V ,

where V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.I Find u ∈ RNh :

Au = f ,

where Nh = dim Vh ⊂ V , and the approximate solution isuh(x) =

∑Nhi=1 uiφi (x) for a basis φ1(x), . . . , φNh

(x).

Page 35: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Model problem in 1D

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f ∈ L2(0, 1), find u ∈ V such that∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx , ∀ v ∈ V ,

where V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.

I Find u ∈ RNh :Au = f ,

where Nh = dim Vh ⊂ V , and the approximate solution isuh(x) =

∑Nhi=1 uiφi (x) for a basis φ1(x), . . . , φNh

(x).

Page 36: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Model problem in 1D

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f ∈ L2(0, 1), find u ∈ V such that∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx , ∀ v ∈ V ,

where V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.I Find u ∈ RNh :

Au = f ,

where Nh = dim Vh ⊂ V , and the approximate solution isuh(x) =

∑Nhi=1 uiφi (x) for a basis φ1(x), . . . , φNh

(x).

Page 37: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Model problem in 1D

I Given f ∈ C (0, 1), find u ∈ C 2(0, 1) such that

−u′′(x) = f (x), in Ω = (0, 1)

u(0) = 0, u′(1) = 0.

I Given f ∈ L2(0, 1), find u ∈ V such that∫ 1

0u′(x)v ′(x) dx =

∫ 1

0f (x)v(x) dx , ∀ v ∈ V ,

where V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.I Find u ∈ RNh :

Au = f ,

where Nh = dim Vh ⊂ V , and the approximate solution isuh(x) =

∑Nhi=1 uiφi (x) for a basis φ1(x), . . . , φNh

(x).

Page 38: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Strategies for increasing the accuracy

I initial mesh

I h-version: mesh refinement whilekeeping the polynomial degree fixed

I p-version: increasing thepolynomial degree while keepingthe mesh fixed

I hp-version: combination of bothstrategies

I higher order (i.e., p- and hp-) methods converge faster withrespect to the number of unknowns, but require more effort inthe implementation.

Page 39: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Strategies for increasing the accuracy

I initial mesh

I h-version: mesh refinement whilekeeping the polynomial degree fixed

I p-version: increasing thepolynomial degree while keepingthe mesh fixed

I hp-version: combination of bothstrategies

I higher order (i.e., p- and hp-) methods converge faster withrespect to the number of unknowns, but require more effort inthe implementation.

Page 40: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Strategies for increasing the accuracy

I initial mesh

I h-version: mesh refinement whilekeeping the polynomial degree fixed

I p-version: increasing thepolynomial degree while keepingthe mesh fixed

I hp-version: combination of bothstrategies

I higher order (i.e., p- and hp-) methods converge faster withrespect to the number of unknowns, but require more effort inthe implementation.

Page 41: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Strategies for increasing the accuracy

I initial mesh

I h-version: mesh refinement whilekeeping the polynomial degree fixed

I p-version: increasing thepolynomial degree while keepingthe mesh fixed

I hp-version: combination of bothstrategies

I higher order (i.e., p- and hp-) methods converge faster withrespect to the number of unknowns, but require more effort inthe implementation.

Page 42: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Strategies for increasing the accuracy

I initial mesh

I h-version: mesh refinement whilekeeping the polynomial degree fixed

I p-version: increasing thepolynomial degree while keepingthe mesh fixed

I hp-version: combination of bothstrategies

I higher order (i.e., p- and hp-) methods converge faster withrespect to the number of unknowns, but require more effort inthe implementation.

Page 43: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Conforming finite element bases

I The given domain is subdivided into simple geometric objects(intervals, quadrilaterals, triangles, prisms, tetrahedra, etc.)that are called elements.

I A finite element basis consists of locally supported, piecewisepolynomial basis functions φi (x).

I A finite element basis is conforming if for all i , φi ∈ V , whereV is the function space where the variational problem is posed.

I For 1D we consider next examples for two types of conformingfinite element bases: a nodal basis and a hierarchic basis.

I The basis functions are defined on a reference element andthen mapped to the actual element in the mesh.

Page 44: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Conforming finite element bases

I The given domain is subdivided into simple geometric objects(intervals, quadrilaterals, triangles, prisms, tetrahedra, etc.)that are called elements.

I A finite element basis consists of locally supported, piecewisepolynomial basis functions φi (x).

I A finite element basis is conforming if for all i , φi ∈ V , whereV is the function space where the variational problem is posed.

I For 1D we consider next examples for two types of conformingfinite element bases: a nodal basis and a hierarchic basis.

I The basis functions are defined on a reference element andthen mapped to the actual element in the mesh.

Page 45: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Conforming finite element bases

I The given domain is subdivided into simple geometric objects(intervals, quadrilaterals, triangles, prisms, tetrahedra, etc.)that are called elements.

I A finite element basis consists of locally supported, piecewisepolynomial basis functions φi (x).

I A finite element basis is conforming if for all i , φi ∈ V , whereV is the function space where the variational problem is posed.

I For 1D we consider next examples for two types of conformingfinite element bases: a nodal basis and a hierarchic basis.

I The basis functions are defined on a reference element andthen mapped to the actual element in the mesh.

Page 46: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Conforming finite element bases

I The given domain is subdivided into simple geometric objects(intervals, quadrilaterals, triangles, prisms, tetrahedra, etc.)that are called elements.

I A finite element basis consists of locally supported, piecewisepolynomial basis functions φi (x).

I A finite element basis is conforming if for all i , φi ∈ V , whereV is the function space where the variational problem is posed.

I For 1D we consider next examples for two types of conformingfinite element bases: a nodal basis and a hierarchic basis.

I The basis functions are defined on a reference element andthen mapped to the actual element in the mesh.

Page 47: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Conforming finite element bases

I The given domain is subdivided into simple geometric objects(intervals, quadrilaterals, triangles, prisms, tetrahedra, etc.)that are called elements.

I A finite element basis consists of locally supported, piecewisepolynomial basis functions φi (x).

I A finite element basis is conforming if for all i , φi ∈ V , whereV is the function space where the variational problem is posed.

I For 1D we consider next examples for two types of conformingfinite element bases: a nodal basis and a hierarchic basis.

I The basis functions are defined on a reference element andthen mapped to the actual element in the mesh.

Page 48: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Setting for the 1D model problem

I Given f ∈ L2(0, 1), find u ∈ V such that∫ 1

0u′(x)v ′(x) dx︸ ︷︷ ︸

=a(u,v)

=

∫ 1

0f (x)v(x) dx︸ ︷︷ ︸

=F (v)

, ∀ v ∈ V ,

where V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.

I Regularity requirements for the basis functions: weaklydifferentiable and square integrable on (0, 1).

We will definecontinuous, piecewise polynomial basis functions.

I For sake of simplicity we use an equidistant subdivision of(0, 1) with the same maximal polynomial degree p on eachelement.

Note that the construction we present allows to varythe polynomial degree on the elements.

Page 49: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Setting for the 1D model problem

I Given f ∈ L2(0, 1), find u ∈ V such that∫ 1

0u′(x)v ′(x) dx︸ ︷︷ ︸

=a(u,v)

=

∫ 1

0f (x)v(x) dx︸ ︷︷ ︸

=F (v)

, ∀ v ∈ V ,

where V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.I Regularity requirements for the basis functions: weakly

differentiable and square integrable on (0, 1).

We will definecontinuous, piecewise polynomial basis functions.

I For sake of simplicity we use an equidistant subdivision of(0, 1) with the same maximal polynomial degree p on eachelement.

Note that the construction we present allows to varythe polynomial degree on the elements.

Page 50: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Setting for the 1D model problem

I Given f ∈ L2(0, 1), find u ∈ V such that∫ 1

0u′(x)v ′(x) dx︸ ︷︷ ︸

=a(u,v)

=

∫ 1

0f (x)v(x) dx︸ ︷︷ ︸

=F (v)

, ∀ v ∈ V ,

where V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.I Regularity requirements for the basis functions: weakly

differentiable and square integrable on (0, 1). We will definecontinuous, piecewise polynomial basis functions.

I For sake of simplicity we use an equidistant subdivision of(0, 1) with the same maximal polynomial degree p on eachelement.

Note that the construction we present allows to varythe polynomial degree on the elements.

Page 51: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Setting for the 1D model problem

I Given f ∈ L2(0, 1), find u ∈ V such that∫ 1

0u′(x)v ′(x) dx︸ ︷︷ ︸

=a(u,v)

=

∫ 1

0f (x)v(x) dx︸ ︷︷ ︸

=F (v)

, ∀ v ∈ V ,

where V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.I Regularity requirements for the basis functions: weakly

differentiable and square integrable on (0, 1). We will definecontinuous, piecewise polynomial basis functions.

I For sake of simplicity we use an equidistant subdivision of(0, 1) with the same maximal polynomial degree p on eachelement.

Note that the construction we present allows to varythe polynomial degree on the elements.

Page 52: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Setting for the 1D model problem

I Given f ∈ L2(0, 1), find u ∈ V such that∫ 1

0u′(x)v ′(x) dx︸ ︷︷ ︸

=a(u,v)

=

∫ 1

0f (x)v(x) dx︸ ︷︷ ︸

=F (v)

, ∀ v ∈ V ,

where V = v ∈ L2(0, 1) : a(v , v) <∞ and v(0) = 0.I Regularity requirements for the basis functions: weakly

differentiable and square integrable on (0, 1). We will definecontinuous, piecewise polynomial basis functions.

I For sake of simplicity we use an equidistant subdivision of(0, 1) with the same maximal polynomial degree p on eachelement. Note that the construction we present allows to varythe polynomial degree on the elements.

Page 53: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order nodal finite element basis

I reference element I = [−1, 1], maximal polynomial degree p

I Lagrange basis polynomials:

`j(x) =∏i 6=j

x − xixj − xi

,

where x1, . . . , xp+1 is a

n equidistant

subdivision of I.

I Example p = 3:

-1.0 -0.5 0.5 1.0

-0.2

0.2

0.4

0.6

0.8

1.0

Page 54: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order nodal finite element basis

I reference element I = [−1, 1], maximal polynomial degree p

I Lagrange basis polynomials:

`j(x) =∏i 6=j

x − xixj − xi

,

where x1, . . . , xp+1 is a

n equidistant

subdivision of I.

I Example p = 3:

-1.0 -0.5 0.5 1.0

-0.2

0.2

0.4

0.6

0.8

1.0

Page 55: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order nodal finite element basis

I reference element I = [−1, 1], maximal polynomial degree p

I Lagrange basis polynomials:

`j(x) =∏i 6=j

x − xixj − xi

,

where x1, . . . , xp+1 is an equidistant subdivision of I.

I Example p = 3:

-1.0 -0.5 0.5 1.0

-0.2

0.2

0.4

0.6

0.8

1.0

Page 56: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order nodal finite element basis

I reference element I = [−1, 1], maximal polynomial degree p

I Lagrange basis polynomials:

`j(x) =∏i 6=j

x − xixj − xi

,

where x1, . . . , xp+1 is an equidistant subdivision of I.

I Example p = 3:

-1.0 -0.5 0.5 1.0

-0.2

0.2

0.4

0.6

0.8

1.0

Page 57: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 58: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x)

, `(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 59: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x)

, `(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 60: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x)

, `(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 61: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)

→ local basis functionsφ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 62: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 63: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 64: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x),

`(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x),

φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 65: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x),

`(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x),

φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 66: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x),

`(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x),

φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 67: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x),

φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 68: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),

φ6(x), φ7(x), φ8(x)→ global basis functions

Page 69: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x),

φ7(x), φ8(x)→ global basis functions

Page 70: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x),

φ8(x)→ global basis functions

Page 71: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 72: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

`1(x), `2(x), `3(x)

`(1)1 (x), `

(1)2 (x), `

(1)3 (x), `

(2)1 (x), `

(2)2 (x),

`(2)3 (x), `

(3)1 (x), `

(3)2 (x), `

(3)3 (x), `

(4)1 (x),

`(4)2 (x), `

(4)3 (x)→ local basis functions

φ1(x), φ2(x), φ3(x), φ4(x), φ5(x),φ6(x), φ7(x), φ8(x)

→ global basis functions

Page 73: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix

I A = (a(φi , φj)Nhi ,j=1 with a(u, v) =

∫ 10 u′(x)v ′(x) dx .

A =

JI JI 0 0 0 0 0 0JI JI JI JI 0 0 0 0

0 JI JI JI 0 0 0 00 JI JI JI JI JI 0 00 0 0 JI JI JI 0 00 0 0 JI JI JI JI JI0 0 0 0 0 JI JI JI0 0 0 0 0 JI JI JI

14

12

34

1

12

1

Page 74: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix

I A = (a(φi , φj)Nhi ,j=1 with a(u, v) =

∫ 10 u′(x)v ′(x) dx .

A =

JI JI 0 0 0 0 0 0JI JI JI JI 0 0 0 0

0 JI JI JI 0 0 0 00 JI JI JI JI JI 0 00 0 0 JI JI JI 0 00 0 0 JI JI JI JI JI0 0 0 0 0 JI JI JI0 0 0 0 0 JI JI JI

14

12

34

1

12

1

Page 75: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix

I A = (a(φi , φj)Nhi ,j=1 with a(u, v) =

∫ 10 u′(x)v ′(x) dx .

A =

JI JI 0 0 0 0 0 0JI JI JI JI 0 0 0 0

0 JI JI JI 0 0 0 00 JI JI JI JI JI 0 00 0 0 JI JI JI 0 00 0 0 JI JI JI JI JI0 0 0 0 0 JI JI JI0 0 0 0 0 JI JI JI

14

12

34

1

12

1

Page 76: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order hierarchical finite element basisI reference element I = [−1, 1], maximal polynomial degree p

I vertex based basis functions: 1 in the defining vertex and 0 inall other vertices,

ϕV ,0(x) =1− x

2, ϕV ,1(x) =

1 + x

2I cell based basis functions: vanish at the boundary of the

element, polynomial inside:

ϕC ,i (x) = Li (x) :=

∫ x

−1Pi−1(x) dx , i ≥ 2,

where Pn(x) is the nth Legendre polynomial. The polynomialsLn(x) are called integrated Legendre polynomials.

I Legendre polynomials are orthogonal w.r.t. the L2(−1, 1)inner product, i.e.,∫ 1

−1Pi (x)Pj(x) dx = 0, if i 6= j .

Page 77: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order hierarchical finite element basisI reference element I = [−1, 1], maximal polynomial degree pI vertex based basis functions: 1 in the defining vertex and 0 in

all other vertices,

ϕV ,0(x) =1− x

2, ϕV ,1(x) =

1 + x

2

I cell based basis functions: vanish at the boundary of theelement, polynomial inside:

ϕC ,i (x) = Li (x) :=

∫ x

−1Pi−1(x) dx , i ≥ 2,

where Pn(x) is the nth Legendre polynomial. The polynomialsLn(x) are called integrated Legendre polynomials.

I Legendre polynomials are orthogonal w.r.t. the L2(−1, 1)inner product, i.e.,∫ 1

−1Pi (x)Pj(x) dx = 0, if i 6= j .

Page 78: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order hierarchical finite element basisI reference element I = [−1, 1], maximal polynomial degree pI vertex based basis functions: 1 in the defining vertex and 0 in

all other vertices,

ϕV ,0(x) =1− x

2, ϕV ,1(x) =

1 + x

2I cell based basis functions: vanish at the boundary of the

element, polynomial inside:

ϕC ,i (x) = Li (x) :=

∫ x

−1Pi−1(x) dx , i ≥ 2,

where Pn(x) is the nth Legendre polynomial. The polynomialsLn(x) are called integrated Legendre polynomials.

I Legendre polynomials are orthogonal w.r.t. the L2(−1, 1)inner product, i.e.,∫ 1

−1Pi (x)Pj(x) dx = 0, if i 6= j .

Page 79: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integrated Legendre polynomialsI For n ≥ 2 with L0(x) = −1 and L1(x) = x we have

Ln(x) =2n − 3

nxLn−1(x)− n − 3

nLn−2(x).

I Ln(±1) = 0I Orthogonality relation∫ 1

−1L′i (x)L′j(x) dx = 0, if i 6= j

I Sparse w.r.t. the L2 inner product∫ 1

−1Li (x)Lj(x) dx = 0, if |i − j | 6= 0, 2

- 1.0 - 0.5 0.5 1.0

- 0.4

- 0.2

0.2

Page 80: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integrated Legendre polynomialsI For n ≥ 2 with L0(x) = −1 and L1(x) = x we have

Ln(x) =2n − 3

nxLn−1(x)− n − 3

nLn−2(x).

I Ln(±1) = 0

I Orthogonality relation∫ 1

−1L′i (x)L′j(x) dx = 0, if i 6= j

I Sparse w.r.t. the L2 inner product∫ 1

−1Li (x)Lj(x) dx = 0, if |i − j | 6= 0, 2

- 1.0 - 0.5 0.5 1.0

- 0.4

- 0.2

0.2

Page 81: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integrated Legendre polynomialsI For n ≥ 2 with L0(x) = −1 and L1(x) = x we have

Ln(x) =2n − 3

nxLn−1(x)− n − 3

nLn−2(x).

I Ln(±1) = 0I Orthogonality relation∫ 1

−1L′i (x)L′j(x) dx = 0, if i 6= j

I Sparse w.r.t. the L2 inner product∫ 1

−1Li (x)Lj(x) dx = 0, if |i − j | 6= 0, 2

- 1.0 - 0.5 0.5 1.0

- 0.4

- 0.2

0.2

Page 82: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integrated Legendre polynomialsI For n ≥ 2 with L0(x) = −1 and L1(x) = x we have

Ln(x) =2n − 3

nxLn−1(x)− n − 3

nLn−2(x).

I Ln(±1) = 0I Orthogonality relation∫ 1

−1L′i (x)L′j(x) dx = 0, if i 6= j

I Sparse w.r.t. the L2 inner product∫ 1

−1Li (x)Lj(x) dx = 0, if |i − j | 6= 0, 2

- 1.0 - 0.5 0.5 1.0

- 0.4

- 0.2

0.2

Page 83: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local and global basis (p = 2, 4 elements)

14

12

34

1

12

1

-1 -

12

12

1

12

1

ϕV ,0(x), ϕV ,1(x), ϕC ,2(x)

global basis:φV2(x), φV3(x), φV4(x), φV5(x)︸ ︷︷ ︸

=ΦV

,

φC1,2(x), φC2,2(x), φC3,2(x), φC4,2(x)︸ ︷︷ ︸=ΦC

Page 84: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix

I A = (a(φi , φj)Nhi ,j=1 =

(AVV AVC

ACV ACC

)with a(u, v)=

1∫0

u′v ′dx .

A =

JI JI 0 0 JI JI 0 0JI JI JI 0 0 JI JI 0

0 JI JI JI 0 0 JI JI0 0 JI JI 0 0 0 JIJI 0 0 0 JI 0 0 0JI JI 0 0 0 JI 0 0

0 JI JI 0 0 0 JI 00 0 JI JI 0 0 0 JI

14

12

34

1

12

1

Page 85: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix

I A = (a(φi , φj)Nhi ,j=1 =

(AVV AVC

ACV ACC

)with a(u, v)=

1∫0

u′v ′dx .

A =

JI JI 0 0 JI JI 0 0JI JI JI 0 0 JI JI 0

0 JI JI JI 0 0 JI JI0 0 JI JI 0 0 0 JI

JI 0 0 0 JI 0 0 0JI JI 0 0 0 JI 0 0

0 JI JI 0 0 0 JI 00 0 JI JI 0 0 0 JI

14

12

34

1

12

1

Page 86: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example

Find u : − u′′(x) = 18 (2x − 1)(4x − 3) sin(πx), in (0, 1)

u(0) = 0, u′(1) = 0.

Page 87: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example

Find u : − u′′(x) = 18 (2x − 1)(4x − 3) sin(πx), in (0, 1)

u(0) = 0, u′(1) = 0.

0.0 0.2 0.4 0.6 0.8 1.0

0.002

0.004

0.006

0.008

exact solution

Page 88: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example

Find u : − u′′(x) = 18 (2x − 1)(4x − 3) sin(πx), in (0, 1)

u(0) = 0, u′(1) = 0.

0.0 0.2 0.4 0.6 0.8 1.0

0.002

0.004

0.006

0.008

exact solution, approximation for p = 2

Page 89: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example

Find u : − u′′(x) = 18 (2x − 1)(4x − 3) sin(πx), in (0, 1)

u(0) = 0, u′(1) = 0.

0.0 0.2 0.4 0.6 0.8 1.0

0.002

0.004

0.006

0.008

exact solution, approximation for p = 3

Page 90: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example

Find u : − u′′(x) = 18 (2x − 1)(4x − 3) sin(πx), in (0, 1)

u(0) = 0, u′(1) = 0.

0.0 0.2 0.4 0.6 0.8 1.0

0.002

0.004

0.006

0.008

exact solution, approximation for p = 4

Page 91: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example

Find u : − u′′(x) = 18 (2x − 1)(4x − 3) sin(πx), in (0, 1)

u(0) = 0, u′(1) = 0.

0.0 0.2 0.4 0.6 0.8 1.0

0.002

0.004

0.006

0.008

exact solution, approximation for p = 5

Page 92: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example

Find u : − u′′(x) = 18 (2x − 1)(4x − 3) sin(πx), in (0, 1)

u(0) = 0, u′(1) = 0.

0.0 0.2 0.4 0.6 0.8 1.0

0.002

0.004

0.006

0.008

exact solution, approximation for p = 6

Page 93: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example: the system matrix for p = 6

in the hierarchic basis:

1 0 0 0 0 0

0 43 0 0 0 0

0 0 45 0 0 0

0 0 0 47 0 0

0 0 0 0 49 0

0 0 0 0 0 411

I sparse elementmatrix

I add newpolynomials whenincreasing thepolynomial degree

I recurrence for fastevaluation

In the nodal basis:

40. −48. 38. −24. 10. −2.2−48. 80. −76. 50. −24. 5.938. −76. 95. −76. 38. −9.8−24. 50. −76. 80. −48. 11.10. −24. 38. −48. 40. −14.−2.2 5.9 −9.8 11. −14. 8.6

I full element matrix

I recompute whole basis whenincreasing the polynomial degree

Page 94: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example: the system matrix for p = 6

in the hierarchic basis:

1 0 0 0 0 0

0 43 0 0 0 0

0 0 45 0 0 0

0 0 0 47 0 0

0 0 0 0 49 0

0 0 0 0 0 411

I sparse element

matrix

I add newpolynomials whenincreasing thepolynomial degree

I recurrence for fastevaluation

In the nodal basis:

40. −48. 38. −24. 10. −2.2−48. 80. −76. 50. −24. 5.938. −76. 95. −76. 38. −9.8−24. 50. −76. 80. −48. 11.10. −24. 38. −48. 40. −14.−2.2 5.9 −9.8 11. −14. 8.6

I full element matrix

I recompute whole basis whenincreasing the polynomial degree

Page 95: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example: the system matrix for p = 6

in the hierarchic basis:

1 0 0 0 0 0

0 43 0 0 0 0

0 0 45 0 0 0

0 0 0 47 0 0

0 0 0 0 49 0

0 0 0 0 0 411

I sparse element

matrix

I add newpolynomials whenincreasing thepolynomial degree

I recurrence for fastevaluation

In the nodal basis:

40. −48. 38. −24. 10. −2.2−48. 80. −76. 50. −24. 5.938. −76. 95. −76. 38. −9.8−24. 50. −76. 80. −48. 11.10. −24. 38. −48. 40. −14.−2.2 5.9 −9.8 11. −14. 8.6

I full element matrix

I recompute whole basis whenincreasing the polynomial degree

Page 96: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example: the system matrix for p = 6

in the hierarchic basis:

1 0 0 0 0 0

0 43 0 0 0 0

0 0 45 0 0 0

0 0 0 47 0 0

0 0 0 0 49 0

0 0 0 0 0 411

I sparse element

matrix

I add newpolynomials whenincreasing thepolynomial degree

I recurrence for fastevaluation

In the nodal basis:

40. −48. 38. −24. 10. −2.2−48. 80. −76. 50. −24. 5.938. −76. 95. −76. 38. −9.8−24. 50. −76. 80. −48. 11.10. −24. 38. −48. 40. −14.−2.2 5.9 −9.8 11. −14. 8.6

I full element matrix

I recompute whole basis whenincreasing the polynomial degree

Page 97: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (2D)

I Model problem: given f : R2 → R, find u : R2 → R s.t.

−∆u(x) = f (x), in Ω

u(x) = 0, on ∂Ω,

where ∆g(x) =∑d

i=1∂2g∂x2

i(x) denotes the Laplace operator.

I Let v be a sufficiently smooth function with v |∂Ω= 0. Wemultiply the equation above by v(x) and integrate over Ω.

Next we apply Gauß’ theorem and use the essential conditionon v .

−∫

Ω∆u(x)v(x) dx =

∫Ω

f (x)v(x) dx

∫Ω∇u(x)∇v(x) dx −

∫∂Ω

∂u

∂n(x)v(x) dx =

∫Ω

f (x)v(x) dx

a(u, v) :=

∫Ω∇u(x)∇v(x) dx =

∫Ω

f (x)v(x) dx =: F (v)

Page 98: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (2D)

I Model problem: given f : R2 → R, find u : R2 → R s.t.

−∆u(x) = f (x), in Ω

u(x) = 0, on ∂Ω,

where ∆g(x) =∑d

i=1∂2g∂x2

i(x) denotes the Laplace operator.

I Let v be a sufficiently smooth function with v |∂Ω= 0. Wemultiply the equation above by v(x) and integrate over Ω.

Next we apply Gauß’ theorem and use the essential conditionon v .

−∫

Ω∆u(x)v(x) dx =

∫Ω

f (x)v(x) dx

∫Ω∇u(x)∇v(x) dx −

∫∂Ω

∂u

∂n(x)v(x) dx =

∫Ω

f (x)v(x) dx

a(u, v) :=

∫Ω∇u(x)∇v(x) dx =

∫Ω

f (x)v(x) dx =: F (v)

Page 99: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (2D)

I Model problem: given f : R2 → R, find u : R2 → R s.t.

−∆u(x) = f (x), in Ω

u(x) = 0, on ∂Ω,

where ∆g(x) =∑d

i=1∂2g∂x2

i(x) denotes the Laplace operator.

I Let v be a sufficiently smooth function with v |∂Ω= 0. Wemultiply the equation above by v(x) and integrate over Ω.Next we apply Gauß’ theorem

and use the essential conditionon v .

−∫

Ω∆u(x)v(x) dx =

∫Ω

f (x)v(x) dx∫Ω∇u(x)∇v(x) dx −

∫∂Ω

∂u

∂n(x)v(x) dx =

∫Ω

f (x)v(x) dx

a(u, v) :=

∫Ω∇u(x)∇v(x) dx =

∫Ω

f (x)v(x) dx =: F (v)

Page 100: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (2D)

I Model problem: given f : R2 → R, find u : R2 → R s.t.

−∆u(x) = f (x), in Ω

u(x) = 0, on ∂Ω,

where ∆g(x) =∑d

i=1∂2g∂x2

i(x) denotes the Laplace operator.

I Let v be a sufficiently smooth function with v |∂Ω= 0. Wemultiply the equation above by v(x) and integrate over Ω.Next we apply Gauß’ theorem and use the essential conditionon v .

−∫

Ω∆u(x)v(x) dx =

∫Ω

f (x)v(x) dx∫Ω∇u(x)∇v(x) dx −

∫∂Ω

∂u

∂n(x)v(x) dx =

∫Ω

f (x)v(x) dx

a(u, v) :=

∫Ω∇u(x)∇v(x) dx =

∫Ω

f (x)v(x) dx =: F (v)

Page 101: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Variational/Weak formulation (2D)

I Model problem: given f : R2 → R, find u : R2 → R s.t.

−∆u(x) = f (x), in Ω

u(x) = 0, on ∂Ω,

where ∆g(x) =∑d

i=1∂2g∂x2

i(x) denotes the Laplace operator.

I Let v be a sufficiently smooth function with v |∂Ω= 0. Wemultiply the equation above by v(x) and integrate over Ω.Next we apply Gauß’ theorem and use the essential conditionon v .

−∫

Ω∆u(x)v(x) dx =

∫Ω

f (x)v(x) dx∫Ω∇u(x)∇v(x) dx

−∫∂Ω

∂u

∂n(x)v(x) dx

=

∫Ω

f (x)v(x) dx

a(u, v) :=

∫Ω∇u(x)∇v(x) dx =

∫Ω

f (x)v(x) dx =: F (v)

Page 102: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Model problem in 2D

I Given f ∈ C (Ω), find u ∈ C 2(Ω) such that

−∆u(x) = f (x), in Ω

u(x) = 0, on ∂Ω,

I Given f ∈ L2(Ω), find u ∈ V such that∫Ω∇u(x)∇v(x) dx =

∫Ω

f (x)v(x) dx , ∀ v ∈ V ,

where V = v ∈ L2(Ω): a(v , v) <∞ and v |∂Ω= 0.I Find u ∈ RNh :

Au = f ,

where Nh = dim Vh ⊂ V , and the approximate solution isuh(x) =

∑Nhi=1 uiφi (x) for a basis φ1(x), . . . , φNh

(x).

Page 103: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Hierarchic high order finite element basis in 2D

I Vertex based basis functions

1 at the defining vertex, 0 on allother vertices, linear in between

I Edge based basis functions

polynomial on the defining edge,vanishing on all other edges, polynomial in between

I Cell based basis functions

supported only on the definingelement, i.e., vanish on the boundary, polynomial on theinterior of the element

Page 104: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Hierarchic high order finite element basis in 2D

I Vertex based basis functions 1 at the defining vertex, 0 on allother vertices, linear in between

I Edge based basis functions

polynomial on the defining edge,vanishing on all other edges, polynomial in between

I Cell based basis functions

supported only on the definingelement, i.e., vanish on the boundary, polynomial on theinterior of the element

Page 105: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Hierarchic high order finite element basis in 2D

I Vertex based basis functions 1 at the defining vertex, 0 on allother vertices, linear in between

I Edge based basis functions polynomial on the defining edge,vanishing on all other edges, polynomial in between

I Cell based basis functions

supported only on the definingelement, i.e., vanish on the boundary, polynomial on theinterior of the element

Page 106: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Hierarchic high order finite element basis in 2D

I Vertex based basis functions 1 at the defining vertex, 0 on allother vertices, linear in between

I Edge based basis functions polynomial on the defining edge,vanishing on all other edges, polynomial in between

I Cell based basis functions supported only on the definingelement, i.e., vanish on the boundary, polynomial on theinterior of the element

Page 107: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order finite element basis on quadrilateralsI reference element Q = [−1, 1]2

I tensor product of 1D basis functions

I Vertex based basis functions:

ϕV1(x , y) = ϕV ,0(x)ϕV ,0(y)

= 14 (1− x)(1− y)

V1 V2

V3V4

e1

e2

e3

e4

I Edge based basis functions: ϕe1,i (x , y) = Li (x)ϕV ,0(y), fori = 2, . . . , p

I Cell based basis functions: ϕC ,i ,j(x , y) = Li (x)Lj(y) fori , j = 2, . . . , p

I Local vector of basis functions:

(ϕV1 , ϕV2 , ϕV3 , ϕV4︸ ︷︷ ︸ϕV

, ϕe1,2, . . . , ϕe4,p︸ ︷︷ ︸ϕE

, ϕC ,2,2, . . . , ϕC ,p,p︸ ︷︷ ︸ϕC

)

Page 108: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order finite element basis on quadrilateralsI reference element Q = [−1, 1]2

I tensor product of 1D basis functions

I Vertex based basis functions:

ϕV1(x , y) = ϕV ,0(x)ϕV ,0(y)

= 14 (1− x)(1− y)

V1 V2

V3V4

e1

e2

e3

e4

I Edge based basis functions: ϕe1,i (x , y) = Li (x)ϕV ,0(y), fori = 2, . . . , p

I Cell based basis functions: ϕC ,i ,j(x , y) = Li (x)Lj(y) fori , j = 2, . . . , p

I Local vector of basis functions:

(ϕV1 , ϕV2 , ϕV3 , ϕV4︸ ︷︷ ︸ϕV

, ϕe1,2, . . . , ϕe4,p︸ ︷︷ ︸ϕE

, ϕC ,2,2, . . . , ϕC ,p,p︸ ︷︷ ︸ϕC

)

Page 109: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order finite element basis on quadrilateralsI reference element Q = [−1, 1]2

I tensor product of 1D basis functions

I Vertex based basis functions:

ϕV1(x , y) = ϕV ,0(x)ϕV ,0(y)

= 14 (1− x)(1− y)

V1 V2

V3V4

e1

e2

e3

e4

I Edge based basis functions: ϕe1,i (x , y) = Li (x)ϕV ,0(y), fori = 2, . . . , p

I Cell based basis functions: ϕC ,i ,j(x , y) = Li (x)Lj(y) fori , j = 2, . . . , p

I Local vector of basis functions:

(ϕV1 , ϕV2 , ϕV3 , ϕV4︸ ︷︷ ︸ϕV

, ϕe1,2, . . . , ϕe4,p︸ ︷︷ ︸ϕE

, ϕC ,2,2, . . . , ϕC ,p,p︸ ︷︷ ︸ϕC

)

Page 110: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order finite element basis on quadrilateralsI reference element Q = [−1, 1]2

I tensor product of 1D basis functions

I Vertex based basis functions:

ϕV1(x , y) = ϕV ,0(x)ϕV ,0(y)

= 14 (1− x)(1− y)

-1.0

-0.5

0.0

0.5

1.0-1.0

-0.5

0.0

0.5

1.0

0.0

0.5

1.0

I Edge based basis functions: ϕe1,i (x , y) = Li (x)ϕV ,0(y), fori = 2, . . . , p

I Cell based basis functions: ϕC ,i ,j(x , y) = Li (x)Lj(y) fori , j = 2, . . . , p

I Local vector of basis functions:

(ϕV1 , ϕV2 , ϕV3 , ϕV4︸ ︷︷ ︸ϕV

, ϕe1,2, . . . , ϕe4,p︸ ︷︷ ︸ϕE

, ϕC ,2,2, . . . , ϕC ,p,p︸ ︷︷ ︸ϕC

)

Page 111: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order finite element basis on quadrilateralsI reference element Q = [−1, 1]2

I tensor product of 1D basis functions

I Vertex based basis functions:

ϕV1(x , y) = ϕV ,0(x)ϕV ,0(y)

= 14 (1− x)(1− y)

V1 V2

V3V4

e1

e2

e3

e4

I Edge based basis functions: ϕe1,i (x , y) = Li (x)ϕV ,0(y), fori = 2, . . . , p

I Cell based basis functions: ϕC ,i ,j(x , y) = Li (x)Lj(y) fori , j = 2, . . . , p

I Local vector of basis functions:

(ϕV1 , ϕV2 , ϕV3 , ϕV4︸ ︷︷ ︸ϕV

, ϕe1,2, . . . , ϕe4,p︸ ︷︷ ︸ϕE

, ϕC ,2,2, . . . , ϕC ,p,p︸ ︷︷ ︸ϕC

)

Page 112: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order finite element basis on quadrilateralsI reference element Q = [−1, 1]2

I tensor product of 1D basis functions

I Vertex based basis functions:

ϕV1(x , y) = ϕV ,0(x)ϕV ,0(y)

= 14 (1− x)(1− y)

-1.0

-0.5

0.0

0.5

1.0-1.0

-0.5

0.0

0.5

1.0

-0.2

-0.1

0.0

0.1

0.2

I Edge based basis functions: ϕe1,i (x , y) = Li (x)ϕV ,0(y), fori = 2, . . . , p

I Cell based basis functions: ϕC ,i ,j(x , y) = Li (x)Lj(y) fori , j = 2, . . . , p

I Local vector of basis functions:

(ϕV1 , ϕV2 , ϕV3 , ϕV4︸ ︷︷ ︸ϕV

, ϕe1,2, . . . , ϕe4,p︸ ︷︷ ︸ϕE

, ϕC ,2,2, . . . , ϕC ,p,p︸ ︷︷ ︸ϕC

)

Page 113: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order finite element basis on quadrilateralsI reference element Q = [−1, 1]2

I tensor product of 1D basis functions

I Vertex based basis functions:

ϕV1(x , y) = ϕV ,0(x)ϕV ,0(y)

= 14 (1− x)(1− y)

V1 V2

V3V4

e1

e2

e3

e4

I Edge based basis functions: ϕe1,i (x , y) = Li (x)ϕV ,0(y), fori = 2, . . . , p

I Cell based basis functions: ϕC ,i ,j(x , y) = Li (x)Lj(y) fori , j = 2, . . . , p

I Local vector of basis functions:

(ϕV1 , ϕV2 , ϕV3 , ϕV4︸ ︷︷ ︸ϕV

, ϕe1,2, . . . , ϕe4,p︸ ︷︷ ︸ϕE

, ϕC ,2,2, . . . , ϕC ,p,p︸ ︷︷ ︸ϕC

)

Page 114: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order finite element basis on quadrilateralsI reference element Q = [−1, 1]2

I tensor product of 1D basis functions

I Vertex based basis functions:

ϕV1(x , y) = ϕV ,0(x)ϕV ,0(y)

= 14 (1− x)(1− y)

-1.0

-0.5

0.0

0.5

1.0-1.0

-0.5

0.0

0.5

1.0

-0.10

-0.05

0.00

0.05

0.10

I Edge based basis functions: ϕe1,i (x , y) = Li (x)ϕV ,0(y), fori = 2, . . . , p

I Cell based basis functions: ϕC ,i ,j(x , y) = Li (x)Lj(y) fori , j = 2, . . . , p

I Local vector of basis functions:

(ϕV1 , ϕV2 , ϕV3 , ϕV4︸ ︷︷ ︸ϕV

, ϕe1,2, . . . , ϕe4,p︸ ︷︷ ︸ϕE

, ϕC ,2,2, . . . , ϕC ,p,p︸ ︷︷ ︸ϕC

)

Page 115: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order finite element basis on quadrilateralsI reference element Q = [−1, 1]2

I tensor product of 1D basis functions

I Vertex based basis functions:

ϕV1(x , y) = ϕV ,0(x)ϕV ,0(y)

= 14 (1− x)(1− y)

V1 V2

V3V4

e1

e2

e3

e4

I Edge based basis functions: ϕe1,i (x , y) = Li (x)ϕV ,0(y), fori = 2, . . . , p

I Cell based basis functions: ϕC ,i ,j(x , y) = Li (x)Lj(y) fori , j = 2, . . . , p

I Local vector of basis functions:

(ϕV1 , ϕV2 , ϕV3 , ϕV4︸ ︷︷ ︸ϕV

, ϕe1,2, . . . , ϕe4,p︸ ︷︷ ︸ϕE

, ϕC ,2,2, . . . , ϕC ,p,p︸ ︷︷ ︸ϕC

)

Page 116: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Global vector of basis functions

I Collect globally vertex, edge and cellbased basis functions (ΦV ,ΦE ,ΦC )

I Vertex based basis functions aresupported on all elements sharing thedefining vertex

I Edge based basis functions aresupported on the two elements sharingthe defining edge

(Need to care aboutorientation of edges!)

I Cell based basis functions are only supported on the definingelement

I There can only be nonzero entries in the system matrix, if thesupport of two basis functions overlaps.

Page 117: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Global vector of basis functions

I Collect globally vertex, edge and cellbased basis functions (ΦV ,ΦE ,ΦC )

I Vertex based basis functions aresupported on all elements sharing thedefining vertex

I Edge based basis functions aresupported on the two elements sharingthe defining edge

(Need to care aboutorientation of edges!)

I Cell based basis functions are only supported on the definingelement

I There can only be nonzero entries in the system matrix, if thesupport of two basis functions overlaps.

Page 118: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Global vector of basis functions

I Collect globally vertex, edge and cellbased basis functions (ΦV ,ΦE ,ΦC )

I Vertex based basis functions aresupported on all elements sharing thedefining vertex

I Edge based basis functions aresupported on the two elements sharingthe defining edge

(Need to care aboutorientation of edges!)

I Cell based basis functions are only supported on the definingelement

I There can only be nonzero entries in the system matrix, if thesupport of two basis functions overlaps.

Page 119: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Global vector of basis functions

-1.0

-0.5

0.0

0.5

1.0-1.0

-0.5

0.0

0.5

1.0

-0.2

-0.1

0.0

0.1

0.2

I Collect globally vertex, edge and cellbased basis functions (ΦV ,ΦE ,ΦC )

I Vertex based basis functions aresupported on all elements sharing thedefining vertex

I Edge based basis functions aresupported on the two elements sharingthe defining edge (Need to care aboutorientation of edges!)

I Cell based basis functions are only supported on the definingelement

I There can only be nonzero entries in the system matrix, if thesupport of two basis functions overlaps.

Page 120: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Global vector of basis functions

I Collect globally vertex, edge and cellbased basis functions (ΦV ,ΦE ,ΦC )

I Vertex based basis functions aresupported on all elements sharing thedefining vertex

I Edge based basis functions aresupported on the two elements sharingthe defining edge (Need to care aboutorientation of edges!)

I Cell based basis functions are only supported on the definingelement

I There can only be nonzero entries in the system matrix, if thesupport of two basis functions overlaps.

Page 121: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Global vector of basis functions

I Collect globally vertex, edge and cellbased basis functions (ΦV ,ΦE ,ΦC )

I Vertex based basis functions aresupported on all elements sharing thedefining vertex

I Edge based basis functions aresupported on the two elements sharingthe defining edge (Need to care aboutorientation of edges!)

I Cell based basis functions are only supported on the definingelement

I There can only be nonzero entries in the system matrix, if thesupport of two basis functions overlaps.

Page 122: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix on the reference element

I A = (a(φi , φj)i ,j with a(u, v) =∫

Ω∇u(x , y)∇v(x , y) d(x , y)

I All basis functions are tensor products: φi (x , y) = fi (x)gi (y),hence

∇φi (x , y) = (f ′i (x)gi (y), fi (x)g ′i (y))

and a(φi (x , y), φj(x , y)) =

=

∫Q

(f ′i (x)f ′j (x)gi (y)gj(y) + fi (x)fj(x)g ′i (y)g ′j (y)

)d(x , y)

=

∫ 1

−1f ′i (x)f ′j (x) dx

∫ 1

−1gi (y)gj(y) dy

+

∫ 1

−1fi (x)fj(x) dx

∫ 1

−1g ′i (y)g ′j (y)) dy

I combination of one-dimensional bilinear forms!

Page 123: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix on the reference element

I A = (a(φi , φj)i ,j with a(u, v) =∫

Ω∇u(x , y)∇v(x , y) d(x , y)

I All basis functions are tensor products: φi (x , y) = fi (x)gi (y),hence

∇φi (x , y) = (f ′i (x)gi (y), fi (x)g ′i (y))

and a(φi (x , y), φj(x , y)) =

=

∫Q

(f ′i (x)f ′j (x)gi (y)gj(y) + fi (x)fj(x)g ′i (y)g ′j (y)

)d(x , y)

=

∫ 1

−1f ′i (x)f ′j (x) dx

∫ 1

−1gi (y)gj(y) dy

+

∫ 1

−1fi (x)fj(x) dx

∫ 1

−1g ′i (y)g ′j (y)) dy

I combination of one-dimensional bilinear forms!

Page 124: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix on the reference element

I A = (a(φi , φj)i ,j with a(u, v) =∫

Ω∇u(x , y)∇v(x , y) d(x , y)

I All basis functions are tensor products: φi (x , y) = fi (x)gi (y),hence

∇φi (x , y) = (f ′i (x)gi (y), fi (x)g ′i (y))

and a(φi (x , y), φj(x , y)) =

=

∫Q

(f ′i (x)f ′j (x)gi (y)gj(y) + fi (x)fj(x)g ′i (y)g ′j (y)

)d(x , y)

=

∫ 1

−1f ′i (x)f ′j (x) dx

∫ 1

−1gi (y)gj(y) dy

+

∫ 1

−1fi (x)fj(x) dx

∫ 1

−1g ′i (y)g ′j (y)) dy

I combination of one-dimensional bilinear forms!

Page 125: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix on the reference element

I A = (a(φi , φj)i ,j with a(u, v) =∫

Ω∇u(x , y)∇v(x , y) d(x , y)

I All basis functions are tensor products: φi (x , y) = fi (x)gi (y),hence

∇φi (x , y) = (f ′i (x)gi (y), fi (x)g ′i (y))

and a(φi (x , y), φj(x , y)) =

=

∫Q

(f ′i (x)f ′j (x)gi (y)gj(y) + fi (x)fj(x)g ′i (y)g ′j (y)

)d(x , y)

=

∫ 1

−1f ′i (x)f ′j (x) dx

∫ 1

−1gi (y)gj(y) dy

+

∫ 1

−1fi (x)fj(x) dx

∫ 1

−1g ′i (y)g ′j (y)) dy

I combination of one-dimensional bilinear forms!

Page 126: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The system matrix on the reference element

I A = (a(φi , φj)i ,j with a(u, v) =∫

Ω∇u(x , y)∇v(x , y) d(x , y)

I All basis functions are tensor products: φi (x , y) = fi (x)gi (y),hence

∇φi (x , y) = (f ′i (x)gi (y), fi (x)g ′i (y))

and a(φi (x , y), φj(x , y)) =

=

∫Q

(f ′i (x)f ′j (x)gi (y)gj(y) + fi (x)fj(x)g ′i (y)g ′j (y)

)d(x , y)

=

∫ 1

−1f ′i (x)f ′j (x) dx

∫ 1

−1gi (y)gj(y) dy

+

∫ 1

−1fi (x)fj(x) dx

∫ 1

−1g ′i (y)g ′j (y)) dy

I combination of one-dimensional bilinear forms!

Page 127: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The element system matrix for p = 3

The matrix can again be subdivided into block according to thedifferent types of basis functions: AVV AVE AVC

AEV AEE AEC

ACV ACE ACC

and if the basis using integrated Legendre polynomials is used, thenthe nonzero pattern is as follows...

Page 128: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The element system matrix for p = 3

∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗

∗ ∗ ∗ ∗ ∗∗ ∗ ∗ ∗ ∗

Page 129: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The element system matrix for p = 7

1 20 40 64

1

20

40

64

1 20 40 64

1

20

40

64

Page 130: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: recurrence relations

I FE-basis on quadrilaterals defined as tensor products of 1Dbasis functions

I Hierarchic 1D basis functions defined using orthogonalpolynomials

I Orthogonal polynomials φn(x) satisfy three term recurrences

φn(x) = (anx + bn)φn−1(x) + cnφn−2(x), n ≥ 1.

So do integrated Legendre polynomials!

I Derivatives of orthogonal polynomials also satisfy three termrecurrences.

I Building blocks of system matrices are integrals of the form∫Iφi (x)ψj(x) dx ,

where φi and ψj are orthogonal polynomials (satisfy threeterm recurrences).

Page 131: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: recurrence relations

I FE-basis on quadrilaterals defined as tensor products of 1Dbasis functions

I Hierarchic 1D basis functions defined using orthogonalpolynomials

I Orthogonal polynomials φn(x) satisfy three term recurrences

φn(x) = (anx + bn)φn−1(x) + cnφn−2(x), n ≥ 1.

So do integrated Legendre polynomials!

I Derivatives of orthogonal polynomials also satisfy three termrecurrences.

I Building blocks of system matrices are integrals of the form∫Iφi (x)ψj(x) dx ,

where φi and ψj are orthogonal polynomials (satisfy threeterm recurrences).

Page 132: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: recurrence relations

I FE-basis on quadrilaterals defined as tensor products of 1Dbasis functions

I Hierarchic 1D basis functions defined using orthogonalpolynomials

I Orthogonal polynomials φn(x) satisfy three term recurrences

φn(x) = (anx + bn)φn−1(x) + cnφn−2(x), n ≥ 1.

So do integrated Legendre polynomials!

I Derivatives of orthogonal polynomials also satisfy three termrecurrences.

I Building blocks of system matrices are integrals of the form∫Iφi (x)ψj(x) dx ,

where φi and ψj are orthogonal polynomials (satisfy threeterm recurrences).

Page 133: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: recurrence relations

I FE-basis on quadrilaterals defined as tensor products of 1Dbasis functions

I Hierarchic 1D basis functions defined using orthogonalpolynomials

I Orthogonal polynomials φn(x) satisfy three term recurrences

φn(x) = (anx + bn)φn−1(x) + cnφn−2(x), n ≥ 1.

So do integrated Legendre polynomials!

I Derivatives of orthogonal polynomials also satisfy three termrecurrences.

I Building blocks of system matrices are integrals of the form∫Iφi (x)ψj(x) dx ,

where φi and ψj are orthogonal polynomials (satisfy threeterm recurrences).

Page 134: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: recurrence relations

I FE-basis on quadrilaterals defined as tensor products of 1Dbasis functions

I Hierarchic 1D basis functions defined using orthogonalpolynomials

I Orthogonal polynomials φn(x) satisfy three term recurrences

φn(x) = (anx + bn)φn−1(x) + cnφn−2(x), n ≥ 1.

So do integrated Legendre polynomials!

I Derivatives of orthogonal polynomials also satisfy three termrecurrences.

I Building blocks of system matrices are integrals of the form∫Iφi (x)ψj(x) dx ,

where φi and ψj are orthogonal polynomials (satisfy threeterm recurrences).

Page 135: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: recurrence relations

I Let φn(x), ψn(x) be polynomials defined by the recurrences

φn(x) = (anx + bn)φn−1(x) + cnφn−2(x),

andψn(x) = (αnx + βn)ψn−1(x) + γnψn−2(x).

I Let Pi ,j(x) = φi (x)ψj(x), then

Pi ,j(x) = Ai ,jPi−1,j+1(x) + Bi ,jPi−1,j(x)

+ Ci ,jPi−1,j−1(x) + Di ,jPi−2,j(x),i - 2 i - 1 i

j - 1

j

j + 1

with

Ai ,j = ai/αj+1, Bi ,j = (biαj+1 − aiβj+1)/αj+1,

Ci ,j = −aiγj+1/αj+1, Di ,j = ci .

Page 136: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: recurrence relations

I Let φn(x), ψn(x) be polynomials defined by the recurrences

φn(x) = (anx + bn)φn−1(x) + cnφn−2(x),

andψn(x) = (αnx + βn)ψn−1(x) + γnψn−2(x).

I Let Pi ,j(x) = φi (x)ψj(x), then

Pi ,j(x) = Ai ,jPi−1,j+1(x) + Bi ,jPi−1,j(x)

+ Ci ,jPi−1,j−1(x) + Di ,jPi−2,j(x),i - 2 i - 1 i

j - 1

j

j + 1

with

Ai ,j = ai/αj+1, Bi ,j = (biαj+1 − aiβj+1)/αj+1,

Ci ,j = −aiγj+1/αj+1, Di ,j = ci .

Page 137: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: recurrence relations

I We have an x-free recurrence

Pi,j(x) = Ai,jPi−1,j+1(x)+Bi,jPi−1,j(x)+Ci,jPi−1,j−1(x)+Di,jPi−2,j(x),

for Pi ,j(x) = φi (x)ψj(x).

I It can be multiplied by any function f (x) and one mayintegrate over I and the recurrence remains valid, i.e.,

Mi ,j = Ai ,jMi−1,j+1 + Bi ,jMi−1,j + Ci ,jMi−1,j−1 + Di ,jMi−2,j ,

for Mi ,j =∫I f (x)φi (x)ψj(x) dx .

Page 138: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: recurrence relations

I We have an x-free recurrence

Pi,j(x) = Ai,jPi−1,j+1(x)+Bi,jPi−1,j(x)+Ci,jPi−1,j−1(x)+Di,jPi−2,j(x),

for Pi ,j(x) = φi (x)ψj(x).

I It can be multiplied by any function f (x) and one mayintegrate over I and the recurrence remains valid, i.e.,

Mi ,j = Ai ,jMi−1,j+1 + Bi ,jMi−1,j + Ci ,jMi−1,j−1 + Di ,jMi−2,j ,

for Mi ,j =∫I f (x)φi (x)ψj(x) dx .

Page 139: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: sum factorizationI Usually the bilinear forms a(u, v) building the system matrix A

are evaluated using numerical integration:

a(φi ,j , φk,l) =

∫ ∫Q

C (x , y)φi (x)ψj(y)φk(x)ψl(y) d(x , y)

'∑α,β

wαwβC (xα, yβ)φi (xα)ψj(yβ)φk(xα)ψl(yβ),

whereI C (·, ·) is a coefficient function (contains also transformation

from the actual element in the mesh to the reference element),I wγ are the quadrature weights and xα, yβ are the quadrature

points.

I For the approximate solution of the linear system Au = f aniterative scheme is used

u(k+1) = f − Au(k),

hence not fast assemblance of the matrix is needed, but fastapplication.

Page 140: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computations: sum factorizationI Usually the bilinear forms a(u, v) building the system matrix A

are evaluated using numerical integration:

a(φi ,j , φk,l) =

∫ ∫Q

C (x , y)φi (x)ψj(y)φk(x)ψl(y) d(x , y)

'∑α,β

wαwβC (xα, yβ)φi (xα)ψj(yβ)φk(xα)ψl(yβ),

whereI C (·, ·) is a coefficient function (contains also transformation

from the actual element in the mesh to the reference element),I wγ are the quadrature weights and xα, yβ are the quadrature

points.

I For the approximate solution of the linear system Au = f aniterative scheme is used

u(k+1) = f − Au(k),

hence not fast assemblance of the matrix is needed, but fastapplication.

Page 141: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computation: sum factorization

Let’s write the solution vector u with two indices, then(Au)k,l'∑α,β,i ,j

wαwβC (xα, yβ)φi (xα)ψj(yβ)φk(xα)ψl(yβ)ui ,j

where each summation is O(p) with maximal polynomial degree p.

M(1)α,j =

∑i

φi (xα)ui ,j

M(2)α,β =

∑j

M(1)α,j ψj(yβ)

M(3)β,k =

∑α

M(2)α,βwαC (xα, yβ)φk(xα)

(Au)k,l'∑β

M(3)β,kwβψl(yβ)

Page 142: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computation: sum factorization

Let’s write the solution vector u with two indices, then(Au)k,l'∑α,β,i ,j

wαwβC (xα, yβ)φi (xα)ψj(yβ)φk(xα)ψl(yβ)ui ,j

where each summation is O(p) with maximal polynomial degree p.

M(1)α,j =

∑i

φi (xα)ui ,j

M(2)α,β =

∑j

M(1)α,j ψj(yβ)

M(3)β,k =

∑α

M(2)α,βwαC (xα, yβ)φk(xα)

(Au)k,l'∑β

M(3)β,kwβψl(yβ)

Page 143: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computation: sum factorization

Let’s write the solution vector u with two indices, then(Au)k,l'∑α,β,i ,j

wαwβC (xα, yβ)φi (xα)ψj(yβ)φk(xα)ψl(yβ)ui ,j

where each summation is O(p) with maximal polynomial degree p.

M(1)α,j =

∑i

φi (xα)ui ,j

M(2)α,β =

∑j

M(1)α,j ψj(yβ)

M(3)β,k =

∑α

M(2)α,βwαC (xα, yβ)φk(xα)

(Au)k,l'∑β

M(3)β,kwβψl(yβ)

Page 144: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computation: sum factorization

Let’s write the solution vector u with two indices, then(Au)k,l'∑α,β,i ,j

wαwβC (xα, yβ)φi (xα)ψj(yβ)φk(xα)ψl(yβ)ui ,j

where each summation is O(p) with maximal polynomial degree p.

M(1)α,j =

∑i

φi (xα)ui ,j

M(2)α,β =

∑j

M(1)α,j ψj(yβ)

M(3)β,k =

∑α

M(2)α,βwαC (xα, yβ)φk(xα)

(Au)k,l'∑β

M(3)β,kwβψl(yβ)

Page 145: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Efficient computation: sum factorization

Let’s write the solution vector u with two indices, then(Au)k,l'∑α,β,i ,j

wαwβC (xα, yβ)φi (xα)ψj(yβ)φk(xα)ψl(yβ)ui ,j

where each summation is O(p) with maximal polynomial degree p.

M(1)α,j =

∑i

φi (xα)ui ,j

M(2)α,β =

∑j

M(1)α,j ψj(yβ)

M(3)β,k =

∑α

M(2)α,βwαC (xα, yβ)φk(xα)

(Au)k,l'∑β

M(3)β,kwβψl(yβ)

Page 146: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Hierarchic high order basis functions on triangles

On quadrilateral elements the basis func-tions were defined exploiting the tensorproduct structure:

φi ,j(x , y) = ϕi (x)ψj(y),

with i , j ≥ 0 and x , y ∈ [−1, 1]. H-1,-1L H1,-1L

H1,1LH-1,1L

H-1,-1L H1,-1L

H0,1LThe basis functions on the reference tri-angle T are defined by collapsing thequadrilateral to the triangle:

φi ,j(x , y) = ϕi

(2x

1−y

)(1−y

2

)iψj(y).

Page 147: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Hierarchic high order basis functions on triangles

On quadrilateral elements the basis func-tions were defined exploiting the tensorproduct structure:

φi ,j(x , y) = ϕi (x)ψj(y),

with i , j ≥ 0 and x , y ∈ [−1, 1]. H-1,-1L H1,-1L

H1,1LH-1,1L

H-1,-1L H1,-1L

H0,1LThe basis functions on the reference tri-angle T are defined by collapsing thequadrilateral to the triangle:

φi ,j(x , y) = ϕi

(2x

1−y

)(1−y

2

)iψj(y).

Page 148: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integral over reference triangle

Let φi ,j(x , y) = ϕi

(2x

1−y

)(1−y

2

)iψj(y), then by means of the

substitution z = 2x1−y we decouple the integrals:

∫Tφi ,j(x , y)φk,l(x , y) d(x , y) =

∫ 1

−1ϕi (x)ϕk(x) dx

×∫ 1

−1

(1−z

2

)i+k+1ψj(z)ψl(z) dz .

I Set ϕi (x) = Pi (x) (Legendre polynomials)

I Set ψj(y) = P(2i+1,0)j (y), the Jacobi polynomials orthogonal

w.r.t. the weight function(

1−y2

)2i+1, i.e.,

∫ 1

−1

(1−y

2

)2i+1P

(2i+1,0)j (y)P

(2i+1,0)l (y) dy = hijδj ,l

Page 149: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integral over reference triangle

Let φi ,j(x , y) = ϕi

(2x

1−y

)(1−y

2

)iψj(y), then by means of the

substitution z = 2x1−y we decouple the integrals:

∫Tφi ,j(x , y)φk,l(x , y) d(x , y) =

∫ 1

−1Pi (x)Pk(x) dx

×∫ 1

−1

(1−z

2

)i+k+1ψj(z)ψl(z) dz .

I Set ϕi (x) = Pi (x) (Legendre polynomials)

I Set ψj(y) = P(2i+1,0)j (y), the Jacobi polynomials orthogonal

w.r.t. the weight function(

1−y2

)2i+1, i.e.,

∫ 1

−1

(1−y

2

)2i+1P

(2i+1,0)j (y)P

(2i+1,0)l (y) dy = hijδj ,l

Page 150: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integral over reference triangle

Let φi ,j(x , y) = ϕi

(2x

1−y

)(1−y

2

)iψj(y), then by means of the

substitution z = 2x1−y we decouple the integrals:

∫Tφi ,j(x , y)φk,l(x , y) d(x , y) = giδi ,k

×∫ 1

−1

(1−z

2

)2i+1ψj(z)ψl(z) dz .

I Set ϕi (x) = Pi (x) (Legendre polynomials)

I Set ψj(y) = P(2i+1,0)j (y), the Jacobi polynomials orthogonal

w.r.t. the weight function(

1−y2

)2i+1, i.e.,

∫ 1

−1

(1−y

2

)2i+1P

(2i+1,0)j (y)P

(2i+1,0)l (y) dy = hijδj ,l

Page 151: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integral over reference triangle

Let φi ,j(x , y) = ϕi

(2x

1−y

)(1−y

2

)iψj(y), then by means of the

substitution z = 2x1−y we decouple the integrals:

∫Tφi ,j(x , y)φk,l(x , y) d(x , y) = giδi ,k

×∫ 1

−1

(1−z

2

)2i+1ψj(z)ψl(z) dz .

I Set ϕi (x) = Pi (x) (Legendre polynomials)

I Set ψj(y) = P(2i+1,0)j (y), the Jacobi polynomials orthogonal

w.r.t. the weight function(

1−y2

)2i+1, i.e.,

∫ 1

−1

(1−y

2

)2i+1P

(2i+1,0)j (y)P

(2i+1,0)l (y) dy = hijδj ,l

Page 152: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integral over reference triangle

Let φi ,j(x , y) = ϕi

(2x

1−y

)(1−y

2

)iψj(y), then by means of the

substitution z = 2x1−y we decouple the integrals:∫

Tφi ,j(x , y)φk,l(x , y) d(x , y) = giδi ,k

×∫ 1

−1

(1−z

2

)2i+1P

(2i+1,0)j (z)P

(2i+1,0)l (z) dz .

I Set ϕi (x) = Pi (x) (Legendre polynomials)

I Set ψj(y) = P(2i+1,0)j (y), the Jacobi polynomials orthogonal

w.r.t. the weight function(

1−y2

)2i+1, i.e.,

∫ 1

−1

(1−y

2

)2i+1P

(2i+1,0)j (y)P

(2i+1,0)l (y) dy = hijδj ,l

Page 153: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Integral over reference triangle

Let φi ,j(x , y) = ϕi

(2x

1−y

)(1−y

2

)iψj(y), then by means of the

substitution z = 2x1−y we decouple the integrals:∫

Tφi ,j(x , y)φk,l(x , y) d(x , y) = gihijδi ,kδj ,l

Dubiner basis

I Set ϕi (x) = Pi (x) (Legendre polynomials)

I Set ψj(y) = P(2i+1,0)j (y), the Jacobi polynomials orthogonal

w.r.t. the weight function(

1−y2

)2i+1, i.e.,

∫ 1

−1

(1−y

2

)2i+1P

(2i+1,0)j (y)P

(2i+1,0)l (y) dy = hijδj ,l

Page 154: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Sparsity optimized basis functions for simplices

I Dubiner: L2-orthogonal basis functions on triangles (suitablychosen Jacobi polynomials)

I Beuchler+Schoberl: sparse system matrices for H1 ontriangles (suitably chosen integrated Jacobi polynomials)

I Beuchler + VP: extension of the basis construction in H1 totetrahedra

I Beuchler+VP+Zaglmayr: basis functions for H(div) andH(curl), where

I construction principle follows ZaglmayrI exploit products of suitably chosen integrated Jacobi

polynomials

I Proof of sparsity in the latter three cases: exact evaluation ofthe integrals using symbolic computation

Page 155: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Sparsity optimized basis functions for simplices

I Dubiner: L2-orthogonal basis functions on triangles (suitablychosen Jacobi polynomials)

I Beuchler+Schoberl: sparse system matrices for H1 ontriangles (suitably chosen integrated Jacobi polynomials)

I Beuchler + VP: extension of the basis construction in H1 totetrahedra

I Beuchler+VP+Zaglmayr: basis functions for H(div) andH(curl), where

I construction principle follows ZaglmayrI exploit products of suitably chosen integrated Jacobi

polynomials

I Proof of sparsity in the latter three cases: exact evaluation ofthe integrals using symbolic computation

Page 156: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Sparsity optimized basis functions for simplices

I Dubiner: L2-orthogonal basis functions on triangles (suitablychosen Jacobi polynomials)

I Beuchler+Schoberl: sparse system matrices for H1 ontriangles (suitably chosen integrated Jacobi polynomials)

I Beuchler + VP: extension of the basis construction in H1 totetrahedra

I Beuchler+VP+Zaglmayr: basis functions for H(div) andH(curl), where

I construction principle follows ZaglmayrI exploit products of suitably chosen integrated Jacobi

polynomials

I Proof of sparsity in the latter three cases: exact evaluation ofthe integrals using symbolic computation

Page 157: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Sparsity optimized basis functions for simplices

I Dubiner: L2-orthogonal basis functions on triangles (suitablychosen Jacobi polynomials)

I Beuchler+Schoberl: sparse system matrices for H1 ontriangles (suitably chosen integrated Jacobi polynomials)

I Beuchler + VP: extension of the basis construction in H1 totetrahedra

I Beuchler+VP+Zaglmayr: basis functions for H(div) andH(curl), where

I construction principle follows ZaglmayrI exploit products of suitably chosen integrated Jacobi

polynomials

I Proof of sparsity in the latter three cases: exact evaluation ofthe integrals using symbolic computation

Page 158: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Sparsity optimized basis functions for simplices

I Dubiner: L2-orthogonal basis functions on triangles (suitablychosen Jacobi polynomials)

I Beuchler+Schoberl: sparse system matrices for H1 ontriangles (suitably chosen integrated Jacobi polynomials)

I Beuchler + VP: extension of the basis construction in H1 totetrahedra

I Beuchler+VP+Zaglmayr: basis functions for H(div) andH(curl), where

I construction principle follows ZaglmayrI exploit products of suitably chosen integrated Jacobi

polynomials

I Proof of sparsity in the latter three cases: exact evaluation ofthe integrals using symbolic computation

Page 159: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Jacobi and integrated Jacobi polynomials

I For α > −1, −1 ≤ x ≤ 1 and n ≥ 0 we denote by P(α,0)n (x)

the nth Jacobi polynomial orthogonal w.r.t. the inner product

〈f , g〉L2α(−1,1)

∫ 1

−1

(1−x

2

)αf (x)g(x) dx .

I We define the nth integrated Jacobi polynomial as

pαn (x) =

∫ x

−1P

(α,0)n−1 (s) ds.

I Legendre polynomials Pn(x) = P(0,0)n (x)

Page 160: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Jacobi and integrated Jacobi polynomials

I For α > −1, −1 ≤ x ≤ 1 and n ≥ 0 we denote by P(α,0)n (x)

the nth Jacobi polynomial orthogonal w.r.t. the inner product

〈f , g〉L2α(−1,1)

∫ 1

−1

(1−x

2

)αf (x)g(x) dx .

I We define the nth integrated Jacobi polynomial as

pαn (x) =

∫ x

−1P

(α,0)n−1 (s) ds.

I Legendre polynomials Pn(x) = P(0,0)n (x)

Page 161: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Jacobi and integrated Jacobi polynomials

I For α > −1, −1 ≤ x ≤ 1 and n ≥ 0 we denote by P(α,0)n (x)

the nth Jacobi polynomial orthogonal w.r.t. the inner product

〈f , g〉L2α(−1,1)

∫ 1

−1

(1−x

2

)αf (x)g(x) dx .

I We define the nth integrated Jacobi polynomial as

pαn (x) =

∫ x

−1P

(α,0)n−1 (s) ds.

I Legendre polynomials Pn(x) = P(0,0)n (x)

Page 162: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order basis functions on tetrahedra

I vertex, edge, face, and cell basedbasis functions

I usually defined by collapsing ahexahedron to a tetrahedron

A=H-1,-1,-1L B=H1,-1,-1L

C=H0,1,-1L

D=H0,0,1L

F1

F2 F3

F1=D ABCF2=D ACDF3=D BCDF4=D ABD

Example: Cell based basis function for H1:

φijk(x , y , z) = p0i

(4x

1− 2y − z

)(1− 2y − z)i p2i

j

(2y

1− z

)× (1− z)j p2i+2j

k (z)

Page 163: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

High order basis functions on tetrahedra

I vertex, edge, face, and cell basedbasis functions

I usually defined by collapsing ahexahedron to a tetrahedron

A=H-1,-1,-1L B=H1,-1,-1L

C=H0,1,-1L

D=H0,0,1L

F1

F2 F3

F1=D ABCF2=D ACDF3=D BCDF4=D ABD

Example: Cell based basis function for H1:

φijk(x , y , z) = p0i

(4x

1− 2y − z

)(1− 2y − z)i p2i

j

(2y

1− z

)× (1− z)j p2i+2j

k (z)

Page 164: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

System matrix

I The FE-matrix that we consider is built from

a(u, v) =

∫T

uv d(x , y , z) +

∫T

(∇u)TC∇v d(x , y , z),

where C is a constant coefficient matrix.

I The results we obtain are of the form:

Let A = (a(φijk , φlmn))ijklmn, then the entries of the system

matrix are zero if |i − l | > 2 or |i + j − l − m| > 3 or|i + j + k − l −m − n| > 2.

I The results are proven by explicitly evaluating the integralsusing rewriting.

Page 165: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

System matrix

I The FE-matrix that we consider is built from

a(u, v) =

∫T

uv d(x , y , z) +

∫T

(∇u)TC∇v d(x , y , z),

where C is a constant coefficient matrix.

I The results we obtain are of the form:

Let A = (a(φijk , φlmn))ijklmn, then the entries of the system

matrix are zero if |i − l | > 2 or |i + j − l − m| > 3 or|i + j + k − l −m − n| > 2.

I The results are proven by explicitly evaluating the integralsusing rewriting.

Page 166: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

System matrix

I The FE-matrix that we consider is built from

a(u, v) =

∫T

uv d(x , y , z) +

∫T

(∇u)TC∇v d(x , y , z),

where C is a constant coefficient matrix.

I The results we obtain are of the form:

Let A = (a(φijk , φlmn))ijklmn, then the entries of the system

matrix are zero if |i − l | > 2 or |i + j − l − m| > 3 or|i + j + k − l −m − n| > 2.

I The results are proven by explicitly evaluating the integralsusing rewriting.

Page 167: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example for evaluation

After decoupling the integrals for computing∫T

φijk(x , y , z)φlmn(x , y , z) d(x , y , z)

are

1∫−1

p0i (x)p

0l (x) dx

1∫−1

p2ij (y)p

2lm(y)(1− y)i+l+1 dy

1∫−1

p2i+2jk (z)p2l+2m

n (z)(1− z)i+j+l+m+2 dz

I application of 2 rewrite rules and evaluation of 4 integrals

I application of 6 rewrite rules and evaluation of 40 integrals

I application of 14 rewrite rules and evaluation of 147 integrals

In total 189 nonzero matrix entries

Page 168: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example for evaluation

After decoupling the integrals for computing∫T

φijk(x , y , z)φlmn(x , y , z) d(x , y , z)

are

1∫−1

p0i (x)p

0l (x) dx

1∫−1

p2ij (y)p

2lm(y)(1− y)i+l+1 dy

1∫−1

p2i+2jk (z)p2l+2m

n (z)(1− z)i+j+l+m+2 dz

I application of 2 rewrite rules and evaluation of 4 integrals

I application of 6 rewrite rules and evaluation of 40 integrals

I application of 14 rewrite rules and evaluation of 147 integrals

In total 189 nonzero matrix entries

Page 169: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example for evaluation

After decoupling the integrals for computing∫T

φijk(x , y , z)φlmn(x , y , z) d(x , y , z)

are

1∫−1

p0i (x)p

0l (x) dx

1∫−1

p2ij (y)p

2lm(y)(1− y)i+l+1 dy

1∫−1

p2i+2jk (z)p2l+2m

n (z)(1− z)i+j+l+m+2 dz

I application of 2 rewrite rules and evaluation of 4 integrals

I application of 6 rewrite rules and evaluation of 40 integrals

I application of 14 rewrite rules and evaluation of 147 integrals

In total 189 nonzero matrix entries

Page 170: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example for evaluation

After decoupling the integrals for computing∫T

φijk(x , y , z)φlmn(x , y , z) d(x , y , z)

are

1∫−1

p0i (x)p

0l (x) dx

1∫−1

p2ij (y)p

2lm(y)(1− y)i+l+1 dy

1∫−1

p2i+2jk (z)p2l+2m

n (z)(1− z)i+j+l+m+2 dz

I application of 2 rewrite rules and evaluation of 4 integrals

I application of 6 rewrite rules and evaluation of 40 integrals

I application of 14 rewrite rules and evaluation of 147 integrals

In total 189 nonzero matrix entries

Page 171: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example for evaluation

After decoupling the integrals for computing∫T

φijk(x , y , z)φlmn(x , y , z) d(x , y , z)

are

1∫−1

p0i (x)p

0l (x) dx

1∫−1

p2ij (y)p

2lm(y)(1− y)i+l+1 dy

1∫−1

p2i+2jk (z)p2l+2m

n (z)(1− z)i+j+l+m+2 dz

I application of 2 rewrite rules and evaluation of 4 integrals

I application of 6 rewrite rules and evaluation of 40 integrals

I application of 14 rewrite rules and evaluation of 147 integrals

In total 189 nonzero matrix entries

Page 172: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Example for evaluation

After decoupling the integrals for computing∫T

φijk(x , y , z)φlmn(x , y , z) d(x , y , z)

are

1∫−1

p0i (x)p

0l (x) dx

1∫−1

p2ij (y)p

2lm(y)(1− y)i+l+1 dy

1∫−1

p2i+2jk (z)p2l+2m

n (z)(1− z)i+j+l+m+2 dz

I application of 2 rewrite rules and evaluation of 4 integrals

I application of 6 rewrite rules and evaluation of 40 integrals

I application of 14 rewrite rules and evaluation of 147 integrals

In total 189 nonzero matrix entries

Page 173: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Sparsity pattern for H(div), p = 15

I using standard Legendre-type polynomials

element mass matrix element stiffness matrix

Page 174: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Sparsity pattern for H(div), p = 15

I using the Jacobi-type polynomials with optimized parameters

element mass matrix element stiffness matrix

Page 175: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Fast assembling of the system matrices

I Lehrenfeld+Koutschan+Schoberl: using mixed relations ofthe form

R∑r=0

cr (i , j)φi+r1,j+r2(x , y) =S∑

s=0

Dxφi+s1,j+s2(x , y)

I Combining recurrences for Jacobi polynomials pαn (x), pαn (x)and sum factorization techniques [Beuchler et al]

I Computing recurrences for the explicit matrix entries

Page 176: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local Fourier analysis (Takacs + VP)

I standard tool to analyze the convergence behaviour of anumerical method

I Model problem: optimization problem constrained to a partialdifferential equationFind a state y and a control u that minimize

J(y , u) := 12‖y − yD‖2

L2(Ω) + α2 ‖u‖

2L2(Ω),

subject to −∆y = u in the domain Ω.

I solution method: Finite Element Method (FEM) with amultigrid-solver (which ultimately means solving a large scalelinear system)

I robust with respect to parameters such as mesh-size andregularization parameters

Page 177: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local Fourier analysis (Takacs + VP)

I standard tool to analyze the convergence behaviour of anumerical method

I Model problem: optimization problem constrained to a partialdifferential equationFind a state y and a control u that minimize

J(y , u) := 12‖y − yD‖2

L2(Ω) + α2 ‖u‖

2L2(Ω),

subject to −∆y = u in the domain Ω.

I solution method: Finite Element Method (FEM) with amultigrid-solver (which ultimately means solving a large scalelinear system)

I robust with respect to parameters such as mesh-size andregularization parameters

Page 178: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local Fourier analysis (Takacs + VP)

I standard tool to analyze the convergence behaviour of anumerical method

I Model problem: optimization problem constrained to a partialdifferential equationFind a state y and a control u that minimize

J(y , u) := 12‖y − yD‖2

L2(Ω) + α2 ‖u‖

2L2(Ω),

subject to −∆y = u in the domain Ω.

I solution method: Finite Element Method (FEM) with amultigrid-solver (which ultimately means solving a large scalelinear system)

I robust with respect to parameters such as mesh-size andregularization parameters

Page 179: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local Fourier analysis (Takacs + VP)

I standard tool to analyze the convergence behaviour of anumerical method

I Model problem: optimization problem constrained to a partialdifferential equationFind a state y and a control u that minimize

J(y , u) := 12‖y − yD‖2

L2(Ω) + α2 ‖u‖

2L2(Ω),

subject to −∆y = u in the domain Ω.

I solution method: Finite Element Method (FEM) with amultigrid-solver (which ultimately means solving a large scalelinear system)

I robust with respect to parameters such as mesh-size andregularization parameters

Page 180: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local Fourier Analysis

I Given: Iterative procedure of the form

x (k+1) = Ax (k)

the convergence rate is related to the matrix norm of A whichcan be estimated by the spectral radius, i.e., the largesteigenvalue in absolute value

I typically rates are obtained only by numerical interpolation

I symbolic local Fourier analysis: exact bounds

Page 181: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local Fourier Analysis

I Given: Iterative procedure of the form

x (k+1) = Ax (k)

the convergence rate is related to the matrix norm of A whichcan be estimated by the spectral radius, i.e., the largesteigenvalue in absolute value

I typically rates are obtained only by numerical interpolation

I symbolic local Fourier analysis: exact bounds

Page 182: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Local Fourier Analysis

I Given: Iterative procedure of the form

x (k+1) = Ax (k)

the convergence rate is related to the matrix norm of A whichcan be estimated by the spectral radius, i.e., the largesteigenvalue in absolute value

I typically rates are obtained only by numerical interpolation

I symbolic local Fourier analysis: exact bounds

Page 183: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

FEM and multigrid

I Multigrid methods operate on two (ormore) grids

I One step in a multigrid method consistsof

I (pre)smoothing steps

↓ restriction ↓

I coarse grid correction

↓ prolongation ↓

I (post)smoothing steps

Page 184: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

FEM and multigrid

I Multigrid methods operate on two (ormore) grids

I One step in a multigrid method consistsof

I (pre)smoothing steps

↓ restriction ↓

I coarse grid correction

↓ prolongation ↓

I (post)smoothing steps

Page 185: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

FEM and multigrid

I Multigrid methods operate on two (ormore) grids

I One step in a multigrid method consistsof

I (pre)smoothing steps

↓ restriction ↓

I coarse grid correction

↓ prolongation ↓

I (post)smoothing steps

Page 186: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Bound the convergence rate (2D)

Given: matrix A(q, c1, c2, η) ∈ R8×8 with 0 < q < 1 and

(c1, c2, η) ∈ Ω = (c1, c2, η) | 0 ≤ c1 ≤ c2 < 1 ∧ η > 0,

where ci = cos(θi ) for some frequencies θi and η = h4/α withmesh-size h and regularization parameter α.

Find: bound B(q) for the maximal eigenvalue λmax(q, c1, c2, η)of A over (0, 1)2 × Ω.

Page 187: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Matrix A

A1,1 0 A1,3 A1,4 A1,5 A1,6 A1,7 A1,8

0 A2,2 A2,3 A2,4 A2,5 A2,6 A2,7 A2,8

A3,1 A3,2 A3,3 0 A3,5 A3,6 A3,7 A3,8

A4,1 A4,2 0 A4,4 A4,5 A4,6 A4,7 A4,8

A5,1 A5,2 A5,3 A5,4 A5,5 0 A5,7 A5,8

A6,1 A6,2 A6,3 A6,4 0 A6,6 A6,7 A6,8

A7,1 A7,2 A7,3 A7,4 A7,5 A7,6 A7,7 0A8,1 A8,2 A8,3 A8,4 A8,5 A8,6 0 A8,8

Common denominator of the matrix entries:

D =256(16c4

2 c41η + 16c2

2 c41η + 4c4

1η + 16c42 c

21η + 16c2

2 c21η + 4c2

+ 4c42η + 4c2

2η + 144c42 c

41 − 72c2

2 c41 + 9c4

1 − 72c42 c

21 − 126c2

2 c21

+36c21 + 9c4

2 + 36c22 + η + 36

)

Page 188: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Matrix A

A1,1 0 A1,3 A1,4 A1,5 A1,6 A1,7 A1,8

0 A2,2 A2,3 A2,4 A2,5 A2,6 A2,7 A2,8

A3,1 A3,2 A3,3 0 A3,5 A3,6 A3,7 A3,8

A4,1 A4,2 0 A4,4 A4,5 A4,6 A4,7 A4,8

A5,1 A5,2 A5,3 A5,4 A5,5 0 A5,7 A5,8

A6,1 A6,2 A6,3 A6,4 0 A6,6 A6,7 A6,8

A7,1 A7,2 A7,3 A7,4 A7,5 A7,6 A7,7 0A8,1 A8,2 A8,3 A8,4 A8,5 A8,6 0 A8,8

Common denominator of the matrix entries:

D =256(16c4

2 c41η + 16c2

2 c41η + 4c4

1η + 16c42 c

21η + 16c2

2 c21η + 4c2

+ 4c42η + 4c2

2η + 144c42 c

41 − 72c2

2 c41 + 9c4

1 − 72c42 c

21 − 126c2

2 c21

+36c21 + 9c4

2 + 36c22 + η + 36

)

Page 189: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Numerator of A1,1

432q2c62 c

61 + 3q2ηc6

2 c61 + ηc6

2 c61 + 144c6

2 c61 + 1008q2c5

2 c61 + 16q2ηc5

2 c61 + 8ηc5

2 c61 + 720c5

2 c61 + 972q2c4

2 c61 +

30q2ηc42 c

61 + 26ηc4

2 c61 + 1476c4

2 c61 + 1008q2c3

2 c61 + 28q2ηc3

2 c61 + 44ηc3

2 c61 + 1584c3

2 c61 + 108q2c6

1 + 1080q2c22 c

61 +

27q2ηc22 c

61 + 41ηc2

2 c61 + 936c2

2 c61 + 12q2ηc6

1 + 4ηc61 + 576q2c2c

61 + 28q2ηc2c

61 + 20ηc2c

61 + 288c2c

61 + 36c6

1 +

1008q2c62 c

51 + 16q2ηc6

2 c51 + 8ηc6

2 c51 + 720c6

2 c51 −360q2c5

2 c51 + 80q2ηc5

2 c51 −64ηc5

2 c51 −1656c5

2 c51 −3600q2c4

2 c51 +

128q2ηc42 c

51 − 304ηc4

2 c51 − 7056c4

2 c51 − 2736q2c3

2 c51 + 80q2ηc3

2 c51 − 352ηc3

2 c51 − 5328c3

2 c51 − 720q2c5

1 −1872q2c2

2 c51 + 80q2ηc2

2 c51 − 184ηc2

2 c51 + 720c2

2 c51 + 64q2ηc5

1 − 96ηc51 − 2088q2c2c

51 + 128q2ηc2c

51 − 160ηc2c

51 +

1800c2c51 + 432c5

1 + 972q2c62 c

41 + 30q2ηc6

2 c41 + 26ηc6

2 c41 + 1476c6

2 c41 − 3600q2c5

2 c41 + 128q2ηc5

2 c41 − 304ηc5

2 c41 −

7056c52 c

41 − 5616q2c4

2 c41 + 108q2ηc4

2 c41 + 2724ηc4

2 c41 + 21168c4

2 c41 + 1584q2c3

2 c41 − 136q2ηc3

2 c41 − 1672ηc3

2 c41 −

3600c32 c

41 +648q2c4

1 +1404q2c22 c

41 −114q2ηc2

2 c41 +3114ηc2

2 c41 −15660c2

2 c41 +120q2ηc4

1 +616ηc41 −576q2c2c

41 +

152q2ηc2c41 −760ηc2c

41 −2304c2c

41 + 792c4

1 + 1008q2c62 c

31 + 28q2ηc6

2 c31 + 44ηc6

2 c31 + 1584c6

2 c31 −2736q2c5

2 c31 +

80q2ηc52 c

31 − 352ηc5

2 c31 − 5328c5

2 c31 + 1584q2c4

2 c31 − 136q2ηc4

2 c31 − 1672ηc4

2 c31 − 3600c4

2 c31 + 12384q2c3

2 c31 −

640q2ηc32 c

31 − 1936ηc3

2 c31 + 17568c3

2 c31 + 1872q2c3

1 + 5904q2c22 c

31 − 580q2ηc2

2 c31 − 1012ηc2

2 c31 + 14544c2

2 c31 +

112q2ηc31 − 528ηc3

1 + 720q2c2c31 − 16q2ηc2c

31 − 880ηc2c

31 − 1872c2c

31 − 2160c3

1 + 1080q2c62 c

21 + 27q2ηc6

2 c21 +

41ηc62 c

21 + 936c6

2 c21 − 1872q2c5

2 c21 + 80q2ηc5

2 c21 − 184ηc5

2 c21 + 720c5

2 c21 + 1404q2c4

2 c21 − 114q2ηc4

2 c21 +

3114ηc42 c

21 − 15660c4

2 c21 + 5904q2c3

2 c21 − 580q2ηc3

2 c21 − 1012ηc3

2 c21 + 14544c3

2 c21 + 108q2c2

1 − 5184q2c22 c

21 −

525q2ηc22 c

21 + 3729ηc2

2 c21 − 15552c2

2 c21 + 108q2ηc2

1 + 676ηc21 − 6624q2c2c

21 − 4q2ηc2c

21 − 460ηc2c

21 +

2880c2c21 + 6948c2

1 + 576q2c62 c1 + 28q2ηc6

2 c1 + 20ηc62 c1 + 288c6

2 c1 − 2088q2c52 c1 + 128q2ηc5

2 c1 − 160ηc52 c1 +

1800c52 c1 − 576q2c4

2 c1 + 152q2ηc42 c1 − 760ηc4

2 c1 − 2304c42 c1 + 720q2c3

2 c1 − 16q2ηc32 c1 − 880ηc3

2 c1 −1872c3

2 c1 + 1440q2c1 − 6624q2c22 c1 − 4q2ηc2

2 c1 − 460ηc22 c1 + 2880c2

2 c1 + 112q2ηc1 − 240ηc1 − 3816q2c2c1 +

176q2ηc2c1 − 400ηc2c1 − 5112c2c1 − 6048c1 + 108q2c62 + 12q2ηc6

2 + 4ηc62 + 36c6

2 − 720q2c52 + 64q2ηc5

2 −96ηc5

2 + 432c52 + 648q2c4

2 + 120q2ηc42 + 616ηc4

2 + 792c42 + 1872q2c3

2 + 112q2ηc32 − 528ηc3

2 − 2160c32 + 1728q2 +

108q2c22 + 108q2ηc2

2 + 676ηc22 + 6948c2

2 + 48q2η + 144η + 1440q2c2 + 112q2ηc2 − 240ηc2 − 6048c2 + 5184

Page 190: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Computational Issues

1. How to find the eigenvalues?

I symbolic interpolation in q

2. How to find the bound?

I consider the boundary of the domain to obtain a plausibleguess for the bound using CAD

3. How to prove the bound?

I use CADI necessary to split into subtasks and consider sufficient

conditions

Page 191: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Computational Issues

1. How to find the eigenvalues?I symbolic interpolation in q

2. How to find the bound?

I consider the boundary of the domain to obtain a plausibleguess for the bound using CAD

3. How to prove the bound?

I use CADI necessary to split into subtasks and consider sufficient

conditions

Page 192: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Computational Issues

1. How to find the eigenvalues?I symbolic interpolation in q

2. How to find the bound?I consider the boundary of the domain to obtain a plausible

guess for the bound using CAD

3. How to prove the bound?

I use CADI necessary to split into subtasks and consider sufficient

conditions

Page 193: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Computational Issues

1. How to find the eigenvalues?I symbolic interpolation in q

2. How to find the bound?I consider the boundary of the domain to obtain a plausible

guess for the bound using CAD

3. How to prove the bound?I use CAD

I necessary to split into subtasks and consider sufficientconditions

Page 194: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Computational Issues

1. How to find the eigenvalues?I symbolic interpolation in q

2. How to find the bound?I consider the boundary of the domain to obtain a plausible

guess for the bound using CAD

3. How to prove the bound?I use CADI necessary to split into subtasks and consider sufficient

conditions

Page 195: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Eigenvalues

Using interpolation on the characteristic polynomial of the matrixwe find that the eigenvalues are

λ1 = 0, λ2 = q4, 3λ4 =1

D

(e(q2)±

√d(q2)

),

each of multiplicity 2 with q2 = q2 and e, d polynomials in c1, c2, ηand q2.

The largest eigenvalue is

λmax =1

D

(e(q2) +

√d(q2)

).

Page 196: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Eigenvalues

Using interpolation on the characteristic polynomial of the matrixwe find that the eigenvalues are

λ1 = 0, λ2 = q4, 3λ4 =1

D

(e(q2)±

√d(q2)

),

each of multiplicity 2 with q2 = q2 and e, d polynomials in c1, c2, ηand q2.

The largest eigenvalue is

λmax =1

D

(e(q2) +

√d(q2)

).

Page 197: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Eigenvalues

Using interpolation on the characteristic polynomial of the matrixwe find that the eigenvalues are

λ1 = 0, λ2 = q4, 3λ4 =1

D

(e(q2)±

√d(q2)

),

each of multiplicity 2 with q2 = q2 and e, d polynomials in c1, c2, ηand q2.

The largest eigenvalue is

λmax =1

D

(e(q2) +

√d(q2)

).

Page 198: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Polynomial e(q2)

ηc62 c

61 + 144c6

2 c61 + 8ηc5

2 c61 + 720c5

2 c61 + 26ηc4

2 c61 + 1476c4

2 c61 + 44ηc3

2 c61 + 1584c3

2 c61 + 41ηc2

2 c61 + 936c2

2 c61 +

9ηc62 q

22c

61 +1296c6

2 q22c

61 −24ηc5

2 q22c

61 −2160c5

2 q22c

61 +138ηc4

2 q22c

61 +6372c4

2 q22c

61 −132ηc3

2 q22c

61 −4752c3

2 q22c

61 +

177ηc22 q

22c

61 + 4968c2

2 q22c

61 + 36ηq2

2c61 − 60ηc2q

22c

61 − 864c2q

22c

61 + 324q2

2c61 + 4ηc6

1 + 20ηc2c61 + 288c2c

61 +

6ηc62 q2c

61 + 864c6

2 q2c61 + 16ηc5

2 q2c61 + 1440c5

2 q2c61 + 60ηc4

2 q2c61 + 1944c4

2 q2c61 + 88ηc3

2 q2c61 + 3168c3

2 q2c61 +

54ηc22 q2c

61 +2160c2

2 q2c61 +24ηq2c

61 +40ηc2q2c

61 +576c2q2c

61 +216q2c

61 +36c6

1 +8ηc62 c

51 +720c6

2 c51 −64ηc5

2 c51 −

1656c52 c

51 −304ηc4

2 c51 −7056c4

2 c51 −352ηc3

2 c51 −5328c3

2 c51 −184ηc2

2 c51 + 720c2

2 c51 −24ηc6

2 q22c

51 −2160c6

2 q22c

51 +

32ηc52 q

22c

51 +2664c5

2 q22c

51 +272ηc4

2 q22c

51 +10224c4

2 q22c

51 +416ηc3

2 q22c

51 +3312c3

2 q22c

51 +296ηc2

2 q22c

51 −2736c2

2 q22c

51 +

32ηq22c

51 + 128ηc2q

22c

51 − 792c2q

22c

51 − 144q2

2c51 − 96ηc5

1 − 160ηc2c51 + 1800c2c

51 + 16ηc6

2 q2c51 + 1440c6

2 q2c51 +

32ηc52 q2c

51 −1008c5

2 q2c51 + 32ηc4

2 q2c51 −3168c4

2 q2c51 −64ηc3

2 q2c51 + 2016c3

2 q2c51 −112ηc2

2 q2c51 + 2016c2

2 q2c51 +

64ηq2c51 + 32ηc2q2c

51 − 1008c2q2c

51 − 288q2c

51 + 432c5

1 + 26ηc62 c

41 + 1476c6

2 c41 − 304ηc5

2 c41 − 7056c5

2 c41 +

2724ηc42 c

41 + 21168c4

2 c41 − 1672ηc3

2 c41 − 3600c3

2 c41 + 3114ηc2

2 c41 − 15660c2

2 c41 + 138ηc6

2 q22c

41 + 6372c6

2 q22c

41 +

272ηc52 q

22c

41 + 10224c5

2 q22c

41 + 4292ηc4

2 q22c

41 + 15408c4

2 q22c

41 + 1496ηc3

2 q22c

41 + 8496c3

2 q22c

41 + 5018ηc2

2 q22c

41 + . . .

Page 199: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Polynomial e(q2)

· · · − 25740c22 q

22c

41 + 1064ηq2

2c41 + 680ηc2q

22c

41 − 576c2q

22c

41 + 1368q2

2c41 + 616ηc4

1 − 760ηc2c41 − 2304c2c

41 +

60ηc62 q2c

41 + 1944c6

2 q2c41 + 32ηc5

2 q2c41 − 3168c5

2 q2c41 + 216ηc4

2 q2c41 − 11232c4

2 q2c41 + 176ηc3

2 q2c41 −

4896c32 q2c

41 − 228ηc2

2 q2c41 + 2808c2

2 q2c41 + 240ηq2c

41 + 80ηc2q2c

41 + 2880c2q2c

41 + 1296q2c

41 + 792c4

1 +

44ηc62 c

31 + 1584c6

2 c31 − 352ηc5

2 c31 − 5328c5

2 c31 − 1672ηc4

2 c31 − 3600c4

2 c31 − 1936ηc3

2 c31 + 17568c3

2 c31 −

1012ηc22 c

31 + 14544c2

2 c31 − 132ηc6

2 q22c

31 − 4752c6

2 q22c

31 + 416ηc5

2 q22c

31 + 3312c5

2 q22c

31 + 1496ηc4

2 q22c

31 +

8496c42 q

22c

31 + 1808ηc3

2 q22c

31 − 13536c3

2 q22c

31 + 1628ηc2

2 q22c

31 − 14832c2

2 q22c

31 + 176ηq2

2c31 + 944ηc2q

22c

31 −

144c2q22c

31 +720q2

2c31 −528ηc3

1 −880ηc2c31 −1872c2c

31 +88ηc6

2 q2c31 +3168c6

2 q2c31 −64ηc5

2 q2c31 +2016c5

2 q2c31 +

176ηc42 q2c

31 − 4896c4

2 q2c31 + 128ηc3

2 q2c31 − 4032c3

2 q2c31 − 616ηc2

2 q2c31 + 288c2

2 q2c31 + 352ηq2c

31 − 64ηc2q2c

31 +

2016c2q2c31 + 1440q2c

31 − 2160c3

1 + 41ηc62 c

21 + 936c6

2 c21 − 184ηc5

2 c21 + 720c5

2 c21 + 3114ηc4

2 c21 − 15660c4

2 c21 −

1012ηc32 c

21 + 14544c3

2 c21 + 3729ηc2

2 c21 − 15552c2

2 c21 + 177ηc6

2 q22c

21 + 4968c6

2 q22c

21 + 296ηc5

2 q22c

21 − 2736c5

2 q22c

21 +

5018ηc42 q

22c

21 −25740c4

2 q22c

21 + 1628ηc3

2 q22c

21 −14832c3

2 q22c

21 + 6041ηc2

2 q22c

21 −24768c2

2 q22c

21 + 1220ηq2

2c21 + . . .

Page 200: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Polynomial e(q2)

· · · + 740ηc2q22c

21 + 4608c2q

22c

21 + 11844q2

2c21 + 676ηc2

1 − 460ηc2c21 + 2880c2c

21 + 54ηc6

2 q2c21 + 2160c6

2 q2c21 −

112ηc52 q2c

21 + 2016c5

2 q2c21 − 228ηc4

2 q2c21 + 2808c4

2 q2c21 − 616ηc3

2 q2c21 + 288c3

2 q2c21 − 1050ηc2

2 q2c21 −

10368c22 q2c

21 + 216ηq2c

21 − 280ηc2q2c

21 − 7488c2q2c

21 + 216q2c

21 + 6948c2

1 + 20ηc62 c1 + 288c6

2 c1 −

160ηc52 c1 + 1800c5

2 c1 − 760ηc42 c1 − 2304c4

2 c1 − 880ηc32 c1 − 1872c3

2 c1 − 460ηc22 c1 + 2880c2

2 c1 − 60ηc62 q

22c1 −

864c62 q

22c1 + 128ηc5

2 q22c1 − 792c5

2 q22c1 + 680ηc4

2 q22c1 − 576c4

2 q22c1 + 944ηc3

2 q22c1 − 144c3

2 q22c1 + 740ηc2

2 q22c1 +

4608c22 q

22c1 + 80ηq2

2c1 + 368ηc2q22c1 + 6120c2q

22c1 + 2016q2

2c1 − 240ηc1 − 400ηc2c1 − 5112c2c1 +

40ηc62 q2c1 + 576c6

2 q2c1 + 32ηc52 q2c1 − 1008c5

2 q2c1 + 80ηc42 q2c1 + 2880c4

2 q2c1 − 64ηc32 q2c1 + 2016c3

2 q2c1 −

280ηc22 q2c1 − 7488c2

2 q2c1 + 160ηq2c1 + 32ηc2q2c1 − 1008c2q2c1 + 4032q2c1 − 6048c1 + 4ηc62 + 36c6

2 −

96ηc52 + 432c5

2 + 616ηc42 + 792c4

2 − 528ηc32 − 2160c3

2 + 676ηc22 + 6948c2

2 + 36ηc62 q

22 + 324c6

2 q22 + 32ηc5

2 q22 −

144c52 q

22 + 1064ηc4

2 q22 + 1368c4

2 q22 + 176ηc3

2 q22 + 720c3

2 q22 + 1220ηc2

2 q22 + 11844c2

2 q22 + 272ηq2

2 + 80ηc2q22 +

2016c2q22 + 9792q2

2 + 144η − 240ηc2 − 6048c2 + 24ηc62 q2 + 216c6

2 q2 + 64ηc52 q2 − 288c5

2 q2 + 240ηc42 q2 +

1296c42 q2 + 352ηc3

2 q2 + 1440c32 q2 + 216ηc2

2 q2 + 216c22 q2 + 96ηq2 + 160ηc2q2 + 4032c2q2 + 3456q2 + 5184

Page 201: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Bound

I Consider extreme cases for(c1, c2)

I Consider the limits η → 0and η →∞ 0 0.5 1

0

0.5

10 0.5 1

0

0.5

1

c1

c 2

This yields the following guess:

B(q2) =

(q2+3

4

)2, 0 < q2 < Q2,

q2(q2 + 1), Q2 ≤ q2 < 1.,

with Q2 = 115 (4√

10− 5).

Page 202: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

The Bound

I Consider extreme cases for(c1, c2)

I Consider the limits η → 0and η →∞ 0 0.5 1

0

0.5

10 0.5 1

0

0.5

1

c1

c 2

This yields the following guess:

B(q2) =

(q2+3

4

)2, 0 < q2 < Q2,

q2(q2 + 1), Q2 ≤ q2 < 1.,

with Q2 = 115 (4√

10− 5).

Page 203: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Bound for the Convergence Rate

0.0 0.2 0.4 0.6 0.8 1.0Τ

0.2

0.4

0.6

0.8

1.0

1.2

1.4qTG

Two-grid convergence factor depending on τ forν = νpre + νpost = 2 + 2 smoothing steps

Page 204: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Experimental all-at-once analysis for 2D

I Set up the full matrix for the all-at-once approach

I Consider only the limiting cases for c1, c2, η

I qTG (τ) = max

116 (τ − 4)2, 1

4 |3τ − 2|√

9τ2 − 12τ + 8

http://www.risc.jku.at/people/vpillwei/sLFA/

Page 205: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Experimental all-at-once analysis for 2D

I Set up the full matrix for the all-at-once approach

I Consider only the limiting cases for c1, c2, η

I qTG (τ) = max

116 (τ − 4)2, 1

4 |3τ − 2|√

9τ2 − 12τ + 8

http://www.risc.jku.at/people/vpillwei/sLFA/

Page 206: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Experimental all-at-once analysis for 2D

I Set up the full matrix for the all-at-once approach

I Consider only the limiting cases for c1, c2, η

I qTG (τ) = max

116 (τ − 4)2, 1

4 |3τ − 2|√

9τ2 − 12τ + 8

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4

0.2

0.4

0.6

0.8

1.0

1.2

1.4

http://www.risc.jku.at/people/vpillwei/sLFA/

Page 207: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Experimental all-at-once analysis for 2D

I Set up the full matrix for the all-at-once approach

I Consider only the limiting cases for c1, c2, η

I qTG (τ) = max

116 (τ − 4)2, 1

4 |3τ − 2|√

9τ2 − 12τ + 8

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4

0.2

0.4

0.6

0.8

1.0

1.2

1.4

http://www.risc.jku.at/people/vpillwei/sLFA/

Page 208: An Introduction to Finite Element Methods · An Introduction to Finite Element Methods Veronika Pillwein RISC ISSAC 2015, 40th International Symposium on Symbolic and Algebraic Computation,

Chapter 0, Basic Concepts, Brenner+Scott, 2002

The finite element method provides a formalism for generatingdiscrete (finite) algorithms for approximating the solutions ofpartial differential equations. It should be thought of as a blackbox into which one puts the differential equation (boundary valueproblem) and out of which pops an algorithm for approximatingcorresponding solutions. Such a task could conceivably be doneautomatically by a computer, but it necessitates an amount ofmathematical skill that today still requires human involvement.The purpose of this book is to help people become adept atworking the magic of this black box. The book does not focus onhow to turn the resulting algorithms into computer codes, althoughthis is at present also a complicated task. The latter is, however, amore well-defined task than the former and thus potentially moreamenable to automation.