You are on page 1of 58

An introduction to the Virtual Element Method

L. Beirão da Veiga
Department of Mathematics
University of Milan

in collaboration with:
F. Brezzi, A. Cangiani, D. Marini, G. Manzini, A. Russo

DURHAM, July 2014

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 1 / 35
The Virtual Element Method
The Virtual Element Method (VEM) is a generalization of the Finite
Element Method that takes inspiration from modern Mimetic Finite
Difference schemes.

VEM allow to use very general polygonal and polyhedral meshes,


also for high polynomial degrees and guaranteeing the patch test.
The flexibility of VEM is not limited to the mesh: an example will
be shown later.
L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 2 / 35
Why polygons/polyhedrons?

The interest (and use in commercial codes? ) for polygons/polyhedra is


recently growing.

Immediate combination of tets and hexahedrons


Easier/better meshing of domain (and data) features
Automatic inclusion of “hanging nodes”
Adaptivity: more efficient mesh refinement/coarsening
Generate meshes with more local rotational simmetries
Robustness to distortion
.......

? for example CD-ADAPCO and ANSYS.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 3 / 35
Some polytopal methods

Mimetic F.D. Shashkov, Lipnikov, Brezzi, Manzini, BdV, ....

HMM: Eymard, Droniou, ...

Polygonal FEM: Sukumar, Paulino, ...

Weak Galerkin FEM: Wang, ....

HHO: Ern, di Pietro

Polygonal DG: Cangiani, Houston, Georgoulis, ...

VEM: this talk !!!

..........

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 4 / 35
The model problem
We consider the Poisson problem in two dimensions

−∆u = f in Ω, u=0 on ∂Ω,

where
Ω ⊂ R2 is a polygonal domain;
the loading f is assumed in L2 (Ω).

Variational formulation:
 1
 find u ∈ V := H0 (Ω) such that
Z
 a(u, v ) = f v dx ∀v ∈ V ,

where Z
a(v , w) = ∇v · ∇w dx , ∀v , w ∈ V .

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 5 / 35
A Virtual Element Method

We will build a discrete problem in following form


(
find uh ∈ Vh such that
ah (uh , vh ) =< fh , vh > ∀ vh ∈ Vh ,

where
Vh ⊂ V is a finite dimensional space;
ah (·, ·) : Vh × Vh → R is a discrete bilinear form approximating the
continuous form a(·, ·);
< fh , vh > is a right hand side term approximating the load

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 6 / 35
A Virtual Element Method

We will build a discrete problem in following form


(
find uh ∈ Vh such that
ah (uh , vh ) =< fh , vh > ∀ vh ∈ Vh ,

where
Vh ⊂ V is a finite dimensional space;
ah (·, ·) : Vh × Vh → R is a discrete bilinear form approximating the
continuous form a(·, ·);
< fh , vh > is a right hand side term approximating the load

Let m ≥ 1 be a fixed integer index. Such index will represent the


degree of accuracy of the method.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 6 / 35
The local spaces Vh|E
Let Ωh be a simple polygonal mesh on Ω. This can be any
decomposition of Ω in non overlapping polygons E with straight faces.
The space Vh will be defined element-wise, by introducing
local spaces Vh|E ;
the associated local degrees of freedom.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 7 / 35
The local spaces Vh|E
Let Ωh be a simple polygonal mesh on Ω. This can be any
decomposition of Ω in non overlapping polygons E with straight faces.
The space Vh will be defined element-wise, by introducing
local spaces Vh|E ;
the associated local degrees of freedom.

For all E ∈ Ωh :

Vh|E = v ∈ H 1 (E) : −∆v ∈ Pm−2 (E),

v |e ∈ Pm (e) ∀e ∈ ∂E .

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 7 / 35
The local spaces Vh|E
Let Ωh be a simple polygonal mesh on Ω. This can be any
decomposition of Ω in non overlapping polygons E with straight faces.
The space Vh will be defined element-wise, by introducing
local spaces Vh|E ;
the associated local degrees of freedom.

For all E ∈ Ωh :

Vh|E = v ∈ H 1 (E) : −∆v ∈ Pm−2 (E),

v |e ∈ Pm (e) ∀e ∈ ∂E .

the functions v ∈ Vh|E are continuous (and known) on ∂E;


the functions v ∈ Vh|E are unknown inside the element E!
it holds Pm (E) ⊆ Vh|E

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 7 / 35
Degrees of freedom for Vh|E
The dimension of the space Vh|E is clearly

dim(Vh|E ) = Ne m + m(m − 1)/2,

with Ne number of edges of E.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 8 / 35
Degrees of freedom for Vh|E
The dimension of the space Vh|E is clearly

dim(Vh|E ) = Ne m + m(m − 1)/2,

with Ne number of edges of E.

pointwise values vh (ν) at all corners ν of E;


(m − 1) pointwise values on each edge:

vh (xie ) , {xie }m−1


i=1 distinct points on edge e ;

volume moments:
Z
vh · pm−2 ∀pm−2 ∈ Pm−2 (E) .
E

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 8 / 35
Depiction of the degrees of freedom for Vh|E

m=1 m=2 m=3

Green dots stand for vertex pointwise values


Red squares represent edge pointwise values
Blue squares represent internal (volume) moments

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 9 / 35
Degrees of freedom for Vh|E

The following holds


[BdV,Brezzi,Cangiani,Manzini,Marini,Russo, M3AS 2013].

Proposition
The proposed collection of operators Vh|E → R constitutes a set of
degrees of freedom for Vh|E , ∀E ∈ Vh|E .

We already know #dofs = dim(Vh|E ).


If vh ∈ Vh|E is null on all the d.o.f.s, then it clearly vanishes on the
boundary.
The function ∆vh ∈ Pm−2 and thus
Z Z
0= vh · ∆vh = (∇vh ) · (∇vh ).
E E

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 10 / 35
The space Vh

The global space Vh is built by assembling the local spaces Vh|E as


usual:
Vh = {v ∈ H01 (Ω) : v |E ∈ Vh|E ∀E ∈ Ωh }

The total d.o.f.s are one per internal vertex, m − 1 per internal edge
and m(m − 1)/2 per element.

The choice of degrees of freedom guarantees the global continuity of


the functions in Vh .

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 11 / 35
The bilinear form ah (·, ·)

The bilinear form ah (·, ·) is built element by element


X
ah (vh , wh ) = ahE (vh , wh ) ∀ vh , wh ∈ Vh ,
E∈Ωh

where
ahE (·, ·) : Vh|E × Vh|E −→ R
are symmetric bilinear forms that mimic

ahE (·, ·) ' a(·, ·)|E

by satisfying a stability and a consistency condition.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 12 / 35
The stability property

Stability
There exist two positive constants α∗ and α∗ , independent of h and of
E, such that

α∗ aE (vh , vh ) ≤ ahE (vh , vh ) ≤ α∗ aE (vh , vh ) ∀vh ∈ Vh|E .

The stability property guarantees that ah (·, ·) is uniformly coercive


and continuous;

clearly, it is sufficient for the (uniform) well posedness of the


discrete problem, but not for convergence.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 13 / 35
The consistency property

Consistency
For all h and for all E ∈ Ωh it holds

ahE (p, vh ) = aE (p, vh ) ∀p ∈ Pm (E), vh ∈ Vh|E .

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 14 / 35
The consistency property

Consistency
For all h and for all E ∈ Ωh it holds

ahE (p, vh ) = aE (p, vh ) ∀p ∈ Pm (E), vh ∈ Vh|E .

NOTE: an integration by parts gives


Z
aE (p, vh ) = ∇p · ∇vh dx
EZ Z
= − (∆p) vh dx + (∇p · nE ) vh ds.
E ∂E

for all p ∈ Pm (E), vh ∈ Vh|E .


Therefore the right hand side above is explicitly computable even if we
ignore vh inside E.
L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 14 / 35
The discrete load term

We consider m ≥ 2 first. Let, for all E ∈ Ωh , the approximated load fh |E


be the L2 -projection of f |E on Pm−2 (E) .
Then
X Z
(fh , vh )h := fh vh dx
E∈Ωh E

that is computable due to the internal dofs of Vh|E .

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 15 / 35
The discrete load term

We consider m ≥ 2 first. Let, for all E ∈ Ωh , the approximated load fh |E


be the L2 -projection of f |E on Pm−2 (E) .
Then
X Z
(fh , vh )h := fh vh dx
E∈Ωh E

that is computable due to the internal dofs of Vh|E .


In the case m = 1 a simple integration rule based on the vertex values
of the polygon can be used, for instance
X Z  1 X
(fh , vh )h := f dx vh (ν) dx.
E NE
E∈Ωh ν∈∂E

Note: for m = 2 better choices can be made [Ahmad, Alsaedi, Brezzi,


Marini, Russo, CMA 2013], [BdV, Brezzi, Marini, SINUM 2013].

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 15 / 35
A convergence result

Let the sequence {Ωh }h satisfy the following mesh assumptions:


each element E in Ωh is star-shaped with respect to a ball of
uniform radius or suitable union of ;
for each element E in Ωh , the lenght of all edges is comparable

with its diameter hE not needed by paying |log(he )| .
Then the following holds [... volley team ..., M3AS 2013].

Theorem
Let the stability and consistency assumptions hold. Then, if f ∈ H s (Ωh )
and u ∈ H s+1 (Ωh ), we have

|u − uh |H 1 (Ω) ≤ C hs |u|H s+1 (Ωh ) + |f |H s (Ωh )

for 0 ≤ s ≤ m and with C independent of h.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 16 / 35
k-plain
−div(K∇u) + αu = f

exact solution:
� �
ue (x, y) = y − x + log y 3 + x + 1 − x y − x y 2 + x2 y + x2 + x3 + sin(5 x) sin(7 y) − 1

diffusion:

K(x, y) = 1

zero-order term:

α(x, y) = 1

right-hand-side:
� � 1 9 y4 6y
f (x, y) = log y 3 + x + 1 − y − 5 x + + − x y − x y 2 + x2 y + x2 + x3 − 3 + 75 sin(5 x) sin(7 y) − 3
(y 3 + x + 1)2 (y 3 + x + 1)2 y +x+1

L2 norm of the exact solution:

||ue ||0,Ω = 0.6431084584

H1 seminorm of the exact solution:

|ue |1,Ω = 5.031264492

Generated by genue on 09-Nov-2013 16:08:59


h=hmean slope: ||Π0u −u || = 4.011, ||Π∇u −u || = 4.014 h=hmean slope: ||∇Π0u −∇u || = 3.010, ||∇Π∇u −∇u || = 3.013
h e 0,Ω h e 0,Ω h e 0,Ω h e 0,Ω
−2 0
10 10
0 0
||Π u −u || ||∇Π u −∇u ||
h e 0,Ω h e 0,Ω
5 ∇ 5 ∇
h ||Π u −u || h ||∇Π u −∇u ||
h e 0,Ω h e 0,Ω
−3 −1
10 10

4 4
h h

−4 −2
10 10

h
3
h3

−5 −3
10 10

h2 h2

−6 −4
10 10

h1 h1

−7 −5
10 10

−8 −6
10 10
−2 −1 0 −2 −1 0
10 10 10 10 10 10

2
L error k=3 H 1 error

triangle0.01 triangle0.005 triangle0.001 triangle0.0005 triangle0.0001


88 polygons, hmax = 0.174116, hmean = 0.149291 177 polygons, hmax = 0.133616, hmean = 0.107452 809 polygons, hmax = 0.063418, hmean = 0.049083 1627 polygons, hmax = 0.044872, hmean = 0.034516 7921 polygons, hmax = 0.019754, hmean = 0.015641
h=hmean
0
slope: ||Π u −u ||

= 5.009, ||Π u −u || = 5.017 h=hmean slope: ||∇Π0u −∇u || = 4.003, ||∇Π∇u −∇u || = 4.013
h e 0,Ω h e 0,Ω h e 0,Ω h e 0,Ω
−4 −2
10 10
0 0
||Π uh−ue||0,Ω ||∇Π u −∇u ||
h e 0,Ω
∇ 5 ∇
||Π uh−ue||0,Ω h ||∇Π u −∇u ||
h e 0,Ω
h5
−5 −3
10 10

4
h
h4
−6 −4
10 10

h3
h3
−7 −5
10 10

h2
h2
−8 −6
10 10

h1
h1
−9 −7
10 10

−10 −8
10 10
−2 −1 0 −2 −1 0
10 10 10 10 10 10

2
L error k=4 H 1 error

triangle0.01 triangle0.005 triangle0.001 triangle0.0005 triangle0.0001


88 polygons, hmax = 0.174116, hmean = 0.149291 177 polygons, hmax = 0.133616, hmean = 0.107452 809 polygons, hmax = 0.063418, hmean = 0.049083 1627 polygons, hmax = 0.044872, hmean = 0.034516 7921 polygons, hmax = 0.019754, hmean = 0.015641
0
slope: ||Π0u −u ||

h=hmean = 5.928, ||Π∇u −u || = 5.871 h=hmean slope: ||∇Π u −∇u ||
h e 0,Ω
= 5.020, ||∇Π u −∇u ||
h e 0,Ω
= 5.010
h e 0,Ω h e 0,Ω
−5 −4
10 10
0 0
||Π u −u || ||∇Π uh−∇ue||0,Ω
h e 0,Ω
∇ ∇
||Π u −u || 5 ||∇Π uh−∇ue||0,Ω
h e 0,Ω h
−6
10 −5
10

−7 h5 h4
10
−6
10

4
−8 h
10 h3
−7
10
3
−9 h
10
h2
−8
2 10
−10 h
10
h1

−11
h1 10
−9

10

−12 −10
10 10
−2 −1 0 −2 −1 0
10 10 10 10 10 10

2
L error k=5 H 1 error

triangle0.01 triangle0.005 triangle0.001 triangle0.0005 triangle0.0001


88 polygons, hmax = 0.174116, hmean = 0.149291 177 polygons, hmax = 0.133616, hmean = 0.107452 809 polygons, hmax = 0.063418, hmean = 0.049083 1627 polygons, hmax = 0.044872, hmean = 0.034516 7921 polygons, hmax = 0.019754, hmean = 0.015641
Just for fun ...
We consider a family of meshes based on the following pattern:

Courtesy of A. Russo !!
L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 17 / 35
−∆u = f
h=hmean slope: ||Π0uh−ue||0,Ω = 3.989 h=hmean slope: ||∇Π0uh−∇ue||0,Ω = 3.009
−1 1
10 10
||Π0uh−ue||0,Ω ||∇Π0uh−∇ue||0,Ω
4
h

h4
0
10
−2
10
3
h h3

−1
10

−3 2
10 h
h2
−2
10

h1
−4
10 h1
−3
10

−5 −4
10 10
−2 −1 0 −2 −1 0
10 10 10 10 10 10

L2 error k=3 H 1 error


VEM−2x2 VEM−4x4 VEM−8x8 VEM−16x16
28 polygons, Ndof=627, h = 5.21e−01, h = 4.46e−01 112 polygons, Ndof=2445, h = 2.60e−01, h = 2.23e−01 448 polygons, Ndof=9657, h = 1.30e−01, h = 1.11e−01 1792 polygons, Ndof=38385, h = 6.51e−02, h = 5.57e−02
max mean max mean max mean max mean

Generated by ploterrors on 29-Jun-2014 18:40:30


−∆u = f
h=hmean slope: ||Π0uh−ue||0,Ω = 4.991 h=hmean slope: ||∇Π0uh−∇ue||0,Ω = 3.982
−1 1
10 10
||Π0uh−ue||0,Ω ||∇Π0uh−∇ue||0,Ω

h5
h5
−2 0
10 10

4
h
h4
−3 −1
10 10

3
h
h3
−4 −2
10 10
2
h
h2

−5 −3
10 10
1
h
h1

−6 −4
10 10

−7 −5
10 10
−2 −1 0 −2 −1 0
10 10 10 10 10 10

L2 error k=4 H 1 error


VEM−2x2 VEM−4x4 VEM−8x8 VEM−16x16
28 polygons, Ndof=901, h = 5.21e−01, h = 4.46e−01 112 polygons, Ndof=3521, h = 2.60e−01, h = 2.23e−01 448 polygons, Ndof=13921, h = 1.30e−01, h = 1.11e−01 1792 polygons, Ndof=55361, h = 6.51e−02, h = 5.57e−02
max mean max mean max mean max mean

Generated by ploterrors on 29-Jun-2014 18:50:05


Construction of the stiffness matrix

We introduce the following energy projector

Π : Vh|E −→ Pm (E)

defined by, for all vh ∈ Vh|E ,


(
aE (Πvh , p) = aE (vh , p) ∀p ∈ Pm (E)/R
P0 (Πvh ) = P0 (vh )

The operator P0 is a projection on constants, that for m ≥ 2 is simply


the average, and for m = 1 the vertex value average.

NOTE: due to the consistency assumption, the projection operator


above is computable (more later).

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 18 / 35
Construction of the stiffness matrix

It is immediate to check that ∀ vh , wh ∈ Vh|E

aE (vh , wh ) = aE (Πvh , Πwh ) + aE ((I − Π)vh , (I − Π)wh ).

Then the bilinear form

ahE (vh , wh ) = aE (Πvh , Πwh ) + sE ((I − Π)vh , (I − Π)wh )

is consistent and stable, provided the positive bilinear form


sE : Vh|E × Vh|E → R scales like the original bilinear form a.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 19 / 35
Construction of the stiffness matrix

It is immediate to check that ∀ vh , wh ∈ Vh|E

aE (vh , wh ) = aE (Πvh , Πwh ) + aE ((I − Π)vh , (I − Π)wh ).

Then the bilinear form

ahE (vh , wh ) = aE (Πvh , Πwh ) + sE ((I − Π)vh , (I − Π)wh )

is consistent and stable, provided the positive bilinear form


sE : Vh|E × Vh|E → R scales like the original bilinear form a.
Let now the local stiffness matrix ME

MEij := ahE (φi , φj ) ∀i, j = 1, 2, ..., N

with {φi } the canonical basis associated to the degrees of freedom.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 19 / 35
Construction of the stiffness matrix

We introduce also {mα }nα=1 a basis for the polynomial space

Pm = span{mα }nα=1 .

Since Pm ⊆ Vh|E , the matrix


 
dof1 (m1 ) dof1 (m2 ) ... dof1 (mn )
 dof2 (m1 ) dof2 (m2 ) ... dof2 (mn ) 
 
D= .. .. .. .. .
 . . . . 
dofN (m1 ) dofN (m2 ) . . . dofN (mn )

expresses the {mα } in terms of the Vh|E basis.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 20 / 35
Construction of the stiffness matrix

We have also a matrix


 
P0 φ1 ... P 0 φN
aE (φ1 , m2 ) . . . E
a (φN , m2 ) 
 
B= .. .. .. 
 . . . 
E
a (φ1 , mn ) . . . aE (φN , mn )

expressing (in terms of the bases) the right hand side in the definition
(
aE (Πvh , p) = aE (vh , p) ∀p ∈ Pm (E)/R
P0 (Πvh ) = P0 (vh )

NOTE: such matrix is computable! (integration by parts and d.o.f.s


definition)

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 21 / 35
Construction of the stiffness matrix

Let
 
P0 m1 P0 m2  ... P0 mn 
 0 ∇m2 , ∇m2 0,P . . . ∇m2 , ∇mn 0,P 
 
G = BD =  . .. .. .. .
 .. . . . 
 
0 ∇mn , ∇m2 0,P . . . ∇mn , ∇mn 0,P

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 22 / 35
Construction of the stiffness matrix

Let
 
P0 m1 P0 m2  ... P0 mn 
 0 ∇m2 , ∇m2 0,P . . . ∇m2 , ∇mn 0,P 
 
G = BD =  . .. .. .. .
 .. . . . 
 
0 ∇mn , ∇m2 0,P . . . ∇mn , ∇mn 0,P

Compute the matrices corresponding to the projection operator:

Π? = (G)−1 B , Π = DΠ? .

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 22 / 35
Construction of the stiffness matrix

Let
 
P0 m1 P0 m2  ... P0 mn 
 0 ∇m2 , ∇m2 0,P . . . ∇m2 , ∇mn 0,P 
 
G = BD =  . .. .. .. .
 .. . . . 
 
0 ∇mn , ∇m2 0,P . . . ∇mn , ∇mn 0,P

Compute the matrices corresponding to the projection operator:

Π? = (G)−1 B , Π = DΠ? .

Finally compute the local stiffness matrix


e Π? + (I − Π)T (I − Π).
ME = ΠT? G

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 22 / 35
The three dimensional case

In principle the 3D case is analogous; the degrees of freedom are


one point value per vertex
(m − 1) point values per edge
M0f , M1f , .., Mm−1
f moments per face
M0E , M1E , .., Mm−2
E moments per element.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 23 / 35
The three dimensional case

In principle the 3D case is analogous; the degrees of freedom are


one point value per vertex
(m − 1) point values per edge
M0f , M1f , .., Mm−1
f moments per face
M0E , M1E , .., Mm−2
E moments per element.

A more efficient formulation with less degrees of freedom per face


M0f , M1f , .., Mm−2
f moments per face
can be built using the L2 projector in [Ahmed, Alsaedi, Brezzi, Marini,
Russo, CMA 2013].

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 23 / 35
Virtual Elements for Hdiv : introduction

Consider the diffusion problem in mixed form




 Find F ∈ V := Hdiv (Ω), p ∈ Q := L2 (Ω) :

 Z Z


F · G + (divG)p = 0 ∀G ∈ V ,

 Z Ω Ω Z



 (divF )q = − f q ∀q ∈ Q.
Ω Ω

We introduce the VEM spaces:

Qh = {q ∈ L2 (Ω) : q|E ∈ Pk −1 (E) ∀E ∈ Ωh } ⊂ Q,


Vh = {G ∈ Hdiv (Ω) : G|E ∈ Vh|E ∀E ∈ Ωh } ⊂ V .

What follows taken from [BdV, Brezzi, Marini, Russo, submitted].


(se also [Brezzi, Falk, Marini, M2AN, 2014])

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 24 / 35
Virtual Elements for Hdiv : local spaces

Let E ∈ Ωh . We introduce the local VEM space


n
Vh|E = G ∈ Hdiv (E) ∩ Hrot (E) : divG ∈ Pk −1 (E), rotG ∈ Pk −1 (E),
o
G|e · neE ∈ Pk (e) ∀e ∈ ∂E .

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 25 / 35
Virtual Elements for Hdiv : local spaces

Let E ∈ Ωh . We introduce the local VEM space


n
Vh|E = G ∈ Hdiv (E) ∩ Hrot (E) : divG ∈ Pk −1 (E), rotG ∈ Pk −1 (E),
o
G|e · neE ∈ Pk (e) ∀e ∈ ∂E .

This space is associated to the problem


(
divG = f1 , rotG = f2 on E,
G · n = f∂ on ∂E .
R R
that is well posed if E f1 = ∂E f∂ .
Thus
dim(Vh|E ) = 2 dim(Pk −1 (E)) + Ne dim(Pk (e)) − 1 .

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 25 / 35
Virtual Elements for Hdiv : local degrees of freedom
edge moments
Z
(G · neE )pk ∀pk ∈ Pk (e), ∀e ∈ ∂E .
e

div volume moments:


Z
(divG)pk −1 ∀pk −1 ∈ Pk −1 (E)/R .
E

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 26 / 35
Virtual Elements for Hdiv : local degrees of freedom
edge moments
Z
(G · neE )pk ∀pk ∈ Pk (e), ∀e ∈ ∂E .
e

div volume moments:


Z
(divG)pk −1 ∀pk −1 ∈ Pk −1 (E)/R .
E

additional volume moments:


Z
G · pk ∀pk ∈ Gk⊥ (E) .
E
The space
Z

Gk⊥ = p ∈ Pk : p · ∇q = 0 ∀q ∈ Pk +1 (E) .
E

has dimension equal to Pk −1 (E).


L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 26 / 35
Virtual Elements for Hdiv : local degrees of freedom

Unisolvence. Let G ∈ Vh|E , null on all dofs. Since

• rot : Gk⊥ → Pk −1 is a bijection,


• rotG ∈ Pk −1 ,

it exists ϕ ∈ Gk⊥ such that

0 = rot(G − ϕ) =⇒ G = ∇ψ + ϕ with ψ ∈ H 1 (E).

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 27 / 35
Virtual Elements for Hdiv : local degrees of freedom

Unisolvence. Let G ∈ Vh|E , null on all dofs. Since

• rot : Gk⊥ → Pk −1 is a bijection,


• rotG ∈ Pk −1 ,

it exists ϕ ∈ Gk⊥ such that

0 = rot(G − ϕ) =⇒ G = ∇ψ + ϕ with ψ ∈ H 1 (E).

Thus
Z
||G||2L2 (E) = G (∇ψ + ϕ)
EZ Z Z
=− (divG)ψ + (G · nE )ψ + G ϕ = 0.
E ∂E E

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 27 / 35
Virtual Elements for Hdiv : computing the L2 projection

the first set of dofs determines G · n on ∂E;


since divG ∈ Pk −1 (E), the second set of dofs determines divG.
therefore we can compute
Z Z Z
G ∇ψ = − (divG)ψ + (G · nE )ψ ∀ψ polynomial;
E E ∂E

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 28 / 35
Virtual Elements for Hdiv : computing the L2 projection

the first set of dofs determines G · n on ∂E;


since divG ∈ Pk −1 (E), the second set of dofs determines divG.
therefore we can compute
Z Z Z
G ∇ψ = − (divG)ψ + (G · nE )ψ ∀ψ polynomial;
E E ∂E

any q ∈ [Pk (E)]2 can be written as

q = p + ∇ψ , p ∈ Gk⊥ , ψ ∈ Pk +1 (E).

Thus we can compute


Z Z Z
G·q= G·p+ G · ∇ψ.
E E E

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 28 / 35
Hdiv Virtual Elements : final observations
The proposed Virtual spaces (Vh , Qh ) satisfy a commuting diagram
property.
Thus are suitable for the approximation of the problem:


 Find Fh ∈ Vh , p ∈ Qh :

 Z Z


Fh · Gh + (divGh )ph = 0 ∀Gh ∈ Vh ,
 ZΩ ΩZ




 (divFh )qh = f qh ∀qh ∈ Qh .
Ω Ω

NOTE: with the choices that we made, everything above is computable


(up to the usual VEM construction and using the local L2 projections).

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 29 / 35
Hdiv Virtual Elements : final observations
The proposed Virtual spaces (Vh , Qh ) satisfy a commuting diagram
property.
Thus are suitable for the approximation of the problem:


 Find Fh ∈ Vh , p ∈ Qh :

 Z Z


Fh · Gh + (divGh )ph = 0 ∀Gh ∈ Vh ,
 ZΩ ΩZ




 (divFh )qh = f qh ∀qh ∈ Qh .
Ω Ω

NOTE: with the choices that we made, everything above is computable


(up to the usual VEM construction and using the local L2 projections).

VEM exact sequences


A full “Safari” of VEM to appear in [BdV, Brezzi, Marini, Russo].

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 29 / 35
An application: the Cahn-Hilliard equation

With standard finite elements it is very complicated to build


spaces with global regularity higher than C 0 .

With VEM, this is instead easy to achieve. We can build elements


with arbitrary C k regularity:
[Brezzi and Marini, CMAME, 2013]: C 1 VEM for Kirchhoff plates
[BdV, Manzini, IMA J. Num. An. 2013]: C k VEM for diffusion.

We will here show some “spoiler” from a paper in collaboration


with Antonietti, Scacchi, Verani for applications to the
Cahn-Hilliard equation for phase transition.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 30 / 35
The Cahn-Hilliard equation

We search for u : Ω × [0, T ] → R such that:


 0 2

 ∂t u − ∆ φ (u) − γ ∆u(t) = 0
 in Ω × [0, T ]
u(·, 0) = u0 (·) in Ω

 
∂n u = ∂n φ0 (u) − γ 2 ∆u(t) = 0 on ∂Ω × [0, T ],
where the function φ(x) = (1 − x 2 )2 /4 and γ ∈ R+ “small”.

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 31 / 35
The Cahn-Hilliard equation

We search for u : Ω × [0, T ] → R such that:


 0 2

 ∂t u − ∆ φ (u) − γ ∆u(t) = 0
 in Ω × [0, T ]
u(·, 0) = u0 (·) in Ω

 
∂n u = ∂n φ0 (u) − γ 2 ∆u(t) = 0 on ∂Ω × [0, T ],
where the function φ(x) = (1 − x 2 )2 /4 and γ ∈ R+ “small”.

The natural variational space is H 2 (Ω), thus a C 1 regularity is needed


for a conforming method.
• Mixed DG (Kay, Styles, Suli)
• Morley element (Elliott)
• Isogeometric Analysis (Hughes and co-workers)
• ....

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 31 / 35
C 1 VEM elements (of minimal degree)


Vh|E = v ∈ H 2 (E) : −∆2 v ∈ P0 (E),

v|e ∈ P3 (e), ∂n v|e ∈ P1 (e) ∀e ∈ ∂E .

Degrees of freedom:

k=1, p=2

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 32 / 35
Some numerical result

We apply a primal VEM C 1 discretization to the problem:


it involves Π0 , Π∇ and Π∆ projections;
it grants a conforming solution and accepts general polygons;
theoretical convergence estimates hold;
initial numerical tests are encouraging.
t=0 t = 0.03 t = 0.1

0.8 0.8
0.8

0.6 0.6
0.6

0.4 0.4
0.4

0.2 0.2
0.2

0 0
0

−0.2 −0.2
−0.2

−0.4 −0.4
−0.4

−0.6 −0.6
−0.6

−0.8 −0.8
−0.8

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 33 / 35
More VEM literature
More VEM literature not mentioned in the previous slides:
Virtual Elements for linear elasticity problems
[BdV, Brezzi, and Marini, SINUM, 2013]
A stream function formulation for Stokes
[Antonietti, BdV, Mora, Verani, SINUM, 2014]
Three dimensional compressible elasticity
[A.L. Gain, C. Talischi, G.H. Paulino, CMAME, 2014]
IN PROGRESS: nonconforming elements (Ayuso, Lipnikov,
Manzini), eigenvalue problems (Mora, Rodriguez), discrete
fracture network (Berrone at al.), contact problems (Wriggers et
al.), topology optimization (Paulino et al.), etc..

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 34 / 35
More VEM literature
More VEM literature not mentioned in the previous slides:
Virtual Elements for linear elasticity problems
[BdV, Brezzi, and Marini, SINUM, 2013]
A stream function formulation for Stokes
[Antonietti, BdV, Mora, Verani, SINUM, 2014]
Three dimensional compressible elasticity
[A.L. Gain, C. Talischi, G.H. Paulino, CMAME, 2014]
IN PROGRESS: nonconforming elements (Ayuso, Lipnikov,
Manzini), eigenvalue problems (Mora, Rodriguez), discrete
fracture network (Berrone at al.), contact problems (Wriggers et
al.), topology optimization (Paulino et al.), etc..

Regarding VEM implementation:


On M3AS: The hitchhikers guide to VEM, a paper all about VEM
implementation.
L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 34 / 35
Conclusions

The Virtual Element Method is a generalization of FEM that takes


inspiration from modern mimetic schemes

The freedom that is left to the local spaces allows for a large
flexibility, for instance in terms of meshes (polygons, “hanging
nodes”), global regularity of the discrete space, definition of the
local matrixes (M-optimization), etc ..

A lot of development is still to be done in VEM, and we believe it


can be a very interesting new field of research.

Morever, more complex coding and problems need to be


challenged in order to assess the impact of VEM in applications
(various nonlinear problems already under development ...).

L. Beirão da Veiga (Univ. of Milan) The Virtual Element Method DURHAM - 2014 35 / 35

You might also like