|
| LinearSolver (cuda::device_t device=common::Device(common::EDeviceSelectionPreference::HighestComputeCapability)) |
|
| LinearSolver (LinearSolver const &)=delete |
|
| LinearSolver (LinearSolver &&)=delete |
|
LinearSolver & | operator= (LinearSolver const &)=delete |
|
LinearSolver & | operator= (LinearSolver &&)=delete |
|
cusolverDnHandle_t | Handle () const |
|
template<CMatrix TMatrixA, class TScalar = TMatrixA::ValueType> |
int | GeqrfWorkspace (TMatrixA const &A) const |
|
template<CMatrix TMatrixQR, CVector TVectorTau, class TScalar = TMatrixQR::ValueType> |
void | Geqrf (TMatrixQR &QR, TVectorTau &tau, common::Buffer< TScalar > &workspace, std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|
template<CMatrix TMatrixQ, CMatrix TMatrixB, class TScalar = TMatrixQ::ValueType> |
int | OrmqrWorkspace (TMatrixQ const &Q, TMatrixB const &B, bool bMultiplyFromLeft=true) const |
|
template<CMatrix TMatrixQ, CVector TVectorB, class TScalar = TMatrixQ::ValueType> |
int | OrmqrWorkspace (TMatrixQ const &Q, TVectorB const &B, bool bMultiplyFromLeft=true) const |
|
template<CMatrix TMatrixQ, CVector TVectorTau, CMatrix TMatrixB, class TScalar = TMatrixQ::ValueType> |
void | Ormqr (TMatrixQ const &Q, TVectorTau const &tau, TMatrixB &B, common::Buffer< TScalar > &workspace, bool bMultiplyFromLeft=true, std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|
template<CMatrix TMatrixQ, CVector TVectorTau, CVector TVectorB, class TScalar = TMatrixQ::ValueType> |
void | Ormqr (TMatrixQ const &Q, TVectorTau const &tau, TVectorB &B, common::Buffer< TScalar > &workspace, bool bMultiplyFromLeft=true, std::shared_ptr< cuda::stream_t > stream=nullptr) const |
|