Closed dreamer2368 closed 1 year ago
Theoretically, having the trivial vectors or not do not alter the singular vectors pattern. By omitting these trivial vectors, we at least do not lose anything. It might save some memory as well. But I believe the more important reason for omitting them is that if the incremental SVD is used and the initial vector is zero (which can be the case, if we have zero initial condition), then the algorithm breaks down immediately in the normalization of the initial vector.
BasisGenerator::takeSample
does not take a trivial solution as sample, directed by the following if statement:My intuition is that a trivial solution should be allowed to become a sample. Is there any special background or logic behind this?