|
DP3
|
#include <SVDSolver.h>
Public Member Functions | |
| SVDSolver (int m, int n, int nrhs) | |
| bool | Solve (complex *a, complex *b) override |
Public Member Functions inherited from dp3::ddecal::LLSSolver | |
| LLSSolver (int m, int n, int nrhs) | |
| virtual | ~LLSSolver () |
| virtual bool | Solve (complex *a, complex *b, [[maybe_unused]] complex *initial_value) |
Additional Inherited Members | |
Public Types inherited from dp3::ddecal::LLSSolver | |
| using | complex = std::complex< float > |
Static Public Member Functions inherited from dp3::ddecal::LLSSolver | |
| static std::unique_ptr< LLSSolver > | Make (LLSSolverType lss_type, int m, int n, int nrhs) |
| static LLSSolverType | ParseType (const std::string &solver) |
Protected Attributes inherited from dp3::ddecal::LLSSolver | |
| int | m_ |
| int | n_ |
| int | nrhs_ |
|
inline |
Find X that minimizes || B - A*X || (i.e. best solution to A*X = B ; A (MxN) * X (NxNRHS) = B (MxNRHS) Inputs are ordered column-major.
| a | The M-by-N matrix A |
| b | On entry: input matrix of size M x NRHS, but with leading dimension max(M, N) On succesful exit: the solution vectors, stored columnwise (N, NRHS) |
Check for full rank
Implements dp3::ddecal::LLSSolver.