pcg.m with 'null' and 'flex' options

Version 1.1 (5,42 KB) von Andrew Knyazev
Preconditioned Conjugate Gradients handles homogeneous equations and nonsymmetric preconditioning
Aktualisiert 15 Mai 2015

Lizenz anzeigen

PCG Preconditioned Conjugate Gradients Method is a replacement of the standard built-in PCG code. Two new options are implemented: 'flex' and 'null'. The 'flex' option changes the standard PCG algorithm into the flexible one. It allows using sophisticated preconditioning, not limited to the traditional fixed SPD preconditioners, as required by the standard PCG.
With the 'null' option, the code attempts to compute a nontrivial solution X of the homogeneous system of linear equations A*X=0. Here, the coefficient matrix A must be Hermitian and positive semi-definite. If the null-space of A is more than one dimensional, i.e. A*X=0 allows multiple linear independent solutions, the code still converges to one solution, namely, the projection of the initial guess to the null-space.

Without the new options, the new PCG code works exactly the same way as the latest revision of the built-in PCG.

Zitieren als

Andrew Knyazev (2024). pcg.m with 'null' and 'flex' options (https://www.mathworks.com/matlabcentral/fileexchange/50-pcg-m-with-null-and-flex-options), MATLAB Central File Exchange. Abgerufen .

Kompatibilität der MATLAB-Version
Erstellt mit R11
Kompatibel mit allen Versionen
Windows macOS Linux
Mehr zu Linear Least Squares finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Veröffentlicht Versionshinweise

Updated to work with the latest MATLAB. Made compatible with the built-in PCG. Implemented the new option 'flex' to turn the standard PCG into flexible, Added new examples in the header.
added a conversion to a toolbox