10 #ifndef IFPACK2_DETAILS_CHEBYSHEV_WEIGHTS_HPP
11 #define IFPACK2_DETAILS_CHEBYSHEV_WEIGHTS_HPP
15 #include "Teuchos_StandardParameterEntryValidators.hpp"
38 template <
typename ScalarType>
39 std::vector<ScalarType>
40 optimalWeightsImpl(
const int chebyOrder) {
41 if (chebyOrder == 0) {
44 if (chebyOrder == 1) {
50 if (chebyOrder == 2) {
57 if (chebyOrder == 3) {
65 if (chebyOrder == 4) {
74 if (chebyOrder == 5) {
84 if (chebyOrder == 6) {
95 if (chebyOrder == 7) {
107 if (chebyOrder == 8) {
120 if (chebyOrder == 9) {
134 if (chebyOrder == 10) {
149 if (chebyOrder == 11) {
165 if (chebyOrder == 12) {
182 if (chebyOrder == 13) {
200 if (chebyOrder == 14) {
219 if (chebyOrder == 15) {
239 if (chebyOrder == 16) {
261 true, std::runtime_error,
262 "Ifpack2::Details::optimalWeightsImpl::"
263 "Requested Chebyshev order exceeds maximum of 16.");
269 #endif // IFPACK2_DETAILS_CHEBYSHEV_WEIGHTS_HPP
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)