Namespaces | Macros
PartialPivLU_LAPACKE.h File Reference

Go to the source code of this file.

Namespaces

 Eigen
 Namespace containing all symbols from the Eigen library.
 
 Eigen::internal
 

Macros

#define EIGEN_LAPACKE_LU_PARTPIV(EIGTYPE, LAPACKE_TYPE, LAPACKE_PREFIX)
 

Macro Definition Documentation

◆ EIGEN_LAPACKE_LU_PARTPIV

#define EIGEN_LAPACKE_LU_PARTPIV (   EIGTYPE,
  LAPACKE_TYPE,
  LAPACKE_PREFIX 
)
Value:
template<int StorageOrder> \
struct partial_lu_impl<EIGTYPE, StorageOrder, lapack_int> \
{ \
/* \internal performs the LU decomposition in-place of the matrix represented */ \
static lapack_int blocked_lu(Index rows, Index cols, EIGTYPE* lu_data, Index luStride, lapack_int* row_transpositions, lapack_int& nb_transpositions, lapack_int maxBlockSize=256) \
{ \
EIGEN_UNUSED_VARIABLE(maxBlockSize);\
lapack_int matrix_order, first_zero_pivot; \
lapack_int m, n, lda, *ipiv, info; \
EIGTYPE* a; \
/* Set up parameters for ?getrf */ \
matrix_order = StorageOrder==RowMajor ? LAPACK_ROW_MAJOR : LAPACK_COL_MAJOR; \
lda = convert_index<lapack_int>(luStride); \
a = lu_data; \
ipiv = row_transpositions; \
m = convert_index<lapack_int>(rows); \
n = convert_index<lapack_int>(cols); \
nb_transpositions = 0; \
\
info = LAPACKE_##LAPACKE_PREFIX##getrf( matrix_order, m, n, (LAPACKE_TYPE*)a, lda, ipiv ); \
for(int i=0;i<m;i++) { ipiv[i]--; if (ipiv[i]!=i) nb_transpositions++; } \
/* something should be done with nb_transpositions */ \
\
first_zero_pivot = info; \
return first_zero_pivot; \
} \
};

Definition at line 42 of file PartialPivLU_LAPACKE.h.

LAPACK_COL_MAJOR
#define LAPACK_COL_MAJOR
Definition: lapacke.h:123
eigen_assert
#define eigen_assert(x)
Definition: Macros.h:1037
Eigen::RowMajor
@ RowMajor
Definition: Constants.h:321
rows
int rows
Definition: Tutorial_commainit_02.cpp:1
n
int n
Definition: BiCGSTAB_simple.cpp:1
LAPACK_ROW_MAJOR
#define LAPACK_ROW_MAJOR
Definition: lapacke.h:122
lapack_int
#define lapack_int
Definition: lapacke.h:49
info
else if n * info
Definition: 3rdparty/Eigen/lapack/cholesky.cpp:18
m
Matrix3f m
Definition: AngleAxis_mimic_euler.cpp:1
lda
* lda
Definition: eigenvalues.cpp:59
nb_transpositions
int nb_transpositions
Definition: lapack/lu.cpp:30
a
ArrayXXi a
Definition: Array_initializer_list_23_cxx11.cpp:1
cols
int cols
Definition: Tutorial_commainit_02.cpp:1
i
int i
Definition: BiCGSTAB_step_by_step.cpp:9
for
for(size_t i=1;i< poses.size();++i)
Definition: doc/Code/VisualISAMExample.cpp:7
Eigen::Index
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition: Meta.h:74


gtsam
Author(s):
autogenerated on Tue Jun 25 2024 03:08:04