Chapter 5
Inside the Library: StdRegions

In this chapter, we walk the reader through the different components of the StdRegions Directory. We begin with a discussion of the mathematical fundamentals, for which we use the book by Karniadakis and Sherwin [46] as our principle reference. We then provide the reader with an overview of the primary data structures introduced within the StdRegions Directory (often done through C++ objects), and then present the major algorithms – expressed as either object methods or functions – employed over these data structures.

 5.1 The Fundamentals Behind StdRegions
  5.1.1 Reference Element Transformations That Facilitate Separability
  5.1.2 Reference Elements On Primitive Geometric Types
 5.2 The Fundamental Data Structures within StdRegions
  5.2.1 Variables at the Level of StdExpansion
  5.2.2 Variables at the Level of StdExpansion$D for various Dimensions
  5.2.3 Variables at the Level of Shape-Specific StdExpansions
  5.2.4 General Layout of the Basis Functions in Memory
  5.2.5 General Layout
  5.2.6 2D Geometries
  5.2.7 3D Geometries
 5.3 The Fundamental Algorithms within StdRegions