8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
1/45
www.torvergata-karting.it
Dynamic mesh: beyond FluentDynamic mesh: beyond Fluent
Marco Evangelos Biancolini
Department of Mechanical Engineering
University of Rome Tor Vergata
Marco Evangelos Biancolini
Department of Mechanical Engineering
University of Rome Tor Vergata
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
2/45
www.torvergata-karting.it
OutlineOutline
Why use smoothing
Review of methods for mesh smoothingPseudo solid approach, FEM solver
Radial basis approach
Example 2D
Example 3D
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
3/45
www.torvergata-karting.it
Why?Why?
Smoothing means that mesh topology is
preserved: no new mesh required!Shape optimisation
Moving or deforming boundaries (Fluid
structure interaction, rigid bodymovements, morphing)
Parametric analysis
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
4/45
www.torvergata-karting.it
Review of scientific contributionsReview of scientific contributions
198 relevant publications in the last 7 years(keyword moving mesh method) scanned
25 fully examined
Strategies:
Laplacian smoothing Spring models (rotational spring correction)
Pseudo solid (variable moduli, fictitious loadscorrection)
Boundary methods Others
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
5/45
www.torvergata-karting.it
Selected papersSelected papers
AUTOMATIC MESH MOTION FOR THE UNSTRUCTURED FINITEVOLUME METHOD Hrvoje Jasak,Zeljko TukovicISSN 13331124An adaptive mesh rezoning scheme for moving boundary flows and
fluidstructure interaction Computers and FluidsVolume: 36, Issue: 1,January, 2007, pp. 77-91 Masud, Arif; Bhanabhagvanwala, Manish; Khurram,Rooh A.A three-dimensional torsional spring analogy method forunstructured dynamic meshes Computers and StructuresVolume: 80,Issue: 3-4, February, 2002, pp. 305-316 Degand, Christoph; Farhat, CharbelMesh deformation using radial basis functions for gradient-basedaerodynamic shape optimization Computers and FluidsVolume: 36,Issue: 6, July, 2007, pp. 1119-1136 Jakobsson, S.;Amoignon, O.Mesh deformation based on radial basis function interpolationComputers and StructuresVolume: 85, Issue: 11-14, June - July, 2007, pp.784-795 de Boer, A.; van der Schoot, M.S.; Bijl, H.Finite element mesh update methods for fluidstructure interaction
simulations Finite Elements in Analysis and DesignVolume: 40, Issue: 9-10, June, 2004, pp. 1259-1269 Xu, Zhenlong;Accorsi, Michael
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
6/45
www.torvergata-karting.it
Pseudo solid approachPseudo solid approach
The mesh is supposed to be a deformablestructure
Elastic moduli can be chosen on an element byelement basis to minimise distortion
Corrective loads are added to improve element
quality after mesh deformationOne step method: Masud strategy in whichstiffness is proportional to element area (volume)
Two step methods: stiffness correction and extraloads added to preserve elements shape
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
7/45
www.torvergata-karting.it
Pseudo solid approachPseudo solid approach
Element distortion estimator: ratio between innerand outer circle radii (for triangles)
Advantages Very good results optimising element stiffness Physical pseudo solid guarantees mesh compatibility Large motions can be handled by means of non linear
FEM modelling
Pitfalls: Large problem solution Large memory usage (can be alleviated by means of
explicit solver) Non conformal meshes, connectors and polyedra requires
special treatment
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
8/45
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
9/45
www.torvergata-karting.it
Implementation details (2D)Implementation details (2D)
Material stiffnessmatrix
Element area
Interpolation matrix
Stiffness matrix
Q E ,( ) E
1
2
1
0
1
0
0
0
1
2
:=
At x1 y1, x2, y2, x3, y3,( ) x2 x1( ) y3 y1( ) x3 x1( ) y2 y1( )
2:=
B x1 y1, x2, y2, x3, y3,( )1
2 At x1 y1, x2, y2, x3, y3,( )
y2 y3
0
x3 x2
0
x3 x2
y2 y3
y3 y1
0
x1 x3
0
x1 x3
y3 y1
y1 y2
0
x2 x1
0
x2 x1
y1 y2
:=
kt x1 y1, x2, y2, x3, y3, E, , t,( ) t At x1 y1, x2, y2, x3, y3,( ) B x1 y1, x2, y2, x3, y3,( )T Q E ,( ) B x1 y1, x2, y2, x3, y3,( ):=
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
10/45
www.torvergata-karting.it
Implementation details (2D)Implementation details (2D)
Elementalstiffnessmatrixescalculation
Material
topologyextracted formdatabase readin the nastran
file
Kelementi
isez elementiiel 2,
imat sezioniisez 2,
E materialiimat 2,
G materialiimat 3,
materialiimat 4,
t sezioniisez 3,
x1
y1
submatrix nodi elementiiel 3,
, elementiiel 3,
, 2, 3,( )T
x2
y2
submatrix nodi elementiiel 4,
, elementiiel 4,
, 2, 3,( )T
x3
y3
submatrix nodi elementiiel 5,
, elementiiel 5,
, 2, 3,( )T
Kelementiiel
kt x1 y1, x2, y2, x3, y3, E, , t,( )
iel 1 Nelementi..for:=
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
11/45
www.torvergata-karting.it
Implementation details (2D)Implementation details (2D)
Linear system isassembled
partitioned
Kaug KaugNdof Ndof,
0
IDrow LMiel irow,
IDcol LMiel icol,
KaugIDrow IDcol,
KaugIDrow IDcol,
Kelementiiel( )
irow icol,+
icol 1 6..for
irow 1 6..for
iel 1 Nelementi..for
out Kaug
:=
Ktt submatrix Kaug 1, NdofA, 1, NdofA,( ):=
Kut submatrix Kaug NdofA 1+, Ndof, 1, NdofA,( ):=
Kuu submatrix Kaug NdofA 1+, Ndof, NdofA 1+, Ndof,( ):=
Ktu submatrix Kaug 1, NdofA, NdofA 1+, Ndof,( ):=
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
12/45
www.torvergata-karting.it
Implementation details (2D)Implementation details (2D)
Linear systemsolution
Complete solution isbuilt
t lsolve Ktt Pt Ktuu,( ):=
Ru Kutt Kuuu+:=
P stack Pt Ru,( ):=
stack t u,( ):=
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
13/45
www.torvergata-karting.it
Radial basis approachRadial basis approach
Born as a data interpolation procedure for scattered dataMeshless field functions are defined
A set of sources point is defined (may be mappedeverywhere in the domain)A radial function is defined (compact support, or definedeverywhere)Polynomial corrector is added to guarantee compatibility for
rigid modesA linear system (order equal to the number of source pointintroduced) is solved for coefficients calculationThe motion of an arbitrary point inside or outside the domain(interpolation/extrapolation) is expressed as the summation
of the radial contribution of each source point (if the pointfalls inside the influence domain)
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
14/45
www.torvergata-karting.it
Radial basis approachRadial basis approach
We look foran
interpolationfunctioncomposed bya radial basis
and apolynomial
Typical radialfunctions are
reported inthe table
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
15/45
www.torvergata-karting.it
Radial basis approachRadial basis approach
Basiscoefficients are
obtainedimposing thedesired functionvalues at sourcepoints
Furthermorethe polynomialterms has togive 0contributions at
source points
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
16/45
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
17/45
www.torvergata-karting.it
Radial basis approachRadial basis approach
Applying the
method for eachof the threedisplacementsfunctions weobtain theinterpolationfield
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
18/45
www.torvergata-karting.it
Implementation details (2D)Implementation details (2D)
Node positions of the original mesh read from anastran data file (only GRID, SPC and SPCD entries
are processed)Processing
Constrained nodes are used as source points
Imposed displacements are used for mesh deformation
Basis generation
Calculation of displacements
Field functions fro x and y displacements can bevisualized by a contour or a surface plot
Deformed grid is represented by a scatter plot
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
19/45
www.torvergata-karting.it
Implementation details (2D)Implementation details (2D)
Source points are firstextracted
Displacementfunctions values at
source points areextracted
Radial function isdefined
x.k
INOD vincolii 1,
X
i
submatrix nodi INOD, INOD, 2, 3,( )T
i 1 rows vincoli( )..for:=
g.k ID 1
GID 1,
SPCalli 3,
GID 2,
SPCalli 4,
ID ID 1+
SPCalli 1,
1 SPCalli 2,
1if
i 1 rows SPCall( )..for
OUT G
:=
r( ) 1
1 r2
+
:=
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
20/45
www.torvergata-karting.it
Implementation details (2D)Implementation details (2D)
Interpolation matrixis calculated
Constraint matrix iscalculated
M
Mi j, x.ki
x.kj
j 1 rows x.k( )..for
i 1 rows x.k( )..for:=
P
Pi 1,
1
Pi j 1+,
x.ki
j
j 1 rows x.k1
..for
i 1 rows x.k( )..for:=
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
21/45
www.torvergata-karting.it
Implementation details (2D)Implementation details (2D)
Linear system isassembled and solved
Interpolationcoefficients are
extracted
Interpolation functionis defined
MP augment stack M PT,( ) stack P zero,( ),( ):=
ic lsolve MP stack g.kic zero1 ,,:=
ic submatrix ic 1, rows x.k( ), 1, 1,( ):=
ic submatrix ic rows x.k( ) 1+, rows ic( ), 1, 1,( ):=
s.xyx( )
1
rows x.k( )
i
1( )i
2( )i
x x.k
i
=
1stack 1 x,( )
2stack 1 x,( )
+:=
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
22/45
www.torvergata-karting.it
Implementation details (3D)Implementation details (3D)
Node positions of the original mesh read from anastran data file
Processing
Constrained nodes are used as source points
Imposed displacements are used for mesh deformation
Basis generation
Calculation of displacements
Nodal displacements are written in standardnastran file *.f06
Post processing by FEMAP
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
23/45
www.torvergata-karting.it
Radial basis approachRadial basis approach
Advantages
Meshless method only grid points are moved regardless of
element connected Suitable for parallel implementation
Small systems have to be solved (sparse if the compactsupport is chosen)
Fast
Pitfalls
Reversed elements can arise
Boundary tracking requires special effort if not allboundary grids are included as source points
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
24/45
www.torvergata-karting.it
Example 2D: moving holeExample 2D: moving hole
FEMreferencesolution by
NastranDisplacementBC on the
boundariesConstantstrain CTRIAelements
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
25/45
www.torvergata-karting.it
Example 2D: moving holeExample 2D: moving hole
Deformed
meshStrainenergy
density
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
26/45
www.torvergata-karting.it
Example 2D: moving holeExample 2D: moving hole
Mathcad solution
FEM
Max difference (Nastranproposed FEM)
0 0.2 0.4 0.6 0.80
0.2
0.4
0.6
0.8
nodi3
nodid fscala( )3
nodi2
nodid fscala( )2
,
max NASTRANT
TT( ) 2.7217 10 6=
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
27/45
www.torvergata-karting.it
Example 2D: moving holeExample 2D: moving hole
Mathcadsolution
Radial basis
0 0.2 0.4 0.6 0.8 1
0
0.5
1
mplot
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
28/45
www.torvergata-karting.it
Example 2D: moving holeExample 2D: moving hole
Mathcadsolution
FEM (blue)
Radial basis(green)
0 0.2 0.4 0.6 0.8 1
0
0.5
1
nodi3
nodid fscala( ) 3
nodid2 fscala( ) 3
nodi2
nodid fscala( ) 2
, nodid2 fscala( ) 2
,
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
29/45
www.torvergata-karting.it
Example 2D: moving holeExample 2D: moving hole
Mathcad solution
Mesh quality comparison changing deformation extent
0 0.5 10.25
0.3
0.35
FEMRadial BasisFEMRadial Basis
Minimum quality factor
0 0.5 10.44
0.46
0.48
0.5
Mean quality factor
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
30/45
www.torvergata-karting.it
Example 2D: moving hole, boundary
points
Example 2D: moving hole, boundary
pointsNastransolution
4 boundarypoints on theholeExternal
boundaryNote thesharpdeformationof the
boundary
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
31/45
www.torvergata-karting.it
Example 2D: moving hole, boundary
points
Example 2D: moving hole, boundarypoints
Radial basissolution
4 sourcepoints on thehole
All the
externalboundaryNote how theboundaryremains
smooth 0 0.2 0.4 0.6 0.8 1
0
0.5
1
nodi3
nodid2 fscala( ) 3
nodi2
nodid2 fscala( ) 2
,
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
32/45
www.torvergata-karting.it
Example 2D: moving hole, boundary
points
Example 2D: moving hole, boundarypoints
Nastransolution
12boundary
points
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
33/45
www.torvergata-karting.it
Example 2D: moving hole, boundary
points
Example 2D: moving hole, boundarypoints
Radial basissolution
12 sourcepoints
0 0.2 0.4 0.6 0.8 1
0
0.5
1
nodi3
nodid2 fscala( ) 3
nodi2
nodid2 fscala( ) 2
,
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
34/45
www.torvergata-karting.it
Example 3D: spherical shellExample 3D: spherical shell
Undeformedshape
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
35/45
www.torvergata-karting.it
Example 3D: spherical shellExample 3D: spherical shell
Deformed shape
Radial basis 3D
Post processing ofdeformation usingnastran format
4 internal sourcepoints
Boundary sourcepoints
Smooth shapeeven with 4
internal controlpoints!
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
36/45
www.torvergata-karting.it
Example 3D: moving holeExample 3D: moving hole
Solid mesh
Externalwalls fixed
Various
movementof holesurface
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
37/45
www.torvergata-karting.it
Example 3D: moving holeExample 3D: moving hole
Undeformedshape
Radial basis3DPostprocessing ofdeformationusing nastranformatRigid rotationof hole
surface
Front
Rear
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
38/45
www.torvergata-karting.it
Example 3D: moving holeExample 3D: moving hole
Deformedshape
Radial basis3DPostprocessing ofdeformationusing nastranformatRigid rotationand
translation ofhole surface
Front
Rear
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
39/45
www.torvergata-karting.it
Fluent implementationFluent implementation
Pseudosolid External solver that interact with *.cas file (see
Sculptor) External solver (Nastran) linked via udf (variable
stiffness not easy to implement)
External FEM library linked via UDF Internal FEM solver in UDF (faster)
Key points Element decomposition (polyedron handling)
Non conformal interfaces
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
40/45
www.torvergata-karting.it
Fluent implementationFluent implementation
Radial basis
External tool that interact with *.cas file
External tool that interact via UDF
Internal tool via UDF (faster, GUI difficult to implement)
Key points
Choosing of the basis functions (compact support) Location of source points
Extra Laplacian smoothing or iterative stage in themethod to guarantee shape preservation
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
41/45
www.torvergata-karting.it
Computational effortComputational effort
Simple test case with MathCAD
Description 3D case previously presented (moving hole)
About 20000 nodes
About 500 source pointsResults
Total computation time (including I/O) 90s
Input and basis generation 10s Mesh motion and output 80s
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
42/45
www.torvergata-karting.it
Constrained boundaries strategyConstrained boundaries strategy
There are many practical application inwhich part of the boundary nodes have tomove onto a prescribed surface
The method have to preserve a goodquality of the mesh on the deformableboundary
The method have to propagate all
boundaries motion (prescribed orconstrained) in the interior nodes
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
43/45
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
44/45
www.torvergata-karting.it
Overall strategyOverall strategy
Boundary nodes are first partitioned:
Set A Prescribed motion nodes
Set B Constrained nodes (linked onto surfaces)
A first radial basis step is performed generating thefield using set A to move set B
The correction is applied projecting transformedset B onto the constraint, nodes of set B can nowbe handled ad prescribed motion nodes
A second radial basis step is performed generatingthe field using set A and B to move interior nodes
8/12/2019 Moving Mesh (Dynamic mesh beyond fluent)
45/45
www.torvergata-karting.it
Example: A cylinder with a holeExample: A cylinder with a hole
Two step strategy is applied to move a holein a cylinder, preserving the shape of the
cylindrical surface