33 #ifndef EIGEN_LLT_LAPACKE_H
34 #define EIGEN_LLT_LAPACKE_H
43 namespace lapacke_helpers {
48 template <UpLoType Mode>
53 template <
typename MatrixType,
typename VectorType>
61 template <
typename MatrixType,
typename VectorType>
72 template <
typename Scalar, UpLoType Mode>
75 template <
typename MatrixType>
84 constexpr
char uplo = Mode ==
Upper ?
'U' :
'L';
93 template <
typename MatrixType,
typename VectorType>
107 #define EIGEN_LAPACKE_LLT(EIGTYPE) \
109 struct llt_inplace<EIGTYPE, Lower> : public lapacke_helpers::lapacke_llt<EIGTYPE, Lower> {}; \
111 struct llt_inplace<EIGTYPE, Upper> : public lapacke_helpers::lapacke_llt<EIGTYPE, Upper> {};
118 #undef EIGEN_LAPACKE_LLT
#define EIGEN_LAPACKE_LLT(EIGTYPE)
Definition: LLT_LAPACKE.h:107
#define eigen_assert(x)
Definition: Macros.h:910
Scalar Scalar int size
Definition: benchVecAdd.cpp:17
SCALAR Scalar
Definition: bench_gemm.cpp:45
NumTraits< Scalar >::Real RealScalar
Definition: bench_gemm.cpp:46
MatrixXf MatrixType
Definition: benchmark-blocking-sizes.cpp:52
Expression of the transpose of a matrix.
Definition: Transpose.h:56
@ Lower
Definition: Constants.h:211
@ Upper
Definition: Constants.h:213
#define lapack_int
Definition: lapacke.h:52
const char * uplo
Definition: level2_cplx_impl.h:20
const Scalar * a
Definition: level2_cplx_impl.h:32
const char const int const RealScalar const RealScalar const int * lda
Definition: level2_cplx_impl.h:20
int * m
Definition: level2_cplx_impl.h:294
int info
Definition: level2_cplx_impl.h:39
EIGEN_ALWAYS_INLINE auto to_lapack(Source value)
Definition: lapacke_helpers.h:61
EIGEN_ALWAYS_INLINE EIGEN_CONSTEXPR lapack_int lapack_storage_of(const EigenBase< Derived > &)
translates storage order of the given Eigen object to the corresponding lapack constant
Definition: lapacke_helpers.h:78
static Index llt_rank_update_lower(MatrixType &mat, const VectorType &vec, const typename MatrixType::RealScalar &sigma)
Definition: LLT.h:220
Namespace containing all symbols from the Eigen library.
Definition: bench_norm.cpp:70
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition: Meta.h:83
int sigma
Definition: calibrate.py:179
Definition: Eigen_Colamd.h:49
Definition: LLT_LAPACKE.h:73
EIGEN_STATIC_ASSERT(((Mode==Lower)||(Mode==Upper)), MODE_MUST_BE_UPPER_OR_LOWER) template< typename MatrixType > static Index blocked(MatrixType &m)
Definition: LLT_LAPACKE.h:74
static Index rankUpdate(MatrixType &mat, const VectorType &vec, const typename MatrixType::RealScalar &sigma)
Definition: LLT_LAPACKE.h:94
static Index run(MatrixType &mat, const VectorType &vec, const typename MatrixType::RealScalar &sigma)
Definition: LLT_LAPACKE.h:54
static Index run(MatrixType &mat, const VectorType &vec, const typename MatrixType::RealScalar &sigma)
Definition: LLT_LAPACKE.h:62
Definition: LLT_LAPACKE.h:49
Definition: fft_test_shared.h:66
void run(const string &dir_name, LinearSolver *linear_solver_pt, const unsigned nel_1d, bool mess_up_order)
Definition: two_d_poisson_compare_solvers.cc:317