Locally Optimal Block Preconditioned Conjugate Gradient

LOBPCG solves Hermitian partial generalized eigenvalue problems using preconditioning, as well as PCA
6K download
Aggiornato 3 dic 2021

Source : https://github.com/lobpcg/blopex/ in blopex_tools/matlab/lobpcg/lobpcg.m

This main function LOBPCG is a version of the preconditioned conjugate gradient method (Algorithm 5.1) described in A. V. Knyazev, Toward the Optimal Preconditioned Eigensolver: Locally Optimal Block Preconditioned Conjugate Gradient Method, SIAM Journal on Scientific Computing 23 (2001), no. 2, pp. 517-541. http://dx.doi.org/10.1137/S1064827500366124
A C-version of this code is a part of the https://github.com/lobpcg/blopex
package and is available, e.g., in SLEPc and HYPRE. A scipy version is https://docs.scipy.org/doc/scipy/reference/generated/scipy.sparse.linalg.lobpcg.html
Tested in MATLAB 6.5-7.13-R2019a and available Octave 3.2.3-3.4.2.

Cita come

Andrew Knyazev (2025). Locally Optimal Block Preconditioned Conjugate Gradient (https://github.com/lobpcg/blopex), GitHub. Recuperato .

Compatibilità della release di MATLAB
Creato con R2019a
Compatibile con R2007b e release successive
Compatibilità della piattaforma
Windows macOS Linux
Categorie
Scopri di più su Dimensionality Reduction and Feature Extraction in Help Center e MATLAB Answers

Community Treasure Hunt

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

Start Hunting!

Le versioni che utilizzano il ramo predefinito di GitHub non possono essere scaricate

Versione Pubblicato Note della release
4.18

Revision 4.18 removes the check for the size of operatorA apparently not working for function handles

4.17

Revision 4.17 adds support for single precision

4.16

Revision 4.16 adds support for distributed or codistributed arrays available in MATLAB BigData toolbox, e.g.,:

A = codistributed(diag(1:100)); B = codistributed(diag(101:200));
[blockVectorX,lambda]=lobpcg(randn(100,2),A,1e-5,5,2)

4.15

updated description on MathWorks, fixed Project Website link

4.14

Linearly depended directions 1-time restart, not failure:

1) Orthogonalization of directions P moved to a different spot.
2) Linearly depended directions P now result in a 1-time restart, where the whole P is dropped once, not failure as before

1.6

Connected to GitHub

1.5

added a conversion to a toolbox
A minor update. Functions can now be called using also function handles. Updated comments and examples.
added a toolbox format

1.4.0.0

Editorial changes to make the code Octave-compatible.

1.1.0.0

License update to free software (BSD). Comments update.

1.0.0.0

minor update to remove mlint messages

Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.
Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.