IsoGlib: an Isogeometric Analysis library for the solution of high-order Partial Differential Equations on surfaces A. Bartezzaghi, L. Ded` e, A. Quarteroni Chair of Modelling and Scientific Computing Mathematics Institute of Computational Science and Engineering Ecole Polytechnique F´ ed´ erale de Lausanne, Switzerland PDESoft 2014 Heidelberg, July 14–16, 2014 A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 1 / 23
Outline Introduction A model problem: Laplace–Beltrami (second–order) PDE High–order PDEs Overview of IsoGLib Numerical results: convergence rates and phase–field models Conclusions A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 2 / 23
Introduction In several instances Partial Differential Equations (PDEs) are defined on lower dimensional manifolds with respect to the hosting space (e.g. surfaces in 3D and curves in 2D/3D). Applications are e.g. in fluid dynamics (thin films), structural problems (beams, shells), biology (biomembranes), image processing, and electromagnetism. The numerical approximation of the PDEs generally requires the generation of an approximated geometry compatible with the analysis, leading to geometrical error and inconsistency. Specifically, the approximation of the curvature may significantly affect the total numerical error. A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 3 / 23
Introduction Several geometries of practical interest are exactly represented by B–splines or NURBS; e.g. conic sections (sphere, cylindrical shell,... ). IGA is an approximation method for PDEs based on the isoparametric concept for which the same basis functions used for the geometrical representation are then also used for the numerical approximations of the PDEs. [Hughes, Cottrell, Bazilevs, 2005] We consider the numerical approximation of PDEs on lower dimensional manifolds (surfaces) by means of Isogeometric Analysis (IGA). Specifically, we consider NURBS–based IGA. A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 4 / 23
Surfaces represented by NURBS: geometrical mapping We consider a surface Ω ⊂ R d represented by a geometrical mapping from the parameter space R κ into the physical space R d , with d > κ ≥ 1 , as: x : � Ω → R d , ξ → x ( ξ ) , Ω ⊂ R κ the parameter domain. being � Examples of NURBS mappings: A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 5 / 23
Surfaces represented by NURBS: geometrical mapping The geometrical mapping represented in terms of NURBS reads: n bf � � x ( ξ ) = R i ( ξ ) P i , i =1 where: R i ( ξ ) are the NURBS basis functions defined in the parameter domain � � Ω ; P i ∈ R d are the control points in the physical space for i = 1 , . . . , n bf . The NURBS basis functions � R i ( ξ ) are defined from B–splines basis functions � N i ( ξ ) and weights w i ∈ R as: w i � � R i ( ξ ) := N i ( ξ ) for i = 1 , . . . , n bf . n bf � w i ′ � N i ′ ( ξ ) i ′ =1 Conic sections can be represented by NURBS basis functions with appropriate weights. A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 6 / 23
Surfaces represented by NURBS: conic sections Example: cylinder surface represented by NURBS basis functions. A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 7 / 23
Surfaces represented by NURBS: geometrical mapping Properties of the geometrical mapping x : � Ω → R d : F i,α ( ξ ) := ∂ x i � F : � ξ → � � Ω → R d × κ , F( ξ ) , ( ξ ) , ∂ξ α � � T � G : � � ξ → � � � Ω → R κ × κ , G( ξ ) , G( ξ ) := F( ξ ) F( ξ ) , � � � g : � � � Ω → R , ξ → � g ( ξ ) , g ( ξ ) := � det G( ξ ) . Ω → R d is “sufficiently” We assume that the geometrical mapping x : � smooth, e.g. C 1 ( � Ω) , and invertible a.e. in � g ( ξ ) > 0 a.e. in � Ω ( � Ω ). Therefore: φ ( x ) = � φ ( ξ ) ◦ x − 1 ( ξ ) , where � φ ( ξ ) := φ ( x ( ξ )) . A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 8 / 23
Surfaces represented by NURBS: functions and operators By using the geometrical mapping, the gradient on the manifold can be written as: � � ∇ � F( ξ ) � � G − 1 ( ξ ) � ◦ x − 1 ( ξ ) , ∇ Ω φ ( x ) = φ ( ξ ) Ω → R κ is the gradient operator in the parameter space. where � ∇ � φ : � We introduce the Laplace–Beltrami operator ∆ Ω φ ( x ) := ∇ Ω · ( ∇ Ω φ ( x )) associated to the manifold Ω for a function φ ∈ C 2 (Ω) and write it using the geometrical mapping as: � 1 �� � � g ( ξ ) � G − 1 ( ξ ) � ∇ � ◦ x − 1 ( ξ ) . ∇ · ∆ Ω φ ( x ) = � φ ( ξ ) � g ( ξ ) g ( ξ ) d � Finally, the differential d x ( d Ω ) reads d x = � g ( ξ ) d ξ ( d Ω = � Ω ). A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 9 / 23
A Model Problem: Laplace–Beltrami We consider the second order Laplace–Beltrami problem defined on the surface Ω : − µ ∆ Ω u = f in Ω , u = 0 on Γ D , µ ∇ Ω u · n Γ = 0 on Γ N , where µ > 0 , f ∈ L 2 (Ω) , and Γ ≡ ∂ Ω is the boundary of Ω (if meas (Γ) > 0 ) ◦ ◦ with Γ D ∪ Γ N ≡ Γ and Γ D ∩ Γ N = ∅ , and n Γ its unit normal vector. The Laplace–Beltrami problem in weak form reads: find u ∈ V : a ( v, u ) = q ( v ) ∀ v ∈ V , � � where: a ( v, w ) := µ ∇ Ω v · ∇ Ω w d Ω , q ( v ) := v f d Ω , and � � Ω Ω v ∈ H 1 (Ω) : v | Γ D = 0 V := . A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 10 / 23
A Model Problem: Laplace–Beltrami We recast the problem in the parameter domain � Ω with the geometrical mapping (“pull–back”) and solve it by means of Galerkin NURBS–based IGA: u h ∈ � v h ∈ � find � V h : � a ( � v h , � u h ) = � q ( � v h ) ∀ � V h , � � n bf where � V h := � V ∩ � N h , with the NURBS space � � N h := span R i ( ξ ) i =1 , � � � v ∈ H 1 ( � and V := � Ω) : � v | � Γ D = 0 � � � G − 1 � µ � � g d � a ( � � v, � w ) := ∇ � v · ∇ � w � Ω , � Ω � v � g d � q ( � � v ) := � f � Ω , � Ω A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 11 / 23
High–order Laplace–Beltrami problems We consider the biharmonic problem defined on the surface Ω : µ ∆ 2 Ω u = f in Ω , u = 0 on ∂ Ω , µ ∇ Ω u · n Γ = 0 on ∂ Ω , where ∆ 2 Ω := ∆ Ω ∆ Ω is the fourth–order bilaplacian operator and the triharmonic problem defined on the surface Ω : − µ ∆ 3 Ω u = f in Ω , u = 0 on ∂ Ω , µ ∇ Ω u · n Γ = 0 on ∂ Ω , ∆ Ω u = 0 on ∂ Ω , where ∆ 3 Ω := ∆ Ω ∆ Ω ∆ Ω is the sixth–order trilaplacian operator. A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 12 / 23
A priori Error Estimation: uniform h –refinement Let us consider a well-posed scalar elliptic PDE of order 2 m , m ≥ 1 , in a domain Ω ∈ R d described by NURBS, in weak form: find u ∈ V : a ( u, v ) = F ( v ) ∀ v ∈ V, where V ⊆ H m (Ω) is such that its functions satisfy the homogeneous counterpart of the essential boundary conditions. Theorem For an elliptic PDE of order 2 m , m ≥ 1 , let σ ∈ N s.t. 0 ≤ σ ≤ m and F ∈ H − σ (Ω) . Let u ∈ H r (Ω) , r ≥ m , be the exact solution and u h the approximate solution obtained with NURBS-based IGA. Then: � u − u h � H σ (Ω) ≤ C shape h β � u � H r (Ω) , where β := min { δ − σ, 2( δ − m ) } , with δ := min { r, p + 1 } . [Tagliabue, Ded` e, Quarteroni, 2014] A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 13 / 23
IsoGlib: overview Framework for solving problems by means of NURBS-based IGA in the framework of the Galerkin method. 2D and 3D surface geometries, described by means of B-Splines and NURBS. High–order surface differential operators. Different time discretization methods with time–step adaptivity schemes. Local transformation of basis functions, e.g. to handle periodicity and closed surfaces. Support for geometric PDEs (in progress). Goal: maximum flexibility (applications include ADR problems, elasticity, Navier-Stokes, Cahn–Hilliard, electrophysiology simulations, etc...) A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 14 / 23
IsoGlib: overview Mesh generation and manipulation tools available from Matlab; libraries and applications for solution of the problems written in C++. Easy interface to simplify the integration of the library within other applications and frameworks (LifeV for example). Relying on external linear algebra packages to solve the systems. Interface independent from the chosen package. However, the only back-end currently supported is Trilinos. Different levels of “caching” of internal quantities to speed-up certain computations. A. Bartezzaghi (CMCS–EPFL) IGA for PDEs on Surfaces PDESoft 2014 15 / 23
Recommend
More recommend