33 #ifndef EIGEN_PARTIALLU_LAPACK_H
34 #define EIGEN_PARTIALLU_LAPACK_H
43 namespace lapacke_helpers {
48 template <
typename Scalar,
int StorageOrder>
61 nb_transpositions = 0;
66 for (
int i = 0;
i <
m;
i++) {
68 if (ipiv[
i] !=
i) nb_transpositions++;
71 return first_zero_pivot;
81 #define EIGEN_LAPACKE_PARTIAL_LU(EIGTYPE) \
82 template <int StorageOrder> \
83 struct partial_lu_impl<EIGTYPE, StorageOrder, lapack_int, Dynamic> \
84 : public lapacke_helpers::lapacke_partial_lu<EIGTYPE, StorageOrder> {};
91 #undef EIGEN_LAPACKE_PARTIAL_LU
int i
Definition: BiCGSTAB_step_by_step.cpp:9
const unsigned n
Definition: CG3DPackingUnitTest.cpp:11
#define EIGEN_UNUSED_VARIABLE(var)
Definition: Macros.h:966
#define eigen_assert(x)
Definition: Macros.h:910
#define EIGEN_LAPACKE_PARTIAL_LU(EIGTYPE)
Definition: PartialPivLU_LAPACKE.h:81
int rows
Definition: Tutorial_commainit_02.cpp:1
int cols
Definition: Tutorial_commainit_02.cpp:1
SCALAR Scalar
Definition: bench_gemm.cpp:45
@ RowMajor
Definition: Constants.h:320
#define LAPACK_COL_MAJOR
Definition: lapacke.h:124
#define lapack_int
Definition: lapacke.h:52
#define LAPACK_ROW_MAJOR
Definition: lapacke.h:123
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
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
Definition: Eigen_Colamd.h:49
Definition: PartialPivLU_LAPACKE.h:49
static lapack_int blocked_lu(Index rows, Index cols, Scalar *lu_data, Index luStride, lapack_int *row_transpositions, lapack_int &nb_transpositions, lapack_int maxBlockSize=256)
Definition: PartialPivLU_LAPACKE.h:51