Polynomial Preconditioner
Polynomial preconditioning for iterative solvers.
torchlinops.alg.polynomial_preconditioner
polynomial_preconditioner(
T: NamedLinop,
degree: int,
norm: Literal["l_2", "l_inf", "ifista"] = "l_2",
lower_eig: float = 0.0,
upper_eig: float = 1.0,
) -> NamedLinop
Construct a polynomial preconditioner \(P(T)\) for a linear operator \(T\).
Given eigenvalue bounds, computes optimal polynomial coefficients and
returns a NamedLinop that applies \(P(T) = \sum_k c_k T^k\).
| PARAMETER | DESCRIPTION |
|---|---|
T
|
The operator to precondition.
TYPE:
|
degree
|
Polynomial degree. Use
TYPE:
|
norm
|
Optimization criterion for computing the polynomial coefficients:
TYPE:
|
lower_eig
|
Lower bound on the eigenvalue spectrum of \(T\).
TYPE:
|
upper_eig
|
Upper bound on the eigenvalue spectrum of \(T\).
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
NamedLinop
|
The polynomial preconditioner applied to T. |