Hubbry Logo
search
search button
Sign in
Historyarrow-down
starMorearrow-down
Hubbry Logo
search
search button
Sign in
Chebyshev iteration
Community hub for the Wikipedia article
logoWikipedian hub
Welcome to the community hub built on top of the Chebyshev iteration Wikipedia article. Here, you can discuss, collect, and organize anything related to Chebyshev iteration. The purpose of the hub is to connect people, foster deeper knowledge, and help improve the root Wikipedia article.
Add your contribution
Inside this hub
Chebyshev iteration

In numerical linear algebra, the Chebyshev iteration is an iterative method for determining the solutions of a system of linear equations. The method is named after Russian mathematician Pafnuty Chebyshev.

Chebyshev iteration avoids the computation of inner products as is necessary for the other nonstationary methods. For some distributed-memory architectures these inner products are a bottleneck with respect to efficiency. The price one pays for avoiding inner products is that the method requires enough knowledge about spectrum of the coefficient matrix A, that is an upper estimate for the upper eigenvalue and lower estimate for the lower eigenvalue. There are modifications of the method for nonsymmetric matrices A.

Example code in MATLAB

[edit]
function [x] = SolChebyshev002(A, b, x0, iterNum, lMax, lMin)

  d = (lMax + lMin) / 2;
  c = (lMax - lMin) / 2;
  preCond = eye(size(A)); % Preconditioner
  x = x0;
  r = b - A * x;

  for i = 1:iterNum % size(A, 1)
      z = linsolve(preCond, r);
      if (i == 1)
          p = z;
          alpha = 1/d;
      else if (i == 2)
          beta = (1/2) * (c * alpha)^2
          alpha = 1/(d - beta / alpha);
          p = z + beta * p;
      else
          beta = (c * alpha / 2)^2;
          alpha = 1/(d - beta / alpha);
          p = z + beta * p;
      end;

      x = x + alpha * p;
      r = b - A * x; %(= r - alpha * A * p)
      if (norm(r) < 1e-15), break; end; % stop if necessary
  end;
end

Code translated from [1] and.[2]

See also

[edit]

References

[edit]
[edit]
Add your contribution
Related Hubs