You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Change Right_ to EigenVector_, which enables MockMatrix to be turned into an actual abstract interface.
Requires this line to use W_next instead of W.col(j), to avoid an implicit construction.
Remove defaults on ParallelSparseMatrix.
Remove divide option in the Scaled wrapper, it's faster and simpler to pass in the pre-divided vector.
Turn Scaled and Centered into subclasses of the new interface, for optional run-time polymorphism.
Add option to apply Centered by row, equivalent to Scaled.
Replace void* initial with the safer std::optional<EigenVector_> initial, given that we need to copy it in anyway.
Might as well switch the floats in Options to EigenVector_::Scalar actually probably not a great idea as the scalars might not be floats in the future, e.g., complex values.
Also switch extra_work with Eigen::Index, given that it's a dimension-related parameter.
Right_toEigenVector_, which enablesMockMatrixto be turned into an actual abstract interface.W_nextinstead ofW.col(j), to avoid an implicit construction.ParallelSparseMatrix.Scaledwrapper, it's faster and simpler to pass in the pre-divided vector.ScaledandCenteredinto subclasses of the new interface, for optional run-time polymorphism.Centeredby row, equivalent toScaled.void* initialwith the saferstd::optional<EigenVector_> initial, given that we need to copy it in anyway.Might as well switch the floats inactually probably not a great idea as the scalars might not be floats in the future, e.g., complex values.OptionstoEigenVector_::Scalarextra_workwithEigen::Index, given that it's a dimension-related parameter.