I just use the standard eigs function (https://www.mathworks.com/help/matlab/ref/eigs.html) as a black box. I think it uses a lanczos type method under the hood.
Nidish On Aug 15, 2020, 21:42, at 21:42, Barry Smith <bsm...@petsc.dev> wrote: > >Exactly what algorithm are you using in Matlab to get the 10 smallest >eigenvalues and their corresponding eigenvectors? > > Barry > > >> On Aug 15, 2020, at 8:53 PM, Nidish <n...@rice.edu> wrote: >> >> The section on solving singular systems in the manual starts with >assuming that the singular eigenvectors are already known. >> >> I have a large system where finding the singular eigenvectors is not >trivially written down. How would you recommend I proceed with making >initial estimates? In MATLAB (with MUCH smaller matrices), I conduct an >eigensolve for the first 10 smallest eigenvalues and take the >eigenvectors corresponding to the zero eigenvalues from this. This >approach doesn't work here since I'm unable to use SLEPc for solving >> >> K.v = lam*M.v >> >> for cases where K is positive semi-definite (contains a few "rigid >body modes") and M is strictly positive definite. >> >> I'd appreciate any assistance you may provide with this. >> >> Thank you, >> Nidish