analysis of data transfer methods between non-matching … · 2019-05-18 · analysis of data...

90
Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed Master Thesis for obtaining the academic degree Master of Science in Computational Engineering

Upload: others

Post on 29-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Analysis of Data Transfer Methods BetweenNon-Matching Meshes In Multiphysics Simulations

Faisal Ahmed

Master Thesisfor obtaining the academic degree

Master of Science in Computational Engineering

Page 2: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2

Page 3: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Analysis of Data Transfer Methods BetweenNon-Matching Meshes In Multiphysics Simulations

Faisal Ahmed

Master Thesisfor obtaining the academic degree

Master of Science in Computational Engineering

Examiner: Prof. Dr. Ulrich RudeFirst Supervisor: Dipl.-Ing. Jan TreibigSecond Supervisor: Dipl.-Inf. Uwe SchollStarting Date: August 15, 2005Submission Date: February 15, 2006

3

Page 4: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

4

Page 5: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Erklarung

Ich versichere, dass ich die Arbeit ohne fremde Hilfe und ohne Benutzung andererals der angegebenen Quellen angefertigt habe und dass die Arbeit in gleicher oderahnlicher Form noch keiner anderen Prufungsbehorde vorgelegen hat und von dieserals Teil einer Prufungsleistung angenommen wurde. Alle Ausfuhrungen, die wortlichoder sinngemaß ubernommen wurden, sind als solche gekennzeichnet.

Erlangen, den 15. Februar 2006 . . . . . . . . . . . . . . . . . . . . . . . . . . .Unterschrift

5

Page 6: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

6

Page 7: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Abstract

In multi-physics simulations which are done by partitioned method or weak coupling,boundary values are to be transferred between meshes. Such meshes in general arenon-matching, meaning that both their combinatorial structures and geometricalrealizations may differ due to discretization errors or modelling inaccuracies. Datatransfer must be locally accurate and physically conservative. Conservation, whichis required by the physical laws of the process, corresponds to the equlibrium ofcertain quantities at the interface, such as balance of forces or conservation of mass.For the applications involving repeated data transfer, achieving both accuracy andconservation is particularly important. For addressing this issue of accurate datatransfer in the case of multi-physics simulation, different data interpolation schemesare used, some of which can be named as Radial Basis Function based method,Inverse Isoparametric Method, etc. Also in the recent time, a new data structurenamed as Common Refinement has been proposed, that addresses the same issue.But unfortunately none of these methods prove to be working well in the cases,where there is a large amount of non-conformity between the meshes and geometries.The objective of this work is to study and analyze the existing data interpolationschemes, discuss on their applicability to the cases of geometric and mesh non-conformity, decide on a new and better approach for addressing the issue and thenprove its practical relevance by implementing and applying to test scenarios.

7

Page 8: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

8

Page 9: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Acknowledgement

I would like to express my heartiest gratitude to Prof. Dr. Ulrich Rude, my teacherand examiner of this Master Thesis. Special thanks goes to Mr. Jan Treibig ofLehrstuhl fur Informatik 10, FAU Universitat Erlangen-Nurnberg and to Mr. UweScholl at FhG SCAI, for supervising this thesis work and extending their support.Thanks goes to Mr. Goran Galunic for his support in corrections and ideas. Lastbut not the least I am greatful to my parents and my family who, living at thedistance of a continent, supported me throughout my whole Master study.

i

Page 10: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

ii

Page 11: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Contents

1 Introduction 11.1 System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 System Decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3 Coupled System Terminology . . . . . . . . . . . . . . . . . . . . . . 21.4 Some Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.5 Coupled System Simulation . . . . . . . . . . . . . . . . . . . . . . . 5

1.5.1 Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.5.2 Approaches to Coupled System Simulation . . . . . . . . . . 51.5.3 Monolithic vs. Partitioning . . . . . . . . . . . . . . . . . . . 6

1.6 Basic Idea of Partitioned Method . . . . . . . . . . . . . . . . . . . . 71.6.1 Partitioning Method . . . . . . . . . . . . . . . . . . . . . . . 81.6.2 Concerns and Research Areas . . . . . . . . . . . . . . . . . . 9

1.7 Incompatible Mesh Interface . . . . . . . . . . . . . . . . . . . . . . . 101.7.1 Case1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.7.2 Case2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121.7.3 Case3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121.7.4 Case4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

1.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2 Interpolation Methods 172.1 Radial Basis Function Method . . . . . . . . . . . . . . . . . . . . . 17

2.1.1 Implementation of RBF for FSI Problems . . . . . . . . . . . 202.1.2 Choosing Appropriate Basis Function . . . . . . . . . . . . . 23

2.2 Inverse Isoparametric Mapping Method . . . . . . . . . . . . . . . . 26

3 Bijective Interpolation Method 293.1 Example Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.2 Bijection or Bijective Function . . . . . . . . . . . . . . . . . . . . . 313.3 Bijective Interpolation Scheme - Basic Concept . . . . . . . . . . . . 323.4 Hausdorff Distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333.5 Bijective Interpolation Algorithm . . . . . . . . . . . . . . . . . . . . 34

3.5.1 Detection of Non-Conformity . . . . . . . . . . . . . . . . . . 343.5.2 Parameterizing Non-Conforming Regions . . . . . . . . . . . 343.5.3 Common Refinement Technique . . . . . . . . . . . . . . . . . 403.5.4 Common Refinement Based Data Transfer . . . . . . . . . . . 47

iii

Page 12: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Contents

4 Implementation 514.1 Radial Basis Function . . . . . . . . . . . . . . . . . . . . . . . . . . 514.2 Intrinsic Parameterization . . . . . . . . . . . . . . . . . . . . . . . . 53

5 Results 595.1 Radial Basis Function . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5.1.1 Problem Description . . . . . . . . . . . . . . . . . . . . . . . 595.1.2 Results From RBF . . . . . . . . . . . . . . . . . . . . . . . . 61

5.2 Data Transfer Based on Intrinsic Parameterization . . . . . . . . . . 625.2.1 Problem Description . . . . . . . . . . . . . . . . . . . . . . . 625.2.2 Results from Intrinsic Parameterization . . . . . . . . . . . . 645.2.3 Results From MpCCI c© Based Data Transfer . . . . . . . . . 65

6 Conclusion 69

Bibliography 71

iv

Page 13: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

List of Figures

1.1 Interaction between subsystems X and Y :(a)one way, (b)two way . . 21.2 Decomposition of an aeroelastic FSI coupled system:partitioning in

space and splitting in time . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Algebraic partitioning:originally developed to handle matching meshes 41.4 Differential partitioning: originally developed for problems with non-

matching meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.5 Two way interaction of two scalar fields X and Y . . . . . . . . . . . 71.6 State-time diagram of a partitioned procedure . . . . . . . . . . . . . 81.7 A sequential staggered procedure for the example problem . . . . . . 91.8 Non matching meshes due to different resolution requirements of the

same discretization scheme . . . . . . . . . . . . . . . . . . . . . . . 121.9 Non matching meshes for matching geometry but different discretiza-

tion schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.10 Non matching geometry but similar discretization scheme . . . . . . 141.11 Interface with both the geometry and discretization schemes different 14

2.1 Intersection of Spheres [2] . . . . . . . . . . . . . . . . . . . . . . . . 242.2 Wendlands C2-Function [2] . . . . . . . . . . . . . . . . . . . . . . . 252.3 Inverse Isoparametric Element . . . . . . . . . . . . . . . . . . . . . 27

3.1 Data transfer between non-matching meshes with different projectiondirection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.2 Data transfer between non-matching meshes with interpolated pro-jection direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.3 Bijective Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313.4 Basic Components of Bijective Interpolation Scheme . . . . . . . . . 323.5 A piecewise linear mapping between a 3D mesh M and an isomorphic

flat mesh U , where a triangle on the mesh is mapped to a triangle inthe parameterization [26] . . . . . . . . . . . . . . . . . . . . . . . . 35

3.6 A 3D 1-ring and its associated parameterized or flattened version [26] 363.7 Point projection [42] . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.8 Edge Intersection [42] . . . . . . . . . . . . . . . . . . . . . . . . . . 413.9 Locating subvertices along blue edges [42] . . . . . . . . . . . . . . . 443.10 Avoiding computation of intersection of concurrent edges [42] . . . . 45

v

Page 14: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

List of Figures

3.11 Conneting each pair of subvertices that are on the boundary of sameblue face and also same green edge [42] . . . . . . . . . . . . . . . . . 45

3.12 Enumerating subfacets of common refinement interface [42] . . . . . 473.13 Data association method . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.1 Meshes of fluid and solid side . . . . . . . . . . . . . . . . . . . . . . 595.2 Force distribution on fluid mesh . . . . . . . . . . . . . . . . . . . . . 605.3 Deformation contours on fluid and solid mesh . . . . . . . . . . . . . 605.4 Deformed fluid(left) & solid(right) mesh . . . . . . . . . . . . . . . . 615.5 Performance of algorithm 4.1 . . . . . . . . . . . . . . . . . . . . . . 625.6 Half sphere with sinusoidal data distribution . . . . . . . . . . . . . 635.7 Circular surface mesh . . . . . . . . . . . . . . . . . . . . . . . . . . 635.8 Parameterized mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . 645.9 Performance of algorithm 4.5 . . . . . . . . . . . . . . . . . . . . . . 655.10 Data transfer using element intersection . . . . . . . . . . . . . . . . 665.11 Data transfer using minimal distance . . . . . . . . . . . . . . . . . . 66

vi

Page 15: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

List of Algorithms

4.1 Radial Basis Function-Main Algorithm . . . . . . . . . . . . . . . . . 514.2 Construction of CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . 514.3 Construction of AFS . . . . . . . . . . . . . . . . . . . . . . . . . . . 524.4 Calculation of φ‖x‖ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534.5 Intrinsic Parameterization-Main Algorithm . . . . . . . . . . . . . . 534.6 Construction of the border list . . . . . . . . . . . . . . . . . . . . . 544.7 Checks if a node is a border or an internal node . . . . . . . . . . . . 544.8 Forms MATRIX according to equation 3.12 . . . . . . . . . . . . . . 564.9 Sets non-diagonal entries for MATRIX . . . . . . . . . . . . . . . . . 564.10 Sets entries for border nodes in MATRIX . . . . . . . . . . . . . . . 574.11 Sets diagonal entries MATRIX . . . . . . . . . . . . . . . . . . . . . 58

vii

Page 16: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

LIST OF ALGORITHMS

viii

Page 17: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1 Introduction

In this chapter, effort will be put to introduce the main topic that will be analyzedthrougout the whole of this literature. In order to do so, definitions and concepts ina more generic and abstract sense will be given at the beginning, and then eventu-ally the focus will be narrowed down to a more specific direction, in a step-by-stepmanner. The details discussions about the related topics that are important but notin the scope of main topic of this literature, are avoided, but not totally skipped.However they are referenced properly for more interested readers. To avoid reinven-tion of the same cycle again and again, most of the following definitions and ideasare taken from(sometimes directly quoted) [7], [5] [3].

1.1 System

In [7] system is defined as “a functionally related group of components forming or re-garded as a collective entity.” Here “component” is used in a more generic sense thatembodies “element” or “part”, which connotes simplicity, as well as “subsystem”,which connotes complexity.

1.2 System Decomposition

Systems are analyzed by decomposition or breakdown. Complex systems are sub-jected to many kinds of decomposition chosen according to specific analysis or designobjectives. In this literature focus has been put on decompositions called partition-ing [7] that are suitable for computer simulation.

In [7] Partitioning is defined as a process of spatial separation of a discrete model intointeracting components, generically called partitions. The decomposition is drivenby physical, functional, or computational considerations.

For example the structure of a complete airplane is considered. It can be decom-posed into substructures such as wings and fuselage according to function or whatthey do. Substructures can further be decomposed into submeshes or subdomains toaccomodate parallel computing requirements. Subdomains are composed of individ-ual elements. Now following another approach, if the same airplane is part of a flightsimulation, a top-level partition driven by physics is into fluid and structure models.

1

Page 18: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1 Introduction

This type of partition hierarchy: coupled system [7], structure, substructure, sub-domain and element, is typical of current practice in modelling and computationaltechnology.

1.3 Coupled System Terminology

As there are numerous approaches for studying coupled system, the terminologiesused are also not unique. The terminologies provided here have evolved from thepespective of computational simulation.

In [7] coupled system is defined as one in which physically or computationally het-erogeneous mechanical components interact dynamically. The interaction is calledone-way [7] if there is no feedback between subsystems, as illustrated in Figure 1.1(a)for two subsystems identified as X and Y. The interaction is termed as multi-way [7]if there is feedback between subsystems, as illustrated in Figure 1.1(b). Multi-waycoupled systems will be the main point of interest in the remaining portion of theliterature. The term “heterogeneity” is used in the sense that different componentsof the simulation are treated by methods customized or specialized for themselves.

Figure 1.1: Interaction between subsystems X and Y :(a)one way, (b)two way

As stated before in the previous section, the decomposition of a complex coupledsystem for simulation is hierarchical with two to four levels of the hierarchy beingcommon. The first level consists of two types of subsystems, which is embodied inthe generic term field.

Physical Subsystems. Subsytems are called physical fields [7] when their mathe-matical model is described by field equations. Examples of such subsystems are,mechanical and non-mechanical objects treated by continuum theories: solids, flu-ids, heat, electromagnetics.

Artificial Subsystems. These are subsystems that are incorporated for computa-tional convenience. Dynamic fluid meshes to effect volume mapping of Lagrangianto Eulerian descriptions in fluid-structure interaction problem is an example of ar-

2

Page 19: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1.3 Coupled System Terminology

tificial subsystems.

Accrording to the number of different fields that appear in the first-level decom-position [7] a coupled system is characterized as two-field, three-field, etc.

Fields are discretized in space and time for computational treatment of a dynamicalsystem. A field partition [7] is a field-by-field decomposition of the space discretiza-tion. A splitting [7] is a decomposition of the time discretization of a field withinits time step interval. A better view is obtained when we look at Figure 1.2. In thecase of static or quasi-static analysis, actual time is replaced by pseudo-time.

Figure 1.2: Decomposition of an aeroelastic FSI coupled system:partitioning in spaceand splitting in time

Partitioning may be algebraic [7] and differential [7]. Algebraic partitioning is done,first by discretizing the complete coupled system spatially and then decomposing. Itwas originally developed for matching meshes and substructuring. But later efforthas been put to make it working also for non-matching meshes.A better view ofalgebraic partitioning can be obtained from Figure 1.3. On the contrary, in differ-ential partitioning, the decomposition is done first and each field then is discretizedseparately. Differential partitioning often leads to non-matching meshes, which aretypical of fluid-structure interaction as depicted in Figure 1.4. In this literatureemphasis will be put on differential partitioning.

3

Page 20: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1 Introduction

Figure 1.3: Algebraic partitioning:originally developed to handle matching meshes

A property is termed as interfield [7] if it pertains collectively to all partitions.On the other hand, an intrafield [7] property pertains to only individual partitions.These two qualifiers are used, when concern about parallel computations arises. In-terfield parallelism [7] refers to the implementation of a parallel computation schemein which all partitions can be concurrently processed for time-stepping, whereas, In-trafield prarallelism [7] refers to implementations of parallelism for an individualpartition using a second-level decomposition, e.g. substructures or subdomains.

Figure 1.4: Differential partitioning: originally developed for problems with non-matching meshes

4

Page 21: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1.4 Some Examples

1.4 Some Examples

Following are some prominent examples of coupled systems. The number of inter-acting fields are included in parentheses.

• Fluid-structure interaction (2)

• Thermal-structure interaction (2)

• Control-structure interaction (2)

• Control-fluid-structure interaction (3)

• Fluid-structure-combustion-thermal interaction (4)

Here a very important and interesting point is to be noticed. Not only there isobvious computational difference among the different coupling systems, but alsocomputational dissimilarity is present among different cases of a specific couplingsystem, e.g. fluid-structure interaction. For example, the interaction of an acousticfluid with a structure in aeroacoustics or underwater shock is computationally dif-ferent from that of high-speed gas dynamics with an aircraft or rocket, or of flowthrough porous media.

1.5 Coupled System Simulation

1.5.1 Scenarios

Because of their variety and combinatorial nature, the type of coupled system prob-lems that will arise when simulating can hardly be forseen or predicted. For example,a research institute can be considered, where each of its three groups develops appli-cation software targeted to single fields as isolated entities: a CFD fluid dynamicscode, a structure FEM program and a thermal conduction analyzer. Now for anaccurate simulation of the physical process, need may arise, where the interactionbetween the structure and fluid has to be studied considering the thermal effect.The following subsection discusses three approaches, discussed in details in [7][36] [37],to deal with coupled systems scenarios.

1.5.2 Approaches to Coupled System Simulation

Following are the three approaches, according to [7][36][37], to coupled system sim-ulation:

Field Elimination. One or more fields are eliminated, by techniques such as integraltransforms or model reduction, and the remaining field(s) are treated by simultane-ous time stepping scheme.

5

Page 22: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1 Introduction

Monolithic Treatment. The whole problem is treated as a monolithic entity or asingle computational domain, and all the components are advanced simultaneouslyin time. All the member systems are treated with the same basic numerical tech-nique.

Partitioned Treatment. The field models are computationally treated as isolatedentities that are separately stepped in time. Interaction effects are viewed as forcingeffects that are communicated between the individual components using prediction,substitution and synchronization techniques.

Elimination is restricted to special linear problems that permit efficient decoupling.It often leads to higher order diferential systems in time, or to temporal convolutions,which can be the source of numerical difficulties. On the contrary both monolithicand partitioned are general in nature, but their relative superiority is very highlydependent on the physical problems to be simulated. In the following subsection wedo a brief comparative survey on monolithic and partitioned approaches, much ofwhich is based on [7] and [40].

1.5.3 Monolithic vs. Partitioning

Following, a brief comparative survey between the two above stated approachesbased on some factors, is done:

Customization. In the partitioned approach each field can be treated by discretiza-tion techniques and solution algorithms that are known to perform well for theisolated or individual systems that are part of the coupled system. Interaction ef-fects between the systems must be treated accurately to ensure that the algorithmis working efficiently for the whole coupled system.

Independent Modeling. The partitioned approach facilitates the use of non-matchingmodels. For example, in a fluid-structure interaction problem the structural andfluid meshes need not to coincide at their interface. This refers to advantages likeproject breakdown, when analyzing complex coupled systems. Different teams canbe employed to take care of different portions of the models.

Software Reuse. Partitioned approach facilitates taking advantage of existing code,which is very much suitable for academic and project environments, as it saves a lotof time of coding that would be required had we have followed a monolithic approach.

Modularity. New methods and models can be introduced in a modular fashionaccording to project needs. For example, sometimes it is needed to include localnonlinear effects in an individual field while keeping everything else same. Imple-mentation, testing and validation of new additions can be conducted in a modular

6

Page 23: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1.6 Basic Idea of Partitioned Method

way.

Computational Complexity. One of the major disadvantages of monolithic approachis that, potentially ill-conditioned matrices associated with linking the subsystemsoccur, which increases the computational complexity.

The advantages of partitioned approach over the monolithic stated above, are notcost free. The partitioned approach requires careful formulation and implementationto avoid serious degradation in stability and accuracy. Parallel implementations areparticularly a very delicate issue. Gains in computational efficiency over a mono-lithic approach are not guaranteed. The remainder of this literature focuses on thepartitioned approach. It presents the essentials for simple partitioned method.

1.6 Basic Idea of Partitioned Method

For better understanding of the fundamental idea of partitioned approach, a simpleexample is considered here. A two-way interaction of two scalar fields, X and Y, isconsidered as sketched in Figure1.5.

Figure 1.5: Two way interaction of two scalar fields X and Y

Each field has only one state variable identified as x(t) and y(t), respectively, whichare considered to be governed by the first order differential equation

ax+ bx− cy = f(t)py + qy − rx = g(t) (1.1)

in which f(t) and g(t) are the applied forces; a, b, c, p, q, r are constants, and thevariables are functions of time t. After getting treated by Backward Euler integrationin each component we get:

xn+1 = xn + hxn+1, yn+1 = yn + hyn+1 (1.2)

where xn ≡ x(tn) and yn ≡ y(tn), h is the discretization step size, etc. At each timestep n = 0, 1, 2, . . . one gets

7

Page 24: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1 Introduction

[a+ bh −ch−rh p+ qh

] [xn+1

yn+1

]=

[hfn+1 + axn

hgn+1 + pyn

](1.3)

in which x0, y0 is obtained from initial condition. In the monolithic or strong-coupledapproach, (1.3) is solved at each time step and the unknowns are determined.

1.6.1 Partitioning Method

The partitioning approach (1.3) is treated with following prediction on y:

[a+ bh 0−rh p+ qh

] [xn+1

yn+1

]=

[hfn+1 + axn + cyP

n+1

hgn+1 + pyn

](1.4)

Here yPn+1 is a predicted value or simply a predictor. Some common choices of

predictor are yPn+1 = yn and yP

n+1 = yn +hyn. The basic equation steps are summedup as follows:

1. (P) Predict: yPn+1 = yn + hyn

2. (Ax) Advance x: xn+1 = 1a+bh

(hfn+1 + axn + cyP

n+1

)3. (S) Substitute: xn+1 = xn+1

4. (Ay) Advance: yn+1 = 1p+qh (hgn+1 + pyn + rxn+1)

The main achievement of this approach is that, systems X and Y can now be solvedin tandem. A state-time diagram of these steps, with time along the horizontal axis,is shown in Figure 1.6.

Figure 1.6: State-time diagram of a partitioned procedure

Let the fields X and Y of the above example problem be handled by two commu-nicating programs called Single Field Analyzers or SFAs [3]. A zigzagged pictureof interfield data transfer is obtained when the intrafield advancing arrows of Fig-ure 1.6 are ommitted, as depicted in Figure 1.7. This graphical representation of

8

Page 25: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1.6 Basic Idea of Partitioned Method

partitioned procedure [7] motivated another name for it, the staggered solution pro-cedure [7], which will be used quite often in the rest of this literature.

Figure 1.7: A sequential staggered procedure for the example problem

1.6.2 Concerns and Research Areas

Some areas, according to [7][5][4][6][3], that deserve much importance and furtherresearch work in conjunction with partitioned or staggered analysis of coupled sys-tem are given below.

Stability. Degradation of time-stepping stability caused by prediction is a very im-portant concern in staggered approach. Though staggered procedure is extremelyeffective for coupled first-order parabolic systems, for more general problems, e.gthose modelled by oscillatory second order ODEs, degradatioin in stability can becatastrophic. The ideal goal is: a partitioned or staggered treatment should notdegrade the numerical stability of the individual subsystems. More specifically:

• Provided that each partition or system is treated by unconditionally stabletime-stepping methods, the integration of the overall coupled system shouldretain unconditional stability.

• If one or more partitions are treated explicitly and the maximum stable timestepis hmax, the integration of the overall system should be stable up to that step-size.

These goals might be very difficult to achieve or in some cases can be proved tobe impossible without the reformulation of the original field equations. There aredifferent techniques to test the stability of the coupled numerical procedure, whichcan be named as Multistep difference scheme, Polynomial stability schemes, Routh–Hurwitz criterion, Lienard-Chipart stability criterion, etc. Details about these canbe found in [3][7][4][28] and in many other literatures. Further discussion on thisissue will not be done, as it is not in the main scope of this literature.

Accuracy. Once satisfactory stability is achieved, the next concern is accuracy.This is in most cases degraded with respect to that attainable by the monolithic ap-proach. Ideally, it can be recovered by iterating the state between the fields, which

9

Page 26: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1 Introduction

is normally done by interfield iteration at the same time station. However it costsmore than cutting the timestep to attain the same accuracy level.In most practical cases, where the problems are strongly non-linear, stability andaccuracy tend to be interwined and they are considered usually together while de-signing algorithm. However there are different tools, that are well know for accuracyanalysis, some of which can be named as backward error analysis, forward error anal-ysis, linear multistep method, Runge-Kutta method. Details about these can be foundin many literatures, such as [3],[32],[35],[38], etc.

Intrafield parallel processing. As the simulation of the individual systems of a cou-pled system are known to be computationally intensive, they can be benefitted fromthe parallel processing technology. Due to the modularity feature of a staggeredapproach, it is possible to proceed the simulation procedure of an individual sys-tem in parallel, which can be termed as intrafield parallel processing [5][6]. Thisapproach to parallel process is based on the mesh partitioning and message passingparadigm. A mesh partitioning algorithm [12][11] is used to decompose the meshesof each system into subdomains. The same old serial code is executed within everysubdomain. The assembly of the results is implemented in a seperate module. Onesignificant point of intrafield parallelism is that, the term message passing referes toassembly phase of the subdomain results, not to explicit message passing betweenthe subdomains.

Interfield parallel processing. Using the same message passing paradigm,the MPICH [1],interfield parallelism [5][6]can be implemented in the same manner as the intrafieldmultiprocessing. In Figure 1.7 a graphical representation of a very naive modifica-tion of the serial staggered algorithm can be seen.

Incompatible mesh interfaces. As it is already understood, that in a staggered proce-dure for the coupled system, different numerical methods are used for the treatmentof individual subsystems of the coupled system. This gives rise to mesh interfacesof the subsystems, which are incompatible. However, transfer of data between theseincompatible is non-trivial. It depends on many factors, such as the geometries in-volved, the discretization schemes, different resolution requirements and sometimeseven on the type of data to be transferred. This has gained a large amount of re-search interest, dating back since 15 years [7]. As this will be the main theme of thisentire literature, a detailed discussions about it will be done in the next section.

1.7 Incompatible Mesh Interface

Before starting discussions about the incompatibility in mesh interface it is impor-tant to define a mesh interface. As discussed before, it is quite obvious that, for anycoupled system that is treated with the staggered procedure, data must be transferredbetween adjacent partitions or domains. According to [39] in any coupled system

10

Page 27: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1.7 Incompatible Mesh Interface

mesh interface is that portion of a discretized domain which is adjacent to anothersuch domain.

When the interface meshes of the two domains of the coupled system are iden-tical, with coincident nodes and elements, the data transfer for the simulation isquite trivial. But unfortunately this is not the situation in most of the practicalproblems. The reason is quite obvious. In a typical coupled system simulation,all the individual systems that are part of the coupled system, are treated withthe numerical methods, that are known to perform best for them. So the domainsoften have nonconforming interface meshes. However, this arises due to differentdiscretization methodologies, resolution requirements or even different geometries ofthe sub-systems.

For better explanation it is advantageous to take one specific category of coupledsystem, rather than considering the whole era in general, as there can be numerouscoupling situations due to the freedom of combination between the individual sys-tems. In this literature Fluid-Structure/Solid Interaction is chosen. However, mostof the discussions are applicable to general coupled systems. In fluid-structure/solidinteraction, a finite difference or finite volume method with a (block) structuredmesh is often used for the fluid, whereas a finite element method with unstructuredmethod is typical for solids. Generally the numerical treatment of the fluid alsorequires a finer mesh resolution than the solid, to capture some special parameters,like shock, turbulence, etc. Thus the interface meshes of the fluid and solid becomesnon-matching, and transfer of data between them becomes non-trivial.Following some of the situations from where incompatibility in mesh interface occurshave been listed:

• Case1: Interfaces with matching geometry and discretizatin schemes, butwith different resolutions.

• Case2: Interfaces with matching geometry but different discretization schemes.

• Case3: Interfaces with non-matching geometries but similar discretizationschemes.

• Case4: Interfaces with non-conformity both in geometry & discretizationschemes.

In the following subsection some examples where incompatible mesh interfaces occursdue to the above mentioned reasons, are presented.

1.7.1 Case1

In figure 1.8 modelling of an engine nacelle of and aircraft is seen with triangularmeshes of two types, coarse(blue) and fine(green). This case occurs mostly whenthe change of characteristics is expected to be maximum in a particular region. Inthat case meshes of higher resolution are used for that particular region.

11

Page 28: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1 Introduction

Figure 1.8: Non matching meshes due to different resolution requirements of thesame discretization scheme

1.7.2 Case2

This case corresponds to the situations where the interface has a matching geometrybut different discretization schemes for the different subsystems. The example offlow around a rigid aerofoil is considered here. The flow is only dependent on theprofile of the aerofoil. The internal structure forming the shape of the aerofoil is notof importance. So a very fine CFD grid (normally Finite Volume) is used aroundthe exterior of the aerofoil, wherever the changes in the flowfield characteristicsare expected to be a maximum. Conversely the CSD is concerned with examiningthe airloads on the surface and how these loads affect the internal structure of theaerofoil. CSD grids, generally using the FEM, lie both on the surface and within theinterior of the aerofoil and is oriented to the structural components. In figure 1.9this case if visible.

1.7.3 Case3

This case occurs quite often in automotive industry, for simulation of engines. Nor-mally the engine structures are modelled with every small details, which includesvery tiny holes with nuts, small regions of wrinkles at the bend, etc. On the contrary,though the fluid part is modelled with quite fine mesh, these small details on thestructures are overlooked, as it is extremely time consuming to model them in detailswith brute force. But it is also important to get the value of stress or temperaturedeveloped at those regions due to fluid flow. So it results in a problem, where datamapping is required between non matching geometry with non-conforming resolu-tion. Figure 1.10 shows an example of such a case. From here it can be seen that,though the mesh on the fluid side (red) is quite smooth, but the small wrinkles thatcan be seen on the structural side (blue) are ignored here, which ultimately givesrise to the geometric non-conformity.

12

Page 29: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1.7 Incompatible Mesh Interface

1.7.4 Case4

This case is occuring in many of the practical multidisciplinary simulations. Figure1.11 shows an example of stamping & crash simulation taking place in an auto-motive industry. The simulation for stamping process of the automobile body isdone with a very fine mesh (black), especially mesh adaption is done in the regionof bendings, holes, or regioins with high irregularity, which can be seen from thefigure. 1.11(black). On the contrary, it is intended to do the crash simulation withas much coarse mesh as possible, as it is quite an expensive process, cosidering time.The blue mesh of figure 1.11 corresponds to the mesh for crash simulation. As it canbe seen from the figure that the small holes that are visible in the case of stampingsimulation are ignored while doing the crash simulation.

(a) FEM discretization of the aerofoil structure and interior

(b) FVM discretization around the aerofoil structure

Figure 1.9: Non matching meshes for matching geometry but different discretizationschemes

13

Page 30: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1 Introduction

Figure 1.10: Non matching geometry but similar discretization scheme

Figure 1.11: Interface with both the geometry and discretization schemes different

From the example cases presented previously it is obvious that for an accurate

14

Page 31: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1.8 Conclusion

simulation of the coupled system, e.g. FSI, a novel data transfer method or moreaccurately an appropriate interoplation scheme is required. The main criteria thatan interpolation scheme must satisfy, according to [41], can be itemized as below:

• The interpolation scheme must be able to handle both non-matching surfacesand topologies.

• Conservation of the quantities exchanged must be achieved, particularly mo-mentum and energy. Conservation corresponds to the equilibrium at the inter-face, which for many applications is required by the physical laws of underlyingproblem.

• Numerical accuracy must be achieved, which means that numerical error mustbe small in a specific norm.

• For applications involving repeated data transfer both accuracy and conser-vation must be achieved, which is quite a difficult task, as errors accumulateacross iterations.

• The method must treat rigid translations and rotations exactly.

• It must be independent of the numerical formulations or discretizations of thesubsystems of coupled system.

1.8 Conclusion

So far in this chapter a brief introduction of the main topic of this literature hasbeen presented. The remainder of this literature is organized as follows: in chapter2 a study of different available data interpolation schemes has been made, in chapter3 a new independent interpolation scheme named as Bijective Interpolation Schemehas been presented, chapter 4 presents the algorithm for computer implementationof the methods discussed in chapter 2 & 3, chapter 5 presents the results of differenttest cases & chapter 6 concludes the literature with a view to possible future workon the field.

15

Page 32: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

1 Introduction

16

Page 33: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2 Interpolation Methods

In the previous chapter of this literature, it was discussed why interpolation is neededfor doing coupled system (e.g. fluid-solid/structure) simulation. In this chapter ofthe literature a review of the different interpolation methods, that were developedto deal with the data transfer between non-matching meshes in coupled systemsimulation, are presented.

2.1 Radial Basis Function Method

Over the past decade, radial basis function method has been seen to produce highquality solutions to the multivariate scattered data interpolation problems. Origi-nally a part of the spline method [21], this method was proposed by Wendland[16]and Beckert[2] for being suitable in dealing with multivariate interpolation prob-lems that arise in Multiphysics simulation, such as Fluid-Solid/Structure Interac-tion(FSI). Later on some improvements also have been proposed for having a bettercomputational performance in dealing with interpolation needed for FSI. For bettersuitability and applicability of this method, in this literature this method is discussedin more details.

Mathematical Formulation

The real multivariate interpolation problem can be stated as follows: A real valuedfucntion f(x), with its values fi = (f1, f2, . . . , fN ) given at distinct points xi =(x1, x2, . . . , xN ) ∈ R

d, has to be approximated by a function s(x) : Rd → R such

that,

s(xi) = fi for i = 1, 2, . . . , N (2.1)

To address this problem RBF (Radial Basis Function) approach is taken. The RBFhas the form,

s(x) = p(x) +N∑

i=1

λiφ(‖x− xi‖) for x ∈ Rd (2.2)

Here, φ := φ(‖.‖) is a fixed basis function which is radial with respect to the Eu-clidean distance, ‖x − xi‖ is the Euclidean distance between the two points, λi areal-valued weight, and p(x) is a polynomial from R

d → R of degree at most k

17

Page 34: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2 Interpolation Methods

expressed as

p(x) =k∑

i=1

cipi(x) (2.3)

So from the above mathematical description, RBF can be defined in words as aweighted sum of translations of a radially symmetric basis function augmented by apolynomial term.

Evaluation of RBF

RBF polynomial is defined by the weights λi and coefficients ci of the polynomialp(x). The following equation, that is obtained by combining equation (2.1), (2.2)and (2.3), has to be solved,

N∑j=1

λjφ(‖xi − xj‖) +k∑

j=1

cjpj(xi) = fi for i = 1, 2, . . . , N (2.4)

Equation (2.4) is an undetermined system, i.e. there are more variables than equa-tions. An extra condition must be introduced for accomodating this problem. Sothe following orthogonality or side condition is also imposed,

N∑j=1

λjp(xj) = 0 (2.5)

Expressing equation(2.4) and (2.5) in matrix form gives,[A PP T 0

] [λc

]=

[f0

](2.6)

Where,

A = φ(‖xi − xj‖) P =

⎡⎢⎣p1(x1) . . . pk(x1)

......

...p1(xN ) . . . pk(xN )

⎤⎥⎦

λ = (λ1, λ2, . . . , λN )T and c = (c1, c2, . . . , ck)T

Solving equation(2.6) will give the coefficients λ and c and hence the s(x).

Computational Complexity

Although the RBF method has been applied successfully in a wide variety of scien-tific and engineering problems, its widespread adoption has been hindered by theassociated high computational cost. According to [17] a naive approach for thesolution of interpolation equation (2.6) leads to a complexity of O(N3) in time andO(N2) in space. Furthermore, every evaluation needs another O(N) time. For alarge number of data site, N , this is unacceptable.

18

Page 35: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2.1 Radial Basis Function Method

Reducing Computational Complexity

There have been a number of approaches proposed for dealing with the computa-tional complexity issue of RBF. In this section one of the most suitable among them,The Partition of Unity Method [29] is discussed. The procedure can be summerizedas follows:

• A region of interest, Ω is defined, which contains both set of nodes, the nodesat which function values are given and the nodes where the function has to beapproximated.

• Ω is decomposed into a number of overlapping subregions: Ω ⊆ ⋃Kj=1, such

that, each patch Ωj contains a small number n of points, both source andtarget, which when compared with N , the total number of points, can beconsidered as constant. It is important that, each set of target points is con-tained in only a small number of patches provided that these patches can befound fast. This requirement makes it necessary to make an intellegent datastructure.

• For each patch Ωj , the source points are collected, and then the interpolationproblem is solved on each patch in the way stated in the Evaluation of RBFsection. Since the number of points in each source data set can be cosidered tobe constant, this can be done in constant time for each patch, and since thereare O(N) patches, the overall time is also O(N) plus the time necessary tobuild the associated data structures. The data structures are normally basedon binary trees which can be constructed in O(N logN) time.

• The global interpolant is then formed, by weighting the local interpolants. Theweight is chosen from a partition of unity. This is a family of smooth, non-negative functions wj

Kj=1 such that each wj is supported only in its associated

patch Ωj , i.e. wj vanishes outside Ωj . Also it has the following property

K∑j=1

wj(x) = 1, x ∈ Ω

The global interpolant is then formed by

s(x) =K∑

j=1

wj(x)sj(x)

• The new method can be implemented in a way that the coupling matrix canbe set up in O((Ns +Nf ) logNs time. Furthermore, each coupling step can bedone in O(Nf logNs) time.

19

Page 36: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2 Interpolation Methods

2.1.1 Implementation of RBF for FSI Problems

A plate that is deformed under intense fluid pressure, is considered. The governingequation, according to [21] can be written as:

D∇4u = q (2.7)

where u is the plate deflection, D is the plate flexural rigidity, and q is the distributedload on the plate. Now the whole system is discretized. It is assumed that thereare Ns structural nodes sj = (xsj , ysj , zsj ) ∈ R

3,1 ≤ j ≤ Ns and Nf fluid nodesfj = (xfj , yfj , zfj ) ∈ R

3, 1 ≤ j ≤ Nf . It is assumed that the domain is discretizedinto N elements. Now, a general solution for the deflection u, using the concept ofRBF from equation (2.2) and (2.3) can be written as,

ui = ao + a1xi + a2yi + a3zi +N∑

j=1

Fjφ‖x‖ (2.8)

Here all the symbols have their usual meaning as described before, and Fj is theunknown normalized distributed forces and x = (x, y, z).From the condition of equilibrium of discrete forces, the following equation is ob-tained,

N∑i=1

Fi = 0 (2.9)

The condition of equilibrium of discrete momentum leads to the following equations:

N∑i=1

xiFi = 0 (2.10)

N∑i=1

yiFi = 0 (2.11)

N∑i=1

ziFi = 0 (2.12)

In matrix format Equation (2.8) can be expressed as:

[u] = [X][a] + [φ][F ] (2.13)

and the equation set (2.9) to (2.12) can be expressed as following:

[X]T [F ] = 0 (2.14)

20

Page 37: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2.1 Radial Basis Function Method

where,

[u] =

⎡⎢⎢⎢⎣u1

u2...uN

⎤⎥⎥⎥⎦ [F ] =

⎡⎢⎢⎢⎣F1

F2...FN

⎤⎥⎥⎥⎦ [a] =

⎡⎢⎢⎣a0

a1

a2

a3

⎤⎥⎥⎦

[X] =

⎡⎢⎢⎢⎣

1 x1 y1 z11 x2 y2 z2...

......

...1 xN yN zN

⎤⎥⎥⎥⎦ (2.15)

and [φ] contains elements calculated from φij = φ‖x‖, a term of equation (2.8).Herethe correspondence between equation(2.6) with equations (2.13) and (2.14) is im-portant to observe.For doing the interpolation using equation (2.13) and (2.14) a transformation matrixis needed to be created for which the concept of [27] and [10] is used which is alsoreferenced in [21].According to [27] the deflections and forces of a structural grid are related by aknown matrix Cs as follows,

[us] = [Cs][Fs] (2.16)

where [us] is a column matrix whose elements are deflections usi(xsi , ysi , zsi), i =1, 2, . . . , Ns at Ns structural grid points, with coordinates given by si(xsi , ysi , zsi),Fs is a column matrix containing unknown normalized forces Fsi , i = 1, 2, . . . , Ns onthe structure and [Cs] is an unknown matrix of dimension Ns ×Ns.The coordinates of the fluid grid points fi(xfi , yfi , zfi), and the deflections ufi areneeded to be determined for, i = 1, 2, . . . , Nf . A relation similar to that of quation(2.16) exists, that relates the deflection and forces for the fluid grid points. It isexpressed as

[uf ] = [Cf ][Ff ] (2.17)

where [uf ], [Cf ], [Ff ] are matrices analogous to those in equation (2.16) for Nf fluidgrid points. According to [21] the relationship in equation (2.17) is made equivalentto equation (2.16) so that Ff will produce same deflection us as done by Fs. Thisgives rise to the existance of a Ns ×Nf matrix Csf such that

[us] = [Csf ][Ff ] (2.18)

According to Maxwell’s law of reciprocity, as defined by Meirovitch [25] which isalso referenced in [21], a reciprocal relation relating uf and Fs exists as below,

[uf ] = [Cfs][Fs] (2.19)

where Cfs is transpose of Csf . Substitution of equations (2.16), (2.17) and (2.18) in(2.19) gives

[Cf ] = [Cfs][Cs]−1[Csf ] (2.20)

21

Page 38: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2 Interpolation Methods

where [Cs] is symmetric. Also substitution of (2.16) in (2.19) gives the following,

[uf ] = [Ifs][us] (2.21)

where,

[Ifs] = [Cfs][Cs]−1 (2.22)[Csf ] = [Cs] [Isf ] (2.23)

Here Ifs is called the coupling matrix [2], which relates the fluid displacements tothe structural ones. Substitution of (2.23) in equation (2.20) gives,

[Cf ] = [Ifs][Cs][Isf ] (2.24)

Applying equation (2.13) to both structural and fluid grids, matrix [Ifs] can bedetermined. The structural grids are assumed to be known, so that the force [Fs]can be determined. This gives rise to the following equations,

[us] = [Xs][a] + [φs][Fs] (2.25)[uf ] = [Xf ][a] + [φfs][Fs] (2.26)

and equation (2.25) is subjected to the following condition found as in equation(2.14),

[Xs]T [Fs] = 0 (2.27)

where,

[Xs] =

⎡⎢⎢⎢⎣

1 xs1 ys1 zs1

1 xs2 ys2 zs2

......

......

1 xsN ysN zsN

⎤⎥⎥⎥⎦ [Xf ] =

⎡⎢⎢⎢⎣

1 xf1 yf1 zf1

1 xf2 yf2 zf2

......

......

1 xfNyfN

zfN

⎤⎥⎥⎥⎦ (2.28)

and [φs] and [φfs] are comprised of the elements

φsij = φ(‖si − sj‖)φfisj = φ(‖fi − sj‖) (2.29)

Rerrangement of equation (2.25) gives,

[Fs] = [φs]−1[us]− [Xs][a] (2.30)

Substitution of equation (2.30) in equation (2.27) gives,

[a] = [Ms]−1[Xs]T [φs]−1[us] (2.31)

where,[Ms] = [Xs]T [φs]−1[Xs]

22

Page 39: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2.1 Radial Basis Function Method

Substituting equation (2.31) back to equation (2.30) gives the following relationship,from where [Fs] can be calculated,

[Fs] =[[I]− [φs]−1[Xs][Ms]−1[Xs]T

][φs]−1[us] (2.32)

The fluid grid points fi and deformation ufi can now be found from the followingrelationship that is formed by substituting equation (2.31) and (2.32) in equation(2.26),

[uf ] =[[Xf ][Ms]−1[Xs]T + [φfs]

[[I]− [φs]−1[Xs][Ms]−1[Xs]T

]][φs]−1[us] (2.33)

Comparing equation (2.33) with (2.21), the coupling matrix [Ifs], that relates struc-tural grid deflection to that of fluid, can be identified as follows,

[Ifs] =[[Xf ][Ms]−1[Xs]T + [φfs]

[[I]− [φs]−1[Xs][Ms]−1[Xs]T

]][φs]−1 (2.34)

A little rearrangement of equation (2.34) gives the coupling matrix [2], Ifs, in theform of equation (2.22) where,

[Cs] =

⎡⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣

0 0 0 0 1 1 . . . 10 0 0 0 xs1 xs2 . . . xsNs

0 0 0 0 ys1 ys2 . . . ysNs

0 0 0 0 zs1 zs2 . . . zsNs

1 xs1 ys1 zs1 φs11 φs12 . . . φs1Ns

1 xs2 ys2 zs2 φs21 φs22 . . . φs2Ns...

......

......

.... . .

...1 xsNs

ysNszsNs

φsNs1 φsNs2 . . . φsNsNs

⎤⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦

(2.35)

and,

[Cfs] =

⎡⎢⎢⎢⎣

1 xf1 yf1 zf1 φf1s1 φf1s2 . . . φf1sNs

1 xf2 yf2 zf2 φf2s1 φf2s2 . . . φf2sNs...

......

......

.... . .

...1 xfNf

yfNfzfNf

φfNfs1 φfNf

s2 . . . φfNfsNs

⎤⎥⎥⎥⎦ (2.36)

2.1.2 Choosing Appropriate Basis Function

Choosing the appropriate basis functions is very important for making the inter-polation method efficient for FSI simulations. The reason may be summerized asfollows:

• When φ(‖x‖) chosen is of global in characteristics, i.e. it is an increasingfunction, the influence of a center on an evaluation node gets larger with thedistance between two nodes getting larger. The Euclidean distance, φ(‖x‖) =‖x‖, itself is of this type. This global characteristics tends to smooth out localeffects that may occur in FSI simulations, e.g. localized turbulence in regionsof geometric discripancies.

23

Page 40: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2 Interpolation Methods

• The interpolation matrix gets dense and the evaluation of the interpolant (2.2)needs an evaluation of all N summations.

These features are undesirable from a practical and physical point of view.In order to eliminate the disadvantages of global basis functions, those with com-pact support [2] should be used. Two of such functions are known as Euclids HatFunction [14] and Wendlands Function [15].

Euclids Hat Function

The Euclids Hat function which was first presented by Wendland [14] can be usedfor three-dimensional multivariate interpolation. It shows a continuous compactlysupported characteristics, and can be mathematically expressed as,

φ(‖x‖) = π

((

112‖x‖3)− (r2.‖x‖) + (

43r3)

)(2.37)

Figure 2.1: Intersection of Spheres [2]

The function has the value of the intersection volume of two spheres with radius rat x, which is seen in figure (2.1). The value is maximal for two identical nodes andzero for two nodes that are spaced more than a distance of (2.r). Further details onthis function can be found in [14].

Wendlands Function

Wendland in [15] proposed some more compactly supported basis functions. In [2]it is proposed to use only the C0 and C2-function for FSI simulation in three di-mensional space. The functions are as follows,

φ(‖x‖) = (1− ‖x‖)2+, C0 (2.38)φ(‖x‖) = (1− ‖x‖)4+.(4.‖x‖+ 1), C2 (2.39)

24

Page 41: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2.1 Radial Basis Function Method

Figure 2.2: Wendlands C2-Function [2]

The C2 function shown in figure(2.2), shows promising result according to [2].

Choice of Support Radius

When using compactly supported RBF, it is very important to answer the quesionof how big should be the support radius. A support radius in one hand should coverenough points and on the other hand points being far away should have no influence.Though a variable radius support would have been perfect for this purpose, buttheory supports only for “fixed radius” [2]. A large support radius (compared todata density) gives a good approximation order. On the contrary, a small supportradius leads easily solvable stable system. So a trade off between these two is donedepending on applications, while choosing the support radius.According to [2], a reasonable fixed support radius for the FSI problems has toguarantee full coverage of interpolation space. The region influenced by a center,is presented by a sphere with radius r and should include at least all the nearestneighbours of the considered centers. For many FSI cases, according to Beckert [2]a good choice of support radius is the largest support radius of all centers.

Advantages

Some of the advantages of RBF method according to [17] are:

• This method can be used in any space dimension.

• It works for arbitrarily scattered data, bearing no regularity at all.

• Allows interpolant of arbitrary smoothness.

• It can be effectively used for information transfer between non-matching inter-faces in FSI simulation. For making this effective, appropriate basis function

25

Page 42: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2 Interpolation Methods

has to be chosen, which does not infact depend on the position of the datapoints, and compactly supported.

In the previous part of this chapter interpolation based on radial basis fucntionis explained more in a theoretical context, with some implementational views. InChapter 4 of this literature, algorithim of computer implementation of this methodwill be produced with results from some test cases.The upcoming section of this chapter explains another interpolation method, namedas Inverse Isoparametric Method.

2.2 Inverse Isoparametric Mapping Method

The main principle of Inverse Isoparametric Mapping (IIM) method lies in finiteelement analysis, where the same shape function (Ni) is used by the isoparametricelement to interpolate both the coordinate and the displacement vectors. Interpola-tion by this method is a one-to-one mapping from a local (ζ) to a global Cartesian(x) or a displacement (δ) plane. This one-to-one mapping is also known as isopara-metric mapping. In the next sub-section a short discussion about this method isdone, much of which are extracted from [21] and [34]. However for getting moredetails about this method, it is suggested to go through [21] and [34]. However itshould be noted that because of its limitations this method is not used now a days.However to it is added in this literature to complete the list of methods used so far.

Mathematical Formulation

As stated above, isoparametric method is a mapping from a local (ζ) to a globalCartesian (x) or a displacement (δ) plane, mathematically it can be expressed asfollows:

x =∑

i

Ni(ζ)xei y =

∑i

Ni(ζ)yei δ =

∑i

Ni(ζ)δei (2.40)

where, xei , y

ei are Cartesian coordinates of structural node points i, and x = (x, y),

ζ = (ζ1, ζ2).If a point is given in the global domain, and the local coordinates corresponding toit have to be found, and inverse mapping has to be done. This is the main idea ofIIM. This inverse mapping involves a system of nonlinear equations, which can besolved numerically using iterative solvers.

Implementation

The implementation of this method uses a bilinear (4-node) element, but no in-formation of the original structural mesh is considered to determine the cell thatcontains a given fluid node. The first step is to identify the 4 structural nodes thatsurround the given fluid node point. Once the the cell containing the given fluid

26

Page 43: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2.2 Inverse Isoparametric Mapping Method

point is identified, the actual inverse isoparametric mapping takes place. For betterunderstanding of the implementation, following example is considered, where, thestructural cell formed by the nodes 1, 2, 3 and 4 contains the fluid point P .

Figure 2.3: Inverse Isoparametric Element

The bilinear shape functions for the four nodes of the elements are:

N1 =14(1− ζ1)(1− ζ2) N2 =

14(1 + ζ1)(1− ζ2)

N3 =14(1 + ζ1)(1 + ζ2) N4 =

14(1− ζ1)(1 + ζ2) (2.41)

Here ζ1, ζ2 ∈ [−1, 1]. Expanding equation (2.40) and using equation (2.41) thefollowing equations are obtained,

xp = ax1 + ax2ζ1 + ax3ζ2 + ax4ζ1ζ2 (2.42)yp = ay1 + ay2ζ1 + ay3ζ2 + ay4ζ1ζ2 (2.43)

where

ax1 =14(xe

1 + xe2 + xe

3 + xe4) ax2 =

14(−xe

1 + xe2 + xe

3 − xe4)

ax3 =14(−xe

1 − xe2 + xe

3 + xe4) ax4 =

14(xe

1 − xe2 + xe

3 − xe4)

ay1 =14(ye

1 + ye2 + ye

3 + ye4) ay2 =

14(−ye

1 + ye2 + ye

3 − ye4)

ay3 =14(−ye

1 − ye2 + ye

3 + ye4) ay4 =

14(ye

1 − ye2 + ye

3 − ye4) (2.44)

Eliminating ζ2 from equation (2.43) gives

ζ2 =yp − ay1 − ay2ζ1ay3 + ay4ζ1

Assuming that ay1ζ + ay3 = 0, and substituting the above result in equation (2.42)the following equation is obtained

Aζ21 +Bζ1 + C = 0 (2.45)

27

Page 44: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

2 Interpolation Methods

with

A = ax2ay4 − ax4ay2

B = ax1ay4 + ax2ay3 − ax3ay2 − ax4ay1 + ax4yp − ay4xp

C = ax1ay3 − ax3ay1 + ax3yp − ay3xp (2.46)

Between the two solutions of equation (2.45) only one will be in the range of [−1,+1],which ensures the existence of only one ζ1. In the similar fashion ζ2 is also obtained.

Limitations

According to [21] this method is only capable of interpolation. It cannot take careof regions outside the original structural grid, where there are fluid nodes present.Also it was only developed for two dimensional applictions, which reduces it usabil-ity hugely.

In this chapter, discussions on some of the existing interpolation schemes, widelyused for multi-physics simulations have been presented. In the next chapter a newinterpolation scheme, named as Bijective Interpolation Scheme will be proposed,which will prove to be a very useful tool for multi-disciplinary simulations done inindustry.

28

Page 45: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

In this chapter a new interpolation scheme termed as Bijective Interpolation Schemewill be discussed. At the beginning of the chapter a simple example case will bepresented to show the necessity of such type of interpolation. Then, the term Bijec-tion or Bijective Function will be explained in short. The rest of the chapter willconcentrate on explaining the Bijective Interpolation algorithm with all its compo-nents.

3.1 Example Scenario

In the last portions of Chapter 1, some situations were delineated where it might benecessary to transfer data between meshes resulting from non-matching geometricprofiles. This type of situation occurs very often in stamping and crash simulationsdone in automobile industries. Normally the stamping simulation is done with a veryfine mesh and the crash simulation is done with as coarse meshes as possible, as it is avery much expensive process considering time. This results in two types of geometricprofiles for the same structure. The one resulting from the stamping simulation ismore accurate and the other is the one resulting from the crash simulation, whichis comparatively not so closely matched with the actual profile of the structure.But very often it is necessary to transfer data, e.g. plastic strain or thickness,between these two meshes, which are now not geometrically similar. In figure 3.1an exaggerated figure of such type of case is sketched.

(a) Data transfer withnormal projection direc-tion

(b) Data transfer withinterpolated projectiondirection

Figure 3.1: Data transfer between non-matching meshes with different projectiondirection

In figure 3.1 both the cases data is transferred from the red mesh to the black one.

29

Page 46: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

In figure 3.1(a) normal projection direction is used for transferring data. It is visiblefrom the figure that, from point C, the same data is transferred to both point Fand G, which is not consistent with the practical situation. Moreover, in the regionbetween F and G no data will be projected, which is also wrong. So it is understoodthat a modified or interpolated data projection direction is needed to transfer datafrom point C of the black mesh to the red mesh. This case is shown in figure 3.1(b).Here it is seen that, the data from point C is transferred to point F of the blackmesh, with an interpolated projection direction.

But unfortunately this type of interpolated projection direction does not guaranteean accurate data transfer all the time. One such situation is sketched in figure 3.2.

Figure 3.2: Data transfer between non-matching meshes with interpolated projectiondirection

In figure 3.2 data need to be transferred from the red mesh to the green mesh.Transfer of data from region AB and CD of red mesh can be done with interpolatedprojection direction to regions IG and JH of green mesh, as region AB and CD ofthe red mesh is geometrically conformed with the regions IG and JH of green meshrespectively. But problems occur when data transfer between region BEFD of redmesh and region GH of green mesh is taken into consideration, as BEFD and GH ishighly non-conforming. It is visible that, even with a modified projection direction,from point E and F of red mesh data is projected to wrong destinations on the greenmesh which is not within the region GH. Moreover for region between BE and DFdata is transferred within the red mesh, which is not desired at all.

From the above two examples it was quite evident that, existing interpolationschemes are not effective to transfer data between meshes resulting from non-matchinggeometric profile, especially if the amount of geometric non-conformity is very high.Therefore a new interpolation scheme is required, which will facilitate this type ofdata transfer. Also, the interpolation scheme should provide a way, so that the re-gions with high non-conformity can be detected by the interpolation algorithm itself

30

Page 47: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.2 Bijection or Bijective Function

and user does not have to detect it with brute force, which in many cases will requireextremely high amount of time for simulation. Algorithm for such an interpolationscheme, named as Bijective Interpolation Scheme, will be presented in the rest ofthis chapter. Before presenting the algorithm, it is necessary to explain the termBijection or Bijective Function as a brush up. The next section concentrates onthat.

3.2 Bijection or Bijective Function

A function is Bijective if it is both injective and surjective. A bijective function isa one-to-one correspondence or bijection. A function is bijective if and only if everypossible image is mapped to by exactly one argument. This equivalent conditioncan be formally expressed as follows:

• The function f : A→ B is bijective iff ∀b ∈ B∃ a unique a ∈ A : f(a) = b.

• A function f : A → B is bijective iff it is invertible, i.e. there is a functiong : B → A such that gof is identity function on A and fog is identity functionon B. This function maps each image to its unique preimage.

Figure 3.3: Bijective Function

A graphical representation of a bijective function is given in figure 3.3 above.

Now that the term Bijection is explicated, it is evident from the name BijectiveInterpolation Scheme that, the interpolation scheme which will be proposed here,will show bijection property when data is transferred repeatedly back and forth be-tween two meshes. Before explaining all the components of the algorithm in details,in the next section the basic concept of this algorithm will be elucidated with asimple example.

31

Page 48: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

3.3 Bijective Interpolation Scheme - Basic Concept

(a) Detection of non-conforming regions

(b) Parameterizing one region to make it conformed with the other

(c) Overlaying or mapping two meshes to form a common interface

Figure 3.4: Basic Components of Bijective Interpolation Scheme

Main components or steps of a Bijectinve Interpolation Scheme can be enumeratedas follows:

• First step is to detect regions in the mesh that are geometrically higly non-conforming with the other mesh. The criterion, that will be used in the pro-posed algorithm here, is the Hausdorff Distance [9]. Figure 3.4(a) correspondsto this detection step.

• As the regions of non-conformity are detected, the next step is to make thisnon-conforming regions, conforming to the other mesh. This is done through

32

Page 49: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.4 Hausdorff Distance

a widely used computer graphics technique called Parameterization. In theproposed algorithm a specific parameterization technique called Intrinsic Pa-rameterization [26] is used. Figure 3.4(b) shows the whole red mesh of figure3.2 after parameterizing region BEFD of red mesh.

• The third step is to form a common interface of this two meshes, that willcontain all the node points of both the meshes with new element definitions(for 2D and 3D cases). This is done by the widely used overlaying techniqueof two meshes. The technique that will be used here is named as CommonRefinement [39] [42].

• The fourth step is to do the data transfer based on this common refinement,which is proposed in [41] and also will be explained in one of the next sections.

In the following section a brief discussion on Hausdorff Distance will be made, asthis will be used for the detection of geometric non-conformity between the meshes.

3.4 Hausdorff Distance

Given two finite sets of points A = a1, . . . , aN and B = b1, . . . , bM , the Hausdorffdistance is defined as

H(A,B) = max(h(A,B), h(B,A)) (3.1)

where,h(A,B) = maxa∈Aminb∈B‖a− b‖ (3.2)

and ‖.‖ is some underlying norm on the points of A B (e.g L2 or Euclidean norm).Hausdorff distance measures the mismatch between two sets that are at fixed posi-tions with respect to one another.The function h(A,B) is called the directed Hausdorff distance from A to B. Pointa ∈ A, that is farthest from any point of B, is identified and the distance from a toits nearest neighbor in B is measured. Which means, h(A,B) in effect ranks eachpoint of A based on its distance to the nearest point of B and then uses the largestranked such point as the distance (the most mismatched point of A). So it is quiteevident that, if h(A,B) = d, then each point of A must be within distance d of somepoint of B, and there is also some point of A that is exactly at distance d from thenearest point, which is the most mismatched point.As stated in the equation 3.1 Hausdorff distance, H(A,B), is the maximum of theh(A,B) and h(B,A). So it measures the degree of mismatch between two sets, bymeasuring the distance of the point of A that is farthest from any point of B andvise versa. So from intuition, it can be inferred that, if Hausdorff distance is d, thenevery point of A must be within a distance d of some point of B and vise versa.Unlike most methods for comparing shapes, there is no explicit pairing of points ofA with points of B, which means many points of A can be close to the same pointof B. The time complexity of computation of H(A,B) is O(N ×M) for two point

33

Page 50: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

sents of size N and M respectively, and according to [9] this can be improved toO((N + M) log(N + M)). Much of the above discussion about Hausdorff distanceis just a reflection of a more detailed discussion done in [9].

In the following section Bijective Interpolation algorithm with all its componentswill be described.

3.5 Bijective Interpolation Algorithm

The steps for Bijective Interpolation algorithm can be recapitulated as following:

• Detection of conforming and non-conforming regions between the two meshes.

• Parameterizing the non-conforming part of the mesh to make it conformingcompared to the other mesh, with a method named Intrinsic Parameterizationmethod.

• Forming a common interface for both the meshes with Common Refinementtechnique.

• Performing data transfer between the nodes of common refinement.

3.5.1 Detection of Non-Conformity

The detection process can be enumerated in the following manner:

• A parameter ε is determined, that depends on the smoothness of either of thered or green mesh. This implies that, the size of the smallest element of thetwo meshes can be chosen as ε.

• Hausdorff distance between the two meshes is determined for different nodesof the meshes.

• The regions where Hausdorff distance is greater than ε are tagged as the non-conforming region and the ones with Hausdorff distance less than or equal toε are tagged as conforming region.

If the mesh structure of figure 3.2 is considered, after going through the abovedetection procedure, regions AB and CD of red mesh will be tagged as conformingwith regions IG and JH of green mesh and region BEFD of red mesh will be taggedas non-conforming with region GH of green mesh.

3.5.2 Parameterizing Non-Conforming Regions

The surface mesh parameterization technique that will be considered in this liter-ature is known as Intrinsic Parameterization and is proposed by [26]. The namecomes as this method minimizes the distortion of different intrinsic measures of the

34

Page 51: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.5 Bijective Interpolation Algorithm

original mesh. However this method is only applicable for triangular meshes. Soall our discussions about this method will be limited to triangular meshes. In thefollowing part of the discussion more details about this method is provided.

Problem Statement and Notations

The following problem will be dealt with this metod: A piecewise linear mesh patchM is given, which may or may not be with holes (non-closed if any). A piecewiselinear mapping ψ between M and an isomorphic planar triangulation U ∈ R has tobe constructed, that preserves the original, intrinsic characteristics of M . Figure 3.5shows the graphical representation of the problem statement.

Figure 3.5: A piecewise linear mapping between a 3D mesh M and an isomorphicflat mesh U , where a triangle on the mesh is mapped to a triangle in theparameterization [26]

In the rest of the discussions on this method, the following notation convention willbe followed: xi will represent the 3D position of the ith node in the original meshM , i.e. xi = (xi, yi, zi)t and the 2D position of the corresponding node (parametervalue) in the 2D mesh U will be represented by ui, therefore, ui = (ui, vi)t.Therefore, a mesh parameterization is nothing but providing a linear mapping ψ(see figure 3.5), such that:

ψ : M → U

xi → ui

In the next subsection, discussions have been done on the measure of distortionwhen a 3D mesh is parameterized or flattened to a 2D plane.

Intrinsic Properties and Measure of Distortion

Before the intrinsic properties and measure for distortion can be given, first a 3Dmesh has to be decided for which the parameterization will be done and the dis-tortions will be measured. For simplicity of discussion and better understanding, asimple 1-Ring 3D mesh is chosen which, can be seen in figure 3.6.

35

Page 52: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

Figure 3.6: A 3D 1-ring and its associated parameterized or flattened version [26]

Now that the mesh is decided, the intrinsic properties have to be identified forthis mesh. According to [26] there are three such functionals (known as MinkowskiFunctionals) that are considered to represent intrinsic properties for a 2D surfaceand they are: Area φA, the Euler characteristic φχ, and the Perimeter φP .These intrinsic properties will be used as distortion measure for the surface. So inthe next paragraph the notion for distortion measure is presented.As in the problem statement, let M be a simple 1-ring mesh in 3D (i.e a vertex andall its adjacent triangles), and let U be an isomorphic mesh: U ∼ M (∼ indicatesisomorphic). Figure 3.6 shows this mapping. A distortion measure E between Mand U is defined as a functional that takes two isomorphic triangulations as inputand returns a real value:

E : T × T → R

(M,U)→ E(M,U)

This type of functional can be referred to as a mutual energy [26], as it can beseen as a measure of energy required to distort one mesh into the other. From thedefinition of distortion measure, E(M, ·) must be minimum for M , as there can beno mesh less distorted compared to M than itself. Therefore the following relationholds true for E:

E(M,M) ≤ E(M,U) (3.3)

For convenience E(M,M) is represented with φ(M) or φ.As the notion of distortion measure is now given, it can be associated with the dif-ferent intrinsic quantities which have already been presented. So for a 3D surface,given in figure 3.6, the following distortion energies can be defined : φA representsarea distortion energy, φχ represents Euler characteristics distortion energy and φP

is used for Perimeter distortion energy of the mesh.As here, measure is sought over a set of triangulation, according to [26], the distor-tion measure will be a linear combination of Area, Euler characteristic and Perime-ter, which can be expressed by an equation as:

φ = c1φA + c2φχ + c3φP (3.4)

where, c1, c2 and c3 are triplet of constants.

36

Page 53: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.5 Bijective Interpolation Algorithm

Optimal Parameterization

While doing an optimal parameterization, the maximum preservation of the intrinsicquantities of a surface has to be ensured. In [26] the notion of optimal parameteri-zation is given as follows:An optimal 1-ring parameterization is any mapping from a given 3D 1-ring M toan ismorphic 2D 1-ring U that is the minimum of a distortion measure (E), for afixed given boundary mapping ψ(∂M). So when a distortion measure E is knownand if each boundary vertex xj has a given parameter value uj , the condition for a2D 1-ring to be minimally distorted is that, E(M,U) is minimum over all U ∼ M .This results in the following condition for the center node ui of the 1-ring in theparameter plane:

∂E

∂ui= 0 (3.5)

In [26] two measures for the distortion energy are suggested which are named asDirichlet Energy and Chi Energy. In the following sections they will be describedin brief with the conditions for optimal parameterization.

Dirichlet Energy on Triangulation

In [33] and [26] Dirichlet energy between two triangles for piecewise linear parame-terization is given as :

EA =∑

orientededges(i,j)

cotαij |ui − uj |2 (3.6)

where |ui−uj | is the length of the edge(i, j) in the parameter domain and αij is theopposite left angle in 3D (please refer to figure 3.6). This discrete energy dependsonly on the angles of the original surface. This energy, at its minimum, correspondsto φA defined before.However [33] also proposed a parameterization technique based on the minimizationof this energy, which is also referenced in [26]. This mapping is known as DiscreteConformal Parameterization(DCP). Considering figure 3.6, DCP yields the followingequation for the central node i:

∂EA

∂ui=

∑j∈N(i)

(cotαij + cotβij)(ui − uj) = 0 (3.7)

where N(i) means the neighborhood of node i.

Chi Energy on Triangulation

[26] gives the definition of Chi energy by the following expression:

Eχ =∑

j∈N(i)

cot γij + cot δij|xi − xj |2

(ui − uj)2 (3.8)

37

Page 54: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

where γij and δij are shown in figure 3.6. [26] suggests that this energy correspondsto φχ at its minimum.According to equation 3.5 the optimal parameterization derived from Eχ is obtainedwhen center node ui satisfies:

∂Eχ

∂ui=

∑j∈N(i)

(cot γij + cot δij)|xi − xj |2 (ui − uj) = 0 (3.9)

[26] has named this parameterization as Discrete Authalic Parameterization(DAP).

Intrinsic Parameterization

From the above two sections it can be derived that, DCP and DAP holds a dualityproperty.Dirichlet Energy is a measure of the local area extension [26] and it depends only onthe local angles. It provides an angle-preserving mapping when minimized. Onthe other hand Chi Energy is a measure of local angle-excess [26] and is dependentonly on local area. So it provides an area-preserving mapping when minimized.This shows that they hold duality.As mentioned before, the distortion measure for a set of triangulation are linearcombinations of Minkowski functionals. However for fixed boundary conditions,the only distortion measures possible are linear combinations of the area and angledistortion measures. Therefore it can be conferred that, the family of admissible,simple distortion measures of a 1-ring is reduced to a linear combination of the twodiscrete distortion measures defined in the previous sections. So a general distortionmeasure can be written as:

E = λEA + µEχ (3.10)

where λ and µ are two arbitrary real constants. [26] suggested the relation µ = 1−λfor an optimal parameterization, as it ensures that the solution always interpolatesthe same boundary as λ is varied. This parameterization is optimal, as it is a linearcombination of two optimal parameterizations described above (DCP and DAP).The name Intrinsic Parameterization comes from the fact that it is based on theminimization of intrinsic distortion or intrinsic measures of the input mesh (Dirichletenergy and Chi energy).

Computation of Intrinsic Parameterization

Now the practical implementation of the theoretical results presented in the sec-tions before are discussed here. Here, computation of the parameterization problemis presented for the given 1-ring example of figure 3.6. The objective of this compu-tation is to solve for least-distorted parameterization with a fixed boundary.Applying the condition given in equation 3.5 on equation 3.10 the following equationis obtained:

∂E

∂ui= λ

∂EA

∂ui+ µ

∂Eχ

∂ui(3.11)

38

Page 55: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.5 Bijective Interpolation Algorithm

As this gradient of energy presented in equation 3.11 is linear, this reduces theproblem of computation of parameterization to solving a sparse linear system asbelow:

MU =[λMA + µMχ

0 I

] [Uinternal

Uboundary

]=

[0

Uboundary

]= C (3.12)

where U is the vector for unknown parameterized coordinates (separated for conve-nience into internal and boundary vertices), C is the vector for boundary conditionswhich contains the positions of the given boundary vertices, and MA and Mχ aregiven as follows:

MAij =

⎧⎨⎩

cot(αij) + cot(βij) if j ∈ N(i)−∑

k∈N(i) MAik if i = j

0 otherwise

Mχij =

⎧⎨⎩

cot(γij) + cot(δij)/|xi − xj |2 if j ∈ N(i)−∑

k∈N(i) MAik if i = j

0 otherwise

So from the above expression it is easily conceivable that, once the boundary ver-tices are chosen (either automatically or by user), the sparse system can efficientlybe solved using appropriate kind of solvers, both direct or iterative.However the matrix system given above can be modified to do a natural parame-terization, so that, the parameterization automatically finds the optimal boundaryand the user needs not to specify it explicitly. For this, the rows of matrix M inequation 3.12 which corresponds to the boundary nodes, have to be modified withthe equation below. For a given boundary node i, the equation is:

∑ijk

cotα(ui − uj) + cotβ(ui − uk) =∑ijk

R90(uk − uj) (3.13)

where α and β are the angles at node k and j respectively and R90 is a 90 rotationmatrix, in any direction.In previous sections, theoretical background and some implementational detailsabout the Intrinsic Parameterization are discussed, which is more or less a com-pendium of a more detailed article presented in [26].

Referring to the simple example case provided in figure 3.2, it is conferred that,it will look like as presented in figure 3.4(b) after parameterizing the region BEFDof the red mesh.

Now that the parameterization is done to make the non-conforming part of themesh as conforming, the next step for the Bijective Interpolation scheme is to forma common refinement of both the meshes. The next section concentrates on dis-cussing the Common Refinement [42] technique.

39

Page 56: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

3.5.3 Common Refinement Technique

Common Refinement technique was proposed by [42] to ensure numerically accu-rate and physically accurate data transfer between differing meshes, that result inmany scientific applications, such as Multi-physics simulation. [42] defines CommonRefinement as follows:A common refinement of two meshes is a mesh composed of polygons that subdividethe polygons of both input meshes simultaneously.Main steps of a common refiment procedure can be enumerated as follows:

• An interpolated projection is constructed between two mesh surfaces, thatgives a continuous and one-to-one correspondence between the point of theirrespective geometric realizations.

• Based on this point projections, the edge intersections are determined.

• The common refinement interface is constructed based on the informationprovided from the above two procedures.

From the above listing, it is observed that, there are two basic primitives requiredfor doing the common refinement, which are: Point Projection and Edge Interaction.In the following subsections these two primitives will be discussed.

Point Projection

Point projections is a commonly used technique to correlate points on two differentsurfaces. Though most commonly used projection methods are orthogonal projec-tion and colsest-point projection, unfortunately they are not suitable, as due to non-smoothness of the discretized surfaces these projection methods cannot ensure ahomeomorphism [42] between meshes. So a modified projection direction is con-structed, which provides a nearly orthogonal projection. For better understanding,of the method figure 3.7 of below is referred:

Figure 3.7: Point projection [42]

40

Page 57: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.5 Bijective Interpolation Algorithm

The objective is to find a projection of point P in the green mesh, on the blue mesh.For any point p ∈ |G|, its projection q ∈ |B| can be defined as :

q = p + γ(p)d(p) (3.14)

Here |G| and |B| represent green and blue mesh respectively, γ : |G| → R denotesthe length of q − p and d : |G| → S

2 denotes normalization of q − p. So it isunderstandable that d needs to be fixed first to set the projection direction. Thiscan either be fixed by the user, or computed as the average of facet normals. Thesecond procedure is what is followed in this literature. If xi is the ith vertex anddi is the associated unit vector, for a point p =

∑iNixi ∈ |G|, its direction d is

the normalized vector∑

iNidi as illustrated in figure 3.7, where Ni are the shapefunctions assoiated with the nodes. Substituing this value of d in equation 3.14 andrearranging, the following equation is obtained:

∑Nixi − p− γd = 0 (3.15)

Equation 3.15 has three unknowns(γ and two local coordinates) and same numberof equations(one for each component of the physical coordinates). For a triangularblue mesh, the system is linear, but for a quadrilateral mesh it is bilinear. Theprojection of a node q ∈ |B| to a green facet g ∈ G can also be computed in asimilar manner.This primitive returns the local coordinates of the projection and reports whether,p projects to the interior, an edge, a vertex or the exterior of a facet. The mainvirtues of this projection are it is close to orthogonal for reasonably smooth meshsurface, its projection directions form a continuous vector field over the surface andlast but not the least, it is convenient to compute.

Edge Intersection

This primitive computes the intersection of blue edge b ∈ B with a green edge g ∈ G.

Figure 3.8: Edge Intersection [42]

In reference to figure 3.8 let, b = b0b1 is the blue edge and g = g0g1 is the greenendge, the projection direction at g0 and g1 be d0 and d1, respectively. b and g

41

Page 58: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

can be parameterized as b0 + α(b1 − b0) and g0 + β(g1 − g0), respectively. Theprojection direction of a point in g in this case is d0 + β(d1 − d0). Applying thesame argument as equation 3.14 projection of any point in g on b is:

b0 + α(b1 − b0) = g0 + β(g1 − g0) + γ(d0 + β(d1 − d0)) (3.16)

Solving equation 3.16 will provide the information about the edge intersection, whichhas basically three equations and three unknowns. But unfortunately equationsobtained from 3.16 become ill-conditioned when b and g are nearly parallel. Soanother formulation is needed for getting the edge intersection. [42] suggests thefollowing equation:

n.(g0 + β(g1 − g0)− b0) = 0 (3.17)

where, n = (b1 − b0) × (d0 + β(d1 − d0)) is the normal of the plane that passesthrough the realization of intersection point in g. Substitution of the value of n inequation 3.17 leads to the following quadratic equation:

c2β2 + c1β + c0 = 0 (3.18)

where,

c2 = ((b1 − b0)× (d1 − d0)).(g1 − g0)c1 = ((b1 − b0)× d0).(g1 − g0) + ((b1 − b0)× (d1 − d0)).(g0 − b0)c0 = ((b1 − b0)× d0).(g0 − b0)

In the same manner, the realization of b is the intersection of edge b with the planepassing through g with a normal l = (g1−g0)× (d0 +β(d1−d0)). So the parameterα is obtained from the solution of the linear equation given below:

l.(b0 + α(b1 − b0)− g0) = 0 (3.19)

Equation 3.19 can be solved after β is obtained from equation 3.18.This primitive detemines realizations of the intersections in both the meshes andreports if the intersection is in the interior, at a vertex or an empty set. The in-tersection is in the interior of b, if α ∈ (0, 1), at a vertex if α = 0 or 1 and in theexterior otherwise. The same is for β. A solution corresponds to an actual edgeintersectio if α ∈ [0, 1] and β ∈ [0, 1] simultaneously.

After defining the two primitives used for common refinement, in the next sub-section a brief discussion is done about the data structure of the mesh, that will beused. In this literature a data structure called doubly connected edge list(DCEL) [8]is used which is suggested by [42].

DCEL Data Structure

The DCEL data structure is also known as half edge structure. Each edge is repre-sented by two oppositely directed half edge, each of which is said to be the twin of

42

Page 59: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.5 Bijective Interpolation Algorithm

the other. The origin vertex of a half edge h is denoted by org h and the destinationvertex by dst h.The origin of a half edge is the destination of its twin and vise versa.The half edge and its origin are said to be incedent. Each half edge bounds the facetto its left and a half edge and the facet it bounds are said to be incedent. Incedenthalf edges of a facet form a counter clockwise ring and those of a vertex forms aclockwise ring. For each eddge e, one half edge is chosen as primary half edge andthe origin/destination of e is the origin/destination of the primary half edge.This subsection is just a compendium of what was found in [8].

In the next section an important lemma called Host Candidate Lemma [42] is pre-sented. This lemma makes a very important part of the common refinement algo-rithm.

Host Candidate Lemma

The Host Candidate Lemma is important for deciding over the search direction of apoint projection for common refinement. Before stating the lemma, some importantterms need to be defined, that will be used in the lemma. These terms are definedin details in [13].

The term cell is used to refer to vertices or edges or facets of a mesh.

To indicate the vertices, edges and facets of a common refinement interface, a prefixsub is used with them, i.e. subvertices, subedges and subfacets.

If a cell σ is contained in another cell τ , it is represented as σ ≤ τ .

Closure of a subset S of a mesh M is represented as S = σ ∈M |σ ≤ τ ∈ S.

Star of a cell σ is denoted by Stσ = τ ∈ M |σ ≤ τ and the star of a subsetS is defined as StS =

⋃σ∈S Stσ.

Completion of the star of σ is defined as Csσ = Stσ − Stσ.

Host Candidate Lemma characterizes the relationship between the green parentsof the subvertices in a blue edge b (refer to figure 3.9). It states that, if the thegreen parent gi−1 of a blue subvertex ri−1 is known, the green parent gi for a bluesubvertex ri will lie in Csgi − Stgi−1(please refer to figure 3.9). Basically what ispresented here, is an important corollary of the actual host candidate lemma pro-posed by [42].

In the next section the algorithm for common refinement will be delineated.

43

Page 60: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

Common Refinement Algorithm

For better understanding of the algorithm figure 3.9 to 3.11 is referred. Also someof the terms which will be used in the algorithm description are defined before.The parent of a cell (vertex/edge/facet) either from blue or green mesh is the lowestdimensional blue or green cell that contains it. The steps and sub-steps for a commonrefinement algorithm can be enumerated as follows:

1. Phase one-locating subvertices

• Locating subvertices along the blue edges

• Sorting subvertices in their green host edges

• Determining blue parents for remaining green vertices

2. Phase two-Determining subfacets

Now each subcomponents are described in more details in the rest of this section.

Phase One-Locating Subvertices:

A-Locating Subvertices Along Blue EdgesThis step is explained in context of figure 3.9 and 3.10.

Figure 3.9: Locating subvertices along blue edges [42]

This step locates subvertices in the blue edges and blue vertices and determines theirgreen parents.The procedures can be listed as follows:

• At first some blue vertices and their green parents are selected by brute forceto start the process.

• The whole blue mesh(b) is traversed in a breadth-first order and for each edgeb ∈ B the subvertices are located from one end to the other. Let, b is a bluehalf edge and ro is the subvertex corresponding to org b whose green parentis known. The subvertices r1, . . . , rm, rm+1 = dst b in edge b are determinedby the point projection and edge intersection primitives. To find the possiblegreen host or parent cells that may contain the subvertices, host candidate

44

Page 61: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.5 Bijective Interpolation Algorithm

lemma is used.The use of host candidate lemma leads to an efficient algorithm, especiallywhen computing intersection of b with a green edges. If there is an intersectionin Csgi − Stgi−1, it must be the subvertex ri+1, else ri+1 = dst b. It avoidsunnecessary computation of intersection, when a blue edge is concurrent witha green edge, which otherwise would lead to infinitely many solutions of theedge intersection primitive.This can be explained in context of figure 3.10where b overlaps with the green edge bounded by riri+1. Because, ri ∈ b, butri = gi /∈ Cs gi, the green edge that is concurrent with b cannot be in Cs gi

Figure 3.10: Avoiding computation of intersection of concurrent edges [42]

B-Sorting Subvertices in Their Green Host EdgesAfter obtaining all the blue and green edge intersections, they have to be sortedin their green host edges. Referrig to figure 3.11 it is observed that, two adjacentsubvertices in a green edge must be contained in a common blue facet.

Figure 3.11: Conneting each pair of subvertices that are on the boundary of sameblue face and also same green edge [42]

The precedures to be done for this sorting can be listed as follows:

• All the blue facets are traversed for identifying the adjacency of subvertices ingreen edges.

45

Page 62: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

• For each blue facet, the subvertices in its edges and vertices based on theirgreen parents are grouped, with a green edge containing at most two subver-tices. Provided that a group has two subvertices, the one closer to the originof the green edge is termed as the predecessor of the one that is farther.

• The subvertices are then linked with each other, as illustrated in figure 3.11.After all the blue facets have been processed, the subvertices in each greenedge are connected together to form a sorted linked list.

C-Determining Blue Parents for Remaining Green VerticesAfter completion of above two steps, there will still remain some green vertices whichare not in a blue edge or a blue vertex, whose blue parents need to be determined.The steps for this determination can be listed as following:

• For each blue facet b, the traversing is started from the subvertices in its edgesand vertices to determine if any of them can project onto the blue facet basedon the Host Candidate Lemma.

• Then these subvertices are tested if they indeed project onto b using pointprojection.

• If a vertex projects onto b, the blue parent of that vertex will be b and thesame procedures as above are done for the neighboring green vertices.

• If otherwise, that green vertex is ignored and traversing is continued for otherleftout vertices.

This approach requires a global traversal of B and a local traversal of G.

Complexity of Phase OneNow the computational complexity for phase one of the common refinement algo-rithm will be discussed in this section. Let, n be the total number of vertices, edgesand facets in mesh B and G. The degree of a subvertex v, represented by d(v), isdefined as the number of blue and green facets that contain v and the sum of degreesof all subvertices is defined as k. According to [42] phase one has a comlexity ofO(n+ k) time and space.

Phase Two-Determining Subfacets:From phase one of the algorithm, all the subvertices are determined and are sortedin blue and green edges. The subedges of the common refinement interface are theintervals in the blue and green edges between the subvertices. Phase two of thealgorithm, connects these subvertices and subedges to determine subfacets of theinterface, i.e. it updates the element connectivity information of the two sourcemeshes to form the new common refinement interface. This is done by enumeratingsubfacets contained in a given blue or green facet. The idea of the procedure can bebetter viewed in reference with figure 3.12.

46

Page 63: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.5 Bijective Interpolation Algorithm

Figure 3.12: Enumerating subfacets of common refinement interface [42]

The basic idea of this procedure is using divide and conquer for the enumeration.The steps can be listed as below:

• Two adjacent subvertices are taken from the list.

• From one of this vertices a walk is made along the subedges.

• A left turn is taken whenever a subvertex is reached.

• The above procedures are continued untill all the subvertices are visited.

In the next paragraph the computational complexity of this procedure is discussed.

Complexity of Phase TwoAccording to [42], the time complexity of enumeration of the subfacets in a blue orgreen facet is O(m logm), where m is the number of subvertices contained in thefacet. The worst case situation is when m is O(n). But in most of the practicallyinteresting cases, there are well-shaped meshes, where m is bounded by a constant.According to [42] enumerating all subfacets typically takes O(n+ k) time, where nand k have their usual meaning described in some earlier section.

The explanation of the common refinement algorithm in the previous section, isa compendium of a much detailed discussion in [42]. The meshes of figure 3.2 willform a common interface as shown in figure 3.4(c) after applying the common refine-ment technique. Now that, the meshes are mapped onto each other, in a bijectivemanner, the next step is to transfer the data between the node points of the commonrefinement interface.This is discussed in the next section.

3.5.4 Common Refinement Based Data Transfer

The data transfer method used for the common refinement method is based onthe weighted residual method, which is equivalent to both Galerkin Method andRayleigh- Rithz Method. [41] names this method as L2 Minimization Method. In the

47

Page 64: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

following part a proof of this equivalence is provided.If

y(x)− f(x) = 0 (3.20)

be any problem. After multiplying equation 3.20 with a weighting factor w(x) andintegrating over any domain [a, b], the following equation is obtained

∫ b

aw(x)(y(x)− f(x))dx = 0 (3.21)

According to Galerkin’s Method w(x) ∈ φ(x)Ni=0. Let, y(x) be approximated with

u(x) such that,

y(x) ≈ u(x) =N∑

j=0

cjφj(x) (3.22)

where , cj is any constant and φj is the shape function. So the residual r(x) can bedefined as

u(x)− f(x) = r(x) (3.23)

According to weighted residual method∫ b

aw(x).r(x)dx = 0 (3.24)

Using value of r(x) from equation 3.23 and that of w(x) equation 3.24 becomes

∫ b

a

N∑j=0

cjφi(x)φj(x)dx =∫ b

aφi(x)f(x)dx (3.25)

Equation 3.25 reduces to an n × n linear system Mx = b where x is an unknownvector composed of cj . M is called the consistent mass matrix with M =

∫φiφjdx

and b is the load vector with components bi =∫φifdx.

Now the it will be shown that the common refinement based data transfer or dataassociation technique is equivalent to the weighted residual method presented inequation 3.25.Let, u(x) is the approximated function at some node/element (depends if the as-sociation is based on node or elements, please refer to figure 3.13) and f(x) is thefunction obtained by association of x. Association of x will be defined as assoc[x].Our goal is to minimize

∫ ba (u(x) − f(x))2dx =

∫ ba (u(x) − assoc[x]))2dx over all cj .

Which leads to the following equation,

∂cj

∫(u(x)− assoc[x])2dx = 0 (3.26)

Equation 3.26 is processed in the following steps

∂cj

∫ b

a[(u(x))2 + (assoc[x])2]dx =

∂cj

∫ b

a2u(x).assoc[x]dx

48

Page 65: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3.5 Bijective Interpolation Algorithm

(a) Node based data association (b) Element based data association

Figure 3.13: Data association method

Let(u(x))2 = u(x).u(x) =∑N

i,j=1 cj2φi(x)φj(x). Applying this relation to above

equation the following is obtained,

∫ b

a

∂cj

[ N∑i=i,j

cj2φi(x)φj(x) + (assoc[x])2

]dx = 2

∫ b

a

∂cj

⎛⎝ N∑

j=0

cjφj(x).assoc[x]

⎞⎠ dx

which after differentiation becomes∫ b

a

N∑j=0

cjφ(x)φj(x)dx =∫ b

aφj(x).assoc[x]dx (3.27)

How equation 3.27 is reached can be understood from the following two explanations:

Explanation 1:The formation of left hand side of equation 3.27 is explained here. Let,

u(x) = c1φ1 + c2φ2 + c3φ3

then,

(u(x))2 = (c1φ1 + c2φ2 + c3φ3).(c1φ1 + c2φ2 + c3φ3)= c21φ

21 + c22φ

22 + c23φ

23 + 2c1c2φ1φ2 + 2c2c3φ2φ3

Now differentiating (u(x))2 with respect to c1 leads to

∂c1(u(x))2 = 2c1φ2

1 + 2c2φ1φ2

= 2φ1(c1φ1 + c2φ2)

= 2N∑

j=0

cjφiφj

Explanation 2:This part explains the formation of the right hand side of equation 3.27.

∂cj

⎛⎝ N∑

j=0

cjφj(x).assoc[x]

⎞⎠ =

∂cj[(c0φo + c1φ1 + . . .).assoc[x]]

49

Page 66: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

3 Bijective Interpolation Method

Now let, cj = co. So the above equation has the following form,

∂co[(c0φo + c1φ1 + . . .).assoc[x]] = φ0.assoc[x]

= φi.assoc[x]

where i is non-varying index.

So it is observed that, equation 3.25 and 3.27 are equivalent, which indicates thatthe commmon refinement based data transfer is equivalent to Galerkin Method.In the next subsection the computational cost of common refinement based dataassociation is discussed.

Computational Cost for Common Refinement Based Data Association

It is obvious from the previous discussions that, common refinement based dataassociation method needs some sort of search operation to associate target nodes tothe source elements or nodes. According to [41] associating a point with an elementof mesh with n elements is an O(logn) time operation. However associating m nodeswill require O(n +m) time, for well shaped meshes, provided some advantages areobtained from the topological information and locality [41].

In this chapter the Bijective Interpolation Scheme is proposed and all parts of itare explained in theoretical context. This method can prove to be a very useful toolwhich will facilititate accurate data transfer for many industrial applications, e.g.stamping and crash simulations in automobile industry. The application areas andsituations where such an interpolation scheme is needed are explained in the earlierpart of the chapter.

In the next chapter implementation of the interpolation methods, discussed in theearlier chapters and in this chapter, are produced.

50

Page 67: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

4 Implementation

This chapter can be subdivided into two portions. In the first portion of this chap-ter, algorithm for computer implementation of the Radial Basis Function basedinterpolation is presented. The second portion contains the algorithm for the imple-mentation of Intrinsic Parameterization Method which in conjuction with CommonRefinement of meshes and Common Refinement Based Data Transfer will makeanother independent interpolation scheme named as Bijective Interpolation Scheme.

4.1 Radial Basis Function

The main algorithm for the implementation of radial basis function method can bepresented as below:

Algorithm 4.1 Radial Basis Function-Main Algorithm1: readParameters() reads the mesh information for fluid & solid2: constructCSS() constructs Cs matrix of equation 2.353: constructAFS() constructs Cfs matrix of equation 2.354: inverseMatrix() inverses matrix CSS5: calculateFluidDeformation() calculates the deformation of the fluid mesh6: after equation 2.217: calculateNewMesh() calculates the new mesh information of fluid & solid8: after the deformation9: visualizeMesh() visualization of input & output mesh

The most important methods of algorithm 4.1 are constructCSS and constructAFS.Algorithms for these two will be provided in the next portion.The algorithm for construction of CSS is given as below:

Algorithm 4.2 Construction of CSS1: function constructCSS2: CSS[ ][ ]← matrix CSS of equation 2.353: cssrcno← row number of CSS4: rbfmatrix[ ][ ]← a temporary matrix5: slndno← number of solid nodes6: tn1[3] & tn2[3]← two temporary vectors

51

Page 68: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

4 Implementation

7: initialize first 4× 4 elements of CSS with 0.08: initialize CSS[1][5] to CSS[1][cssrcno] with 1.09: initialize CSS[5][1] to CSS[cssrcno][1] with 1.0

10: initialize CSS[2][5] to CSS[4][cssrcno]11: with x, y z components of solid node coordinates12: intialize CSS[5][2] to CSS[cssrcno][4] with13: the transpose of the entries of CSS[2][5] to CSS[4][cssrcno]14: for i← 1, slndno do calculates upper triangular part of rbfmatrix15: tn1[3]← ith solid node16: for j ← i, slndno do17: tn2[3]← jth solid node18: rbfmatrix[i][j]← calculateRBF(tn1, tn2)19: end for20: end for21: transpose upper off-diagonal portion of rbfmatrix22: copy the traposed portion to lower off-diagonal portion of CSS23: fill in CSS[5][5] to CSS[cssrcno][cssrcno]24: with the entries of rbfmatrix[ ][ ]25: end function

The algorithm for construction of AFS of equation 2.36 is provided below:

Algorithm 4.3 Construction of AFS1: function constructAFS2: AFS[ ][ ]← matrix AFS of equation 2.363: afscno← column number of AFS4: rbfmatrix[ ][ ]← a temporary matrix5: flndno← number of fluid nodes6: slndno← number of solid nodes7: tn1[3] and tn2[3]← two temporary vectors8: initialize first column of AFS with 1.09: initialize AFS[1][2] to AFS[flndno][4] with

10: x, y and z coordinate of fluid node11: for i← 1, f lndno do calculates upper triangular part of rbfmatrix12: tn1[3]← ith fluid node13: for j ← 1, slndno do14: tn2[3]← jth solid node15: rbfmatrix[i][j]← calculateRBF(tn1, tn2)16: end for17: end for18: fill in AFS[1][5] to AFS[flndno][afscno]19: with the entries of rbfmatrix[ ][ ]20: end function

52

Page 69: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

4.2 Intrinsic Parameterization

From algorithm 4.2 and 4.3 provided above it is observed that, both of them usea function called calculateRBF, which uses equation 2.37 to calculate φ‖x‖, thealgorithm for which can be provided as follows:

Algorithm 4.4 Calculation of φ‖x‖1: function calculateRBF(node1, node2)2: node1← coordinate of the first node3: node2← coordinate of the second node4: distance← distance between node1 and node25: rad← r of equation 2.376: rbf ← return value of the function7: maxrbf := 4

3 × π × rad3

8: if distance ≥ 2× rad then9: rbf ← 0.0

10: end if11: if distance == 0.0 then12: rbf ← maxrbf13: end if14: if distance < 2× rad and distance = 0.0 then15: rbf ← calculate rbf from equation 2.3716: end if17: end function

4.2 Intrinsic Parameterization

In this section, the algorithm for Intrinsic Parameterization will be presented. Themain algorithm for intrinsic parameterization is as below:

Algorithm 4.5 Intrinsic Parameterization-Main Algorithm1: readParameters() reads the mesh data2: initBorder() identifies border nodes3: paramBorder() fixes the border for the parameterized mesh4: initMatrix() initializes the parameterization matrix5: solveParameterization() solves the parameterization matrix for6: parameterized coordinates7: visualizeMesh() visualization input and output mesh

Among all the methods of algorithm 4.5, the most significants are initBorder andinitMatrix. They need to be presented in more details.Algorithm for initBorder looks like following:

53

Page 70: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

4 Implementation

Algorithm 4.6 Construction of the border list1: function initBorder2: ELEMENT ← number of elements3: sortedelem[ ][ ]← element table4: temp← temporary variable5: for i← 1 , ELEMENT do sorting the element table6: for j ← 2 , j > 0 do7: for k = 1 , k ≤ j do8: if sortedelem[i][k − 1] > sortedelem[i][k] then9: temp← sortedelem[i][k − 1]

10: sortedelem[i][k − 1]← sortedelem[i][k]11: sortedelem[i][k]← temp12: end if13: end for14: end for15: end for16: for rowind← 1 , ELEMENT do check for each node pair of a17: row of sortedelem18: compareNodePair(sortedelem[rowind][0], sortedelem[rowind][1],19: rowind, nxtrowind, sortedlelem, internedge)20: compareNodePair(sortedelem[rowind][0], sortedelem[rowind][2],21: rowind, nxtrowind, sortedlelem, internedge)22: compareNodePair(sortedelem[rowind][1], sortedelem[rowind][2],23: rowind, nxtrowind, sortedlelem, internedge)24: end for25: end function

From algorithm 4.6 it is observed that a method compareNodePair is called. Thismethod takes a pair of nodes and checks if there is a match for both of these nodesin the rest of the element table. In case a match is found for both the nodes, theyare pushed-in to an initially empty vector called internedge, which will eventuallycontain node pairs that make an internal edge. In case no match is found, for boththe nodes of a pair, they are pushed-in to a vector called border, that will eventuallycontain all the border nodes only one time.

Algorithm 4.7 Checks if a node is a border or an internal node1: function compareNodePair(nd1, nd2, rind, nxtrind, sortedelem, internedge)2: nd1 and nd2← node1 and node2 from initBorder3: rind← rowind from initBorder4: internedge← vector containing internal edge node pairs5: found← false a boolean variable

54

Page 71: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

4.2 Intrinsic Parameterization

6: if nd1 and nd2 /∈ internedge then7: for nxtrind← rind+ 1, ELEMENT do8: if nd1 ≥ sortedelem[nxtrind][1] then9: for k ← 1, 2 do

10: if nd1 == sortedelem[nxtrind][k] then11: for l← k + 1, 3 do12: if nd2 == sortedelem[nxtrowind][l] then13: push nd1 to vector internedge14: push nd2 to vector internedge15: set found to true16: break17: end if18: end for19: end if20: if found == true then21: break22: end if23: end for24: end if25: if found == true then26: break27: end if28: end for29: else30: return31: end if32: if found == false then33: if nd1 /∈ internedge then34: push nd1 to vector border35: end if36: if nd2 /∈ internedge then37: push nd2 to vector border38: end if39: end if40: end function

Now the algorithm for method initMatrix will be presented. This method formsthe parameterization matrix MATRIX according to equation 3.12. The algorithmlooks like below:

55

Page 72: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

4 Implementation

Algorithm 4.8 Forms MATRIX according to equation 3.121: function initMatrix2: initNonDiagonalEntries() initializes non- diagonal elements3: of MATRIX4: initBorderEntries() initializes entries for border nodes5: initDiagonalEntries() initializes diagonal elements of MATRIX6: end function

From algorithm 4.8 it is observed that, there are three method calls, which are namedas initNonDiagonalEntries, initBorderEntries and initDiagonalEntries.

The method initNonDiagonalEntries sets the non-diagonal entries for internalnodes of matrix M presented in equation 3.12. The algorithm looks as following:

Algorithm 4.9 Sets non-diagonal entries for MATRIX1: function initNonDiagonalEntries2: t1, t2, t3, t4 temporary variables3: nintedge← number of entries in vector internedge4: found← false a boolean variable5: neighbornode variable that contains the third node of a triangular6: element7: MU & LAMBDA parameterization parameters defined in equation 3.108: alpha & gamma angles defined in figure 3.69: for i← 1 , nintedge , i← i+ 2 do

10: t1← internedge[i]11: t2← internedge[i+ 1]12: if t1 /∈ border then13: for j ← 1, ELEMENT do14: if checkRow(j, t1) && checkRow(j, t2) then15: t3← j16: found← false17: for k ← j + 1,ELEMENT do18: if checkRow(k, t1) && checkRow(k, t2) then19: found← true20: t4← k21: end if22: if found == true then23: break24: end if25: end for26: returnNeighbor(t1, t2, t3, neighbornode)27: t3← neighbornode28: returnNeighbor(t1, t2, t4, neighbornode)

56

Page 73: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

4.2 Intrinsic Parameterization

29: t4← neighbornode30: break31: end if32: end for33: calculateCotangent(t1, t2, t3, alpha, gamma)34: calculateDistSqrij(t1,t2,distsqr) calculates square of distance35: between nodes t1 & t2.36: MATRIX[t1][t2] := MU × gamma/distsqr37: MATRIX[t1][t2] := MATRIX[t1][t2] + LAMBDA ∗ alpha38: end if39: if t2 /∈ border then40: . . . do procedure from 13 to 36 by interchanging t1 & t241: end if42: end for43: end function

In the above algorithm some methods, named as checkRow, returnNeighbor,calculateCotangent and calculateDistSqrij, are called. The method check-Row takes two parameters. The first one of them corresponds to the row index ofelement table elem and the secod one is a node number. checkRow returns true ifthe node is found in the specified row of elem.The method returnNeighbor finds the third node of a triangular element andstores this node identity in neighbornode.As goes by the name, calculateCotangent calculates the Cotangent of the anglebetween two edges.

The algorithm for method initBorderEntries, that sets the entries for border nodesin matrix MATRIX is produced below:

Algorithm 4.10 Sets entries for border nodes in MATRIX1: function initBorderEntries2: nborder ← number of entries in vector border3: NODE ← number of nodes in mesh4: for i← 1, nborder do5: tmp← border[i]6: for j ← 1, 2×NODE do7: MATRIX[tmp][j]← 0.08: MATRIX[NODE + tmp][j]← 0.09: end for

10: MATRIX[tmp][tmp]← 1.011: MATRIX[NODE + tmp][NODE + tmp]← 1.012: end for13: end function

57

Page 74: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

4 Implementation

In the following portion, algorithm for initDiagonalEntries is given. This methodsets the diagonal entries of MATRIX for internal nodes of the mesh. The algorithmlooks like below:

Algorithm 4.11 Sets diagonal entries MATRIX1: function initDiagonalEntries2: for i← 1, NODE do3: if i /∈ border then4: MATRIX[i][i]← 0.05: for j ← 1, NODE do6: if i = j then7: MATRIX[i][i] := MATRIX[i][i]−MATRIX[i][j]8: MATRIX[NODE + i][NODE + i]9: := MATRIX[NODE + i][NODE + i]−MATRIX[i][j]

10: end if11: end for12: end if13: end for14: end function

In this chapter algorithms for the most significant portions of radial basis functionand intrinsic parameterization have been provided. In the following chapter resultsare produced for some test cases, using the algorithms specified here.

58

Page 75: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5 Results

As goes by the name, in this chapter results of some test cases will be producedusing the algorithms presented in the previous chapters. The chapter can be sub-divided into two main sections. In the first section, results for test cases obtainedby applying radial basis funtion based interpolation will be produced. The othersection will provide results for the common refinement based data transfer whichincludeds intrinsic parameterization and a data transfer based on the now availablemethods in MpCCI c© [30].

5.1 Radial Basis Function

5.1.1 Problem Description

For testing the performance of radial basis function based interpolation scheme, asimple test case of fluid-structure interaction is chosen. So there are two surfacemeshes available, one for the fluid side which is based on FVM based discretizationand the other comes from the FEM based discretization for the solid side. Anarbitrary force distribution is assumed at the central portion of the fluid mesh. Theobjective is to obtain the interpolated deformation of the fluid mesh and solid mesh.So it is quite obvious that, algorithm 4.1 will be used in this purpose.

Figure 5.1: Meshes of fluid and solid side

59

Page 76: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5 Results

Figure 5.2: Force distribution on fluid mesh

Figure 5.3: Deformation contours on fluid and solid mesh

60

Page 77: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5.1 Radial Basis Function

Figure 5.1 shows the mesh structures for the fluid and solid side (blue and gray forfluid and structure meshes respectively) and figure 5.2 presents the force distributionon the central portion of the fluid mesh.

5.1.2 Results From RBF

Now the required deformations of the two meshes are obtained by RBF interpolation,which can be seen in figure 5.3. It is observed from figure 5.3 that, the deformation ofthe fluid and the solid meshes are not exactly matching, but the region of deformationfor both the meshes are quite the same. However this non-conformity is quite logical,as the discretization schemes used for them are not similar and that is what raisesthe need of an interpolation.

Figure 5.4: Deformed fluid(left) & solid(right) mesh

From figure 5.4 the fluid and solid mesh after the deformation can be seen. Asexpected, both the meshes have undergone similar deformation in similar zones ofthe mesh.After visualizing the output of this test case, another interesting point to observe, isthe percentage of time, taken by different methods of algorithm 4.1. The followingtable shows this, without considering the visualization method of algorithm 4.1

Percentage of Time Taken By Different Methods of Algorithm 4.1Name % of time

readParameters 0.40constructCSS 0.40constructAFS 1.40inverseMatrix 19.83

calculateFluidDeformation 77.95calculateNewMesh 0.02

61

Page 78: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5 Results

A problem size versus time plot for algorithm 4.1 is shown below:

Figure 5.5: Performance of algorithm 4.1

From the observation of figure 5.5 it is quite obvious that the performance of thecurrent implementation of RBF is not so good. From table 5.1.2, it can be eas-ily identified that the calculateFluidDeformation method is the source. Thisfunction uses a matrix multiplication of a symmetric and a non-symmetric matrix.However the performance issue was not in the main objecitve of this implementationbut to make the RBF method functional and observe its applicability for FSI. So,improvement of its performance can be done in a future work.

5.2 Data Transfer Based on Intrinsic Parameterization

5.2.1 Problem Description

For studying the performance of common refinement based data transfer, the follow-ing example case shown in figure 5.6 is taken. This is a half shpere with sinusoidalscalar data distribution of arbitrary frequency. The half sphere is discretized withtriangular FEM meshes. The objective is to transfer data from this halfsphere tothe circular surface shown in figure 5.7, which is discretized with FVM meshes.

62

Page 79: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5.2 Data Transfer Based on Intrinsic Parameterization

Figure 5.6: Half sphere with sinusoidal data distribution

Figure 5.7: Circular surface mesh

So, this data transfer scheme is subdivided into two steps. The first is to param-eterize this halfshpere to make it a 2D circular mesh, so that the geometric non-conformity between meshes in figure 5.6 and 5.7 is removed. The second stepinlcludes transfer of data using MpCCI c© [30].

63

Page 80: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5 Results

5.2.2 Results from Intrinsic Parameterization

The mesh of figure 5.6 looks like as in figure 5.8 when parameterized with algo-rithm 4.5. Here, it is observed that, the data distribution remains the same (sinu-soidal), which indicates that the parameterization is a conservative process. How-ever, the concentratin of data may vary from center to border, depending on theparameter λ and µ presented in equation 3.10.

Figure 5.8: Parameterized mesh

The percentage of time spent by different methods of algorthim 4.5 can be seen inthe following table:

Percentage of Time Taken By Different Methods of Algorithm 4.5Name % of time

readParameters 0.01initBorder 0.01

paramBorder 0.03initMatrix 0.13

solveParameterization 99.82

A performance curve showing the problem size against time-take for algorithm 4.5is seen below:

64

Page 81: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5.2 Data Transfer Based on Intrinsic Parameterization

Figure 5.9: Performance of algorithm 4.5

From figure 5.9 it is observed that the performance of algorithm 4.5 worsens forlarge problem size. Table 5.2.2 clearly indicates that, this occurs in the solvePa-rameterization method of algorithm 5.9, that uses Gauss-Seidel method with fullpivoting to solve the parameterization matrix which is large and sparse but non sym-metric. The reason of such simplification is quite obvious. The main objective ofthis implementation was to make the intrinsic parameterization method functionaland observe its applicability for solving the problem of data transfer. However abetter performance might be obtained by using SPARSPAK, SPARSKIT, SuperLU,ARPACK, CAPSS, etc.

5.2.3 Results From MpCCI c© Based Data Transfer

Now that the parameterization of the mesh is done, the next step is to make thedata transfer. This is done here by the available methods in MpCCI c©. CurrentlyMpCCI c© uses two methods of data transfer. One is based on minimal distace [31]based search algorithm and the other is based on element intersection [31]. Detailsabout the data transfer method of MpCCI c© can be found in [31].

65

Page 82: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5 Results

Figure 5.10: Data transfer using element intersection

Figure 5.11: Data transfer using minimal distance

In figure 5.10 the result of data transfer from the parameterized mesh (figure 5.8)to the traget mesh (figure 5.7) by element intersection based method can be seen.The mesh on the left corresponds to source mesh and that on the right correspondsto the target mesh after data has been transferred. From the figure it is obviousthat, the magnitude of the maximum and minimum data in the source and targetmeshes are not similar. This however is not an unexpected phenomenon. As thesmoothness of the meshes are different, it may happen that, one element of target

66

Page 83: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5.2 Data Transfer Based on Intrinsic Parameterization

mesh intersects with multiple elements of the source mesh, or the vise versa. Sobased on this intersection area, data is averaged on the target element using thecorresponding shape function of the data distribution.

Figure 5.11 presents the result of data transfer from the mesh on the left to thaton the right using minimal distance based transfer method. Here also the samephenomenon is observed as was done in figure 5.10. In this case, this occurs due tothe fact that, a particular node of a target mesh, gets the data from all those nodesof source mesh, which are at a specific minimal distance from the traget node. Thedata on this target node is the averaged value of the data of the source nodes.

However the choice of the method depends highly on the type of geometry, datadistribution and also smoothness of the source and traget mesh. More observationsfrom a lot of other test cases are required, to make a good guess about the suitabilityof these methods in particular application area.

67

Page 84: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

5 Results

68

Page 85: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

6 Conclusion

The main objective of this Master Thesis research work was to address the is-sue of data transfer between non-matching meshes, which arise in different kindsmulti-physics/multi-disciplinary simulation problems as fluid-structure interaction,thermo-fluid coupling, stamping-crash simulation, etc, dealt with partitioned orweak coupling approach.

One of the main taks of this thesis work was to study different interpolation schemes,which are used for transferring data. In this thesis two existing and widely usedmethods named as Radial Basis Function method & Inverse Isoparametric Methodhave been studied. Especially, the radial basis function (RBF) method was particu-larly interesting, as it already gained a wide acceptability for producing good results.Because of the importance of RBF method, it was implemented as a computer pro-gram and results from a fluid-structure interaction test case have been presentedhere, produced by RBF method. From the observation of these results, it couldbe easily concluded that, RBF method is in fact very suitable for fluid-structureinteraction simulation, provided that a proper support radius is chosen.

The most unique part of this thesis work was the proposal of the algorithm for a to-tally new data interpolation scheme, named as Bijective Interpolation Scheme. Thisscheme is based on the concept of Intrinsic Parameterization of mesh and CommonRefinement based data transfer. The main reason for developing this new algorithm,was to ensure accurate data transfer between non-matching meshes, which arise dueto inaccurate CAD modelling of geometry done in the industry, e.g. automobileindustry. This method can prove to be very effective for industrial applications like,stamping- crash simulation, thermo-fluid coupling of engine parts, car under bodysimulation, etc. In this thesis work, the intrinsic parameterization part was imple-mented in computer and later on some data transfer results were shown using theschemes avaiable now in MpCCI c©. Provided that the common refinement baseddata transfer part is also implemented, the whole bijective interpolation scheme isexpected to produce a much better results with better performance. This can be afuture possible work in the field of development of bijective interpolation scheme.

However there is another very interesing and important direction of future work onthe proposed bijective interpolation scheme. So far the proposed method is testedonly for scalar data, such as temperature. There has to be some more research

69

Page 86: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

6 Conclusion

done, on how to ensure accurate transfer of vector data between the non-conformingmeshes. This is because, ater performing parameterization of the meshes, it mighthappen that the direction of vector data on the parameterized meshes are not ap-propriate any more.

Provided that these two developments are done, Bijective Interpolation scheme canprove to have a wide range of applicability in research and industry.

70

Page 87: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Bibliography

[1] URL: http://www-unix.mcs.anl.gov/mpi/mpich/.

[2] Beckert A. and Wendland H. Multivariate Interpolation for Fluid-Structure-Interaction Problems Using Radial Basis Function. Aerosp. Sci. Technol., 00:1–11, 2001.

[3] Felippa C. A. URL: http://www.colorado.edu/engineering/Aerospace/CAS/courses.d/FSI.d/.

[4] Farhat C. and Lesoinne M. On the Accuracy, Stability and Performance ofthe Solution of Three-Dimensional Nonlinear Transient Aeroelastic Problemsby Partitioned Procedures. AIAA-96-1388, pages 629–641, 1996.

[5] Farhat C., Lesoinne M., and Maman N. Mixed Explicit/Implicit Time Inte-gration of Coupled Aeroelastic Problems : Three-Field Formulation, GeometricConservation and Distributed Solution. Internationl Journal for NumericalMethods in Fluids, 21:807–835, 1995.

[6] Farhat C., Lesoinne M., and Chen P. Parallel Heterogeneous Algorithms forthe Solution of Three-Dimensional Transient Coupled Aeroelastic Problems.AIAA-95-1290, pages 1146–1159, 1995.

[7] Felippa C.A., Park K.C., and Farhat C. Partitioned Analysis of Coupled Me-chanical Systems. Technical report, Center for Aerospace Structures, Universityof Colorado, March 1999.

[8] Berg de M.and Kreveld van M., Overmars M., and Schwarzkopf 0. Computa-tional Geometry : Algorithms and Applications. Springer, Berlin, 2nd edition,2002.

[9] Huttenlocher D.P. and Kedem K. Computing The Minimum Hausdorff Distancefor Point Sets Under Translation. In 6th Ann. ACM Sympos. Comput. Geom.,Berkley, CA, pages 340–349, June 1990.

[10] Schmitt A. F. A Least Squares Matrix Interpolation of Flexibility InfluenceCoefficients. Journal of Aeronautical Sciences, page 980, 1956.

[11] C. Farhat, S. Lanteri, and H.D. Simon. TOP/DOMDEC, A Software Tool forMesh Partitioning and Parallel Processing. J. Comput. Syst. Eng., 6:13–26,1995.

71

Page 88: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Bibliography

[12] C. Farhat and M. Lesoinne. Automatic Partitioning of Unstructured Meshes ForThe Parallel Solution of Problems in Computatioal Mechanics. InternationalJournal of Numerical Methods in Engineering, 36:745–764, 1993.

[13] Edelsbrunner H. Geometry and Topology for Mesh Generation. CambridgeUniversity Press, Cambridge, 2001.

[14] Wendland H. Ein Beitrag zur Interpolation mit radialen Basisfunktionen. Mas-ter’s thesis, University of Goettingen, 1994.

[15] Wendland H. Piecewise Polynomial, Positive Definite and Compactly Sup-ported Radial Basis Functions of Minimal Degree. In Advanced ComputationalMathematics, volume 4, pages 389–396. 1995.

[16] Wendland H. Fast Evaluation of Radial Basis Functions:Methods Based onPartition of Unity. In Chui X. C. K, Schumaker L. L., and Utreras F. I.,editors, In Approximation Theory, pages 473–483. Vanderbilt University Press,Nashville, 2002.

[17] Wendland H. Computational Aspects of Radial Basis Functions Approxima-tion. In Jetter K et al., editor, Topics in Multivariate Approximation andInterpolations, pages 1–25. Elsevier, 2005.

[18] P. Henrici. Error Propagation for Difference Methods. Wiley, New York, 1964.

[19] Schmalzing J. and Kerscher M. Minkowsky Functionals in Cosmology. InGeneration of Large-Structure in Cosmology, pages 255–260. 1997.

[20] Smith M. J., Hodges D. H., and C. E. S. Cesnik. Evaluation of Computa-tional Algorithms Suitable for Fluid-Structure Interactions. Journal of Aircraft,37(2):282–294, April 2000.

[21] Smith M. J., Hodges D. H., and Cesnik C. E. S. An Evaluation of Computa-tional Algorithms to Interface Between CFD and CSD Methodologies,WL-TR-96-3055. Technical report, Flight Dynamics Directorate, Wright Laboratory,Wright-Patterson Air Force Base, OH 45433-7562, November 1995.

[22] Jiamin R. K., Jiao X., Geubelle P. H., and Loth E. Assessment of ConservativeLoad Transfer for Fluid-Solid Interface with Nonmatching Meshes. Interna-tional Journal for Numerical Methods in Engineering, pages 1–45, 2004.

[23] Goura G. S. L. Time Marching Analysis of Flutter Using Computational FluidDynamics, September 2001. A Dissertation Submitted in Partial Fulfillment ofthe Requirements for Ph.D at University of Glasgow.

[24] Harder R. L. and Desmarais R. N. and. Interpolation Using Surface Splines.AIAA Journal, 9(2):189–191, 1972.

72

Page 89: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

[25] Meirovitch L. Analytical Methods in Vibrations. MacMillian Publishing Co.,New York, 1967.

[26] Desbrun M., Meyer M., and Alliez P. Intrinsic Parameterizations of SurfaceMeshes. EUROGRAPHICS, 21(2), 2002.

[27] Rodden W. P. Further Remarks on Matrix Interpolation of Flexibility InfluenceCoefficients. Journal of Aerospace Science, 26:760–761, November 1959.

[28] K. C. Park. Partitioned Transient Analysis Procedurfes for Coupled-Field Prob-lems : Stability Analysis. Journal of Applied Mechanics, 47:370–376, 1980.

[29] Ahrem R., Beckert A., and Wendland H. A New Multivariate InterpolationMethod For Large-Scale Spatial Coupling Problems In Aeroelasticity. Techni-cal report, Institut fur Numerische und Angewandte Mathematik, UniversitatGottingen, Lotzestr. 16-18, 37083 Gottingen, Germany, 2001.

[30] Fraunhofer Institute SCAI. URL: http://www.scai.fraunhofer.de/mpcci.0.html.

[31] Fraunhofer Institute SCAI. MpCCI Manual / Technical Reference, URL: http://www.scai.fraunhofer.de/592.0.html?&L=1.

[32] A. M. Turing. Rounding-off Errors in Matrix Process. Quart. J. Mech., 1:287–308, 1987.

[33] Pinkall U. and Polthier K. Computing Discrete Minimal Surfaces. ExperimentalMathematics, 2(1):15–36, 2002.

[34] Murti V. and Valliappan S. Numerical Inverse Isoparametric Mapping inRemeshing and Nodal Quantity Contouring. Computers and Structures,22(6):1011–1021, 1986.

[35] R. F. Warming and B. J. Hyett. The Modified Equation Approach to The Sta-bility and Accuracy Analysis of Finite Difference Methods. Journal of Compu-tational Physics, 14:159–179, 1974.

[36] Lewis R. W.(ed). Numerical Methods in Coupled Problems. Wiley, London,1984.

[37] Lewis R. W.(ed). Numerical Methods for Transient and Coupled Problems.Wiley, London, 1987.

[38] J. H. Wilkinson. Rounding Errors in Algebraic Processes. Prentice-Hall, En-glewood Cliffs,N.J., 1963.

[39] Jiao X., Edelsbrunner H., and Heath M. T. Mesh Association: Formulation andAlgorithms. Technical report, Department of Computer Science, University ofIllinois, Urbana, IL 61801.

73

Page 90: Analysis of Data Transfer Methods Between Non-Matching … · 2019-05-18 · Analysis of Data Transfer Methods Between Non-Matching Meshes In Multiphysics Simulations Faisal Ahmed

Bibliography

[40] Jiao X. and Heath M.T. Feature Detection for Surface Meshes. Technical re-port, Computational Science and Engineering, University of Illinois at Urbana-Champaign, Urbana, IL 61801, USA.

[41] Jiao X. and Heath M. T. Common Refinement Based Data Transfer BetweenNon-matching Meshes in Multiphysics Simulations. International Journal ForNumerical Methods in Engineering, 61:2402–2427, 2004.

[42] Jiao X. and Heath M. T. Overlaying of Surface Meshes, Part I : Algorithms.International Journal For Computational Geom. and Applications, June 2004.

74