tools for finite element mesh generation

96
Tools for Finite Element Mesh Generation Luiz Fernando Martha CIV 2802 – Sistemas Gráficos para Engenharia Departamento de Engenharia Civil – PUC-Rio 2013.1

Upload: others

Post on 15-Oct-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tools for Finite Element Mesh Generation

Tools for Finite Element

Mesh Generation

Luiz Fernando Martha

CIV 2802 – Sistemas Gráficos para Engenharia

Departamento de Engenharia Civil – PUC-Rio

2013.1

Luiz Fernando Martha

Page 2: Tools for Finite Element Mesh Generation

Traditional FE simulation process

1. Build geometric model 2. Mesh 3. Apply boundary

2 kN

1. Build geometric model 2. Mesh 3. Apply boundaryconditions

5. Result visualization4. Computational analysis

Page 3: Tools for Finite Element Mesh Generation

Geometry-based FE simulation process

1. Geometric modelling, apply 2. FE mesh generation, apply

2 kN2 kN

1. Geometric modelling, applyattributes and boundary conditions

2. FE mesh generation, applyboundary conditions

4. Result visualization3. Computational analysis

2 kN

Page 4: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Page 5: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Page 6: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Page 7: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Page 8: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Page 9: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Page 10: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Page 11: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Automatic region recognition

Page 12: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Creating a hole

Page 13: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Assigning hole attribute

Page 14: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Applying attributes to geometry

Page 15: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Defining meshing refinement parameters:boundary subdivision

Page 16: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Automatic unstructured mesh generation

Page 17: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Attributes automatically assigned to mesh entities

Page 18: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Region decomposition to exploit structured meshing algorithms

Page 19: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Region decomposition to exploit structured meshing algorithms

Page 20: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Region decomposition to exploit structured meshing algorithms

Page 21: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Region decomposition to exploit structured meshing algorithms

Page 22: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Region decomposition to exploit structured meshing algorithms

Page 23: Tools for Finite Element Mesh Generation

Construction of a simple FE model

Defining meshing refinement parameters:boundary subdivision

Page 24: Tools for Finite Element Mesh Generation

Automatic structured mesh generation

Construction of a simple FE model

Page 25: Tools for Finite Element Mesh Generation

Construction of a simple FE model

What is the technology behind this?What issues we have to address?

Page 26: Tools for Finite Element Mesh Generation

Generic space subdivision: many applications

An environment in which curves and surfaces are inserted randomly.Automatic region recognition and full adjacency information.

Page 27: Tools for Finite Element Mesh Generation

2D subsurface simulation modeling

Page 28: Tools for Finite Element Mesh Generation

Curve digitalization

2D subsurface simulation modeling

Page 29: Tools for Finite Element Mesh Generation

Curve subdivision

2D subsurface simulation modeling

Page 30: Tools for Finite Element Mesh Generation

Mesh generation: triangular elements

2D subsurface simulation modeling

Page 31: Tools for Finite Element Mesh Generation

2D subsurface simulation modeling

Mesh generation: quadrilateral elements

Page 32: Tools for Finite Element Mesh Generation

Geometric modelingGeometric modeling

Page 33: Tools for Finite Element Mesh Generation

Geometric modeling

Curves: bounded

by two vertices

Vertices:

x,y,z location

Surfaces: closed

set of curves

Geometry definitions

Volumes: closed

set of surfaces

Body: collection

of volumes

Page 34: Tools for Finite Element Mesh Generation

Requirements for underlying data representation

– The data structures must provide a natural navigation across all phases of a simulation: pre-processing (model creation), numerical analysis, and post-processing (model results visualization).

Page 35: Tools for Finite Element Mesh Generation

Requirements for underlying data representation (cont.)

– The data structures must take into account that the simulation may induce, at least temporarily during model creation, geometric objects (curves and surfaces) that are inconsistent with the target final model. This requires a non-manifold topology representation capability.

Page 36: Tools for Finite Element Mesh Generation

Requirements for underlying data representation (cont.)

– The data structure should aid in key aspects of geometric modeling, such as surface intersection and automatic region recognition, as well as in surface and solid finite element mesh generation in arbitrary domains.

Page 37: Tools for Finite Element Mesh Generation

Requirements for underlying data representation (cont.)

– The data structure must provide for efficient geometric operators, including automatic intersection detection and processing.This is necessary in simulations with evolving topology and geometry.

Page 38: Tools for Finite Element Mesh Generation

The need for non-manifold modeling

Multi-region modeling

Degenerated structures

Page 39: Tools for Finite Element Mesh Generation

Natural modeling: surface patches as primitives

Geological model

Manufactured model

Page 40: Tools for Finite Element Mesh Generation

Ideal environment: complete space subdivision

B�

�D

B

Space subdivision in 2D: high level operations

�A

A �

C�

User action + basic function

Systemresponse

Page 41: Tools for Finite Element Mesh Generation

Mesh generationMesh generation

Page 42: Tools for Finite Element Mesh Generation

Library of mesh generation algorithms

2D structured meshes

2D structured and non-structured meshes

Page 43: Tools for Finite Element Mesh Generation

Structured mesh – 2D Mapping

6

4

• Geometry Requirements

– 4 topological sides

– Opposite sides must have similar

6

4

must have similar discretization

Page 44: Tools for Finite Element Mesh Generation

Structured mesh – 2D Mapping

Page 45: Tools for Finite Element Mesh Generation

Structured mesh – 2D Mapping

Page 46: Tools for Finite Element Mesh Generation

Structured mesh – 2D Mapping

Page 47: Tools for Finite Element Mesh Generation

Structured mesh – 2D Mapping

Assumed discrete representation of curves:

Page 48: Tools for Finite Element Mesh Generation

Structured mesh – 2D Mapping

Page 49: Tools for Finite Element Mesh Generation

Structured mesh – 2D Mapping

Assumed discrete representation of curves:

Page 50: Tools for Finite Element Mesh Generation

Quadrilateral template (new)

Library of mesh generation algorithms

Page 51: Tools for Finite Element Mesh Generation

Structured mesh – 3D Mapping

• Geometry Requirements

– 6 topological surfaces

– Opposite surfaces must have similar mapped meshes

Page 52: Tools for Finite Element Mesh Generation

Structured mesh – 3D Mapping

• Many complex domains can be mapped

Page 53: Tools for Finite Element Mesh Generation

Structured mesh – 3D Mapping

• Algorithm must deal with:

– Multiple surfaces on boundary

– Concave surfaces

Page 54: Tools for Finite Element Mesh Generation

Structured mesh – Sweeping

LinkedSurfaces

Target

• Geometry Requirements

– Source and target surfaces topologically similar

– Mapped linked surfaces

Source

Page 55: Tools for Finite Element Mesh Generation

Structured mesh – Sweeping

• Geometry Requirements

– Source and target surfaces topologically similar

– Mapped linked surfaces

Page 56: Tools for Finite Element Mesh Generation

Structured mesh – Sweeping

• Geometry Requirements

– Source and target surfaces topologically similar

– Mapped linked surfaces

Page 57: Tools for Finite Element Mesh Generation

Structured mesh – Sweeping

• Geometry Requirements

– Source and target surfaces topologically similar

– Mapped linked surfaces

Page 58: Tools for Finite Element Mesh Generation

Structured mesh – Sweeping

• Geometry Requirements

– Source and target surfaces topologically similar

– Mapped linked surfaces

Page 59: Tools for Finite Element Mesh Generation

Structured mesh – Sweeping

• Geometry Requirements

– Source and target surfaces topologically similar

– Mapped linked surfaces

Page 60: Tools for Finite Element Mesh Generation

Structured mesh – Sweeping

• Geometry Requirements

– Source and target surfaces topologically similar

– Mapped linked surfaces

Page 61: Tools for Finite Element Mesh Generation

Structured mesh – Sweeping

• Geometry Requirements

– Source and target surfaces topologically similar

– Mapped linked surfaces

Page 62: Tools for Finite Element Mesh Generation

Structured mesh – Sweeping

• Examples

Page 63: Tools for Finite Element Mesh Generation

Structured mesh – Spline Sweeping

• Geometry Requirements

– Sequence of sections

– Meshes must be topologically equal

Topologicallyequal

Page 64: Tools for Finite Element Mesh Generation

Structured mesh – Spline Sweeping

• Geometry Requirements

– Sequence of sections

– Meshes must be topologically equal

Interpolatedby spline curves

Page 65: Tools for Finite Element Mesh Generation

Structured mesh – Spline Sweeping

• Geometry Requirements

– Sequence of sections

– Meshes must be topologically equal

Page 66: Tools for Finite Element Mesh Generation

Structured mesh – Spline Sweeping

• Geometry Requirements

– Sequence of sections

– Meshes must be topologically equal

Page 67: Tools for Finite Element Mesh Generation

Unstructured mesh – Requirements

• Specific algorithm requirements inherited from its ancestorJ-Mesh (Joaquim Cavalcante-Neto, Wawrzynek, Carvalho, Martha &

Ingraffea; 2001):

– Generation of well-shaped elements

– Ability to conform to an existing refinement at the boundary of – Ability to conform to an existing refinement at the boundary of region

– Ability to transition well between regions with different element sizes

– Capability for modeling discontinuities (internal restriction and cracks)

• Additional requirements for surfaces

– Locally refine the mesh in regions with curvatures

Page 68: Tools for Finite Element Mesh Generation

Unstructured mesh generation outline

• Background mesh generation – quadtree/octree

– Initialization based on boundary mesh.

– Refinement to force a maximum cell size.

– Refinement to provide minimum size disparity for adjacent cells.

• Advancing-front procedure

– Geometry-based element generation– Geometry-based element generation

– Topology-based element generation

– Element generation based on back-tracking with face deletion.

• Local mesh improvement

– Laplacian smoothing,

– Local back-tracking with element deletion, or

– Taubin smoothing (surfaces)

Page 69: Tools for Finite Element Mesh Generation

Unstructured mesh – auxiliary background structure

• Quadtree and Octree

– Fast search procedures to navigate through end leaves

– Represent the desired size of elements with nearly the same size as the end leaves

Page 70: Tools for Finite Element Mesh Generation

Unstructured mesh – 2D auxiliary background structure

– Create internal points on domain

– Advancing front algorithm

– Create element using patterns in each cells

– Advancing front algorithm near boundary

2D

2D

– Use cell size as guideline to generate new elements

– Advancing front algorithm

– Use cells to store desired sizes for elements and surface metric information

– Advancing front algorithm in parametric space

2D

Surf

Page 71: Tools for Finite Element Mesh Generation

Unstructured mesh – 3D auxiliary background structure

– Use cells to store desired sizes for elements

– Advancing front algorithm3D

– Use cells to store desired sizes for elements and surface metric information

– Advancing front algorithm direct in 3D space

Surf

Page 72: Tools for Finite Element Mesh Generation

Unstructured mesh – background structure generation

• Hypothetical 2D model and its boundary refinement

Page 73: Tools for Finite Element Mesh Generation

• Initialization based on boundary mesh

Unstructured mesh – background structure generation

Page 74: Tools for Finite Element Mesh Generation

• Refinement to force a maximum cell size

Unstructured mesh – background structure generation

Page 75: Tools for Finite Element Mesh Generation

Unstructured mesh – background structure generation

• Refinement to provide minimum size disparity for adjacent cells

Page 76: Tools for Finite Element Mesh Generation

Boundary

(a)

Unstructured mesh – background structure generation

• 3D model: octree refinement

(a) (b)

(c) (d)

Page 77: Tools for Finite Element Mesh Generation

• Advancing front algorithm

– Begin with boundary mesh – define as initial front

– For each edge (face) on front, locate initial node C based on front AB

Unstructured mesh – advancing-front technique

A

B

C

Page 78: Tools for Finite Element Mesh Generation

• Advancing front algorithm

– Determine if any other node on current from are within search radius r of ideal location C (Choose D instead of C)

Unstructured mesh – advancing-front technique

CELL SIZE

A

B

C

D

Radius of optimal region is based

on quadtree/octree cell size

CELL SIZE

Page 79: Tools for Finite Element Mesh Generation

• Advancing front algorithm

– New front edges (faces) added and deleted from front as triangles (tetrahedral) are formed

– Continue until front edges (faces) remain on front

Unstructured mesh – advancing-front technique

A

BD

Page 80: Tools for Finite Element Mesh Generation

• Advancing front algorithm

– New front edges added and deleted from front as triangles are formed

– Continue until front edges remain on front

Unstructured mesh – advancing-front technique

A

BD

Page 81: Tools for Finite Element Mesh Generation

• Advancing front algorithm

– New front edges added and deleted from front as triangles are formed

– Continue until front edges remain on front

Unstructured mesh – advancing-front technique

A

BD

Page 82: Tools for Finite Element Mesh Generation

• Geometry-based element generation

– Boundary contraction list

• List of active edges

• List of rejected edges

– Generation of optimal elements

• Size of element

• Optimal location N1

Unstructured mesh – advancing-front technique

• Optimal location N1

• Ratio = 0.85 * size

• Upper bound and lower bond

• Range Tree Search

CELL SIZE

Ideal node position

Active front

Surface mesh

Page 83: Tools for Finite Element Mesh Generation

• Topology-based element generation

– List of rejected edges becomes active edges

– Generation of elements by any node close to the base edge (best angle)

– Generate a valid mesh, although not optimal

Unstructured mesh – advancing-front technique

Page 84: Tools for Finite Element Mesh Generation

• Back-Tracking

– Locally modify the advancing front, deleting already generated adjacent tetrahedra until a ‘near’ convex non-meshed polyhedron is formed

Unstructured mesh – advancing-front technique

Page 85: Tools for Finite Element Mesh Generation

Node in space

• Laplacian smoothing

– Uses Laplacian equation and the closest point function for surface

– φφφφ = 1.0 and wi0=1.0

0 01 1

0 0

0

1

( )m

n n

i i

n n i

m

i

i

w X X

X X

w

φ+ =

=

= +∑

Unstructured mesh – local mesh improvement

Node on surface

• Taubin smoothing (surfaces)

– Uses twice Laplacian equation

• φφφφ = 1.0 and wi0 = 0.63

• φφφφ = 1.0 and wi0 = - 0.67

– Filters high frequencies

– Preserves the low frequencies

– Good results with geological and microstructure surfaces

Page 86: Tools for Finite Element Mesh Generation

Unstructured mesh – Surface Meshing

• Parametric Space Meshing

– Elements formed in 2D using parametric representation of surface

– Nodes locations later mapped to 3D space

• Direct 3D Meshing

– Elements formed in 3D using actual x-y-z representation of surface

x

y

z

Page 87: Tools for Finite Element Mesh Generation

Unstructured mesh – Surface Meshing

• Direct 3D Meshing

Page 88: Tools for Finite Element Mesh Generation

Unstructured mesh – Surface Meshing

• Direct 3D Meshing – refinement of octree

Page 89: Tools for Finite Element Mesh Generation

Unstructured mesh – Surface Meshing

• Direct 3D Meshing – node location

Page 90: Tools for Finite Element Mesh Generation

Unstructured mesh – Surface Meshing

• Direct 3D Meshing – Examples

Example 1Example 2

Example 3

Example 4

Page 91: Tools for Finite Element Mesh Generation

Unstructured mesh – Surface Meshing

• Direct 3D Meshing – Examples

Example 1Example 2

Example 3

Example 4

Page 92: Tools for Finite Element Mesh Generation

Imported triangulation with poorly-shaped elements

Page 93: Tools for Finite Element Mesh Generation

Example of surface re-triangulation

Page 94: Tools for Finite Element Mesh Generation

Unstructured mesh – Surface Meshing

• Parametric Space Meshing

– Elements formed in 2D using parametric representation of surface

– Distance and angles are distorted in parametric space

– Nodes locations later mapped to 3D space

N

vσ�

uσ�

3D Surface

A

B

h 2D

N C

m AB

D N 2 �

90 o in 3D space

D N 2 90 o

u

v

P

Parametric

Space

3D Surface

Page 95: Tools for Finite Element Mesh Generation

Unstructured mesh – Surface Meshing

• Parametric Space Meshing

• Given an analytical surface description and boundary segments

• Background quadtree

Metric

Information

Page 96: Tools for Finite Element Mesh Generation

Importance of considering the curvature

No consideration of curvature

Consideration of curvature