10#ifndef IFPACK2_DETAILS_CHEBYSHEV_WEIGHTS_HPP
11#define IFPACK2_DETAILS_CHEBYSHEV_WEIGHTS_HPP
15#include "Teuchos_StandardParameterEntryValidators.hpp"
38template <
typename ScalarType>
39std::vector<ScalarType>
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) {
260 TEUCHOS_TEST_FOR_EXCEPTION(
261 true, std::runtime_error,
262 "Ifpack2::Details::optimalWeightsImpl::"
263 "Requested Chebyshev order exceeds maximum of 16.");
std::vector< ScalarType > optimalWeightsImpl(const int chebyOrder)
Generate optimal weights for using the fourth kind Chebyshev polynomials see: https://arxiv....
Definition Ifpack2_Details_Chebyshev_Weights.hpp:40
Preconditioners and smoothers for Tpetra sparse matrices.
Definition Ifpack2_AdditiveSchwarz_decl.hpp:40