Meshless methods
and other computational methods compared with FEM
Sławomir Milewski
mail: slawek@L5.pk.edu.pl
Contents
Introduction
Classification criteria of computational methods Boundary value problems formulations
Domain discretization and solution approximation Methods’ review on the basis of selected criteria
Finite difference method FDM compared with FEM Numerical example –
Beam deflection analysis Meshless methods
Meshless finite difference method MFDM compared with FEM Numerical example –
FD operators generation by means of MWLS (1D and 2D cases)
Summary
Introduction
Finite element method FDM
General, the most commonly applied method
Basis of variety of commercial codes and packages
(Abaqus, Adina, Ansys, Diana, FELT, Feap, Mark, Robot, …)
Applied for most problems of physics, mathematics, engineering, and mechanics
Developed classes and types of finite elements, solid mathematical
background, results postprocesssing, methods of errors estimation
Introduction
Why we should talk about other computational methods?
historical aspects (FEM is not the oldest one…)
didactic aspects (it is easier to solve problem manually by using FDM than FEM)
practical aspects
selected applications (plates analysis, moving boundary, crack, …) available code (user one, commercial, …)
methods’ combinations (e.g. FEM + MFDM)
need for results verification by means of other method efficiency and speed of the algorithm
Need for frequent mesh modifications (adaptation)
Accuracy of solution and its derivatives (super-convergence) Final results postprocessing (methods combinations)
Recent trends in science (meshless methods)
Methods classification criteria
Boundary value problems formulations
Domain discretization base (domain, boundary, subdomain, …)
Domain and boundary discretization type (nodes, elements + nodes, …) Solution discretization type (nodal values, other degrees of freedom, …) Solution approximation type
Numerical integration type
Postprocessing type
Classification criteria of
computational methods
Local formulation
Global formulations
Ω ∂Ω
( )
u f P
u u P
u g P
= ∈ Ω
=
= ∈ ∂Ω
L G
L,G - differential operators of n-th i m-th orders
Ω ∂Ω
Functional
Variational equation (inequality)
I( )= 1 B( , )
u 2 u u − Lu
B( , ) u v = L v ( ) for v ∈ V B( , ) u v ≥ L v ( ) for v ∈ V
admMixed formulations (e.g. local - global)
=1 v
=0 v
=0 v
( )i
Ωi
( , ) ( )
, 1,...,
i
b u l
i N
=
∈Ω =
v v
v
Variational principle satisfied in subdomains ascribed to subsequent nodes Ω
ilocal FDM local MFDM
FE M
variational FDM variational MFDM
MLPG5
Finite element method (FEM)
Boundary element method (BEM) Finite difference method (FDM)
Meshless methods (MM) Meshless FDM
Weighted residuals methods Energy methods
others …
Ω ∂Ω
Domain discretization
Solution approximation
boundary methods
element methods
meshless methods
METHODS CLASSIFICATION
FINITE ELEMENT
METHOD METHOD’S
NAME
FORMULATION DISCRETIZATION BASE
DISCRETIZATION TYPE
APPROXIMATION TYPE
NUMERICAL INTEGRATION
RESULTS POSTPROCESSING
WEAK (VARIATIONAL
PRINCIPLE, FUNCTIONAL)
DOMAIN
INTERPOLATION
(SHAPE FUNCTIONS) INSIDE ELEMENT FEM + OTHERS
DOMAIN NODES
+ ELEMENTS
FINITE BOUNDARY
METHOD
INTEGRAL
EQUATION DOMAIN
BOUNDARY INTERPOLATION
ON THE BOUNDARY
(INTEGRALS) BEM + OTHERS
BOUNDARY ELEMENTS
FINITE DIFFERENCE
METHOD
STRONG
(LOCAL) DOMAIN
DIFFERENCE FORMULAS
NOT NEEDED
APPROXIMATION DOMAIN
NODES + ELEMENTS
NODES
VARIATIONAL FDM
WEAK
(VARIATIONAL) DOMAIN
DIFFERENCE FORMULAS
AMONG AND
AROUND NODES APPROXIMATION
DOMAIN NODES
MESHLESS METHOD
(MESHLESS FDM)
WEAK / STRONG
(VARIATIONAL) DOMAIN
MWLS VARIOUS
METHODS MWLS
DOMAIN NODES
RESIDUAL METHODS
(GALERKIN, COLLOCATION, …)
WEAK
(VARIATIONAL) NONE
LINEAR COMBINATION OF BASIS FUNCTIONS
ANALYTICAL INTERPOLATION NONE
ENERGY METHODS
(RITZ)
WEAK
(FUNCTIONAL) NONE
LINEAR COMBINATION OF
BASIS FUNCTIONS ANALYTICAL INTERPOLATION NONE
Finite difference method
- local version
local FDM compared to FEM
local FDM FEM
Boundary value problem
formulation
Local - Variational
( )
u f P
u u P
u g P
= ∈ Ω
=
= ∈ ∂Ω
L G
I( )= 1 B( , ) u 2 u u −Lu
B( , ) u v = L v ( ) for v ∈ V - Functional
Mesh generation type (rectangular, triangular, …) + modulus h
Special programs - generators
Approximation Generation of finite difference formulas
Interpolation by means of shape functions
Discrete equations generation
Collocation variational principle at element level
Integration not needed Gaussian formulas in finite element Boundary
conditions
Additional difference formulas at boundary nodes
System of equations modification
System of equations matrix
Generally non-symmetric Symmetric banded
FDM steps – mesh generation
Source: Orkisz J., „Finite Difference Method”, part III in Handbook of Computational Mechanics, ed: Kleiber, Springer, 1998
FDM steps – difference formulas generation
1D:
h h
2D:
h
h
h h
1
i− i i+1 i−1, j i+1,j
, 1 i j+
, 1 i j−
, i j
standard three-nodes star
5-nodes star
1
ui− ui
1
ui+
2h 2h
1
i− i i+1
1
ui− ui
1
ui+
five-nodes star
2 i−
2
ui−
h
2 i+
2
ui+
h
h
h 9-nodes
star
Generation methods:
- Formulas composition (complex formulas by means of simple formulas) - Forcing the agreement for monomials
- Interpolation and differentiation
- Indefinite coefficient method (Taylor expansion)
FDM steps – difference formulas generation – 1D examples
( ) ( )
1 1 1 1
2
' '' ' ' 2 ''' '' ' ...
2
i i i i i
i i i i i
u u u u u
u u u u u
h h
+
−
− −− +
+≈ → ≈ = → ≈
1 1
''
i i i iu ≈ au
−+ bu + cu
+2 1
2 1
' 0.5 '' ...
' 0.5 '' ...
i i i i
i i
i i i i
u u hu h u
u u
u u hu h u
−
+
= − + +
=
= + + +
( )
2 20 1
0
''
i i' (
i) '' (0.5
i0.5 )
u ≈ u a b c + + + u − + ah ch + u h a + h c
2
2
2
1
2
1 a h b h c h
=
−
=
=
-indefinite coefficients method for operator type: h h
1
i− i i+1
1
ui− ui
1
ui+
''
i i'
i i 1u ≈ au + bu + cu
+2 1
' '
' 0.5 '' ...
i i
i i
i i i i
u u
u u
u
+u hu h u
=
=
= + + +
( )
20 1 0
''
i i' (
i) '' 0.5
iu ≈ u a c + + u b ch + + u h c
2
2
2
2
2
a h
b h c h
= −
−
=
=
-indefinite coefficients method for operator type: h
i i+1
i, 'i
u u ui+1
- formulas composition:
FDM steps – difference formulas generation – 2D examples
-indefinite coefficients method for operator type:
h
h
h h
1,
i− j i+1,j
, 1 i j+
, 1 i j−
, i j
( ) ( )
2
,
''
,''
, 1, , 1 1, , 1 ,i j xx i j yy i j i j i j i j i j i j
u u u au
−bu
−cu
+du
+eu
∇ = + ≈ + + + +
( ) ( )
( ) ( )
( ) ( )
( ) ( )
2
1, , , ,
2
, 1 ,
, ,
2
1, , , ,
2
, 1 , , ,
, ,
' 0.5 '' ...
' 0.5 '' ...
' 0.5 '' ...
' 0.5 '' ...
i j i j x i j xx i j
i j i j y yy
i j i j
i j i j x i j xx i j
i j i j y i j yy i j
i j i j
u u h u h u
u u h u h u
u u h u h u
u u h u h u
u u
−
− +
+
= − + +
= − + +
= + + +
= + + +
=
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
2
, , , ,
0 0 0 2
2 2 2 2
, ,
2
1 1
' ' ... 1
... '' 0.5 0.5 '' 0.5 0.5 4
i j i j x i j y i j
xx i j yy i j
u u a b c d e u ha hc u hb hd
a b c d h
u h a h c u h b h d e
h
∇ = + + + + + − + + − + +
= = = =
→
+ + + + = −
- formulas composition:
( ) ( )
( ) ( )
1, , 1, , 1 , , 1
2 2
, ,
1, , 1 1, , 1 ,
2
, , , 2
2 2
'' , ''
'' '' 4
i j i j i j i j i j i j
xx i j yy i j
i j i j i j i j i j
i j xx i j yy i j
u u u u u u
u u
h h
u u u u u
u u u
h
− + − +
− − + +
− + − +
≈ ≈ →
+ + + −
→ ∇ = + ≈
FDM steps – difference equations generation
( )
u f P
u u P
u g P
= ∈ Ω
=
= ∈ ∂Ω
L G
i i
i i
j j
i i
L u f P G u g P
= ∈ Ω
= ∈ ∂Ω
Boundary conditions
Operator works on internal nodes only (poor approximation)
Operator works on internal nodes with additional
generalized degrees of freedom
Operator works on internal nodes
and external fictitious nodes
Nodal collocation
Bending beam – 2nd order equation
q(x)
L EI
y
x
2 2
( ) ( ) , (0) 0 , ( ) 0
d y M x
f x y y L
dx = = − EI = =
( )
1 1
21
( ) 2 2 2
M x = qLx − qx = qx L − x mathematical formulation with mechanical model
for q = const.
2nd order problems
- analytical derivatives into difference operators
h h
1
i − i i + 1
1 1
' 2
i i
i
y y
y h
+ − −
≈
1 1
2
'' i y i 2 y i y i
y h
− − + +
≈
EJ L
y
x
Example: mesh with 5 nodes
1
2 3 4
5
2 2
( ) ( )
(0) 0 , ( ) 0
d y M x
dx f x EI
y y L
= = −
= =
( ) ( ) ( )
0
1 2 3
2 2
2 3 4
3 2, 3 4
2 0
3 4 5
2 4
2
2 ,
2
y y y
h f x
y y y
f x y y y
h
y y y
h f x
− +
=
− +
= →
− +
=
q(x)
traditional notation – for manual calculations
4 h = L
matrix notation – for computational analysis
( ) ( ) ( )
1 1
2 2 2
2 2 2
1
3 3 3
2 2 2
4 4 4
2 2 2 5 5
1 0 0 0 0
1 2 1 0
0 0
1 2 1
0 0
1 2 1
0 0
0
0 0 0 0 1
y y
h h h y f x y
y f x y
h h h
y f x y
y y
h h h
−
−
= → =
−
−
BA
A B
Bending of cantilever beam – 2nd order equation
q
L EI
y
x
2 2
( ) ( ) , '(0) 0 , (0) 0
d y M x
f x y y
dx = = − EI = =
( ) ( )
M x = − q L − x
mathematical formulation with mechanical model
Bending of cantilever beam – 2nd order equation
- numerical FD model – version 1 (fictitious node)
1 2 3 … n-1 n
1
h L const
=n =
0
−2 0
0 2
1
2 0 0 y y
y y h
y
−
= → =
=
x
n= L
( )
0 1 2
1 2 1
: y 2 y y
x f x
h
− + =
( ) ( ) ( ) ( )
1
2 2
2
1
2 2 2 3
2 4
2
2 2 2 1
1
2 2 2
1 0 0 0 ... 0
2 2
0 0 ... 0 0
1 2 1
0 ... 0
... ... ... ... ... ... ...
1 2 1 ...
0 0 0
1 2 1
0 0 0
n n
n n
y
h h y
f x
y f x
h h h
y y f x
h h h f x
y
h h h
− −
−
−
−
⋅ =
−
−
- numerical FD model – version 2 (improved boundary operator)
1 2 3 … n-1 n
1
h L const
=n =
−
( )
1 1 2 1
2 2
1
2 2 2
' 0
y y y f x
h h h
y
− − + =
=
x
n= L
( ) ( ) ( ) ( )
1
2 2
2
1
2 2 2 3
2 4
2
2 2 2 1
1
2 2 2
1 0 0 0 ... 0
2 2
0 0 ... 0 0
1 2 1
0 ... 0
... ... ... ... ... ... ...
1 2 1 ...
0 0 0
1 2 1
0 0 0
n n
n n
y
h h y
f x
y f x
h h h
y y f x
h h h f x
y
h h h
− −
−
−
−
⋅ =
−
−
the same system of equations as for version 1
Bending of cantilever beam – 2nd order equation
Stationary heat flow (2D)
2
''
xx''
yyT
n q
T T T f in
k
T T on
k T q on
n
∇ = + = − Ω
= ∂Ω
∂
= − ∂Ω
∂
Ω
Ω T
Ω T
Ω q
q
n1 - 4
1
1 1
h
h
h h
2
1
× h
2
∇ ≈
0( )
2
0 0 0
1 2 3 4 0 2
'' ''
4 1
xx yy
T T T
T T T T T
h
∇ = + ≈
= + + + −
„1” „0” „2”
„3”
„4”
h h
operator
value at „0”
3 m 2 m
2 m 1 m
10 C T =
T = 1 0 8 C
Stationary heat flow (2D) - example 10 C
T =
10 C T =
T = 1 0 8 C T = 1 0 8 C
Cms k J
k
k
x=
y= = 7
oisotropic material
( − + )
= m s
y J x
y x
f ( , ) 20 30 10
2Intensity of heat generation
inside the domain (per unit area)
3 m 2 m
2 m 1 m
1 2 3 4 5 6
7 8 9 10 11 12
13 14 15 16 17 18
19 20 21
[ ] m
h = 1
mesh modulus (21 nodes)
Internal nodes (5): 8, 9, 10, 11, 14
Boundary nodes (16): 1-6, 7, 12, 13, 15-21
( ) 1 , 1 ( ) 2 , 1 ( ) 3 , 1 ( ) 4 , 1 ( ) 1 , 2
Stationary heat flow (2D) - example
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0
0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0
0
0 0 0 0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
T T T T T T T T T T T T T T T T T T T T T
⋅
0 0 0 0 0 0 0
0 0
0 0 0 0 0 0 0 0 0 0 0
0
=
equation no. 1 - node no. 1 - boundary equation no. 2 - node no. 2 - boundary equation no. 3 - node no. 3 - boundary equation no. 4 - node no. 4 - boundary equation no. 5 - node no. 5 - boundary equation no. 6 - node no. 6 - boundary equation no. 7 - node no. 7 - boundary equation no. 8 - node no. 8 - interior equation no. 9 - node no. 9 - interior equation no. 10 - node no. 10 - interior equation no. 11 - node no. 11 - interior equation no. 12 - node no. 12 - boundary equation no. 13 - node no. 13 - boundary
equation no. 15 - node no. 15 - boundary equation no. 16 - node no. 16 - boundary equation no. 17 - node no. 17 - boundary equation no. 18 - node no. 18 - boundary equation no. 19 - node no. 19 - boundary equation no. 20 - node no. 20 - boundary equation no. 21 - node no. 21 - boundary equation no. 14 - node no. 14 - interior
initial form of system of algebraic equations (21 x 21)
Stationary heat flow (2D) - example
1 2 3 4 5 6
7 8 9 10 11 12
13 14 15 16 17 18
19 20 21
( )
22 9 14 7
4
8 8,
8h 0
T T T T T f x y
+ + + − = − k =
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 1
0 0 0 0 0 0 0
4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0
0
0 0
0 0 0 0
−
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
T T T T T T T T T T T T T T T T T T T
⋅
0 0 0 0 0
0 0
0 0 0 0 0 0 0 0
0 0 0
0
=
Stationary heat flow (2D) –
finite difference equations
1 2 3 4 5 6
7 8 9 10 11 12
13 14 15 16 17 18
19 20 21
( )
23 10 15 8 9 9 9
4 , 2
7 T T T T T f x y h
+ + + − = − k = −
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 1
0 0 0 0 0 0 0
4 1 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 1 4 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
0 0 0 0
0 0
0 0 0 0 0
−
−
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0
0 0 0 0 0
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
T T T T T T T T T T T T T T T T T T T
⋅
0 0 0 0 0
0 0
0 0 0 20 / 7
0
0 0 0 0 0 0
0
−
=