38
The sequence of graph transformation (P1)-(P2)-(P4) generating an initial mesh with two finite elements GENERATION OF THE TOPOLOGY OF INITIAL MESH Graph transformations generating structure of initial mesh

The sequence of graph transformation (P1)-(P2)-(P4) generating an initial mesh with two finite elements GENERATION OF THE TOPOLOGY OF INITIAL MESH Graph

Embed Size (px)

Citation preview

The sequence of graph transformation (P1)-(P2)-(P4) generating an initial mesh with two finite elements

GENERATION OF THE TOPOLOGY OF INITIAL MESH

Graph transformations generating structure of initial mesh

GENERATION OF THE STRUCTURE OF INITIAL MESH

Structure of exemplary hp finite element, together with the corresponding CP-graph representation.

Graph grammar production generating structure of initial mesh element

Graph grammar production identifying common edges for two adjacent initial mesh elements

GENERATION OF THE STRUCTURE OF INITIAL MESH

The sequence of graph transformation (P1)-(P2)-(P4) generating an initial mesh with two finite elements, followed by the sequence of graph transformations (PII)2-(PIC) generating the structure of the two initial mesh elements

GENERATION OF THE STRUCTURE OF INITIAL MESH

Control diagram for the generation of initial mesh

The structure of each initial mesh element can be generated in a way that is independent on its adjacent elements. The process of identification of edges can be executed in the concurrent way. These states of the control diagram on which the graph grammar productions can be executed in the concurrent way, are denoted by the <<concurrent>> stereotype. The additional synchronization points before the concurrent execution of PII and PIC have been added.

COARSE MESH PROBLEM SOLUTION

(a) Two finite element mesh. (b) Three examples of the first order shape function assigned to element vertices. (c) Three examples of the second order shape functions assigned to element edges. (c) Two examples of the second order shape functions assigned to element interiors

1. Two element local matrices resulting from the integration algorithm executed on the first and the second element independently. 2. Elimination of fully assembled degrees of freedom related to element interior and boundary edges. 3. Merging interface (common edge) problem contributions, followed by full elimination of the interface degrees of freedom.

COARSE MESH PROBLEM SOLUTIONPART 1: AGGREGATION

for i=1, ph+1 for j=1, pv+1 for m=1,nrdof for n=1,nrdof aggregate a(m,n) into element stiffness matrix end aggregate b(m) into element load vector end endend

Algorithm for aggregation of an element matrix and right hand side vector

We can distinguish aggregation of d.o.f. related to element interior, element edges and element vertices.

COARSE MESH PROBLEM SOLUTION PART 1: AGGREGATION

Graph representation of two finite element mesh

Graph representation of the mesh after execution of (P aggregate interior)2

Graph transformation enforcing the aggregation of degrees of freedom of element interior

COARSE MESH PROBLEM SOLUTION PART 1: AGGREGATION

Graph transformation aggregatingedges located on the boundary Graph transformation aggregating corner vertices

located on the boundary. The transformation is cloned for four directions representing NE, NW, SE, SW locations of graph vertices

COARSE MESH PROBLEM SOLUTION PART 1: AGGREGATION

Graph transformations aggregating degrees of freedom of the common edge

COARSE MESH PROBLEM SOLUTION PART 2: ELIMINATION

Graph transformation executing the elimination of internal degrees of freedom from i-th frontal matrix

Graph transformation executing the elimination of degrees of freedom related to boundary edges from i-th frontal matrix

Graph transformation executing the elimination of degrees of freedom related to corner vertices from i-th frontal matrix

COARSE MESH PROBLEM SOLUTION PART 2: ELIMINATION

Graph representation of the mesh after the elimination of degrees of freedom related to element interiors as well as to boundary edges and vertices

COARSE MESH PROBLEM SOLUTION PART 2: ELIMINATION

Graph transformation executing merging and elimination of degrees of freedom related to common edges

Graph transformation executing merging and elimination of degrees of freedom related to common vertices

Graph representation of the mesh after merging and elimination of degrees of freedom related to the common edge

COARSE MESH PROBLEM SOLUTION

Control diagram for coarse mesh solver algorithm

These states of the control diagram on which the graph grammar productions can be executed in the concurrent way, are denoted by the <<concurrent>> stereotype.

MESH h REFINEMENTS

Execution of the global h refinementon the two finite elements mesh

Graph transformation for breaking an element interior

Graph transformation for breaking an element edge

MESH h REFINEMENTS

An element edge can be broken only if two adjacent interiors have been already broken, or the edge is adjacent to the boundary.

Graph grammar productions changing an element edge symbol from F to E for edges that can be broken.

MESH h REFINEMENTS

Graph grammar productions counting number of same-size edges adjacent to the interior, changing an element interior symbol from J to J3 and J4.

Only element interiors denoted by J4 symbol can be broken.

An element interior can be broken only if all adjacent edges are of the same size as this interior, or smaller.

MESH h REFINEMENTS

Fine mesh obtained from the coarse mesh by executing the following sequence of graph grammar productions (P break interior)2-(P break edge)7-(Pwest)2-(Peast)2-(Pnorth)2-(Psouth)2-(PJI)8

MESH p REFINEMENTS

Graph transformation for performing local p refinement at graph vertex denoting an element interior

Graph transformation enforcing the minimum rule on the eastern, southern, western and northen edges

The minimum rule:The polynomial order of approximation of an element edge must be equal to the minimum of corresponding orders of approximation from the element interiors

MESH h REFINEMENTS

These states of the control diagram on which the graph grammar productions can be executed in the concurrent way, are denoted by the <<concurrent>> stereotype.

Control diagram for h refinement algorithm

MESH p REFINEMENTS

Control diagram for p refinement algorithm

These states of the control diagram on which the graph grammar productions can be executed in the concurrent way, are denoted by the <<concurrent>> stereotype.

FINE MESH PROBLEM SOLUTION

Control diagram for aggregation on fine mesh

Control diagram for elimination on fine mesh

These states of the control diagram on which the graph grammar productions can be executed in the concurrent way, are denoted by the <<concurrent>> stereotype.

SELECTION OF OPTIMAL MESH REFINEMENTS

The estimation of the relative error in the energy norm is computed for each active finite element

KphphK uu

,1,1,2

error

where i

ihp

ihphp euu denotes the coarse mesh solution

i

iph

iphph euu

1,21,21,2denotes the fine mesh solution

Graph grammar production responsible for computing relative error on element interior

The maximum relative error is computed

KK

errormaxmax_error

and all active elements with a relative error greater than 33% of the maximum relative error are selected for a refinement.

SELECTION OF OPTIMAL MESH REFINEMENTS

nrdof

rate ,11,2,1

,1,2

K

phK

phph wuuu

w

We choose the optimal refinement for each selected element, by computing the error decrease rates

denotes the fine mesh solution 1,2 phuhpu denotes the coarse mesh solution

w denotes the projection-based interpolant of the considered refinement strategy

nrdof denotes an increase in the number of degrees of freedom on the coarse mesh element resulting from the execution of the analysed mesh refinement strategy

Graph grammar production responsible for evaluation of a given refinement strategy w

Graph grammar production responsible for selection of the optimal refinement

We consider different possible refinement strategies w for each element with high relative error estimation

SELECTION OF OPTIMAL MESH REFINEMENTS

Graph grammar production attributing interior vertices intended for h refinement

Graph grammar productions enforcing 1-irregularity mesh rule by the propagation of virtual refinements

SELECTION OF OPTIMAL MESH REFINEMENTS

Control diagram for algorithm of selection and execution of optimal refinements

CONTROL DIAGRAMS SHARED MEMORY PARALLEL MACHINE

Control diagrams introduced so far in this presentation assume shared memory parallel machine.

In other words it is assumed that the computational mesh as well as all frontal matrices are available for all processors.

EXTENSION TO DISTRIBUTED MEMORY ARCHITECTURE

We need to extend the model for the distributed memory parallel machine

We agglomerate atomic tasks (graph grammar productions) into tasks working on the level of initial mesh elements.

In other words, each processor will keep several tasks – a group of initial mesh elements.

There is a need to partition the graph, to introduce the communication channels, rewrite control diagrams on the level of tasks, add send/receive operations on control diagrams as well as utilize load balancing algorithms for task agglomeration.

EXTENSION TO DISTRIBUTED MEMORYINITIAL MESH GENERATION

The two initial element mesh genereted for two tasks

Now, each task generates a topology of the entire mesh, and the structure of a single initial mesh element, assigned to the task

EXTENSION TO DISTRIBUTED MEMORYINITIAL MESH GENERATION

Graph grammar productions for partitioning / merging of graph representation of the mesh into multiplegraphs related to initial mesh elements

EXTENSION TO DISTRIBUTED MEMORYCOARSE MESH PROBLEM SOLUTION

Control diagram describing the coarse mesh problem solution from the point of view of a single task.

Some additional communications are added, where contributions to frontal matrices are exchanged between tasks assigned to adjacent initial mesh elements.

EXTENSION TO DISTRIBUTED MEMORYMESH h REFINEMENTS

Control diagrams for h refinement executed on the level of a single task

EXTENSION TO DISTRIBUTED MEMORYMESH p REFINEMENTS

Control diagram for the execution of p refinements on the level of a single task

EXTENSION TO DISTRIBUTED MEMORYFINE MESH PROBLEM SOLUTION

Control diagrams for the aggreation and elimination on fine mesh over a single task

EXTENSION TO DISTRIBUTED MEMORYSELECTION OF OPTIMAL REFINEMENTS

Control diagram for the selectionof the optimal refinementsover a single task

ASSIGNING OF TASKS INTO PROCESSORS

The computational cost for a single task is defined as

K

3311)(nal_costcomputatio K

vKh ppiel

Graph grammar production estimating the computational cost of integration or elimination for active elements interiors

Graph grammar production propagating the estimation of computational cost along the refinement tree

Graph grammar production attributing initial mesh element by estimating its load

Control diagram for the first processor, for the load balancing and mesh partitioning

Control diagram for all but the first processor, for the load balancing and mesh partitioning

ASSIGNING OF TASKS INTO PROCESSORS

Control diagram for send/receive of graphs from source/to receiver processors

ASSIGNING OF TASKS INTO PROCESSORS

MESH REPARTITIONING

Control diagram for all processors, for the mesh repartitioning