Intrepid2
|
Classes | |
struct | Cubature |
Gauss-Jacobi/Gauss-Radau-Jacobi/Gauss-Lobatto zeros and weights. More... | |
struct | Derivative |
Compute the Derivative Matrix and its transpose associated with the Gauss-Jacobi/Gauss-Radau-Jacobi/Gauss-Lobatto-Jacobi zeros. More... | |
struct | InterpolationOperator |
Interpolation Operator from Gauss-Jacobi points to an arbitrary distribution at points zm. More... | |
struct | LagrangianInterpolant |
Compute the value of the i th Lagrangian interpolant through the np Gauss-Jacobi/Gauss-Radau-Jacobi/Gauss-Lobatto points zgj at the arbitrary location z. More... | |
Static Public Member Functions | |
template<typename zViewType , typename wViewType > | |
static KOKKOS_INLINE_FUNCTION void | getCubature (zViewType z, wViewType w, const ordinal_type np, const double alpha, const double beta, const EPolyType poly) |
template<typename DViewType , typename zViewType > | |
static KOKKOS_INLINE_FUNCTION void | getDerivative (DViewType D, const zViewType z, const ordinal_type np, const double alpha, const double beta, const EPolyType poly) |
template<typename zViewType > | |
static KOKKOS_INLINE_FUNCTION zViewType::value_type | getLagrangianInterpolant (const ordinal_type i, const typename zViewType::value_type z, const zViewType zgj, const ordinal_type np, const double alpha, const double beta, const EPolyType poly) |
template<typename imViewType , typename zgrjViewType , typename zmViewType > | |
static KOKKOS_INLINE_FUNCTION void | getInterpolationOperator (imViewType im, const zgrjViewType zgrj, const zmViewType zm, const ordinal_type nz, const ordinal_type mz, const double alpha, const double beta, const EPolyType poly) |
template<typename zViewType , typename polyiViewType , typename polydViewType > | |
static KOKKOS_INLINE_FUNCTION void | JacobiPolynomial (const ordinal_type np, const zViewType z, polyiViewType poly_in, polydViewType polyd, const ordinal_type n, const double alpha, const double beta) |
Routine to calculate Jacobi polynomials, , and their first derivative, . More... | |
template<typename zViewType , typename polydViewType > | |
static KOKKOS_INLINE_FUNCTION void | JacobiPolynomialDerivative (const ordinal_type np, const zViewType z, polydViewType polyd, const ordinal_type n, const double alpha, const double beta) |
Calculate the derivative of Jacobi polynomials. More... | |
template<typename zViewType , bool DeflationEnabled = false> | |
static KOKKOS_INLINE_FUNCTION void | JacobiZeros (zViewType z, const ordinal_type n, const double alpha, const double beta) |
Calculate the n zeros, z, of the Jacobi polynomial, i.e. . More... | |
template<typename zViewType > | |
static KOKKOS_INLINE_FUNCTION void | JacobiZerosPolyDeflation (zViewType z, const ordinal_type n, const double alpha, const double beta) |
template<typename aViewType > | |
static KOKKOS_INLINE_FUNCTION void | JacobiZerosTriDiagonal (aViewType a, const ordinal_type n, const double alpha, const double beta) |
template<typename aViewType , typename bViewType > | |
static KOKKOS_INLINE_FUNCTION void | JacobiZeros (aViewType a, bViewType b, const ordinal_type n, const double alpha, const double beta) |
Zero determination through the eigenvalues of a tridiagonal matrix from the three term recursion relationship. More... | |
template<typename dViewType , typename eViewType > | |
static KOKKOS_INLINE_FUNCTION void | TriQL (dViewType d, eViewType e, const ordinal_type n) |
QL algorithm for symmetric tridiagonal matrix. More... | |
static KOKKOS_INLINE_FUNCTION double | GammaFunction (const double x) |
Calculate the Gamma function , , for integer values x and halves. More... | |
Definition at line 213 of file Intrepid2_Polylib.hpp.
|
static |
Calculate the Gamma function , , for integer values x and halves.
Determine the value of using:
where
Definition at line 877 of file Intrepid2_PolylibDef.hpp.
|
static |
Routine to calculate Jacobi polynomials, , and their first derivative, .
Definition at line 591 of file Intrepid2_PolylibDef.hpp.
|
static |
Calculate the derivative of Jacobi polynomials.
Definition at line 678 of file Intrepid2_PolylibDef.hpp.
|
static |
Calculate the n zeros, z, of the Jacobi polynomial, i.e. .
This routine is only valid for and uses polynomial deflation in a Newton iteration
Definition at line 703 of file Intrepid2_PolylibDef.hpp.
|
static |
Zero determination through the eigenvalues of a tridiagonal matrix from the three term recursion relationship.
Set up a symmetric tridiagonal matrix
Where the coefficients a[n], b[n] come from the recurrence relation
where and are the Jacobi (normalized) orthogonal polynomials ( integer values and halves). Since the polynomials are orthonormalized, the tridiagonal matrix is guaranteed to be symmetric. The eigenvalues of this matrix are the zeros of the Jacobi polynomial.
|
static |
QL algorithm for symmetric tridiagonal matrix.
This subroutine is a translation of an algol procedure, num. math. 12, 377-383(1968) by martin and wilkinson, as modified in num. math. 15, 450(1970) by dubrulle. Handbook for auto. comp., vol.ii-linear algebra, 241-248(1971). This is a modified version from numerical recipes.
This subroutine finds the eigenvalues and first components of the eigenvectors of a symmetric tridiagonal matrix by the implicit QL method.
on input:
on output:
Definition at line 807 of file Intrepid2_PolylibDef.hpp.