51 #ifndef INTREPID_BURKARDTRULES_HPP
52 #define INTREPID_BURKARDTRULES_HPP
54 #include "Intrepid_ConfigDefs.hpp"
56 #include "Teuchos_Assert.hpp"
65 enum EIntrepidBurkardt {
78 inline std::string EIntrepidBurkardtToString(EIntrepidBurkardt rule) {
79 std::string retString;
81 case BURK_CHEBYSHEV1: retString =
"Gauss-Chebyshev Type 1";
break;
82 case BURK_CHEBYSHEV2: retString =
"Gauss-Chebyshev Type 2";
break;
83 case BURK_CLENSHAWCURTIS: retString =
"Clenshaw-Curtis";
break;
84 case BURK_FEJER2: retString =
"Fejer Type 2";
break;
85 case BURK_LEGENDRE: retString =
"Gauss-Legendre";
break;
86 case BURK_PATTERSON: retString =
"Gauss-Patterson";
break;
87 case BURK_TRAPEZOIDAL: retString =
"Trapezoidal Rule";
break;
88 case BURK_HERMITE: retString =
"Gauss-Hermite";
break;
89 case BURK_GENZKEISTER: retString =
"Hermite-Genz-Keister";
break;
90 case BURK_LAGUERRE: retString =
"Gauss-Laguerre";
break;
91 default: retString =
"INVALID EIntrepidBurkardt";
96 inline EIntrepidBurkardt & operator++(EIntrepidBurkardt &type) {
97 return type =
static_cast<EIntrepidBurkardt
>(type+1);
100 inline EIntrepidBurkardt operator++(EIntrepidBurkardt &type,
int) {
101 EIntrepidBurkardt oldval = type;
120 template<
class Scalar>
121 static void imtqlx (
int n, Scalar d[], Scalar e[], Scalar z[] );
122 template<
class Scalar>
static Scalar r8_epsilon( Scalar one );
123 template<
class Scalar>
static Scalar r8_sign( Scalar x );
129 template<
class Scalar>
133 template<
class Scalar>
137 template<
class Scalar>
144 template<
class Scalar>
148 template<
class Scalar>
152 template<
class Scalar>
159 template<
class Scalar>
163 template<
class Scalar>
167 template<
class Scalar>
174 template<
class Scalar>
178 template<
class Scalar>
182 template<
class Scalar>
189 template<
class Scalar>
193 template<
class Scalar>
197 template<
class Scalar>
202 template<
class Scalar>
206 template<
class Scalar>
210 template<
class Scalar>
217 template<
class Scalar>
221 template<
class Scalar>
225 template<
class Scalar>
232 template<
class Scalar>
236 template<
class Scalar>
240 template<
class Scalar>
245 template<
class Scalar>
249 template<
class Scalar>
253 template<
class Scalar>
260 template<
class Scalar>
264 template<
class Scalar>
268 template<
class Scalar>
273 template<
class Scalar>
277 template<
class Scalar>
281 template<
class Scalar>
288 template<
class Scalar>
292 template<
class Scalar>
296 template<
class Scalar>
303 template<
class Scalar>
307 template<
class Scalar>
311 template<
class Scalar>
static void chebyshev2_compute_weights(int order, Scalar w[])
Gauss-Chebyshev of Type 2; returns weights.
static void patterson_lookup_weights(int n, Scalar w[])
Gauss-Patterson; returns weights.
static void chebyshev1_compute(int order, Scalar x[], Scalar w[])
Gauss-Chebyshev of Type 1; returns points and weights.
static void laguerre_lookup_weights(int n, Scalar w[])
Gauss-Laguerre; returns weights.
static void chebyshev1_compute_weights(int order, Scalar w[])
Gauss-Chebyshev of Type 1; returns weights.
static void hermite_genz_keister_lookup_weights(int n, Scalar w[])
Hermite-Genz-Keister; returns weights.
static void clenshaw_curtis_compute_points(int order, Scalar x[])
Clenshaw-Curtis; returns points.
static void legendre_compute_weights(int order, Scalar w[])
Gauss-Legendre; returns weights.
static void hermite_lookup(int n, Scalar x[], Scalar w[])
Gauss-Hermite; returns points and weights.
static void laguerre_compute_points(int order, Scalar x[])
Gauss-Laguerre; returns points.
static void chebyshev2_compute_points(int order, Scalar x[])
Gauss-Chebyshev of Type 2; returns points.
static void patterson_lookup_points(int n, Scalar x[])
Gauss-Patterson; returns points.
Definition file for integration rules provided by John Burkardt. <>
static void fejer2_compute_weights(int order, Scalar w[])
Fejer type 2; returns weights.
Contains definitions of custom data types in Intrepid.
static void hermite_genz_keister_lookup_points(int n, Scalar x[])
Hermite-Genz-Keister; returns points.
static void trapezoidal_compute(int n, Scalar x[], Scalar w[])
Trapezoidal rule; returns points and weights.
static void trapezoidal_compute_points(int order, Scalar x[])
Trapezoidal rule; returns points.
static void trapezoidal_compute_weights(int order, Scalar w[])
Trapezoidal rule; returns weights.
static void legendre_lookup_weights(int n, Scalar w[])
Gauss-Legendre; returns weights.
static void legendre_lookup_points(int n, Scalar x[])
Gauss-Legendre; returns points.
static void patterson_lookup(int n, Scalar x[], Scalar w[])
Gauss-Patterson; returns points and weights.
static void hermite_compute_weights(int order, Scalar w[])
Gauss-Hermite; returns weights.
static void fejer2_compute_points(int order, Scalar x[])
Fejer type 2; returns points.
static void hermite_compute_points(int order, Scalar x[])
Gauss-Hermite; returns points.
static void laguerre_compute(int n, Scalar x[], Scalar w[])
Gauss-Laguerre; returns points and weights.
static void hermite_lookup_weights(int n, Scalar w[])
Gauss-Hermite; returns weights.
Providing integration rules, created by John Burkardt, Scientific Computing, Florida State University...
static void legendre_compute_points(int order, Scalar x[])
Gauss-Legendre; returns points.
static void clenshaw_curtis_compute_weights(int order, Scalar w[])
Clenshaw-Curtis; returns weights.
static void hermite_compute(int order, Scalar x[], Scalar w[])
Gauss-Hermite; returns points and weights.
static void chebyshev2_compute(int order, Scalar x[], Scalar w[])
Gauss-Chebyshev of Type 2; returns points and weights.
static void chebyshev1_compute_points(int order, Scalar x[])
Gauss-Chebyshev of Type 1; returns points.
static void legendre_lookup(int n, Scalar x[], Scalar w[])
Gauss-Legendre; returns points and weights.
static void hermite_lookup_points(int n, Scalar x[])
Gauss-Hermite; returns points.
static void laguerre_compute_weights(int order, Scalar w[])
Gauss-Laguerre; returns weights.
static void laguerre_lookup(int n, Scalar x[], Scalar w[])
Gauss-Laguerre; returns points and weights.
static void legendre_compute(int n, Scalar x[], Scalar w[])
Gauss-Legendre; returns points and weights.
static void hermite_genz_keister_lookup(int n, Scalar x[], Scalar w[])
Hermite-Genz-Keister; returns points and weights.
static void laguerre_lookup_points(int n, Scalar x[])
Gauss-Laguerre; returns points.
static void clenshaw_curtis_compute(int order, Scalar x[], Scalar w[])
Clenshaw-Curtis; returns points and weights.
static void fejer2_compute(int order, Scalar x[], Scalar w[])
Fejer type 2; returns points and weights.