Итерация Чебышева
Итерация Чебышева приближенно решает задачу для , где — это симметричный, определенный линейный оператор, а — вектор правой части. Методы предполагают, что известен интервал ], содержащий все собственные значения , так что может быть итеративно построен в этом интервале с помощью многочлена Чебышева с нулями. Этот многочлен в конечном итоге действует как фильтр, удаляющий из начальной невязки компоненты в направлении собственных векторов.
Основное преимущество сопряженных градиентов заключается в том, что можно обойтись без операций BLAS1, таких как вычисление внутренних произведений.
Использование
#
IterativeSolvers.chebyshev
— Function
chebyshev(A, b, λmin::Real, λmax::Real; kwargs...) -> x, [history]
То же, что и chebyshev!
, но выделяет вектор решений x
, инициализированный нулями.
#
IterativeSolvers.chebyshev!
— Function
chebyshev!(x, A, b, λmin::Real, λmax::Real; kwargs...) -> x, [history]
Решает Ax = b для симметричных определенных матриц A с помощью итерации Чебышева.
Аргументы
-
x
: начальное предположение, будет обновляться на месте; -
A
: линейный оператор; -
b
: правая часть; -
λmin::Real
: нижняя граница для вещественных собственных значений; -
λmax::Real
: верхняя граница для вещественных собственных значений.
Ключевые слова
-
initially_zero::Bool = false
: еслиtrue
предполагаетiszero(x)
так, чтобы одно произведение матрицы на вектор могло быть сохранено при вычислении начального вектора невязки; -
abstol::Real = zero(real(eltype(b)))
,reltol::Real = sqrt(eps(real(eltype(b))))
: абсолютный и относительный допуски для условия остановки|r_k| ≤ max(reltol * |r_0|, abstol)
, гдеr_k = A * x_k - b
является невязкой вk
-й итерации; -
maxiter::Int = size(A, 2)
: максимальное количество внутренних итераций GMRES; -
Pl = Identity()
: левый предобуславливатель; -
log::Bool = false
: отслеживание нормы невязки в каждой итерации; -
verbose::Bool = false
: вывод информации о сходимости во время итераций.
Возвращаемые значения
если log
имеет значение false
-
x
: приближенное решение.
если log
имеет значение true
-
x
: приближенное решение; -
history
: история сходимости.
Сведения о реализации
Хотя этот метод часто используется для того, чтобы избежать вычисления внутренних произведений, критерий остановки по-прежнему основывается на норме невязки. Таким образом, в текущей реализации присутствуют операции BLAS1. |
Итерацию Чебышева можно использовать как итератор. |