Meshing, geometric modeling and numerical simulation 1. Form functions, triangulations 9781786300386, 1811861881


239 31 8MB

English Pages 379 Year 2017

Report DMCA / Copyright

DOWNLOAD PDF FILE

Table of contents :
Half-Title Page......Page 1
Dedication......Page 2
Title Page......Page 3
Copyright Page......Page 4
Contents......Page 5
Foreword......Page 9
Introduction......Page 11
1.1. Basic concepts......Page 15
1.2.1. Generic expression of shape functions......Page 18
1.2.2. Explicit expression for degrees 1?3......Page 22
1.3. Shape functions, reduced elements......Page 26
1.3.1. Simplices, triangles and tetrahedra......Page 27
1.3.2. Tensor elements, quadrilateral and hexahedral elements......Page 31
1.3.3. Other elements, prisms and pyramids......Page 48
1.4.1. Rational triangle with a degree of 2 or arbitrary degree......Page 49
1.4.3. General case, B-splines or Nurbs elements......Page 50
Chapter 2: Lagrange and Bézier Interpolants......Page 52
2.1. Lagrange?Bézier analogy......Page 53
2.2.1. The case of tensors, natural coordinates......Page 54
2.2.2. Simplicial case, barycentric coordinates......Page 62
2.4. Application to curves......Page 65
2.4.1. Bézier expression for a Lagrange curve......Page 66
2.4.2. Lagrangian expression for a Bézier curve......Page 69
2.5.1. Bézier expression for a patch in Lagrangian form......Page 70
2.5.2. Lagrangian expression for a patch in Bézier form......Page 72
2.6.1. The tensor case, Bézier expression for a reduced Lagrangian patch......Page 73
2.6.2. The tensor case, definition of reduced Bézier patches......Page 81
2.6.3. The tensor case, Lagrangian expression of a reduced Bézier patch......Page 89
2.6.4. The case of simplices......Page 91
Chapter 3: Geometric Elements and Geometric Validity......Page 94
3.1. Two-dimensional elements......Page 95
3.3. Volumetric elements......Page 104
3.4. Control points based on nodes......Page 110
3.5.1. Simplices, triangles and tetrahedra......Page 114
3.5.2. Tensor elements, quadrilaterals and hexahedra......Page 115
3.5.3. Other elements, prisms and pyramids......Page 119
3.6.2. Degree 2, working on the arc of a circle......Page 120
3.6.3. Application to the analysis of rational elements......Page 122
3.6.4. On the use of rational elements or more......Page 137
Chapter 4: Triangulation......Page 139
4.1.1. Definitions and basic concepts First-order simplices......Page 140
4.1.4. A shell of a k-face......Page 143
4.2. Topology and local topological modifications......Page 144
4.2.3. Flipping an edge in three dimensions......Page 146
4.2.4. Other flips?......Page 148
4.3.1. Minimal structure......Page 149
4.3.2. Enriched structure......Page 150
4.4. Construction of natural entities......Page 151
4.5. Triangulation, construction methods......Page 154
4.6. The incremental method, a generic method......Page 157
4.6.1. Naive triangulation......Page 158
4.6.2. Delaunay triangulation......Page 161
Chapter 5: Delaunay Triangulation......Page 163
5.1. History......Page 164
5.2. Definitions and properties......Page 166
5.3. The incremental method for Delaunay......Page 173
5.4. Other methods of construction......Page 179
5.5. Variants......Page 184
5.6. Anisotropy......Page 186
Chapter 6: Triangulation and Constraints......Page 191
6.1. Triangulation of a domain......Page 192
6.1.1. Triangulation of a domain in two dimensions......Page 193
6.1.2. Triangulation of a domain in three dimensions......Page 200
6.2. Delaunay Triangulation “Delaunay admissibility?......Page 212
6.3. Triangulation of a variety......Page 217
6.4. Topological invariants triangles and tetrahedra......Page 220
Chapter 7: Geometric Modeling: Methods......Page 231
7.1.1. Modeling an implicit curve, continuous ℿ discrete......Page 232
7.1.2. Modeling a parametric curve......Page 235
7.1.3. Modeling an implicit surface......Page 236
7.1.4. Modeling of a parametric surface......Page 240
7.2. Starting from a discretization or triangulation, discrete ℿ continuous......Page 244
7.2.1. Case of a curve......Page 245
7.2.2. The case of a surface......Page 251
7.3.1. The case of a curve in two dimensions......Page 276
7.3.2. The case of a surface......Page 281
7.4. Extraction of characteristic points and characteristic lines......Page 300
Chapter 8: Geometric Modeling: Examples......Page 302
8.1. Geometric modeling of parametric patches......Page 303
8.3. Parametrization of a surface patch through unfolding......Page 308
8.4. Geometric simplification of a surface triangulation......Page 321
8.5. Geometric support for a discrete surface......Page 322
8.6. Discrete reconstruction of a digitized object or environment......Page 327
Chapter 9: A Few Basic Algorithms and Formulae......Page 340
9.1.1. Subdivision of a curve......Page 341
9.1.2. Subdivision of a patch......Page 342
9.2. Computing control coefficients higher order elements......Page 345
9.3. Algorithms for the insertion of a point Delaunay......Page 348
9.3.1. Classic algorithm......Page 349
9.3.2. Modified algorithms......Page 352
9.4.1. Neighboring relationships......Page 354
9.4.2. Construction of the ball of a vertex......Page 356
9.4.3. Construction of the shell of an edge......Page 358
9.5.1. Triangulations or simplicial meshes......Page 360
9.6. Some formulae......Page 364
Conclusions and Perspectives......Page 366
Other titles from iSTE in Numerical Methods in Engineering......Page 368
Bibliography......Page 371
Index......Page 377
Recommend Papers

Meshing, geometric modeling and numerical simulation 1. Form functions, triangulations
 9781786300386, 1811861881

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Citation preview

Meshing, Geometric Modeling and Numerical Simulation 1

For Anahita, Amitisse and Hilda

Geometric Modeling and Applications Set coordinated by Marc Daniel

Volume 1

Meshing, Geometric Modeling and Numerical Simulation 1 Form Functions, Triangulations and Geometric Modeling

Houman Borouchaki Paul Louis George

First published 2017 in Great Britain and the United States by ISTE Ltd and John Wiley & Sons, Inc.

Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permitted under the Copyright, Designs and Patents Act 1988, this publication may only be reproduced, stored or transmitted, in any form or by any means, with the prior permission in writing of the publishers, or in the case of reprographic reproduction in accordance with the terms and licenses issued by the CLA. Enquiries concerning reproduction outside these terms should be sent to the publishers at the undermentioned address: ISTE Ltd 27-37 St George’s Road London SW19 4EU UK

John Wiley & Sons, Inc. 111 River Street Hoboken, NJ 07030 USA

www.iste.co.uk

www.wiley.com

© ISTE Ltd 2017 The rights of Houman Borouchaki and Paul Louis George to be identified as the authors of this work have been asserted by them in accordance with the Copyright, Designs and Patents Act 1988. Library of Congress Control Number: 2017948827 British Library Cataloguing-in-Publication Data A CIP record for this book is available from the British Library ISBN 978-1-78630-038-6

Contents

Foreword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Introduction

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Chapter 1. Finite Elements and Shape Functions

. . . . . . . . . . . . . . . . . . . . .

1.1. Basic concepts . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2. Shape functions, complete elements . . . . . . . . . . . . . . 1.2.1. Generic expression of shape functions . . . . . . . . . . 1.2.2. Explicit expression for degrees 1–3 . . . . . . . . . . . 1.3. Shape functions, reduced elements . . . . . . . . . . . . . . . 1.3.1. Simplices, triangles and tetrahedra . . . . . . . . . . . . 1.3.2. Tensor elements, quadrilateral and hexahedral elements 1.3.3. Other elements, prisms and pyramids . . . . . . . . . . 1.4. Shape functions, rational elements . . . . . . . . . . . . . . . 1.4.1. Rational triangle with a degree of 2 or arbitrary degree 1.4.2. Rational quadrilateral of an arbitrary degree . . . . . . . 1.4.3. General case, B-splines or Nurbs elements . . . . . . . Chapter 2. Lagrange and Bézier Interpolants

. . . . . . . . . . . . . . . . . . . . . . .

53

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

15 15 18 18 22 26 27 31 48 49 49 50 50

. . . . . . . . . . . .

. . . . . . . . . . . .

11

. . . . . . . . . . . .

2.1. Lagrange–Bézier analogy . . . . . . . . . . . . . . . . . 2.2. Lagrange functions expressed in Bézier forms . . . . . 2.2.1. The case of tensors, natural coordinates . . . . . . 2.2.2. Simplicial case, barycentric coordinates . . . . . . 2.3. Bézier polynomials expressed in Lagrangian form . . . 2.4. Application to curves . . . . . . . . . . . . . . . . . . . . 2.4.1. Bézier expression for a Lagrange curve . . . . . . 2.4.2. Lagrangian expression for a Bézier curve . . . . . 2.5. Application to patches . . . . . . . . . . . . . . . . . . . 2.5.1. Bézier expression for a patch in Lagrangian form 2.5.2. Lagrangian expression for a patch in Bézier form 2.6. Reduced elements . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . .

9

. . . . . . . . . . . .

. . . . . . . . . . . .

54 55 55 63 66 66 67 70 71 71 73 74

6 Meshing, Geometric Modeling and Numerical Simulation 1 2.6.1. The tensor case, Bézier expression for a reduced Lagrangian patch . 2.6.2. The tensor case, definition of reduced Bézier patches . . . . . . . . 2.6.3. The tensor case, Lagrangian expression of a reduced Bézier patch . 2.6.4. The case of simplices . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . .

74 82 90 92

Chapter 3. Geometric Elements and Geometric Validity . . . . . . . . . . . . . . . . .

95

3.1. Two-dimensional elements . . . . . . . . . . . . . . . 3.2. Surface elements . . . . . . . . . . . . . . . . . . . . . 3.3. Volumetric elements . . . . . . . . . . . . . . . . . . . 3.4. Control points based on nodes . . . . . . . . . . . . . 3.5. Reduced elements . . . . . . . . . . . . . . . . . . . . 3.5.1. Simplices, triangles and tetrahedra . . . . . . . . 3.5.2. Tensor elements, quadrilaterals and hexahedra . 3.5.3. Other elements, prisms and pyramids . . . . . . 3.6. Rational elements . . . . . . . . . . . . . . . . . . . . . 3.6.1. Shift from Lagrange rationals to Bézier rationals 3.6.2. Degree 2, working on the (arc of a) circle . . . . 3.6.3. Application to the analysis of rational elements . 3.6.4. On the use of rational elements or more . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

141

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . .

Chapter 4. Triangulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . .

96 105 105 111 115 115 116 120 121 121 121 123 138

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . .

. . . . . . . . . . . . .

4.1. Triangulation, definitions, basic concepts and natural entities 4.1.1. Definitions and basic concepts . . . . . . . . . . . . . . 4.1.2. Natural entities . . . . . . . . . . . . . . . . . . . . . . . 4.1.3. A ball (topological) of a vertex . . . . . . . . . . . . . . 4.1.4. A shell of a k-face . . . . . . . . . . . . . . . . . . . . . 4.1.5. The ring of a k-face . . . . . . . . . . . . . . . . . . . . 4.2. Topology and local topological modifications . . . . . . . . . 4.2.1. Flipping an edge in two dimensions . . . . . . . . . . . 4.2.2. Flipping a face in three dimensions . . . . . . . . . . . . 4.2.3. Flipping an edge in three dimensions . . . . . . . . . . 4.2.4. Other flips? . . . . . . . . . . . . . . . . . . . . . . . . . 4.3. Enriched data structures . . . . . . . . . . . . . . . . . . . . . 4.3.1. Minimal structure . . . . . . . . . . . . . . . . . . . . . 4.3.2. Enriched structure . . . . . . . . . . . . . . . . . . . . . 4.4. Construction of natural entities . . . . . . . . . . . . . . . . . 4.5. Triangulation, construction methods . . . . . . . . . . . . . . 4.6. The incremental method, a generic method . . . . . . . . . . 4.6.1. Naive triangulation . . . . . . . . . . . . . . . . . . . . . 4.6.2. Delaunay triangulation . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

142 142 145 145 145 146 146 148 148 148 150 151 151 152 153 156 159 160 163

Chapter 5. Delaunay Triangulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

165

5.1. History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2. Definitions and properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3. The incremental method for Delaunay . . . . . . . . . . . . . . . . . . . . . . . . .

166 168 175

Contents 7

5.4. Other methods of construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.5. Variants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6. Anisotropy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 6. Triangulation and Constraints

. . . . . . . . . . . . . . . . . . . . . . . . .

6.1. Triangulation of a domain . . . . . . . . . . . . . . . 6.1.1. Triangulation of a domain in two dimensions . 6.1.2. Triangulation of a domain in three dimensions 6.2. Delaunay Triangulation “Delaunay admissibility” . 6.3. Triangulation of a variety . . . . . . . . . . . . . . . 6.4. Topological invariants (triangles and tetrahedra) . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

194 195 202 214 219 222

Chapter 7. Geometric Modeling: Methods . . . . . . . . . . . . . . . . . . . . . . . . .

233

Chapter 9. A Few Basic Algorithms and Formulae

306 311 311 324 325 330

. . . . . . . . . . . . . . . . . . . .

343

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . .

. . . . . . . . .

. . . . . .

. . . . . . . . .

. . . . . .

. . . . . . . . .

. . . . . .

. . . . . . . . .

. . . . . .

. . . . . . . . .

. . . . . .

. . . . . . . . . . . .

. . . . . .

9.1. Subdivision of an entity (De Casteljau) . . . . . . . . . . . 9.1.1. Subdivision of a curve . . . . . . . . . . . . . . . . . . 9.1.2. Subdivision of a patch . . . . . . . . . . . . . . . . . . 9.2. Computing control coefficients (higher order elements) . . 9.3. Algorithms for the insertion of a point (Delaunay) . . . . . 9.3.1. Classic algorithm . . . . . . . . . . . . . . . . . . . . . 9.3.2. Modified algorithms . . . . . . . . . . . . . . . . . . . 9.4. Construction of neighboring relationships, balls and shells 9.4.1. Neighboring relationships . . . . . . . . . . . . . . . .

. . . . . .

. . . . . . . . . . . .

. . . . . .

305

. . . . . .

. . . . . . . . . . . .

. . . . . .

Chapter 8. Geometric Modeling: Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . .

234 234 237 238 242 246 247 253 278 278 283 302

. . . . . .

. . . . . . . . . . . .

. . . . . .

. . . . . . . . . . . .

8.1. Geometric modeling of parametric patches . . . . . . . . . . 8.2. Characteristic lines of a discrete surface . . . . . . . . . . . . 8.3. Parametrization of a surface patch through unfolding . . . . 8.4. Geometric simplification of a surface triangulation . . . . . . 8.5. Geometric support for a discrete surface . . . . . . . . . . . . 8.6. Discrete reconstruction of a digitized object or environment .

. . . . . . . . . . . .

. . . . . .

193

. . . . . .

7.1. Implicit or explicit form (CAD), starting from an analytical definition 7.1.1. Modeling an implicit curve, continuous → discrete . . . . . . . 7.1.2. Modeling a parametric curve . . . . . . . . . . . . . . . . . . . . 7.1.3. Modeling an implicit surface . . . . . . . . . . . . . . . . . . . . 7.1.4. Modeling of a parametric surface . . . . . . . . . . . . . . . . . . 7.2. Starting from a discretization or triangulation, discrete → continuous 7.2.1. Case of a curve . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.2. The case of a surface . . . . . . . . . . . . . . . . . . . . . . . . . 7.3. Starting from a point cloud, discrete → discrete . . . . . . . . . . . . 7.3.1. The case of a curve in two dimensions . . . . . . . . . . . . . . . 7.3.2. The case of a surface . . . . . . . . . . . . . . . . . . . . . . . . . 7.4. Extraction of characteristic points and characteristic lines . . . . . . .

. . . . . .

181 186 188

. . . . . . . . .

. . . . . .

. . . . . . . . .

. . . . . . . . .

344 344 345 348 351 352 355 357 357

8 Meshing, Geometric Modeling and Numerical Simulation 1

9.4.2. Construction of the ball of a vertex . 9.4.3. Construction of the shell of an edge 9.5. Localization problems . . . . . . . . . . . 9.5.1. Triangulations or simplicial meshes 9.5.2. Other meshes . . . . . . . . . . . . . 9.6. Some formulae . . . . . . . . . . . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

359 361 363 363 367 367

Conclusions and Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

369

Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

371

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

377

Foreword

The “Geometric Modeling and Applications” series is made up of five volumes of research on geometric modeling. The act of geometric modeling is an age-old one. To look at a few key points in its history: geometrists in antiquity devoted themselves to it, though, of course, it had a different form from that which we know today; Descartes, in the mid-17th Century, worked on partitioning of planes; and Voronoï established concepts relating to this toward the end of the 19th Century. But geometric modeling, as we understand it now, can be considered to be linked to the use of computers, especially since this tool has become ubiquitous. We are tempted to fix the scientific recognition of this activity to the date of the “First Conference on Computer Aided Geometric Design”, which took place in March 1974 at the University of Utah. This was organized by R. Barhnill and R. Riesenfeld, whose presentations may be found in the book “Computer Aided Geometric Design, Academic Press, 1974”, which clearly associates geometric modeling with the computer. Since then, many detailed and high-quality books have been published in this field. One of the pioneering works was, undoubtedly, that authored by D. Faux and M. Pratt, “Computational Geometry for Design and Manufacture, Ellis Horwood Publishers, 1979”. Some books went through several editions, taking note of the advances made in research in the field. In this context, bringing out a new general book on the subject would mark no significant scientific progress. Moreover, for any objet or entity that is to be modeled, there is no single geometric model. Instead, there are several geometric models, each being adapted to the processes to be carried out. For example, the model to finely analyze the shape of an object is necessarily different from models that are used for mechanical computations on this same object. We have, therefore, chosen to focus on specific points of research in fields that we find particularly important. Thus, the five references given here, written by specialists, bring you up to date on advances in research in five domains: • “Constraints and geometric modeling”, by Dominique Michelucci, Pascal Schreck and Pascal Mathis, looks at geometric problems that can be approached by describing the constraints, geometric or more complex, that a solution must verify, rather than directly giving the geometric definition of such a solution.

10 Meshing, Geometric Modeling and Numerical Simulation 1 • “Geometric modeling of fractal forms CAD”, by Christian Gentil, Dmitry Sokolov and Gilles Gouaty, discusses the definition of fractal forms: this formalism makes it possible to reuse smooth forms of geometric models that are classic today to define forms that have not yet been explored till present. • “Meshing, geometric modeling and numerical simulation”, in two volumes, by Houman Borouchaki and Paul-Louis George, details methodologies advanced for the construction of meshes and geometric modeling for numerial simulation with applications, especially in mechanics. • “Geometric and Topological Mesh Feature Extraction for 3D Shape Analysis”, by Jean-Luc Mari, Franck Hétroy-Wheeler and Gérard Subsol, studies the analysis of threedimensional-meshed shapes via the extraction of characteristics, both geometric and topological. The fields of application are also detailed to illustrate the transdisciplinary nature of this work. • “Relevant Triangulations and Samplings for 3D Shapes”, by Raphaëlle Chaine and Julie Digne, discusses sampling, meshing and compression of free forms from a large quantity of real data from a virtual, interactive deformation process. These are books that present recent research. The reader can find, in the general books on geometric modeling that were mentioned before, elements to fill any gaps they may have and to enable them to read the books in this series. Happy reading. Marc DANIEL

Introduction

Triangulations and, more precisely, meshes, with the subtle difference that separates these two entities, lie at the heart of any number of problems that arise from varied scientific disciplines. A triangulation or a mesh is a discrete representation, using simple geometric elements (triangle, quadrilateral, tetrahedron, etc., any arbitrary polygon or polyhedron), of a domain that may be an object or a region of which we want a discrete, spatial description. There are, thus, many applications, including numerical simulations of any kind of physical problem, though not restricted to these. In particular, a discrete representation of a (volumetric) object or a surface may simply be seen as a geometric modeling problem as is. This book adopts a double point of view, as indicated by its title, and we will look both at the use of meshes in numerical simulations (the finite element method, especially) with, of course, the underlying constraints, as well as the use of these meshes for the (discrete) modeling of geometry. The literature on triangulations and meshes may be classified in two chief categories: one more purely mathematical and geometric, the other more oriented toward industrial applications (numerical simulations) with, of course, though not always, relations between these categories. The first point of view is covered by the computation geometry community, which studies (among others) Delaunay triangulations in all cuts, definitions, properties, construction algorithms and the complexity of these algorithms. They also study some applications of these triangulations. Nonetheless, relatively recently, mesh generation problems are also being studied, but under a more theoretical angle, generally relating to situations that allow for the use of Delaunay triangulations for which robust construction methods as well as interesting geometric properties have been known for a long time. This (somewhat monotheistic) philosophy necessarily imposes limits on the nature of the problems worked (workable). The first reference book on these subjects is that of Preparata and Shamos [Preparata, Shamos-1985] published in 1985. This was followed by several others, among which we cite two by Edelsbrunner [Edelsbrunner-1987] and [Edelsbrunner-2001], that of Yvinnec and Boissonnat [Boissonnat, Yvinec-1997], by Dey [Dey-2007] and winding up the list with the book by Cheng et al. [Cheng et al. 2012], which was published in 2012. With a few exceptions, the orientation chosen by these references is not always guided by the preoccupations of mathematicians, engineers and the world of numerical simulation in general.

12 Meshing, Geometric Modeling and Numerical Simulation 1

It is this very need for numerical simulations, in particular (and historically) in solid or fluid mechanics, that has led to the emergence of a “meshing” community among mathematicians and engineers. Without fear of contradiction, we can state that the very first book on meshes that was seen from this point of view is that of Thompson et al. [Thompson et al. 1985], which was also published in 1985. This book essentially discusses structured meshes or grids1 while the first truly generalist book, discussing all types of meshes, structured or not, is that by George [George-1991], which dates back to 1991. Over the years and with the evolution of computers and methods as well as the increasingly complex nature of the meshes to consider, other books have been published. Let us mention books by George and Borouchaki [George, Borouchaki-1998], published in 1997, which revisits meshing methods based on Delaunay algorithms; by Carey [Carey-1997], also in 1997, which gives a very pedagogic presentation of methods; by Topping and co-authors [Topping et al. 2004], in 2004, cited in order to be exhaustive; by Frey and George [Frey, George-2008], in 2000, with a second edition in 2008, which returns to the general view and incorporates newly appeared techniques; by Löhner [Löhner-2008], in 2002, with a second edition that came out in 2008, which abounds in innovative details; up to the recent book by Lo [Lo-2015], published in 2015, which, among others, sheds new light on some problems. In this context, we may wonder what motivated the writing of this book. We will attempt to answer this question (and also try, by doing so, to arouse the reader’s curiosity). The first observation is that the few books on this subject are already either a little old or rather classic in the way they discuss the approaches and the methods concerning the many questions linked to meshes. The second remark is that, evidently, new questions have appeared relatively recently, e.g. everything related to (finite) elements or patches of higher degrees, metrics and their links to interpolation errors, geometric modeling by meshes, numerical simulation via advanced methods (adaptation of meshes) and so on. This remark immediately calls forth another: we will resolutely adopt a double point of view by considering finite elements (or the constitutive elements of a mesh) as geometric patches and vice versa, thus establishing a link between the Lagrange world of finite elements and the Bézier world of CAD. This choice, as we will see, noticeably changes the manner in which we perceive the problems and, consequently, the manner in which we try to find solutions. In this spirit, this book in two volumes, beyond a set of subjects that we may qualify as classic (and, thus, essential), approaches many subjects that are very recent or even completely novel. Moreover, and this may be more surprising (and certainly rare), some methods (which we find in the literature) have been deliberately left out as they were deemed to not be of great interest and, a contrario, some methods are described in a manner that is, at the very least, nuanced and even critical. Indeed, it seemed pertinent to share our perception, even though this is subjective, up to a point, of these methods, perhaps to prevent the reader from going down paths that we think are dead ends. Having specified this, this book provides the necessary basis for a course on meshes and related problems at the masters level and it may serve as a technical reference for engineering students in science and, more generally, engineers using numerical simulations. We will give a brief description of the content of the chapters in both volumes.

1. The grid-type meshes are generated by solving partial derivative equations, for example elliptical equations. It must be noted that other, more recent books on this theme, followed this pioneering work, but have not been mentioned here.

Introduction 13  Volume 1: We first give a chapter-wise overview of the first volume of this book. In the first three chapters, this volume introduces the basic concepts related to finite elements seen through their shape functions either as finite elements or as patches. In addition to the classic expression via Lagrange polynomials (complete, reduced or rational) (Chapter 1), we give the equivalent formulation based on Bézier forms (Chapter 2), which makes it possible to easily find the conditions for the geometric validity of these finite elements (or patches) whether they are straight or curved and whatever their degree (Chapter 3). Triangulation problems are the subject of the next three chapters, where we specify vocabulary and the basic concepts that make it possible to describe the different construction methods for any triangulation (Chapter 4), Delaunay triangulation (Chapter 5) as well as the triangulation (of a domain) with constraints (Chapter 6). In the next two chapters, we use the concepts introduced earlier to discuss the vast problem of geometric modeling of a domain in its various aspects. Geometric modeling, from our point of views (meshes and numerical simulations), consists of construction of a discrete representation from a continuous representation and vice versa. Different methods are described in Chapters 7, while Chapter 8 gives several significant examples for the application of these methods. Chapter 9 brings together some basic algorithms and formulae related to finite elements (patches) and triangulations, to persuade the reader to go beyond a theoretical viewpoint, to a practical viewpoint, which we believe is essential.  Volume 2: We share the contents of Volume 2 [Borouchaki-2018] of this book in advance. This volume (finally) approaches mesh problems and begins with a detailed description of the concept of metric, a concept which will be seen to be fundamental in all that follows. The first two chapters, Chapters 1 and 2, thus focus on metrics. We introduce the concept of metric, we demonstrate their properties and their relations with the geometry of elements of a mesh and how to control interpolation errors during the resolution of a problem (by finite elements). The construction methods of meshes and their optimization are the focus of the following five chapters: Chapter 3 (mesh for a curve), Chapter 4 (simplicial meshes), Chapter 5 (non-simplicial meshes), Chapter 6 (meshes of higher degree) and Chapter 7 (optimizing meshes). We will then discuss the large subject of the adaptation of meshes, controlling the solutions via error estimates and corresponding interpolation metrics in Chapter 8. The use of a dose or a certain dose of parallelism (based on its multiple forms) is seen through Chapter 9. Chapter 10 illustrates, using concrete examples, a series of applications of the methods and methodologies introduced and described through the different chapters of both volumes of this book. As in Volume 1, the final chapter, Chapter 11, gives practical observations on some of the algorithms from Volume 2, especially how to use and manipulate metrics.  Finally, at the end of this second volume, we sketch out future prospects. ∗ ∗ ∗

14 Meshing, Geometric Modeling and Numerical Simulation 1

Acknowledgments. We are especially grateful to two then-doctoral students who willingly helped in developing this book. Nicolas Barral helped us through his expertise with Maple to resolve systems that we encountered during the construction of Serendipity elements. Victorien Menier is the author of most of the figures that illustrate this book. We also wish to thank Peha for his magnificent free-hand images, illustrating the impossibility of triangulating certain polyhedra without adding internal vertices. And, of course, we would also like to thank everyone in the common Inria 2 and UTT3, Gamma3 team: researchers, engineers and doctoral students, whose work contributed to the development and consolidation of various subjects discussed in this book.

2. Institut National de Recherche en Informatique et en Automatique. 3. Université de Technologie de Troyes.

Chapter 1

Finite Elements and Shape Functions

There is a wide range of existing literature on finite elements, both on theoretical aspects (for example [Oden, Reddy-1977], [Ciarlet-1978], [Hughes-1987], [Ciarlet-1991]) and on practical aspects ([Zienkiewicz, Taylor-1989], [Bathe-1996], [Dhatt et al. 2007]). The purpose of this chapter, therefore, is not to provide yet another description of this method, but rather to introduce a point of view that is strongly oriented toward the underlying geometric aspects. Indeed, classically, these are all the aspects of approximations of functions (polynomial space or others, convergence, convergence rate, etc.) that are examined. We will, thus, only review basic definitions related to finite elements1, as well as their shape functions. The classic case of finite elements whose degrees of freedom are nodal values of the considered functions (in other words, like Lagrange elements) is described for complete elements, reduced elements as well as rational elements. The less common finite elements such as Hermite elements, for example, where nodal or other derivatives are involved are not explicitly considered2.

1.1. Basic concepts The finite elements method allows us to calculate an approximate solution to a problem formulated in terms of a system of partial derivatives over a continuum Ω across two related approximations: a spatial approximation and an approximation for calculated solutions. The physical problem under study is modeled by a system of partial derivatives equations that constitutes a continuous problem with its operators, parameters, data and boundary conditions. The finite element method consists of searching for solutions in a particular space of functions (a Sobolev space) that is built on a discretization or a mesh of the domain. The continuous formulation is replaced by a weak formulation via the Galerkin or Ritz methods, which generally leads to 1. In order to specify the manner in which we study them and in order to establish the notations used. 2. These enriched elements may, nonetheless, be interpreted from the geometric point of view as Lagrange elements of a certain degree. Meshing, Geometric Modeling and Numerical Simulation 1: Form Functions, Triangulations and Geometric Modeling, First Edition. Houman Borouchaki and Paul Louis George. © ISTE Ltd 2017. Published by ISTE Ltd and John Wiley & Sons, Inc.

16 Meshing, Geometric Modeling and Numerical Simulation 1

a matrix system (leading to a linear system or a problem of eigenvalues) of finite dimension. Thus, the first approximation, spatial approximation, is related to the fact that the continuous domain Ω is replaced by a discrete domain, denoted by Ωh , which is composed of the union of simple geometric elements (triangle, quadrilateral, tetrahedron, etc.) denoted by K. We have Ωh = ∪K∈Th K, where Th designates the mesh corresponding to a parameter of size h which, therefore, refers to the size of the elements K and, therefore, to the finesse of the mesh. Other than the case where the domain Ω is polygonal (polyhedral), Ω = Ωh for any h. The second approximation is related to the construction of the space of solution functions based on the first spatial approximation, in other words, on the mesh. In the case of Lagrange finite elements, the restriction of this space to each element of the mesh is a linear combination of polynomials (or rational fractions), with each of these being a Lagrange interpolant of nodal values (where the solutions are, therefore, only one or several instantiations of these nodal values, also known as degrees of freedom). Thus, each element is associated with a list of nodes (comprising its vertices) which makes it possible to define the Lagrange interpolant. A first-order polynomial interpolant, in particular, is defined based on three nodes for a triangular element, where these nodes are the vertices of the triangle. Generally speaking, one node may support several degrees of freedom (a value, a derivative, etc.). As indicated, the solution function is known based on its value for degrees of freedom for the entire mesh and, thus, only at the nodes of the mesh3. If the functional solution space is known, the values at each point are only an evaluation of the Lagrange interpolants at these points. In summary, a finite element is characterized by the triplet {K, ΣK , PK }, where: – K denotes the geometric element (triangle, etc.); – ΣK denotes the list of nodes of K; – PK denotes the space of chosen functions, here the polynomial Lagrange interpolants of ΣK . The geometry of an element K as well as the polynomial interpolants are determined based on the nodes of ΣK . Notably, the degree of these interpolants is directly related to the number of nodes of ΣK . In order to be able to define this geometry and these interpolants, we consider a ˆ is defined, space of reference (or reference space)4, in which the reference element denoted by K with a fixed (uniform) distribution of nodes, said to be nodes of reference. The real or physical ˆ by an application, denoted by FK , mapping the reference nodes element of K is the image of K ˆ of K ˆ and on to the physical nodes. Thus, to sweep the points M of K, we sweep the points M ˆ ). More precisely, by designating the nodes of the element of reference5 we have M = FK (M ˆ by Aˆi , 1 ≤ i ≤ n, and the Lagrange interpolants of these nodes by pi we have: K M=

n 

ˆ )Ai , pi (M

[1.1]

i=1

3. A problem is thus obtained, where the size is the number of degrees of freedom at all the nodes in the mesh. The continuous problem has therefore been replaced by a discrete problem 4. This can be regarded as a space of parameters and we thus interpret K as a geometric patch, defined over the space of parameters and the application FK relative to the space PK . 5. Or the nodal sequence.

Finite Elements and Shape Functions 17 where Ai = FK (Aˆi ) represents the nodes of K. The Lagrange interpolants pi verify the following two fundamental properties: pi (Aˆj ) = δij

and

n 

pi = 1,

i=1

where δii = 1 and δij = 0 for j = i. The first property characterizes the Lagrange interpolants while the second represents the partition of unity over each element. Thus, the restriction of the solution sK of PK to the element K is written as: sK (M ) =

n 

ˆ )sK (Ai ), pi (M

[1.2]

i=1

where sK (Ai ) represents the nodal values for the solution restricted at K. ˆ is fundaThis definition of the physical or real elements via the space of reference (space K) mental for three reasons: the geometric definition of the elements, their geometric validity and the definition of the interpolation space. The geometric definition of these elements is based on their nature and the distribution of their nodes and will be the focus of Chapter 2. Let us mention here that the position of any point M of an element K is indirectly defined via the space of reference; indeed, it is difficult to know whether a given point is in a given element6 without making use of the space of reference. Even ˆ , would require the when using this, the localization of the point, that is locating its antecedent M ˆ ) in the general case. This is resolved using a resolution of the nonlinear equations M = FK (M combination of dichotomies and Newton methods. The geometric validity of a physical or real element can be established relatively simply only by analyzing the application FK , especially the sign of its Jacobian, J (FK ), as we will see in the following chapters. This problem, which already exists for classic first-order elements, is all the more present in the cases of higher order elements, especially for isoparametric elements (with curved boundaries of the same degree as the interpolants). These are often used to reliably approach curved geometry. Moreover, if ˆ represents an element of surface integration or volume integration in the dK (respectively, dK) ˆ and as the physical or real space (respectively, space of reference), we have dK = J (FK )dK ˆ to make integration over the element K is carried out via the space of reference (thus, over K) it simple, this integration is valid if and only if J (FK ) > 0 (the validity of the element thus guarantees the validity of the calculations carried out via the space of reference). Finally, the interpolation space is naturally constructed via the space of reference in which the polynomials pi are defined. As concerns relation [1.1], it must be noted that for a straight finite element (the edges are straight segments) with a degree other than one, with a uniform distribution of nodes, as we will m  ˆ )Ai where only the vertex qi ( M see further on, this relation can be written more simply as i=1

6. Except for first-degree simplices.

18 Meshing, Geometric Modeling and Numerical Simulation 1

Figure 1.1. Joseph Louis Lagrange (1736–1813)

nodes Ai , of number m, are taken into consideration and the shape function qi are those of the finite element with a degree of one7 of the element of the same geometry as the element being considered. To conclude this brief presentation of the finite element method, we state in advance that we will be very sensitive, beyond the problem of the geometric validity of the elements, to their quality in shape (or regularity) – concepts that will be elaborated on in due time. 1.2. Shape functions, complete elements We will construct the shape functions of common finite elements (Lagrange) that are complete (seen as patches) based on two generic functions. We will then consider the case of reduced elements (thus, in the case of quadrilaterals and hexahedra, the serendipity elements may be generalized). Finally, we will observe the case of rational elements with a brief allusion to the elements that may be constructed using B-splines or Nurbs functions.

1.2.1. Generic expression of shape functions Shape functions were initially introduced by engineers to resolve elasticity problems using the finite element methods. In [Dhatt et al. 2007], we find a very comprehensive overview of shape functions of classic finite elements. In this chapter, we will review those functions that are expressed with spaces of reference that may be different (to place ourselves closest to the spaces made up of the patches seen in CAD). The shape functions of the isoparametric8 Lagrange elements of degree d are expressed in a generic manner. We will then adopt a purely geometric point of view (let us recall that the

7. If the distribution of nodes is not uniform, the simplified formula remains true, but the qi are no longer those of the first degree and, for example, even for a straight edge, the image of the midpoint of the edge of the space of reference cannot be the midpoint of the physical edge. 8. Let us repeat here that the shape functions serve to both define the transformation of the reference element toward the current element, a purely geometric aspect, as well as the polynomials of the finite element interpolation.

Finite Elements and Shape Functions 19

elements are seen as patches) and the notations used are those of this community. The reference ˆ is seen as a space of parameters and these are denoted by u, v, ..., rather than by x element K ˆ, yˆ, ..., with classic correspondence between these two sets for the systems expressed as Barycentric coordinates (u = 1 − x ˆ − yˆ, v = x ˆ and w = yˆ, in two dimensions, for a triangle). For simplices, we work within a barycentric coordinate system and based on a generic function of degree d, which will be denoted by φdi (u) or simply φi (u) when there is no ambiguity: φi (u) =

d−1 1  (du − l) i!

for

i = 0 and

φ0 (u) = 1,

[1.3]

l=0

we construct the shape function of the index ijk with i + j + k = d using: pijk (u, v, w) = φi (u)φj (v)φk (w),

[1.4]

and the element, a triangle, is written as a function of the shape functions and its nodes: 

pijk (u, v, w)Aijk .

[1.5]

ijk

It can be immediately verified that pij (uk , vl ) = δij,kl , even though the generic functions do d−1  not possess this property. Indeed, if we write ul = dl , ..., we then have φi (ui ) = i!1 (i − l) = 1 l=0

but φi (ul ) = 0 uniquely for l = 0, ..., i − 1 - see the below schema (corresponding to the degree d = 6) where we show the isolines in u, v and w together with the value 0 or 1 for the three generic functions at the nodes of the reference element.

. . .

0 .

.

0

0 0 0 0 . 0 0 0 . 1 0 0 0 . . . 0 0 0 . . . . 0 0 0

.

.

. . . ijk . . . . . . . . . . . . . . . . .

u

1 5/6 4/6 3/6 2/6 1/6

0

20 Meshing, Geometric Modeling and Numerical Simulation 1

0 0 0 0 0 0 0 v

. .

1 .

.

1 . 5/6 . . 4/6 . . . 3/6 . . . . 2/6 . 1 . . . 1/6 0 0 0 0 0 0 0 0 0 0 0 0 0 0

. . .

.

.

.

. .

. .

. . . . . .

0 1/6 2/6 3/6 4/6 5/6

1

w

We have identical expressions in three dimensions, namely, for a tetrahedron:  pijkl (u, v, w, t) = φi (u)φj (v)φk (w)φl (t) and pijkl (u, v, w, t)Aijkl .

[1.6]

ijkl

To familiarize ourselves with the indices, we give the example of a triangle of degree d = 3 that has 10 nodes, shown on the right with the classical numbering (vertices first, the nodes of the edges and then internal nodes) and on the left with the natural indices of the barycentric systems. The indexing of the shape functions is, quite obviously, identical.

003 102

3

201 300

012 111

210

8 021

120

9 030

1

7 10

4

6 5

2

For the tensor elements, we use the natural coordinate system and use the generic function with degree d relative to the nodes ul = dl for l = 0, ..., d, written as φdi (u), if necessary, otherwise simply φi (u): l=d (−1)i  φi (u) = (l − du) , [1.7] i!(d − i)! l=0 l=i

we construct the shape function of the index ij by: pij (u, v) = φi (u)φj (v).

[1.8]

It must be noted that, of course pij (uk , vl ) = δij,kl , but this is also the case for the generic function, φi (ul ) = δil , contrary to the earlier case.

Finite Elements and Shape Functions 21 The element, a quadrilateral9 is written as given above based on the shape functions and its nodes:  pij (u, v)Aij . [1.9] ij

In three dimensions, for a hexahedron this gives: pijk (u, v, w) = φi (u)φj (v)φk (w)

and



pijk (u, v, w)Aijk .

[1.10]

ijk

To see what the indices are, we give the example of a quadrilateral of degree d = 3 that has 16 nodes with, on the right, classical numbering (vertices first, nodes of the edges and then internal nodes, observing for the latter nodes, that several conventions may be possible) and on the left with the natural indices (where, therefore, everything is natural).

03

13

23

33

4

10

9

3

02

12

22

32

11

15

16

8

01

11

21

31

12

13

14

7

00

10

20

30

1

5

6

2

Pentahedra or prisms are defined at u, v, w via functions as in [1.3] for the triangular faces and at t via the function [1.7]. Pyramidal elements (which are also pentahedra) are useful to ensure a consistent transition between hexahedral elements and tetrahedral elements. They are, however, difficult to define. We propose defining them as first-degree pyramids, which is not necessarily common, like complete but degenerated first-degree hexahedra, by precisely identifying the quadrilateral face, said to be the base face. This gives a very simple definition for these elements10. For the degrees 2 and 3, we propose the same approach, but starting from reduced hexahedra11, which will be seen later on. Thus, these pyramids will only have, as nodes, their vertices and 1 or 2 nodes per edge. Consequently, we will have 13 second-degree nodes and 21 third-degree nodes. For higher degrees, there does not seem to be a plausible obvious definition.

9. In the literature, we sometimes see the term “quadrangle”. This is incorrect even though everyone understands it. 10. Indeed, we can find more complicated definitions, which bring in shape functions of rational fractions. These definitions have the same fault, a singularity at the apex, and are certainly more costly. 11. Starting from complete elements makes it possible to have a reasonable geometric construction but will give finite elements which are surprising, to say the least. In particular, at a degree of 2, a triangular face will have an internal node.

22 Meshing, Geometric Modeling and Numerical Simulation 1

1.2.2. Explicit expression for degrees 1–3 We only explicit the typical function or functions, for the common elements with a degree of 1–3. Functions [1.3] and [1.4] or [1.7] and [1.8] are used depending on the case under consideration. Triangles of degrees 1–3 We use relations [1.3] and [1.4]. It is enough to calculate the desired φi (u) and then to express the typical pijk (u, v, w) based on which the other shape functions can be easily deduced. • Degree 1: we have φ0 (u) = 1 and φ1 (u) = u. There is only one typical function, p100 (u, v, w), that is: p100 (u, v, w) = φ1 (u)φ0 (v)φ0 (w) = u. • Degree 2: we have φ0 (u) = 1, φ1 (u) = 2u and φ2 (u) = typical functions, p200 (u, v, w) and p110 (u, v, w), that is:

1 2 2u(2u

− 1). There are two

p200 (u, v, w) = φ2 (u)φ0 (v)φ0 (w) = u(2u − 1), and p110 (u, v, w) = φ1 (u)φ1 (v)φ0 (w) = 4uv. • Degree 3: we have φ0 (u) = 1, φ1 (u) = 3u, φ2 (u) = 12 3u(3u − 1) and φ3 (u) = 16 3u(3u − 1)(3u − 2). There are three typical functions (see the schema given above for the indices) p300 (u, v, w), p210 (u, v, w) and p111 (u, v, w), and we find: p300 (u, v, w) = φ3 (u)φ0 (v)φ0 (w) = and p210 (u, v, w) = φ2 (u)φ1 (v)φ0 (w) = then

1 u(3u − 1)(3u − 2), 2

1 9 3u(3u − 1)3v = u(3u − 1)v, 2 2

p111 (u, v, w) = φ1 (u)φ1 (v)φ1 (w) = 27uvw.

Where u = 1 − x ˆ − yˆ, v = x ˆ and w = yˆ, we find these same expressions in the usual variables. Through symmetry or rotation, we find all the shape functions of the elements, that is: • Degree 1: p100 (ˆ x, yˆ) = 1 − x ˆ − yˆ. • Degree 2: p200 (ˆ x, yˆ) = (1 − x ˆ − yˆ)(1 − 2ˆ x − 2ˆ y ) and p110 (ˆ x, yˆ) = 4ˆ x(1 − x ˆ − yˆ). • Degree 3: p300 (ˆ x, yˆ) = 12 (1 − x ˆ − yˆ)(2 − 3ˆ x − 3ˆ y )(1 − 3ˆ x − 3ˆ y ) and 9 p210 (ˆ x, yˆ) = 2 x ˆ(1 − x ˆ − yˆ)(2 − 3ˆ x − 3ˆ y ) and, finally, p111 (ˆ x, yˆ) = 27ˆ xyˆ(1 − x ˆ − yˆ). Tetrahedra of degrees 1–3 We can simply extend the case of triangles and, in the barycentric coordinate system, the shape functions of tetrahedra are identical to those of triangles. Thus, we have: • Degree 1: A single typical function, p1000 (u, v, w, t), and we find: p1000 (u, v, w, t) = u.

Finite Elements and Shape Functions 23 • Degree 2: Two typical functions p2000 (u, v, w, t) and p1100 (u, v, w, t), that is: p2000 (u, v, w, t) = u(2u − 1) and p1100 (u, v, w, t) = 4uv. • Degree 3: Three typical functions (see the above schema for the indices) p3000 (u, v, w, t), p2100 (u, v, w, t) and p1110 (u, v, w, t), that is: p3000 (u, v, w, t) = 12 u(3u − 1)(3u − 2), p2100 (u, v, w, t) = 92 u(3u − 1)v and p1110 (u, v, w, t) = 27uvw. Where u = 1 − x ˆ − yˆ − zˆ, v = x ˆ, w = yˆ and t = zˆ, we find these same expressions in the usual variables. Through symmetry or rotation, we find all the shape functions.

Quadrilaterals of degrees 1–3 We use relations [1.7] and [1.8]. It is enough to calculate the desired φi (u) and then to express the typical pij (u, v) based on which the other shape functions will be deduced. We open relation [1.7] for i = 0 and i = 1. We see: φ0 (u) = φ1 (u) =

1 (1 − du)(2 − du)...(d − du) d!

and

−1 1 (−du)(2 − du)(3 − du)...(d − du) = du(2 − du)(3 − du)...(d − du), (d − 1)! (d − 1)!

and then use these expressions, the only ones which can be used (by symmetry) for the degrees 1–3. • Degree 1: we have φ0 (u) = 1 − u. There is only one typical function, p00 (u, v), and we find: p00 (u, v) = φ0 (u)φ0 (v) = (1 − u)(1 − v). • Degree 2: we have φ0 (u) = 12 (1−2u)(2−2u) = (1−2u)(1−u) and φ1 (u) = 2u(2−2u) = 4u(1 − u). There are three typical functions, p00 (u, v), p10 (u, v) and p11 (u, v), that is: p00 (u, v) = φ0 (u)φ0 (v) = (1 − 2u)(1 − u)(1 − 2v)(1 − v), p10 (u, v) = φ1 (u)φ0 (v) = 4u(1 − u)(1 − 2v)(1 − v), p11 (u, v) = φ1 (u)φ1 (v) = 16u(1 − u)v(1 − v). • Degree 3: we have φ0 (u) = 16 (1 − 3u)(2 − 3u)(3 − 3u) = 12 (1 − 3u)(2 − 3u)(1 − u) and φ1 (u) = 12 3u(2 − 3u)(3 − 3u) = 92 u(2 − 3u)(1 − u). There are three typical functions, see the above scheme for the indices p00 (u, v), p10 (u, v) and p11 (u, v), and we find: p00 (u, v) = φ0 (u)φ0 (v) =

1 (1 − 3u)(2 − 3u)(1 − u)(1 − 3v)(2 − 3v)(1 − v), 4

9 u(2 − 3u)(1 − u)(1 − 3v)(2 − 3v)(1 − v), 4 81 p11 (u, v) = φ1 (u)φ1 (v) = u(2 − 3u)(1 − u)v(2 − 3v)(1 − v). 4

p10 (u, v) = φ1 (u)φ0 (v) =

24 Meshing, Geometric Modeling and Numerical Simulation 1 With u = x ˆ and v = yˆ, we find these same expressions in the usual variables. Through symmetry or rotation, we find all the shape functions of the elements. As an exercise, let us express p20 (u, v) for a third-degree quadrilateral. It is enough to carry out a symmetry at u, thus p20 (u, v) = p10 (1 − u, v), or: 9 p20 (u, v) = − u(1 − 3u)(1 − u)(1 − 3v)(2 − 3v)(1 − v). 4

Hexahedra of degrees 1–3 We go back to the previously obtained functions for quadrilaterals and extend them mechanically. • Degree 1: A single typical function, p000 (u, v, w), thus we find: p000 (u, v, w) = (1 − u)(1 − v)(1 − w). • Degree 2: Four typical functions, p000 (u, v, w), p100 (u, v, w), p110 (u, v, w) and p111 (u, v, w), thus we find: p000 (u, v, w) = (1 − 2u)(1 − u)(1 − 2v)(1 − v)(1 − 2w)(1 − w), p100 (u, v, w) = 4u(1 − u)(1 − 2v)(1 − v)(1 − 2w)(1 − w), p110 (u, v, w) = 16u(1 − u)v(1 − v)(1 − 2w)(1 − w), p111 (u, v, w) = 64u(1 − u)v(1 − v)w(1 − w). • Degree 3: Four typical functions, p000 (u, v, w), p100 (u, v, w), p110 (u, v, w) and p111 (u, v, w), we thus find: p000 (u, v, w) =

1 (1 − 3u)(2 − 3u)(1 − u)(1 − 3v)(2 − 3v)(1 − v)(1 − 3w)(2 − 3w)(1 − w), 8

p100 (u, v, w) =

9 u(2 − 3u)(1 − u)(1 − 3v)(2 − 3v)(1 − v)(1 − 3w)(2 − 3w)(1 − w), 8

p110 (u, v, w) =

81 u(2 − 3u)(1 − u)v(2 − 3v)(1 − v)(1 − 3w)(2 − 3w)(1 − w), 8

p111 (u, v, w) =

729 u(2 − 3u)(1 − u)v(2 − 3v)(1 − v)w(2 − 3w)(1 − w). 8

With u = x ˆ, v = yˆ and w = zˆ in notationˆ .

Finite Elements and Shape Functions 25

Pentahedra of degrees 1–3 We go back to the φi () functions of a triangle and those of a quadrilateral in the third direction. The coordinates are, thus, barycentric in the plane and natural in the third direction. • Degree 1: A single typical function, p1000 (u, v, w, t), and we find: p1000 (u, v, w, t) = u(1 − t). • Degree 2: Four typical functions, p2000 (u, v, w, t), p1100 (u, v, w, t), p2001 (u, v, w, t) and p1101 (u, v, w, t) that correspond to the vertices, the nodes of edges shared by a triangle or two quadrilateral faces, and to the nodes on the quadrilateral faces, that is: p2000 (u, v, w, t) = u(2u − 1)(1 − 2t)(1 − t), p1100 (u, v, w, t) = 4uv(1 − 2t)(1 − t), p2001 (u, v, w, t) = 4u(2u − 1)t(1 − t), p1101 (u, v, w, t) = 16uvt(1 − t). • Degree 3: Five typical functions, p3000 (u, v, w, t), p2100 (u, v, w, t), p3001 (u, v, w, t), p1110 (u, v, w, t) and p2101 (u.v, w, t) that correspond to the vertices, the nodes on the edges shared by a triangle or two quadrilateral faces and to the nodes on the triangular and quadrilateral faces, that is: p3000 (u, v, w, t) =

1 u(3u − 1)(3u − 2)(1 − 3t)(2 − 3t)(1 − t), 4

p2100 (u, v, w, t) =

9 u(3u − 1)v(1 − 3t)(2 − 3t)(1 − t), 4

p3001 (u, v, w, t) =

9 u(3u − 1)(3u − 2)t(2 − 3t)(1 − t), 4

p1110 (u, v, w, t) =

27 uvw(1 − 3t)(2 − 3t)(1 − t), 2

p2101 (u, v, w, t) =

81 u(3u − 1)vt(2 − 3t)(1 − t). 4

Pyramids of degrees 1–3 For a degree of 1, we go back to the definition of a complete hexahedron, with the forpijk (u, v)Aijk , by positmulae [1.10], that is pijk (u, v, w) = φi (u)φj (v)φk (w) and ijk

ing Aijd = A00d for all the (i, j) couples. We can deduce from this that the shape functions pijk (u, v, w) are those of the hexahedron for the index k = d. On the other hand, the missing function, pood (u, v, w), is obtained by taking the sum of pijd (u, v, w). Thus, p00d (u, v, w) =

26 Meshing, Geometric Modeling and Numerical Simulation 1 ⎧ ⎨  ⎩

i

j

φi (u)φj (v)

⎫ ⎬ ⎭

φd (w). Consequently (classic property of the φi (u)φj (v) which give a

sum of 1), we have p00d (u, v, w) = φd (w) =

l=d−1 (−1)d  (l − dw). d! l=0

As d = 1, we find: • Degree 1: p001 (u, v, w) = w. For the degrees 2 and 3, we use the same shortcut, but based on reduced elements (see further on). We thus find that: • Degree 2: p002 (u, v, w) = −w(1 − 2w). • Degree 3: p003 (u, v, w) = 12 w(1 − 3w)(2 − 3w). 1.3. Shape functions, reduced elements The idea behind reduced elements is to bring down the number of internal nodes while retaining an acceptable level of precision, that is a sufficiently rich polynomial space. The nodes, thus, necessarily include the border nodes of the complete element, but we try to do away with all or part12 of the internal nodes. Who came up with these elements? It was most probably mechanical engineers, especially, at the beginning, for the second-degree Lagrange quadrilateral with eight nodes. This element is a serendipity element, from the legend of the three princes of Serendip (in the photo). Indeed, one construction of this element (and beyond those of other degrees) consists of imposing, as a polynomial space, a space that includes as basis all the monomials of a maximum degree of 2 in all the variables (the classical space P 2 of triangles). On doing this, it is seen that the two monomials u2 v and uv 2 are covered “for free”, without really having been the goal of the operation. An unexpected gift and hence the term serendipity, which qualifies quadrilaterals and hexahedra of this nature. The existence of reduced elements for other geometries is more problematic. However, we know of the third-degree triangle with nine nodes (and thus the hexahedron with 16 nodes) but not of reduced simplices that are of interest for higher degrees. For other element types, for degrees that are not too high, it is possible to delete certain nodes (in particular, the case of those with faces comes to mind) but the resulting polynomial space is not very clear.

While literature is hardly prolix on the subject, other than for a degree of 2, we find several methods to try and construct reduced elements. We can separate the methods that work at the level of the matrices of rigidity (resulting from weak formulation) themselves to eliminate the nodes, typically by condensation. We find two categories of methods: one based on

12. And this is strictly necessary when the degree increases.

Finite Elements and Shape Functions 27

Figure 1.2. The three princes of Serendip

Taylor expansions truncated to the desired order [Ciarlet-1978], [Bernardi et al. 2004], or again, [George, Borouchaki-2017], and the other based on the direct search for the polynomial space by imposing its basis, as developed by [Arnold, Awanou-2011] and [Floater, Gillette-2014]. For quadrilaterals and hexahedra, we will propose another approach based on a generalization of the transfinite interpolation, a transformation that is also known for a degree of 2 (for instance, Coons’ patches) but is also valid for a degree of 3 (and we will also have a Coons’ patch). For higher degrees, the method does not yield acceptable results and hence the idea of seeking a generalization – called generalized transfinite interpolation [George, Borouchaki-2015]. It must be noted that this approach is very close to a concept discussed in [Floater, Gillette-2014].

1.3.1. Simplices, triangles and tetrahedra We know of the reduced, third-degree triangle with nine nodes (the complete triangle has 10 nodes). The first question is to understand its construction. Another question is to know whether such reduced triangles exist for higher degrees. We can find an answer to the first question in [Bernardi et al. 2004]. However, there is no answer to the second question in the literature. The polynomial space of the triangle is the usual space P 3 in which we add a condition that stipulates that the value of a polynomial evaluated at the barycenter (of the reference element, thus the node ( 13 , 13 , 13 ) in barycentric coordinates) is expressed as a linear combination of the values of this polynomial evaluated at the nodes on the edge of the reference element. If q designates a polynomial, we have the following relation:   12q(A111 ) + 2 q(Aijk ) − 3 q(Aijk ) = 0, ijk∈S

ijk∈A

where S designates the indices for the vertices and A designates the indices for the edge nodes. In [Bernardi et al. 2004], it is always shown that consequently, the polynomial space that is thereby reduced contains the space P 2 . This is the definition that we will retain to define reduced triangles.

28 Meshing, Geometric Modeling and Numerical Simulation 1 • Triangle of degree 3. Let us recall the system used for indices: 003 102 201 300

012 111

210

021 120

030

The concept is to begin with the Taylor expansion of a function q at the vertices and the nodes −−−−−−→ → expressed using the central node; we then introduce the vectors v−− ijk = A111 Aijk and the successive derivatives of q, seen in an abstract manner as linear operators, bilinear operators, etc. → → → They are denoted by D1 .(− u ), D2 .(− u,− u ), etc., the coefficient (the binomial coefficient) being included in the operator. Thus, as we are looking for the space P 2 , the development stops at the second derivative and is written as, at A300 : → −→ −−→ 2 − q(A300 ) = q(A111 ) + D1 .(− v− 300 ) + D .(v300 , v300 ). Upon taking the sum of the three vertices, we find:    → → −−→ q(Aijk ) = 3q(A111 ) + D1 .(v−− D2 .(v−− ijk ) + ijk , vijk ), ijk∈S

ijk∈S

ijk∈S

and as the operator D1 .() is linear and A111 is the barycenter, this is reduced to:   → −−→ q(Aijk ) = 3q(A111 ) + D2 .(v−− ijk , vijk ). ijk∈S

[1.11]

ijk∈S

This same development is expressed for the edge nodes. For example: → −→ −−→ 2 − v− q(A210 ) = q(A111 ) + D1 .(− 210 ) + D .(v210 , v210 ), and on summing, we obtain:    → → −−→ q(Aijk ) = 6q(A111 ) + D1 .(v−− D2 .(v−− ijk ) + ijk , vijk ), ijk∈A

ijk∈A

ijk∈A

of which only the following remains (the terms related to D1 .() cancel each other out two by two):   → −−→ q(Aijk ) = 6q(A111 ) + D2 .(v−− [1.12] ijk , vijk ). ijk∈A

ijk∈A

→ etc., we can express the different v−− ijk vectors uniquely as a function of −−→ −−→ → 2v300 + v030 . three vectors related to the vertices. Thus, for example: − v− 210 = 3

As A210 =

2A300 +A030 , 3

Finite Elements and Shape Functions 29 → −−→ −→ −−→ 2 − We now calculate D2 .(− v− 210 , v210 ) + D .(v120 , v120 ), and find: 4 2 −−→ −−→ 4 1 2 −−→ −−→ → −−→ v− D .(v300 , v300 ) + D2 .(− 300 , v030 ) + D .(v030 , v030 ) 9 9 9 1 4 2 −−→ −−→ 4 2 −−→ −−→ → −−→ + D2 .(− v− 300 , v300 ) + D .(v300 , v030 ) + D .(v030 , v030 ), 9 9 9 8 2 −−→ −−→ 5 5 2 −−→ −−→ → −−→ v− D .(v300 , v300 ) + D .(v300 , v030 ) + D2 .(− that is, in total 030 , v030 ). 9 9 9 By taking the sum of the three edges, we find: 8 10  2 −−→ −−→ → −−→ −→ −−→ −→ −−→ 2 − 2 − D .(vijk , vijk ) + (D2 .(− v− 300 , v030 ) + D .(v030 , v003 ) + D .(v003 , v300 )). 9 9 ijk∈S

We will express the crossed terms in functions of terms related only to the vertices, but as → −−→ −−→ −−→ −−→ −−→ D2 .(− v− 300 + v030 + v003 , v300 + v030 + v003 ) = 0, we have:  → −−→ −→ −−→ −→ −−→ −→ −−→ 2 − 2 − 2 − 0= D2 .(v−− ijk , vijk ) + 2(D .(v300 , v030 ) + D .(v030 , v003 ) + D .(v003 , v300 )), ijk∈S

or, in other terms: 1 → −−→ −→ −−→ −→ −−→ 2 − 2 − (D2 .(− v− 300 , v030 ) + D .(v030 , v003 ) + D .(v003 , v300 ) = − 2



→ −−→ D2 .(v−− ijk , vijk ),

ijk∈S

2  2 −−→ −−→ thus, the above sum is reduced to D .(vijk , vijk ) and relation [1.12] is written as: 3 ijk∈S



q(Aijk ) = 6q(A111 ) +

ijk∈A

2  2 −−→ −−→ D .(vijk , vijk ), 3 ijk∈S

to finish, we identify this last sum (second derivatives) in the two relations, which gives the following combination:  3  q(Aijk ) − 3q(A111 ) = q(Aijk ) − 6q(A111 )) 2 ijk∈S

ijk∈A

and, finally, we have found the defining property13 of the desired polynomial space:   12q(A111 ) + 2 q(Aijk ) − 3 q(Aijk ) = 0 . ijk∈S

[1.13]

ijk∈A

The function of the space must verify this relation, especially the desired reduced shape functions, the psijk . By symmetry, we look for these functions in the form: psijk (u, v, w) = pijk (u, v, w) + αp111 (u, v, w), ijk ∈ S,

13. The equivalent of a serendipity relation.

30 Meshing, Geometric Modeling and Numerical Simulation 1 psijk (u, v, w) = pijk (u, v, w) + βp111 (u, v, w), ijk ∈ A. In other words, there are only two parameters to be found and relation [1.13] gives the solution: 1 1 and β = . 6 4 Starting from these two values, we can find the expression for the two typical functions: α=−

1 u(2u2 + 2v 2 + 2w2 − 5uv − 5vw − 5uw), 2 9 ps210 (u, v, w) = uv(4u − 2v + w), 4

ps300 (u, v, w) =

which gives:

9 2 (1 − x − y)( − x − y + xy + x2 + y 2 ), 2 9 9 s p210 (x, y) = x(1 − x − y)(4 − 6x − 3y). 4 To conclude the discussion on the reduced third-degree triangle, what remains is to show its polynomial space. By construction, P 2 is covered. The question is to find the other three monomials that are covered here. To do this, we begin with the relations (in the complete space):  lq xl y m = ωijk pijk (x, y), ps300 (x, y) =

ijk 00 and the coefficients are found through instantiations (for example, ωijk = 1) for any ijk. s Next, we begin with the relation pijk (x, y) = pijk (x, y)+αp111 (x, y), for example, and we write its opposite, that is pijk (x, y) = psijk (x, y) − αp111 (x, y). It is then sufficient to write it into an expression of xl y m to verify whether the coefficient on p111 is null or not. These calculations were carried out in [George et al. 2014] and the result is illustrated in the following diagram: lq ωijk

1 x x2 3

2

x + 2x y

y y2

xy 2

x y − xy

2

y 3 + 2xy 2 ,

and the unexpected gift is the last line of the diagram (though we have lost the monomials x3 , x2 y, xy 2 and y 3 present in the complete space P 3 ). • Triangle of degree 4 Construction by Taylor expansion, by enforcing the presence of the space P 3 in the reduced fourth-degree triangle leads to an impasse [George et al. 2014]. We cannot even find the space P 2 . On the other hand, by enforcing the presence of P 2 alone, we find a solution (a total of 12 monomials or combinations), thus an element of 12 nodes, but this element seems inadequate with respect to any calculation. Higher degrees present the same syndrome

Finite Elements and Shape Functions 31 • Tetrahedron of degree 3 Following the discussion on triangles, we think that only the reduced third-degree tetrahedron is of interest. The typical reduced shape functions are given in [George et al. 2014], and we find: 1 1 1 ps3000 (u, v, w, t) = p3000 (u, v, w, t)− p1110 (u, v, w, t)− p1101 (u, v, w, t)− p1011 (u, v, w, t) 6 6 6 which gives, at u, v, w and t: ps3000 (u, v, w, t) =

1 u(2u2 − 5uv − 5uw − 5ut + 2v 2 − 5vw − 5vt + 2w2 − 5wt + 2t2 ), 2

and, at x, y and z: ps3000 (x, y, z) =

1 (1 − x − y − z)(2 − 9x − 9y − 9z + 9x2 + 9xy + 9xz + 9y 2 + 9yz + 9z 2 ). 2

For ps2100 (u, v, w, t), the dependency is at p2100 (u, v, w, t) and the internal functions of the two incident faces, that is: 1 1 ps2100 (u, v, w, t) = p2100 (u, v, w, t) + p1110 (u, v, w, t) + p1101 (u, v, w, t) 4 4 9 uv(4u − 2v + w + t), 4 9 and at x, y and z we have : ps2100 (x, y, z) = (1 − x − y − z)x(4 − 6x − 3y − 3z). 4 =

1.3.2. Tensor elements, quadrilateral and hexahedral elements A serendipity tensor element of degree d for each variable is, in theory, defined starting from information on the boundary nodes (incomplete elements) and the specific shape functions that are based on these nodes. As all of these nodes are incomplete, there exists (except in exceptional cases) an infinity of shape functions related to these nodes. To establish a unique and adequately rich solution, we enforce that the space resulting from these shape functions contains the polynomial space of degree d at all the variables, the classic space P d . For small degrees, this definition also implies the presence of two monomials (in the case of quadrilaterals), ud v and uv d in the resulting space, hence the term “serendipity”. In general, in two dimensions, the serendipity space is thus defined including the space P d and the monomials of degree d for one of the variables and a degree of 1 for the others. Thus, in two dimensions, this (d + 1)(d + 2) space has the dimension + 2. Consequently, the unique information on the bor2 der nodes does not make it possible to cover the case of degrees higher than 3. Indeed, for a degree of 4, an additional node is required; for a degree of 5, three additional nodes are required and (d + 1)(d + 2) d(d − 5) so on. The number of internal nodes is, thus, equal to + 2 − 4d = + 3. 2 2 These internal nodes are arranged starting from the center of the element. From the degree of 5,

32 Meshing, Geometric Modeling and Numerical Simulation 1

the nodes of the corresponding element cannot be positioned symmetrically with respect to the center of the element (thus be independent from the local numbering of the nodes). In three dimensions, the serendipity space comprises the space P d and the monomials of a degree s higher than d having at least s − d linear terms (variables) [Arnold, Awanou-2011]. For example, a serendipity hexahedron of degree 2, with 20 nodes includes the polynomial space P 2 with three variables: the third-degree monomials, namely u2 v, uv 2 , u2 w, uw2 , v 2 w, vw2 , uvw, as well as the fourth-degree monomials, namely u2 vw, uv 2 w, uvw2 , thus, in total, 20 monomials. To find a method of construction for serendipity elements of an arbitrary degree, we first consider the case of a degree of 2, which requires no internal node and where the construction method is none other than transfinite interpolation. In an analogous manner, we then propose a generalization of this method, called generalized transfinite interpolation, resulting, for any degree, in symmetric elements. In order to phase the indices following the two variables in a transfinite interpolation of different degrees following these variables, we introduce two functions k(i) and l(i) where i is an index, defined for a given degree d, by: k(i) = i × d,

l(0) = 0

and l(i) = i + 1, i = 1, d − 3 and finally

l(d − 2) = d.

• Quadrilateral of degree 2. A Taylor expansion [Bernardi et al. 2004] may be used to construct this element. However, we know that this quadrilateral can also be expressed via a classic transfinite interpolation [Gordon, Hall-1973] and is therefore written using φi (.) and the nodes, as:

2 1  

φ1i (u)φ2j (v)Ak(i),j +

i=0 j=0

1 2  

φ2i (u)φ1j (v)Ai,k(j) −

i=0 j=0

1 1  

φ1i (u)φ1j (v)Ak(i),k(j) ,

i=0 j=0

[1.14] shortened to: σ12 (u, v) + σ21 (u, v) − σ11 (u, v)

or even more simply

σ12 + σ21 − σ11 .

To obtain the second-degree tensor expression for each variable, we will rewrite the φ1∗ , the index 1 ∗ for i or j , for a degree of 2. We thus consider two φ∗ (u) functions and we express them on the basis of the φ2∗ (u) of degree 2 (the coefficients being unknown): α0 φ20 (u) + α1 φ21 (u) + α2 φ22 (u) = φ10 (u) and β0 φ20 (u) + β1 φ21 (u) + β2 φ22 (u) = φ11 (u), we then instantiate u for three values 0, 12 and 1. The property φ2i (uj ) = δij (where the uj are the nodes of the reference element (hence the three values above)) makes it possible to find the 6 coefficients. We have (a result that is also generalizable for any degree): 2 2 1 0 φ (u) + φ21 (u) + φ22 (u) = φ10 (u) 2 0 2 2

and

0 2 1 2 φ (u) + φ21 (u) + φ22 (u) = φ11 (u), 2 0 2 2

Finite Elements and Shape Functions 33 1 

thus:

φ1i (u)Ak(i) =

i=0

where Q0 = A0

,

2 

φ2i (u)Qi ,

i=0

 Ak(i) A0 + A2 Q1 = = 2 2 i+i =1

and Q2 = A2 .

1

It must be noted that to go from a degree of 1–2, a simple elevation of degree is carried out here (this will generally be true to go from a degree of 1 to any degree d, see below) in Lagrange formalism with a method that is not the same as that used to elevate the degree in the case of Bézier shapes (see Chapter 3). Coming back to the element makes it possible to find the classic 2 2   form, σ12 = φ2I (u)φ2j (v)QIj , by defining the nodes Q∗,j , j = 0, ..., 2, by: I=0 j=0

Q0j = Ak(0),j = A0j ,

Q1j =

1  1 A0j + A2j Ak(m),j = , 2 2 m=0

Q2j = Ak(1),j = A2j . [1.15]

The second term in the sum, σ21 , is treated in the same manner by defining an analogous sequence, with relation [1.15] becoming, for i = 0, .., 2: Qi0 = Ai,k(0) = Ai0 ,

Qi1 =

1  1 Ai0 + Ai2 Ai,k(m) = , 2 2 m=0

Qi2 = Ai,k(1) = Ai2 . [1.16]

Similarly, for the third term, σ11 , we construct the node sequence: Q0j , Q2j , Qi0 , Qi2

as above and Q11 =

1 1   Ak(i),k(j) i=0 j=0

4

.

[1.17]

We write the initial second-degree patch by introducing the nodes Qij (defined above) in each of the three terms in its definition and then expressing these nodes as functions of the initial Aij . We thus obtain a complete patch by inventing the central node. This node (see the above schema) is naturally denoted by A11 , which is the node that comes up with respect to the term φ21 (u)φ21 (v). A01 + A21 A10 + A12 Consequently, we have three contributions. The first is , the second is , 2 2 A20 + A22 + A00 + A02 the last term is and upon summing we have: 4 A01 + A21 + A10 + A12 A00 + A20 + A22 + A02 − , A11 = 2 4 which is summarized in the following schema: 02

12

22

-1/4

1/2

-1/4

01

[11]

21

1/2

[11]

1/2

00

10

20

-1/4

1/2

-1/4

34 Meshing, Geometric Modeling and Numerical Simulation 1

In conclusion, with the specific, made-up node A11 and the initial nodes, the element is written 2 2 2  2    as a complete patch, that is φ2i (u)φ2j (v)Aij = p2ij (u, v)Aij . i=0 j=0

i=0 j=0

Following this construction, we can explicitly calculate the reduced shape functions. Let us recall that φ0 (u) = (1 − 2u)(1 − u) and that φ1 (u) = 4u(1 − u). The first shape function, index 00, is the polynomial resulting with respect to A00 , thus via A00 , weight 1, directly and via A11 , weight − 14 , or: 1 ps00 (u, v) = p00 (u, v) − p11 (u, v) = (1 − u)(1 − v)(1 − 2u − 2v). 4 The other typical function is that of index 10, or, similarly: 1 ps10 (u, v) = p10 (u, v) + p11 (u, v) = 4u(1 − u)(1 − v). 2 We establish the expression for all the reduced shape functions via symmetry. It must be noted that the initial relation gives the result directly. That is: ps00 (u, v) = φ10 (u)φ20 (v) + φ20 (u)φ10 (v) − φ10 (u)φ10 (v). This was not evident in the above form, p00 (u, v)− 14 p11 (u, v), and for the other typical function, index 10, we directly have: ps10 (u, v) = φ21 (u)φ10 (v). However, this apparent simplicity is only true when d = 2 (without internal node) and, as we will see, when d = 3 (also without internal node). • Quadrilateral of degree d The idea, here as well, is to avoid using Taylor expansions and instead find an approach based on transfinite interpolation (as for degree 2) or, more precisely, to see how to generalize this transformation to meet our needs. A symmetrical serendipity element includes, as nodes, all the nodes of the complete element except for the nodes of the first ring. This collection of nodes is formed by the internal nodes of the complete element that are immediate neighbors of the border nodes: A1j and Ad−1,j

for

1 ≤ j ≤ d − 1 and

Ai1 and Ai,d−1

for

1 ≤ i ≤ d − 1.

Such an element is identical, up to a degree of 4, to a classic serendipity element, and beyond this degree is richer than the classic serendipity element [Arnold, Awanou-2011], [Floater, Gillette-2014], but it has the advantage of being symmetrical. By considering this collection of nodes, we construct the element via the following relation called generalized transfinite interpolation: d 1   i=0 j=0

ψi1 (u)φdj (v)Ak(i),j +

1 d   i=0 j=0

φdi (u)ψj1 (v)Ai,k(j) +

d−2 d−2   i=0 j=0

ψid−2 (u)ψjd−2 (v)Al(i),l(j)

Finite Elements and Shape Functions 35



d−2 1  

ψi1 (u)ψjd−2 (v)Ak(i),l(j) −

i=0 j=0

1 d−2  

ψid−2 (u)ψj1 (v)Al(i),k(j) ,

[1.18]

i=0 j=0

where ψ∗1 is a first-degree shape function relative to the nodes with index 0 and d, ψ∗d−2 is a shape function of degree d − 2 relative to all the nodes except those of index 1 and d − 1. By definition, the ψ∗1 function coincides with the classic function φ1∗ , and this is the same for a degree of 2, while for other degrees the ψ∗d−2 function is different 14 from φd−2 . The ψ∗d−2 functions will be ∗ made explicit later in relation [1.19]. In shortened form, this interpolation can be written as:

σ1d + σd1 + σd−2,d−2 − σ1,d−2 − σd−2,1 . This interpolation is a generalization of the transfinite interpolation in the presence of internal nodes. We will establish that this interpolation has the right properties, that is it covers the serendipity space. We first show that all the monomials uk v or uv k are present. To do this, we write the shape functions for the reduced element, denoted by φs,d ∗,∗ (u, v), in terms of the φ and the ψ of different degrees. To conclude, we express the shape functions uniquely as functions of φ.

The four kinds of shape functions The φs,d ∗,∗ (u, v) are of four types, corresponding to corners, index 00 and similar indices, to the "first" nodes, index 10 and similar indices, to the edge nodes with the other index between 2 and d − 2, like 20,30,... , to the internal nodes, the two indices between 2 and d − 2, like 22,23,... . The shape functions are expressed as a function of the classic shape functions, the φ functions, and the (non-classic) shape functions, the ψ functions. These are written as classic functions, but are cancelled out at the nodes of a different distribution (non-uniform). See the example of ψ03 (u). The φs,d 00 (u, v) function is that which comes up with regard to A00 , thus: d−2 1 d d 1 (u)ψ0d−2 (v) − ψ01 (u)ψ0d−2 (v) − ψ0d−2 (u)ψ01 (v), φs,d 00 (u, v) = ψ0 (u)φ0 (v)+φ0 (u)ψ0 (v)+ ψ0

where, as we have seen, ψ∗1 = φ1∗ , thus: d−2 1 d d 1 (u)ψ0d−2 (v) − φ10 (u)ψ0d−2 (v) − ψ0d−2 (u)φ10 (v). φs,d 00 (u, v) = φ0 (u)φ0 (v)+ φ0 (u)φ0 (v)+ ψ0

From this, we deduce the three other analogous functions: d−2 d−2 d−2 1 d d 1 (v) − φ11 (u)ψ0d−2 (v) − ψd−2 (u)φ10 (v), φs,d d0 (u, v) = φ1 (u)φ0 (v)+ φd (u)φ0 (v)+ ψd−2 (u)ψ0 d−2 d−2 d−2 1 d d 1 φs,d (u)ψd−2 (v)− φ10 (u)ψd−2 (v)− ψ0d−2 (u)φ11 (v), 0d (u, v) = φ0 (u)φd (v)+ φ0 (u)φ1 (v)+ ψ0

14. Indeed, for example, for a degree d = 5 and for the index 0, we have ψ03 (u) = 16 (2−5u)(3−5u)(1−u) and this function has a value of 1 for u = 0 and is cancelled out at 25 , 35 and 1, while φ30 (u) = 12 (1−3u)(2− 3u)(1 − u) which has a value of 1 for u and is cancelled out at 13 , 23 and 1.

36 Meshing, Geometric Modeling and Numerical Simulation 1 d−2 d−2 d−2 d−2 1 d d 1 1 1 φs,d dd (u, v) = φ1 (u)φd (v)+ φd (u)φ1 (v)+ ψd−2 (u)ψd−2 (v)− φ1 (u)ψd−2 (v)− ψd−2 (u)φ1 (v). s,d The function φs,d 10 (u, v) is the function that is seen with respect to A10 , that is φ10 (u, v) = φd1 (u)φ10 (v), from this we also deduce the three analogous functions: d 1 φs,d d−1,0 (u, v) = φd−1 (u)φ0 (v),

s,d d 1 d 1 φs,d 1d (u, v) = φ1 (u)φ1 (v) and φd−1,d (u, v) = φd−1 (u)φ1 (v)

1 d and, by symmetry, the similar relations obtained starting from φs,d 01 (u, v) = φ0 (u)φ1 (v), that is: 1 d φs,d 0,d−1 (u, v) = φ0 (u)φd−1 (v),

s,d 1 d 1 d φs,d d1 (u, v) = φ1 (u)φ1 (v) and φd,d−1 (u, v) = φ1 (u)φd−1 (v).

The φs,d 20 (u, v) function is that which is seen with regard to A20 , thus, simply: s,d d−2 d 1 (u)ψ0d−2 (v) − ψ1d−2 φ10 (v), φs,d 20 (u, v) = φl(1),0 (u, v) = φ2 (u)φ0 (v) + ψ1

from which we deduce: s,d d−2 d 1 (u)ψ0d−2 (v) − ψ2d−2 φ10 (v), φs,d 30 (u, v) = φl(2),0 (u, v) = φ3 (u)φ0 (v) + ψ2 s,d s,d etc., up to the index d − 2. Similarly for φs,d 2d (u, v), ..., φ02 (u, v), ... φd2 (u, v), ...

The central functions come uniquely from the middle term in the general definition. That is: d−2 φs,d (u)ψjd−2 (v). l(i),l(j) (u, v) = ψi

The serendipity space is covered By construction, relation [1.18], the φs,d ∗,∗ (u, v) cover the monomials in the serendipity space. Indeed, it is enough to show the typical monomials as we see in diagram [1.3.2] for a degree of 5, via the following interpretation: – two diagonals covering the monomials uk and uk v as well as their two counterparts for v k and uv k , for k = 0, ..., d, – the central diamond covering the monomials uk v l where k = 0, ..., d−2 and l = 0, ..., d−2, noting that these regions overlap and that we can also restrict the second region to the diamond described by uk v l but with k = 2, ..., d − 2 and l = 2, ..., d − 2. To show that these monomials of the serendipity space are covered, we will show that the first region may be expressed by essentially considering the first two terms of relation [1.18] while the second region essentially concerns the third term of this same relation. It is obvious that the monomials uk and uk v, with k = 0, ..., d, may be expressed as linear combinations of the only φdi (u)ψj1 (v) of the second term of the relation, as the φdi (u) form a polynomial basis with a degree lower than or equal to d and the ψj1 (v) form a basis of polynomials with a degree lower than or equal to 1. We will show that we can choose a specific combination of other monomials (of other terms) of the complete relation that ensure that the total combination remains the initial combination with the φdi (u)ψj1 (v). First, we fix a combination of monomials

Finite Elements and Shape Functions 37 1 u

v u2 uv v2 3 2 2 u u v uv v3 4 3 2 2 3 u u v u v uv v4 u5 u4 v u3 v 2 u2 v 3 uv 4 v5 5 3 3 5 u v u v uv Table 1.1. The diagram of the basis monomials for a degree of 5. We find the monomials up to the degree of 5 complemented (last line) by some monomials of degree 6, whence the monomial u3 v 3 (which is added to the classic monomials of the serendipity elements due to the symmetry imposed in our definition)

ψi1 (u)φd1 (v) and ψi1 (u)φdd−1 (v) such that the first term is identical to the fourth term (so that the φdj (v) degenerate to ψjd−2 (v)). We then consider a combination of monomials ψjd−2 (v) for 2 ≤ j ≤ d − 2 such that ψjd−2 (v) degenerates to ψj1 (v) ensuring the equality of the third and fourth terms. Thus, because of these combinations, only the second term yielding the desired combination remains. By symmetry, we obtain an analogous result for the monomials v k and uv k . As concerns the central diamond, it is obvious that the monomials uk v l with k = 0, ..., d − 2 and l = 0, ..., d − 2, may be expressed as linear combinations of only the monomials of the third term of the complete relationship, that is, ψid−2 (u)ψjd−2 (v), as these monomials form a polynomial basis with a degree lower than or equal to d−2. Similarly, we establish a combination of monomials φd1 (u) and φdd−1 (u) so that φdi (u) coincides with ψid−2 (u) (idem at v) such that the first (respectively, second) term and the fourth (respectively, fifth) term are identical and the total relation is reduced to the third term, which yields the desired combination. The polynomial space is, thus, exactly the classic serendipity space for d ≤ 4, and this same space, enriched, for d ≥ 5 by the monomial(s) uk v l where k = 0, ..., d − 2, l = 0, ..., d − 2 and k + l ≥ d + 1. As an example, for degree 5, we saw the additional monomial u3 v 3 , for degree 6, we will find the monomials u4 v 3 , u3 v 4 and u4 v 4 as the additional monomials. Expression for φs,d ∗,∗ (u, v) as a function of the classic function φ In the expression for the reduced shape functions, we have the terms in φ and in ψ that we will rewrite using the φ functions, of degree d. There are two cases to consider: the treatment of the first-degree ψ and the (d − 2)-degree ψ. We saw that ψ∗1 (u) = φ1∗ (u) and, as we will see later, it is enough to increase the degree from 1 to d. However, the treatment of the ψ with a degree of d − 2 is more technical. Each ψid−2 can be written as the following linear combination: ψid−2 (u) = φdl(i) (u) + αl(i) φd1 (u) + βl(i) φdd−1 (u),

[1.19]

38 Meshing, Geometric Modeling and Numerical Simulation 1 where the coefficients αi and βi are calculated such that the degree of this combination is d − 2. Each ψid−2 (thus, the above combination) is also a particular Lagrange interpolant (the property on δij is verified for j = l(i)). To calculate the coefficients αi and βi , we go back to the expression for the complete shape functions, that is15: φdi (u) = (−1)i

l=d dd Cid  l ( − u), d! d l=0 l=i

an expression in which the index i is mute and will, in due course, have the value l(i). In this expression, the coefficient of the term in ud is: (−1)i

dd Cid dd Cid (−1)d = (−1)d−i , d! d!

and that in ud−1 is: l dd Cid dd Cid 1 (−1)d−1 = (−1)d+i−1 d! d d! d d

(−1)i

l=0 l=i



d(d + 1) −i . 2

We also enforce that the terms at ud and ud−1 of the combination are null. We then obtain: d (−1)d−i Cid + αi (−1)d−1 C1d + βi (−1)1 Cd−1 = 0.

This gives a first equation, that is: (E1 )

(−1)i

Cid − αi + (−1)d−1 βi = 0. d

The second equation is written as:  (−1)d+i−1 Cid

d(d + 1) −i 2



 + (−1)d C1d

   d(d + 1) d(d + 1) d − 1 αi + Cd−1 − (d − 1) βi = 0. 2 2

Upon multiplying by (−1)1−d , we obtain:  (−1)i Cid

d(d + 1) −i 2



 − C1d

   d(d + 1) d(d + 1) d − 1 αi + (−1)d−1 Cd−1 − (d − 1) βi = 0, 2 2

an equation that contains the preceding one and is thus reduced to: d (−1)i iCid − C1d αi + (−1)d−1 Cd−1 (d − 1)βi = 0,

and finally, this second equation can be reduced to: (E2 )

(−1)i i

Cid − αi + (−1)d−1 (d − 1)βi = 0. d

15. The coefficient of the binomial is denoted by Cid with a degree d as exponent. This is in order to be homogenous during our writing of Bernstein polynomials where d is also an exponent.

Finite Elements and Shape Functions 39

Thus, the system to be solved is: (E1 ) (E2 )

(−1)i

(−1) i i

Cid d

Cid d

− αi + (−1)d−1 βi = 0

− αi + (−1)d−1 (d − 1)βi = 0,

which gives the solution, for i = 0, d and different from 1 (for αi ) and from d − 1 (for βi ; (E2 ) − (E1 ) gives βi , we then calculate αi either by carrying over or by symmetry. We find (for the indices l(i)): d αl(i) = (−1)l(i) Cl(i)

d − 1 − l(i) d(d − 2)

and

d βl(i) = (−1)d−l(i) Cl(i)

l(i) − 1 , d(d − 2)

[1.20]

noting that we can also define these coefficients for the values 1 and d − 1 of the indices (values not covered by l(i) when i varies from 0 to d − 2) and that, therefore, αd−1 = 0, β1 = 0 and α1 = βd−1 = −1. We can thus write the formulae [1.20] with the index i, for 0 ≤ i ≤ d. Let us note that the coefficients are symmetrical, α0 = βd , ..., αd = β0 . We use this strategy to treat the ψ d−2 functions. We can then express the typical shape functions of the reduced element. Thus, for the “corner” functions, here with an index 00 , we have: 1 d d 1 d−2 φs,d (u)ψ0d−2 (v) − φ10 (u)ψ0d−2 (v) − ψ0d−2 (u)φ10 (v), 00 (u, v) = φ0 (u)φ0 (v) + φ0 (u)φ0 (v) + ψ0

which is expressed as: 1 d d 1 φs,d 00 (u, v) = φ0 (u)φ0 (v) + φ0 (u)φ0 (v) 



d + φ0 (u) + α0 φd1 (u) + β0 φdd−1 (u) φd0 (v) + α0 φd1 (v) + β0 φdd−1 (v)

  −φ10 (u) φd0 (v) + α0 φd1 (v) + β0 φdd−1 (v) − φd0 (u) + α0 φd1 (u) + β0 φdd−1 (u) φ10 (v). The other functions of this type can be directly obtained. For example, using symmetry we have, for u: s,d 1 d d 1 φs,d d0 (u, v) = φ00 (1 − u, v) = φ0 (1 − u)φ0 (v) + φ0 (1 − u)φ0 (v)    φd0 (v) + α0 φd1 (v) + β0 φdd−1 (v) + φd0 (1 − u) + α0 φd1 (1 − u) + β0 φdd−1 (1 − u)     −φ10 (1−u) φd0 (v) + α0 φd1 (v) + β0 φdd−1 (v) − φd0 (1 − u) + α0 φd1 (1 − u) + β0 φdd−1 (1 − u) φ10 (v), 1 d d 1 φs,d d0 (u, v) = φ1 (u)φ0 (v) + φd (u)φ0 (v)   φd0 (v) + α0 φd1 (v) + β0 φdd−1 (v) + φdd (u) + α0 φdd−1 (u) + β0 φd1 (u)     −φ11 (u) φd0 (v) + α0 φd1 (v) + β0 φdd−1 (v) − φdd (u) + α0 φdd−1 (u) + β0 φd1 (u) φ10 (v).



therefore

The second typical function is that of the index 10 , whose expression is particularly simple: d 1 d 1 φs,d 10 (u, v) = φ1 (u)ψ0 (v) = φ1 (u)φ0 (v).

The third type of function is that of the functions associated with the edge nodes between the index 2 and the index d − 2. For example, for the index 20 . we find: s,d d−2 d 1 φs,d (u)ψ0d−2 (v) − ψ1d−2 (u)φ10 (v). 20 (u, v) = φl(1),0 (u, v) = φ2 (u)ψ0 (v) + ψ1

40 Meshing, Geometric Modeling and Numerical Simulation 1 d 1 φs,d 20 (u, v) = φ2 (u)φ0 (v) 

 + φd2 (u) + α2 φd1 (u) + β2 φdd−1 (u) φd0 (v) + α0 φd1 (v) + β0 φdd−1 (v)

 − φd2 (u) + α2 φd1 (u) + β2 φdd−1 (u) φ10 (v).

Therefore

Finally, the functions associated with the internal nodes are written as: d−2 φs,d (u)ψjd−2 (v) l(i),l(j) (u, v) = ψi    φdl(j) (v) + αl(j) φd1 (v) + βl(j) φdd−1 (v) . = φdl(i) (u) + αl(i) φd1 (u) + βl(i) φdd−1 (u)

As with d = 3, the general formula is similar16 to a second-degree formula. This case can be worked through either via the above formulae or directly. • Third-degree quadrilateral. The element is written with φi (.) and the nodes as: 3 1  

φ1i (u)φ3j (v)Ak(i),j +

i=0 j=0

1 3  

φ3i (u)φ1j (v)Ai,k(j) −

i=0 j=0

1 1  

φ1i (u)φ1j (v)Ak(i),k(j) .

i=0 j=0

We mechanically repeat the construction of the second degree. In particular, we make use of the fact that: 3 3 2 1 0 φ (u) + φ31 (u) + φ32 (u) + φ33 (u) = φ10 (u) 3 0 3 3 3 0 3 1 3 2 3 3 and that φ (u) + φ1 (u) + φ2 (u) + φ33 (u) = φ11 (u), 3 0 3 3 3 and from this we deduce that, for example, the first term of the expression, σ13 , is formulated as: σ13 =

3 3  

φ3I (u)φ3j (v)QIj ,

I=0 j=0

(3 − I)A0j + I A3j where Q0j = Ak(0),j = A0j , QIj = , I = 1, 2 and Q3j = Ak(1),j = A3j . 3 The second term is treated in the same manner as the last term. By rewriting the initial formula, term by term, to the degree of 3 using Qij and then replacing these based on the initial nodes, we find a complete statement to a degree of 3 by constructing the four missing nodes. For example, the construction of the node that is naturally denoted by A11 corresponds to the following schema: 03

13

23

02 01

[11]

00

10

20

33

-2/9

32

0

31

2/3

[11]

30

-4/9

2/3

16. The functions φ and ψ are identical.

1/3

0

-1/9 0 1/3

0

-2/9

Finite Elements and Shape Functions 41

With this particular node, A11 , as well as A21 , A22 and A12 , the four made-up nodes, and the initial nodes, the element can be written as a complete patch: 3  3  i=0 j=0

φ3i (u)φ3j (v)Aij =

3  3 

p3ij (u, v)Aij .

i=0 j=0

This construction makes it possible to explicitly calculate the reduced shape forms. Let us recall that φ0 (u) = 12 (1 − 3u)(2 − 3u)(1 − u), φ1 (u) = 92 u(2 − 3u)(1 − u) and that φ2 (u) = − 92 u(1 − 3u)(1 − u). The first shape function, index 00, is the polynomial that comes up with respect to A00 , and thus via A00 itself, with the weight 1, and via A11 , A21 , A12 and A22 , with the weights − 49 , − 29 , − 29 and − 19 , that is: 4 2 2 1 ps,3 00 (u, v) = p00 (u, v) − p11 (u, v) − p21 (u, v) − p12 (u, v) − p22 (u, v), 9 9 9 9 =

1 49 9 (1 − 3u)(2 − 3u)(1 − u)(1 − 3v)(2 − 3v)(1 − v) − u(2 − 3u)(1 − u) v(2 − 3v)(1 − v) 4 92 2 29 9 29 9 + u(1 − 3u)(1 − u) v(2 − 3v)(1 − v) + u(2 − 3u)(1 − u) v(1 − 3v)(1 − v) 92 2 92 2 19 9 − u(1 − 3u)(1 − u) v(1 − 3v)(1 − v) 92 2

21 9 (1 − 3u)(2 − 3u)(1 − 3v)(2 − 3v) − 2u(2 − 3u)v(2 − 3v) = (1 − u)(1 − v) 2 94 1 +u(1 − 3u)v(2 − 3v) + u(2 − 3u)v(1 − 3v) − u(1 − 3u)v(1 − 3v) 2

2 9 (1 − u)(1 − v)( − u − v + u2 + v 2 ). 2 9 The other typical function is that of index 10, which is in a similar manner obtained via A10 , A11 and A12 , therefore: =

2 1 ps,3 10 (u, v) = p10 (u, v) + p11 (u, v) + p12 (u, v), 3 3

2 1 9 = φ31 (u) φ30 (v) + φ31 (v) + φ32 (v) = φ31 (u)φ10 (v) = u(2 − 3u)(1 − u)(1 − v). 3 3 2 We establish the expression for the reduced shape functions using symmetry. It must be noted that the initial relation directly gives the result, that is: 1 3 3 1 1 1 ps,3 00 (u, v) = φ0 (u)φ0 (v) + φ0 (u)φ0 (v) − φ0 (u)φ0 (v)

=

1 1 (1 − u)(1 − 3v)(2 − 3v)(1 − v) + (1 − 3u)(2 − 3u)(1 − u)(1 − v) − (1 − u)(1 − v) 2 2

42 Meshing, Geometric Modeling and Numerical Simulation 1 1 (1 − u)(1 − v) {(1 − 3v)(2 − 3v) + (1 − 3u)(2 − 3u) − 2} 2 

1 = (1 − u)(1 − v) 2 − 9u − 9v + 9u2 + 9v 2 , 2 as above. And for the index 10, we directly find that: =

3 1 ps,3 10 (u, v) = φ1 (u)φ0 (v),

as for degree 2. • Quadrilateral of degree d ≥ 4. The element is written with φi (.), ψi (.) and nodes via formula [1.18]. As seen already, the formula involves first-degree functions and functions with a degree of d − 2. Rewriting the ψi functions using the classic φi functions also makes it possible to reconstruct a complete element equivalent to the reduced element by inventing the missing nodes, the other nodes being identical (to the initial nodes). These missing nodes are linear combinations of the nodes of the reduced element and are obtained by the same process of moving from ψi to φi from degree 1 or d − 2 to the degree d. Further on, we will return to this process to establish these combinations. Degree of 1 to d From a degree of 1, we can write an expression for a degree d. These formulae have already been seen: d d   d−k d k d φk (u) = φ10 (u) and φ (u) = φ11 (u) . d d k k=0

Thus:

1 

k=0

φ1i (u)Ak(i) =

i=0

d 

 (d − i)A0 + iAd φdi (u)Qi , = d i=0 d

φdi (u)

i=0

where Qi = (d−i)Ad0 +iAd . This rewritten form σ1d , σd1 , σ1,d−2 and σd−2,1 in relation [1.18].

will be used to work on the terms at u or at v for

Degree d − 2 to d To work with the degree d − 2, we once again consider, at a degree of d and with i different from 1 and from d − 1, the linear combination ψid−2 (u) = φdl(i) (u) + αl(i) φd1 (u) + βl(i) φdd−1 (u), with the coefficients αi and βi calculated such that the degree falls from 2. Thus, as calculated above, relations [1.20]: d αl(i) = (−1)l(i) Cl(i)

d − 1 − l(i) d(d − 2)

and

d βl(i) = (−1)d−l(i) Cl(i)

l(i) − 1 . d(d − 2)

Finite Elements and Shape Functions 43

Let us take a curve of degree d, which is written as

d 

φdi (u)Ai where the nodes other than

i=0

A1 and Ad−1 are assumed to be known and we construct the nodes A1 and Ad−1 using the formulae:   A1 = αi Ai and Ad−1 = β i Ai . [1.21] i=1,i=d−1

i=1,i=d−1

We then have: d 

φdi (u)Ai = φdo (u)A0 +



αi φd1 (u)Ai +

i=1 i=d−1

i=0



φdi (u)Ai +



βi φdd−1 (u)Ai +φdd (u)Ad ,

i=1 i=d−1

i=2,d−2

which we group at A0 , A2 , ..., Ad−2 and Ad and we find: d  i=0

φdi (u)Ai =

d−2 

ψid−2 (u)Al(i) ,

i=0

which is, therefore, a curve of degree d − 2. This shortcut will make it possible to work on the degrees d − 2 in formula [1.18] by inventing the missing nodes via formulae [1.21], making it possible to write an expression for a degree d. When applied to a curve, this result gives the relation: d−2  i=0

ψid−2 (u)Al(i) =

d 

φdi (u)Qi ,

i=0

where: Q0 = A0 , Q1 =

 i=1 i=d−1

αi Ai , Qi = Ai , i = 2, d − 2, Qd−1 =



βi Ai

and

Qd = Ad .

i=1 i=d−1

The tensor nature of the elements makes it possible to use this established result for curves in order to determine the missing nodes of the complete equivalent element17. Thus, we first complete the isocurves constant in v to obtain Qi,1 and Qi,d−1 for i = 1 and i = d − 1. We then complete the isocurves constant in u to obtain the Q1,j and the Qd−1,j for all j (which fills all the missing nodes in the first phase). As an illustration, we explain the case of fourth- and fifth-degree quadrilaterals and, for degree 4, we graphically explain relation [1.18], which gives the following diagram: 17. The complete equivalent element, see Chapter 3, will be used to study the geometric validity of the reduced element.

44 Meshing, Geometric Modeling and Numerical Simulation 1

04

44

04

03

43

02

42

01 00

.

.

.

.

.

44

04

.

.

.

.

.

41

.

.

.

40

00

40

00

.

+

14

24

10

20

34

30

+

.

24

.

44 .

02

22

42 .

.

20

.

40

which corresponds to σ14 , σ41 and σ22 , terms to which we add two correction terms that correspond to σ12 and σ21 , that is: 04

-

44

04

.

.

.

.

02

42

.

.

.

.

.

.

40

00

00

.

.

.

.

.

.

-

.

.

24

20

.

44

.

40

The degree 4 This element has 17 nodes of which one is internal (against 25, for the complete element). The coefficients αi have a value of α0 = 38 , α2 = 68 , α3 = 0 and α4 = − 18 . Using these values, we have the following distribution schema for A11 : 04

14

24

34

03 02

22

01

[11]

00

10

20

30

44

-3/64

1/4

43

0

42

-18/64

41

3/4

[11]

40

-27/64

3/4

-18/64

0

5/64 0

36/64

-18/64 1/4

-18/64

0

-3/64

and, by symmetry, we can find A13 , A31 and A33 . To give the example of a non-corner missing node, let us consider A21 . We thus find the distribution shown in the schema:

Finite Elements and Shape Functions 45

04

14

24

34

03

44

1/16

43

0

0

-1/8

0

1/16 0

02

22

42

-6/16

6/8

-6/16

01

[21]

41

1/2

[21]

1/2

40

-3/16

00

10

20

30

0

3/8

0

-3/16

and, by symmetry, we find A12 , A32 and A23 . s,4 s,4 s,4 We can now make explicit the typical functions φs,4 00 (u, v), φ10 (u, v), φ20 (u, v) and φ22 (u, v), either via the general formula or via the weights that are thus found.

For φs,4 00 (u, v), via the general formula (we must calculate α0 and β0 ) we obtain: α0 =

3 8

1 and β0 = − . 8

We than have the expression: 1 4 4 1 φs,4 00 (u, v) = φ0 (u)φ0 (v) + φ0 (u)φ0 (v)



3 1 3 1 φ40 (v) + φ41 (v) − φ43 (v) + φ40 (u) + φ41 (u) − φ43 (u) 8 8 8 8



3 1 3 1 −φ10 (u) φ40 (v) + φ41 (v) − φ43 (v) − φ40 (u) + φ41 (u) − φ43 (u) φ10 (v) 8 8 8 8



3 1 3 1 φ40 (v) + φ41 (v) − φ43 (v) = φ40 (u) + φ41 (u) − φ43 (u) 8 8 8 8



3 4 1 3 4 1 −φ10 (u) φ (v) − φ43 (v) − φ (u) − φ43 (u) φ10 (v), 8 1 8 8 1 8

as: φ10 (u) =

4  4−k k=0

4

3 2 1 φ4k (u) = φ40 (u) + φ41 (u) + φ42 (u) + φ43 (u), 4 4 4

we can express everything using classic functions of a degree of 4 and we find: at φ40 (u)φ40 (v) : 1, 9 33 33 27 − − =− , 64 4 8 8 4 64 2 3 3 at φ42 (u)φ41 (v) : − =− , 48 16

at φ41 (u)φ41 (v) :

46 Meshing, Geometric Modeling and Numerical Simulation 1

etc. We can also, as is obvious, directly find the weights of the two preceding diagrams. At the end of the explanation, we start from: φ10 (u) = 1 − u, 1 1 (1 − 4u)(2 − 4u)(3 − 4u)(1 − u) = (1 − 4u)(1 − 2u)(3 − 4u)(1 − u), 6 3 1 16 4 φ1 (u) = − (−4u)(2 − 4u)(3 − 4u)(4 − 4u) = u(1 − 2u)(3 − 4u)(1 − u), 6 3 1 16 φ43 (u) = − (−4u)(1 − 4u)(2 − 4u)(4 − 4u) = u(1 − 4u)(1 − 2u)(1 − u), 6 3 and (1−u)(1−v) is factorized. We thus obtain, via a formal system of calculation, the expression (for details, see [George et al. 2014a]): φ40 (u) =

φs,4 00 (u, v) =

1 (1 − u)(1 − v)(3 − 22u − 22v + 48u2 + 12uv + 48v 2 − 32u3 − 32v 3 ). 3

Similarly, from the same reference, we have: φs,4 10 (u, v) =

16 u(1 − u)(1 − 2u)(3 − 4u)(1 − v), 3

2 φs,4 20 (u, v) = 4u(1 − u)(1 − v)(−3 + 16u − 2v − 16u ),

φs,4 22 (u, v) = 16u(1 − u)v(1 − v). The degree 5 This element has 24 nodes of which four are internal (as opposed to 36 for the complete element) and is different from the classic element [Arnold, Awanou-2011], [Floater, Gillette-2014], which has only 23 nodes, and thus a non-symmetry. This makes it a non-symmetrical element 4 when the degrees of freedom are of a nodal value(s) type. The αi sequence is α0 = 15 , α2 = 20 10 1 , α = − , α = 0 and α = , which gives the following schemas for A , with the factor 3 4 5 11 15 15 15 1 : 45 05

15

25

35

45

04

55

-4

54

0

9

-8

4

0

-1 0

03

23

33

53

16

-40

20

4

02

22

32

52

-32

80

-40

-8

51

36

[11]

50

-16

36

01 00

10

20

30

40

9 -32

16

0

-4

Finite Elements and Shape Functions 47

and for A21 , with the factor

05

15

25

35

1 75 :

45

04

55

-3

54

0

0

5

0

0

-2 0

03

23

33

53

30

-50

0

20

02

22

32

52

-60

100

0

-40

51

45

[21]

50

-12

01 00

10

20

30

40

0

20

30 0

0

-8

Starting from A11 , we can easily find A41 , A14 and A44 . From A21 , we can find A31 , A42 , A43 , A34 , A33 , A12 and A13 .

Shape functions These distribution schemas make it possible to find the explicit expression for the reduced shape functions. We once again see that the general formula also contains the distribution coefficients. There are four types of functions: the corner functions, such as φs,5 00 (u, v), those analogous s,5 to φs,5 10 (u, v), those analogous to φ20 (u, v) and, finally, the four “central” functions, analogous to φs,5 22 (u, v). These expressions are given in [George et al. 2014a], that is: φs,5 00 (u, v) =

1 (v − 1)(u − 1) 72 − 750u − 750v + 2625u2 + 1250uv + 2625v 2 72

 −3750u3 − 1250u2 v − 1250uv 2 − 3750v 3 + 1875u4 + 1250u2 v 2 + 1875v 4 , φs,5 10 (u, v) = φs,5 20 (u, v) =

25 u(2 − 5u)(3 − 5u)(4 − 5u)(1 − u)(1 − v), 24

25 u(5u − 3)(u − 1)(v − 1)(12 − 75u + 25v + 75u2 − 25v 2 ), 36

φs,5 22 (u, v) = q22 (u, v) =

625 uv(5v − 3)(v − 1)(5u − 3)(u − 1). 36

48 Meshing, Geometric Modeling and Numerical Simulation 1

The case of hexahedra A hexahedron is seen as the tensor product of a quadrilateral in the third direction. Consequently, the formulae seen for two dimensions can be extrapolated directly, which gives:

θ112 + θ121 + θ211 − 2 θ111 , for d = 2 and, otherwise:

θ11d + θ1d1 + θd11 + θd−2,d−2,d−2 − θ1,1,d−2 − θ1,d−2,1 − θd−2,1,1 , as the σ.. (u, v) are replaced by the θ... (u, v, w). It must be noted that the general formula, for d = 3 again gives a formula similar to that for degree 2 as in two dimensions. The techniques developed can be directly applied, whether this is to increase a degree of 1 to a degree d or to interpret a curve with a degree of d − 2 as a curve with a degree of d via the construction of the two nodes of indices 1 and d − 1. We conclude by giving the typical reduced form functions for the case d = 2 and the case d = 3. The second-degree serendipity hexahedron has 20 nodes, the vertices and two nodes per edge. These two typical functions are: ps000 (u, v, w) = (1 − u)(1 − v)(1 − w)(1 − 2u − 2v − 2w), ps100 (u, v, w) = 4u(1 − u)(1 − v)(1 − w). The third-degree serendipity hexahedron has 32 nodes, the vertices and two nodes per edge. These two typical functions are: ps000 (u, v, w) =

9 2 (1 − u)(1 − v)(1 − w)( − u − v − w + u2 + v 2 + w2 ), 2 9

ps100 (u, v, w) =

9 u(2 − 3u)(1 − u)(1 − v)(1 − w). 2

1.3.3. Other elements, prisms and pyramids As prisms have a triangular base, only the cases where d = 2 and d = 3 are relevant. The second- and third-degree pyramids, seen as degenerate hexahedra, are, by nature, already reduced elements.

Finite Elements and Shape Functions 49

1.4. Shape functions, rational elements Lagrange elements with a degree at least equal to 2 make it possible to have a better approximation of curved boundaries (better than straight elements, even of smaller size). On the contrary, approaching a circle (which is, nonetheless, of a degree of 2) is done using pieces of parabolas, from which comes the idea of using rational shape functions. This idea, already an old one (dating back to the 1980s at least) was combined with a modern trend, isogeometric analysis. Refer to [Cottrell et al. 2009] for example. 1.4.1. Rational triangle with a degree of 2 or arbitrary degree The second-degree rational triangle is commonly seen as a patch and is described by a rational Bézier based on its control points. In an analogous manner, we will consider the following definition for this triangle:  ωijk pijk (u, v, w)Aijk σ(u, v, w) =

i+j+k=2



ωijk pijk (u, v, w)

,

i+j+k=2

(but not all null weights). By denoting the denominawhere the ωijk are positive or null weights  tor by D(u, v, w), that is: D(u, v, w) = ωijk pijk (u, v, w), the expression becomes: i+j+k=2

σ(u, v, w) =

1 D(u, v, w)



ωijk pijk (u, v, w)Aijk .

[1.22]

i+j+k=2

002 101 200

011 110

020

The shape functions, denoted by an exponent r (for “rational”), are direct. For example: pr200 (u, v, w) =

ω200 p200 (u, v, w) D(u, v, w)

and

pr110 (u, v, w) =

ω110 p110 (u, v, w), D(u, v, w)

with the pijk seen earlier, p200 (u, v, w) = u(2u − 1) and p110 (u, v, w) = 4uv. Let us note that if the weights are equal, we find prijk (u, v, w) = pijk (u, v, w). We have the same shape for all degrees, that is: prijk (u, v, w) =

ωijk pijk (u, v, w). D(u, v, w)

We will return to these triangular elements in Chapter 3, to find a rational Bézier formulation and, thus, control the sign of their Jacobians.

50 Meshing, Geometric Modeling and Numerical Simulation 1

1.4.2. Rational quadrilateral of an arbitrary degree In a manner similar to the patches, we introduce the same definition to describe quadrilaterals of an arbitrary degree, that is: d d  

σ(u, v) =

ωij pij (u, v)Aij

i=0 j=0 d d  

. ωij pij (u, v)

i=0 j=0

where the ωijk are positive or null weights (but not all null weights). By denoting the denominad d   tor by D(u, v), or: D(u, v) = ωij pij (u, v), the expression becomes: i=0 j=0

σ(u, v) =

d d 1  ωij pij (u, v, w)Aij . D(u, v) i=0 j=0

From which we deduce the expression for the shape functions: prij (u, v) =

[1.23] ωij pij (u, v). D(u, v)

We will return to these quadrilateral elements in Chapter 3 as well, to find a rational Bézier formulation and, thus, control their Jacobian signs. 1.4.3. General case, B-splines or Nurbs elements Rational tetrahedra and hexahedra may be expressed in exactly the same manner. For other elements, prisms and pyramids, this is less common. There is nothing to prevent formally writing the B-splines or Nurbs elements with an identical definition. However, geometric validation (Chapter 3) of these type of elements is shown to be technically complicated, despite the fact that B-splines can be decomposed in Bézier shapes and Nurbs can be decomposed in rational Bézier curves (which, in turn, are expressed in classic Bézier curves but in an additional dimension of space). It must be noted that the literature on these elements does not mention this issue of validity, implicitly assuming that the question does not arise. ∗ ∗ ∗ Our description of finite elements and, more precisely, shape functions has been deliberately oriented by a very geometric view of elements, which are, therefore, considered to be patches. As

Finite Elements and Shape Functions 51

such, this point of view naturally leads us to review Lagrangian formalism by transforming it into Bézier formalism. Beacuse of the underlying properties, this makes it possible to approach, in a relatively easy manner, the delicate problem of geometric validity of the elements seen either as finite elements or as geometric patches. Let us indicate the existence of several INRIA research reports that discuss in detail the subjects studied here, especially those that concern details on technical calculations that are not fully explained here. This choice has resulted in certain important subjects being neglected. For example, the Hermite finite elements where, among the degrees of freedom, we also find derivatives. These are subjects that may be studied by themselves. These elements are richer in their interpolant aspects but, geometrically, they remain identical to Lagrange elements (classically, only those with a degree of 1) and the geometric validation is the same as for Lagrangian elements. To conclude, even though we have discussed the case of elements of any order, in practice only first- or second-order elements (complete or reduced) are presently commonly used in concrete numerical simulations. This is especially true at the industrial level, while third-order (complete or reduced) elements are used more intensively in geometric modeling. It may be tempting to go up in order (or degree), however this greatly complicates the geometric processes involved.

Chapter 2

Lagrange and Bézier Interpolants

Lagrange interpolation functions (interpolants) make it possible to construct geometric entities, edges and faces of finite elements or, simply, curves and surfaces as they are. Beyond this purely geometric aspect, these interpolants make it possible to construct approximations of "physical" functions (temperature, pressure, speed, etc.) involved in the problem under study. In this chapter, we will show that the classic formulation using Lagrange interpolants and nodes is geometrically equivalent to a formulation in Bézier formalism, which is based on Bernstein polynomials and control points. We will also show that the two forms of writing are equivalent when we consider the approximation of a function defined via Lagrange interpolants and nodal values, or via Bernstein polynomials and control values. We establish that the two systems of representation are analogous. We will show how to express a Lagrange function in Bézier formalism. Conversely, we will then show how to express a Bézier function in Lagrange formalism. By applying these results to curves and then patches themselves, we will show how, with the nodes being given, we can construct the corresponding control points, as well as how, with the control points being given, to construct the corresponding nodes. The case of classic (complete) patches and those of reduced patches are essentially detailed in two dimensions but the corresponding mechanism can be extended to three dimensions. Seen in a uniquely geometric framework, these results can also be applied to the approximation of a physical function. The analogy established in this chapter will, in particular, be used in Chapter 3 in order to find conditions that ensure that a finite element (or simply, a geometric patch) with, in particular but not necessarily1, curved entities (edges, faces) is valid. 1. Even in the case of a straight element, an inappropriate position of the nodes may invalidate this element. Meshing, Geometric Modeling and Numerical Simulation 1: Form Functions, Triangulations and Geometric Modeling, First Edition. Houman Borouchaki and Paul Louis George. © ISTE Ltd 2017. Published by ISTE Ltd and John Wiley & Sons, Inc.

54 Meshing, Geometric Modeling and Numerical Simulation 1

2.1. Lagrange–Bézier analogy To establish this analogy and understand the mechanism, we consider the case of a curve defined in Lagrange formalism to see how it is expressed in Bézier formalism. We will then examine the case of a function with the same point of view. We first recall the form of Bernstein polynomials, then a Bézier shape constructed based on this. There is abundant literature on curves, surfaces and, more generally, on Bézier shapes and in particular Bernstein polynomials. Bézier’s work [Bézier-1986] is of course cited, as well as one of the reference works on CAD, namely [Farin-2002]. • Barycentric Bernstein polynomial of degree d. We have: d d i j Bij (u, v) = Cij u v

[2.1]

d with Cij being the binomial coefficient, u ∈ [0, 1], u + v = 1, i = 0, ..., d and i + j = d. Let us d! d = i!j! . Given here for one dimension in space, this written form can be trivially recall that Cij extended to higher dimensions. • Classic Bernstein polynomial of degree d. We have:

Bid (u) = Cid ui (1 − u)d−i

[2.2]

with Cid = being the binomial coefficient, u ∈ [0, 1] and i = 0, ..., d. Let us note that by positing v = 1 − u and j = d − i, we once again have the barycentric form. d! i!(d−i)!

As Bernstein polynomials are very easy to manipulate, the properties of Bézier shapes will be easily accessible, demonstrating the benefit of moving from writing in Lagrange form to writing in Bézier. To concretely fix this idea, let us consider a second-degree curve, written in Lagrange form. Let A0 , A1 and A2 be the three nodes of the curve. It is expressed via [1.7] as: γ(u) =



φi (u)Ai = (1 − 2u)(1 − u)A0 + 4u(1 − u)A1 + u(2u − 1)A2 ,

i

which can be written in the form: γ(u) = (1 − u)2 A0 + 2u(1 − u) so that γ(u) =





−A0 + 4A1 − A2 2

Bi2 (u)Pi , with P0 = A0 , P2 = A2 and P1 =



+ u2 A2 ,

−A0 +4A1 −A2 . 2

We thus obtain

i

an expression in Bézier form based on Bernstein polynomials and the control points introduced. It must be noted that this manipulation is nothing more than a simple change of basis, which thus makes it possible to express any Lagrangian form in Bézier form and we will use them to find the conditions for geometric validity of (Lagrange) finite elements of any degree in two and three dimensions, as well as those associated with surface patches.

Lagrange and Bézier Interpolants 55

Figure 2.1. Pierre Bézier in 1958

We now study the case of a function (still a second-degree function) in one dimension of space. Let this function bef (u), over a Lagrange element with the nodes A0 , A1 and A2 . We denote the nodal values by fi = f (Ai ). Via relation [1.7], we have:  φi (u)fi = (1 − 2u)(1 − u)f0 + 4u(1 − u)f1 + u(2u − 1)f2 , f (u) = i

in Bézier form we have: f (u) =



Bi2 (u)gi and if we carry out the calculation in this system,

i

g0 + 2g1 + g2 we can very simply arrive at the real nodal values, fi s, through f0 = g0 , f1 = and 4 −fo + 4f1 − f2 and g2 = f2 . f2 = g2 . Let us note that, conversely, we have: g0 = f0 , g1 = 2 The same analogy is valid for any degree and in any spatial dimension. 2.2. Lagrange functions expressed in Bézier forms Going from a Lagrangian expression to a Bézier expression is a relatively technical process. In natural coordinates, we will consider the generic function, while in the Barycentric case a shape function must be used directly.

2.2.1. The case of tensors, natural coordinates Even though this case is technical, it is relatively simple as it suffices to start from relation [1.7], that is: l=d (−1)i  φdi (u) = (l − du), i!(d − i)! l=0 l=i

56 Meshing, Geometric Modeling and Numerical Simulation 1

and, thus, by working the case of a single variable (u) we will have the solution for both curves and patches simultaneously. The idea, therefore, is to express the φdi (u) based on the Bernstein polynomials. We thus d  seek coefficients αik such that φdi (u) = αik Bkd (u). We instantiate u at the values uj = dj k=0

for j = 0, d. Then, as φdi (uj ) = δij , we have φdi (ui ) = 1 and φdi (uj ) = 0 if j = i and we obtain the system: ⎧ d  ⎪ i ⎪ ⎪ αik Bkd ( ) = 1 ⎪ ⎨ d k=0

d  ⎪ j ⎪ ⎪ ⎪ αik Bkd ( ) = 0, j = i, ⎩ d k=0

the matrix for which is: ⎡ d 0 B0 ( d ) ⎢ B0d ( 1 ) ⎢ d d2 ⎢ B0 ( ) d ⎢ ⎣ d d B0 ( d )

B1d ( d0 ) B1d ( d1 ) B1d ( d2 ) B1d ( dd )

B2d ( d0 ) B2d ( d1 ) B2d ( d2 ) ... B2d ( dd )

d ... Bd−1 ( d0 ) d ... Bd−1 ( d1 ) d ... Bd−1 ( d2 )

Bdd ( d0 ) Bdd ( d1 ) Bdd ( d2 )

d ... Bd−1 ( dd )

Bdd ( dd )

⎤ ⎥ ⎥ ⎥. ⎥ ⎦

A simple calculation shows that:  Bid (u) = Cid B0d (u)

u 1−u

i = Cid B0d (u) v i ,

[2.3]

u . This relation for any u = 1 (but formally possible by continuity at u = 1) and with v = 1−u connects all the columns of the matrix and will allow us to resolve the above system by first finding the determinant.

Calculating the determinant Let Δ be the determinant of the matrix. We have:  d 0  B0 ( ) B1d ( 0 ) B2d ( 0 ) ... d d  d d1  B0 ( ) B1d ( 1 ) B2d ( 1 ) ... d d  d d2 Δ =  B0 ( d ) B1d ( d2 ) B2d ( d2 ) ...  ...   B d ( d ) B d ( d ) B d ( d ) ... 0 d 1 d 2 d

d Bd−1 ( d0 ) d Bd−1 ( d1 ) d Bd−1 ( d2 ) d Bd−1 ( dd )

which, as Bkd (1) = 0 for k < d and Bdd (1) = 1, becomes:   B0d ( 0 ) B1d ( d0 ) B2d ( d0 ) ... d  d 1  B0d ( 1 ) B ( ) B2d ( d1 ) ... 1 d d  d 2 d 2  B0d ( 2 ) B ( ) B ( ) ... 1 d 2 d d Δ =  ...   B d ( d−1 ) B d ( d−1 ) B d ( d−1 ) ... 1 2  0 d d d  0 0 0 ...

     ,    d d  Bd ( d ) Bdd ( d0 ) Bdd ( d1 ) Bdd ( d2 )

d Bd−1 ( d0 ) d Bd−1 ( d1 ) d Bd−1 ( d2 ) d Bd−1 ( d−1 d ) 0

      .   d d−1  Bd ( d )   1 Bdd ( d0 ) Bdd ( d1 ) Bdd ( d2 )

Lagrange and Bézier Interpolants 57 Thus, via relation [2.3], and therefore uniquely at B0d and with vi =      d−1 d−1    d d Cl B0 (ul )  Δ =  l=0 l=0   

1 1 1 ... 1 0

ui 1−ui :

v0 v1 v2

v02 v12 v22

... ... ...

v0d−1 v1d−1 v2d−1

v0d v1d v2d

vd−1 0

2 vd−1 0

... ...

d−1 vd−1 0

d vd−1 1

      ,     

which we open on the last column. That is:     d−1 d−1    d d Δ = Cl B0 (ul )   l=0 l=0  

1 1 1 ... 1

v0 v1 v2

v02 v12 v22

... v0d−1 ... v1d−1 ... v2d−1

vd−1

2 vd−1

d−1 ... vd−1

     ,    

and we once again find a Vandermonde determinant. Thus: Δ =

d−1 

Cld

l=0

where vi =

ui 1−ui . d−1 

d−1 

(vj − vi ),

0≤i