16 #include <Eigen/Eigen>
17 #include <Eigen/Dense>
18 #if EIGEN_VERSION_AT_LEAST(3,0,93)
19 #include <Eigen/Sparse>
21 #define EIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET
22 #include <unsupported/Eigen/SparseExtra>
24 #ifndef DOXYGEN_SHOULD_SKIP_THIS
27 template <
typename T>
struct Triplet
30 ecol(colIndex), erow(rowIndex), evalue(valueT)
33 index_t col()
const {
return ecol; };
34 index_t row()
const {
return erow; };
35 T value()
const {
return evalue; };
42 template <
typename T>
class SimplicialLLT
43 :
public SimplicialCholesky<T,Lower>
48 SimplicialCholesky<T>::setMode(SimplicialCholeskyLLt);
50 inline const T matrixL()
52 return SimplicialCholesky<T>::m_matrix;
54 inline const T matrixU()
56 return SimplicialCholesky<T>::m_matrix.transpose();
60 #endif //DOXYGEN_SHOULD_SKIP_THIS
62 #endif //EIGEN_VERSION_AT_LEAST(3,0,93)
64 #if ((EIGEN_WORLD_VERSION == 3) && (EIGEN_MAJOR_VERSION == 2) && \
65 ((EIGEN_MINOR_VERSION == 91) || (EIGEN_MINOR_VERSION == 92)))
69 #define EIGEN_WITH_LOG_BUG_1229 1
73 template<
class T>
class SGSparseMatrix;
template class SGSparseMatrix
static Eigen::SparseMatrix< T > toEigenSparse(SGSparseMatrix< T > sg_matrix)
This class contains some utilities for Eigen3 Sparse Matrix integration with shogun. Currently it provides a method for converting SGSparseMatrix to Eigen3 SparseMatrix.
all of classes and functions are contained in the shogun namespace