specfem::quadrature::gll¶
Gauss-Legendre-Lobatto quadrature rule.
-
class gll : public specfem::quadrature::quadrature¶
Public Functions
-
gll()¶
Defines the GLL/GLJ quadrature and related matrices required for quadrature integration.
Construct a quadrature object with default values
Default values: alpha = 0, beta = 0, N = 5
-
gll(const type_real alpha, const type_real beta)¶
Construct a new quadrature object.
- Parameters:
alpha – alpha value of the quadrature
beta – beta value of the quadrature
-
gll(const type_real alpha, const type_real beta, const int N)¶
Construct a new quadrature object.
- Parameters:
alpha – alpha value of the quadrature
beta – beta value of quadrature
N – Number of quadrature points
-
void set_derivation_matrices()¶
Set the derivation matrices.
Set the matrices required for compute integrals
-
inline virtual Kokkos::View<type_real*, Kokkos::LayoutRight, Kokkos::DefaultExecutionSpace> get_xi() const override¶
Get quadrature points on device
-
inline virtual Kokkos::View<type_real*, Kokkos::LayoutRight, Kokkos::DefaultExecutionSpace> get_w() const override¶
Get quadrature weights on device
-
inline virtual Kokkos::View<type_real**, Kokkos::LayoutRight, Kokkos::DefaultExecutionSpace> get_hprime() const override¶
Get derivatives of quadrature polynomials at quadrature points on device
-
inline virtual Kokkos::View<type_real*, Kokkos::LayoutRight, Kokkos::HostSpace> get_hxi() const override¶
Get quadrature points on host
-
inline virtual Kokkos::View<type_real*, Kokkos::LayoutRight, Kokkos::HostSpace> get_hw() const override¶
Get quadrature weights on host
-
inline virtual Kokkos::View<type_real**, Kokkos::LayoutRight, Kokkos::HostSpace> get_hhprime() const override¶
Get derivatives of quadrature polynomials at quadrature points on host
-
inline virtual int get_N() const override¶
get number of quadrture points
-
virtual void print(std::ostream &out) const override¶
Log GLL quadrature information to console.
-
virtual std::string to_string() const override¶
return string representation of the GLL quadrature
- Returns:
std::string String representation of the GLL quadrature
Private Functions
-
void set_allocations()¶
Set View allocations for all derivative matrices
-
void sync_views()¶
Sync views between device and host
Private Members
-
type_real alpha¶
alpha value of the quadrature
-
type_real beta¶
beta value of the quadrature
-
int N¶
Number of qudrature points.
-
Kokkos::View<type_real*, Kokkos::LayoutRight, Kokkos::DefaultExecutionSpace> xi¶
qudrature points stored on device
-
Kokkos::View<type_real*, Kokkos::LayoutRight, Kokkos::HostSpace> h_xi¶
quadrature points stored on host
-
Kokkos::View<type_real*, Kokkos::LayoutRight, Kokkos::DefaultExecutionSpace> w¶
qudrature weights stored on device
-
Kokkos::View<type_real*, Kokkos::LayoutRight, Kokkos::HostSpace> h_w¶
quadrature weights stored on host
-
Kokkos::View<type_real**, Kokkos::LayoutRight, Kokkos::DefaultExecutionSpace> hprime¶
Polynomial derivatives stored on device
-
Kokkos::View<type_real**, Kokkos::LayoutRight, Kokkos::HostSpace> h_hprime¶
Polynomial derivatives store on host
-
gll()¶