Abstract
A reference implementation of a new method in isogeometric analysis (IGA) is presented. It delivers low-cost variable-scale approximations (surrogates) of the matrices which IGA conventionally requires to be computed by element-scale quadrature. To generate surrogate matrices, quadrature must only be performed on a fraction of the elements in the computational domain. In this way, quadrature determines only a subset of the entries in the final matrix. The remaining matrix entries are computed by a simple B-spline interpolation procedure. We present the modifications and extensions required for a reference implementation in the open-source IGA software library GeoPDEs. The exposition is fashioned to help facilitate similar modifications in other contemporary software libraries.•The surrogate matrix methodology is implemented in GeoPDEs.•Poisson’s problem is considered.•The matrix assembly time is significantly reduced at negligible cost to solution accuracy.
Highlights
A reference implementation of a new method in isogeometric analysis (IGA) is presented
In [1], we applied the surrogate matrix methodology to isogeometric analysis (IGA) in order to avoid overassembling mass, stiffness, and divergence matrices. We showed how this methodology could be applied to other system matrices arising in IGA computations
We provide an accompanying reference implementation, together with explanations and examples
Summary
In [1], we applied the surrogate matrix methodology to isogeometric analysis (IGA) in order to avoid overassembling mass, stiffness, and divergence matrices. The resulting surrogate matrix methods perform quadrature for only a small fraction of the NURBS basis function interactions during assembly and approximate the rest by interpolation. This leads to large sparse linear system matrices where the majority of entries have been computed by interpolation. Adopting further notation from [1], this reference domain description leads to the definition of a set of smooth stencil functions Φδ : Ω Ω → R, δ ∈ D These functions can be interpolated onto a finite-dimensional space of multivariate B-splines using their values sampled from a subset {xsi} ⊆ Ω ∩ {xi} of a lattice {xi}. We outline the modifications made to these core routines and describe the new 2D function in detail by breaking it down into coherent pieces of code
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.