#include <HouseholderQR.h>
template<typename MatrixQR, typename HCoeffs, typename MatrixQRScalar = typename MatrixQR::Scalar, bool InnerStrideIsOne = (MatrixQR::InnerStrideAtCompileTime == 1 && HCoeffs::InnerStrideAtCompileTime == 1)>
struct Eigen::internal::householder_qr_inplace_blocked< MatrixQR, HCoeffs, MatrixQRScalar, InnerStrideIsOne >
◆ run()
template<typename MatrixQR , typename HCoeffs , typename MatrixQRScalar = typename MatrixQR::Scalar, bool InnerStrideIsOne = (MatrixQR::InnerStrideAtCompileTime == 1 && HCoeffs::InnerStrideAtCompileTime == 1)>
420 typedef Block<MatrixQR, Dynamic, Dynamic> BlockType;
426 typedef Matrix<Scalar, Dynamic, 1, ColMajor, MatrixQR::MaxColsAtCompileTime, 1> TempType;
429 tempVector.resize(
cols);
430 tempData = tempVector.data();
436 for (
k = 0;
k <
size;
k += blockSize) {
449 BlockType A11_21 =
mat.block(
k,
k, brows, bs);
450 Block<HCoeffs, Dynamic, 1> hCoeffsSegment = hCoeffs.segment(
k, bs);
455 BlockType A21_22 =
mat.block(
k,
k + bs, brows, tcols);
int rows
Definition: Tutorial_commainit_02.cpp:1
int cols
Definition: Tutorial_commainit_02.cpp:1
Scalar Scalar int size
Definition: benchVecAdd.cpp:17
SCALAR Scalar
Definition: bench_gemm.cpp:45
Index cols() const
Definition: SparseMatrix.h:161
Index rows() const
Definition: SparseMatrix.h:159
#define min(a, b)
Definition: datatypes.h:22
char char char int int * k
Definition: level2_impl.h:374
void householder_qr_inplace_unblocked(MatrixQR &mat, HCoeffs &hCoeffs, typename MatrixQR::Scalar *tempData=0)
Definition: HouseholderQR.h:346
void apply_block_householder_on_the_left(MatrixType &mat, const VectorsType &vectors, const CoeffsType &hCoeffs, bool forward)
Definition: BlockHouseholder.h:86
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition: Meta.h:83
References Eigen::internal::apply_block_householder_on_the_left(), Eigen::HouseholderQR< MatrixType_ >::cols(), Eigen::SparseMatrix< Scalar_, Options_, StorageIndex_ >::cols(), Eigen::HouseholderQR< MatrixType_ >::hCoeffs(), Eigen::internal::householder_qr_inplace_unblocked(), k, min, Eigen::PlainObjectBase< Derived >::resize(), Eigen::HouseholderQR< MatrixType_ >::rows(), Eigen::SparseMatrix< Scalar_, Options_, StorageIndex_ >::rows(), and Eigen::EigenBase< Derived >::size().
Referenced by Eigen::HouseholderQR< MatrixType_ >::computeInPlace().
The documentation for this struct was generated from the following file: