Eigen Namespace Reference

: InteropHeaders More...

Namespaces

 Architecture
 
 bfloat16_impl
 
 doxygen
 
 half_impl
 
 indexing
 
 internal
 
 numext
 
 placeholders
 
 symbolic
 
 TensorSycl
 

Classes

class  AccelerateImpl
 
class  aligned_allocator
 STL compatible allocator to use with types requiring a non-standard alignment. More...
 
class  aligned_allocator_indirection
 
class  AlignedBox
 An axis aligned box. More...
 
class  AMDOrdering
 
class  AngleAxis
 Represents a 3D rotation as a rotation angle around an arbitrary 3D axis. More...
 
class  ArithmeticSequence
 
class  Array
 General-purpose arrays with easy API for coefficient-wise operations. More...
 
class  ArrayBase
 Base class for all 1D and 2D array, and related expressions. More...
 
class  ArrayWrapper
 Expression of a mathematical vector or matrix as an array object. More...
 
struct  ArrayXpr
 
struct  BandShape
 
class  Barrier
 
class  BDCSVD
 class Bidiagonal Divide and Conquer SVD More...
 
struct  bfloat16
 
class  BiCGSTAB
 A bi conjugate gradient stabilized solver for sparse square problems. More...
 
class  Block
 Expression of a fixed-size or dynamic-size block. More...
 
class  BlockImpl
 
class  BlockImpl< const SparseMatrix< Scalar_, Options_, StorageIndex_ >, BlockRows, BlockCols, true, Sparse >
 
class  BlockImpl< SparseMatrix< Scalar_, Options_, StorageIndex_ >, BlockRows, BlockCols, true, Sparse >
 
class  BlockImpl< XprType, BlockRows, BlockCols, InnerPanel, Dense >
 
class  BlockImpl< XprType, BlockRows, BlockCols, InnerPanel, Sparse >
 
class  BlockImpl< XprType, BlockRows, BlockCols, true, Sparse >
 
class  CholmodBase
 The base class for the direct Cholesky factorization of Cholmod. More...
 
class  CholmodDecomposition
 A general Cholesky factorization and solver based on Cholmod. More...
 
class  CholmodSimplicialLDLT
 A simplicial direct Cholesky (LDLT) factorization and solver based on Cholmod. More...
 
class  CholmodSimplicialLLT
 A simplicial direct Cholesky (LLT) factorization and solver based on Cholmod. More...
 
class  CholmodSupernodalLLT
 A supernodal Cholesky (LLT) factorization and solver based on Cholmod. More...
 
class  COLAMDOrdering
 
class  ColPivHouseholderQR
 Householder rank-revealing QR decomposition of a matrix with column-pivoting. More...
 
class  CommaInitializer
 Helper class used by the comma initializer operator. More...
 
class  CompleteOrthogonalDecomposition
 Complete orthogonal decomposition (COD) of a matrix. More...
 
class  ComplexEigenSolver
 Computes eigenvalues and eigenvectors of general complex matrices. More...
 
class  ComplexSchur
 Performs a complex Schur decomposition of a real or complex square matrix. More...
 
class  Conjugate
 
class  ConjugateGradient
 A conjugate gradient solver for sparse (or dense) self-adjoint problems. More...
 
class  CwiseBinaryOp
 Generic expression where a coefficient-wise binary operator is applied to two expressions. More...
 
class  CwiseBinaryOpImpl
 
class  CwiseBinaryOpImpl< BinaryOp, Lhs, Rhs, Sparse >
 
class  CwiseNullaryOp
 Generic expression of a matrix where all coefficients are defined by a functor. More...
 
class  CwiseTernaryOp
 Generic expression where a coefficient-wise ternary operator is applied to two expressions. More...
 
class  CwiseTernaryOpImpl
 
class  CwiseUnaryOp
 Generic expression where a coefficient-wise unary operator is applied to an expression. More...
 
class  CwiseUnaryOpImpl
 
class  CwiseUnaryView
 Generic lvalue expression of a coefficient-wise unary operator of a matrix or a vector. More...
 
class  CwiseUnaryViewImpl
 
class  CwiseUnaryViewImpl< ViewOp, MatrixType, StrideType, Dense >
 
struct  Dense
 
class  DenseBase
 Base class for all dense matrices, vectors, and arrays. More...
 
class  DenseCoeffsBase
 
class  DenseCoeffsBase< Derived, DirectAccessors >
 Base class providing direct read-only coefficient access to matrices and arrays. More...
 
class  DenseCoeffsBase< Derived, DirectWriteAccessors >
 Base class providing direct read/write coefficient access to matrices and arrays. More...
 
class  DenseCoeffsBase< Derived, ReadOnlyAccessors >
 Base class providing read-only coefficient access to matrices and arrays. More...
 
class  DenseCoeffsBase< Derived, WriteAccessors >
 Base class providing read/write coefficient access to matrices and arrays. More...
 
struct  DenseShape
 
struct  DenseSparseProductReturnType
 
class  DenseStorage
 
class  DenseTimeSparseProduct
 
class  Diagonal
 Expression of a diagonal/subdiagonal/superdiagonal in a matrix. More...
 
class  DiagonalBase
 Base class for diagonal matrices and expressions. More...
 
class  DiagonalMatrix
 Represents a diagonal matrix with its storage. More...
 
class  DiagonalPreconditioner
 A preconditioner based on the digonal entries. More...
 
class  DiagonalProduct
 
struct  DiagonalShape
 
class  DiagonalWrapper
 Expression of a diagonal matrix. More...
 
class  EigenBase
 
class  EigenSolver
 Computes eigenvalues and eigenvectors of general matrices. More...
 
class  EventCount
 
class  ForceAlignedAccess
 Enforce aligned packet loads and stores regardless of what is requested. More...
 
class  FullPivHouseholderQR
 Householder rank-revealing QR decomposition of a matrix with full pivoting. More...
 
class  FullPivLU
 LU decomposition of a matrix with complete pivoting, and related features. More...
 
struct  general_product_to_triangular_selector
 
struct  general_product_to_triangular_selector< MatrixType, ProductType, UpLo, false >
 
struct  general_product_to_triangular_selector< MatrixType, ProductType, UpLo, true >
 
class  GeneralizedEigenSolver
 Computes the generalized eigenvalues and eigenvectors of a pair of general matrices. More...
 
class  GeneralizedSelfAdjointEigenSolver
 Computes eigenvalues and eigenvectors of the generalized selfadjoint eigen problem. More...
 
struct  GenericNumTraits
 
struct  half
 
class  HessenbergDecomposition
 Reduces a square matrix to Hessenberg form by an orthogonal similarity transformation. More...
 
class  Homogeneous
 Expression of one (or a set of) homogeneous vector(s) More...
 
struct  HomogeneousShape
 
class  HouseholderQR
 Householder QR decomposition of a matrix. More...
 
class  HouseholderSequence
 Sequence of Householder reflections acting on subspaces with decreasing size. More...
 
class  Hyperplane
 A hyperplane. More...
 
class  IdentityPreconditioner
 A naive preconditioner which approximates any matrix as the identity matrix. More...
 
class  IncompleteCholesky
 Modified Incomplete Cholesky with dual threshold. More...
 
class  IncompleteLUT
 Incomplete LU factorization with dual-threshold strategy. More...
 
class  IndexedView
 Expression of a non-sequential sub-matrix defined by arbitrary sequences of row and column indices. More...
 
class  IndexedViewImpl
 
class  InnerStride
 Convenience specialization of Stride to specify only an inner stride See class Map for some examples. More...
 
class  Inverse
 Expression of the inverse of another expression. More...
 
class  InverseImpl
 
class  InverseImpl< PermutationType, PermutationStorage >
 
class  IOFormat
 Stores a set of parameters controlling the way matrices are printed. More...
 
class  IterativeSolverBase
 Base class for linear iterative solvers. More...
 
class  JacobiRotation
 Rotation given by a cosine-sine pair. More...
 
class  JacobiSVD
 Two-sided Jacobi SVD decomposition of a rectangular matrix. More...
 
class  KLU
 
struct  LazyProductReturnType
 
class  LDLT
 Robust Cholesky decomposition of a matrix with pivoting. More...
 
class  LeastSquareDiagonalPreconditioner
 Jacobi preconditioner for LeastSquaresConjugateGradient. More...
 
class  LeastSquaresConjugateGradient
 A conjugate gradient solver for sparse (or dense) least-square problems. More...
 
class  LLT
 Standard Cholesky decomposition (LL^T) of a matrix and associated features. More...
 
class  Map
 A matrix or vector expression mapping an existing array of data. More...
 
class  Map< const Quaternion< Scalar_ >, Options_ >
 Quaternion expression mapping a constant memory buffer. More...
 
class  Map< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, StorageIndex_ >, PacketAccess_ >
 
class  Map< Quaternion< Scalar_ >, Options_ >
 Expression of a quaternion from a memory buffer. More...
 
class  Map< SparseMatrixType >
 Specialization of class Map for SparseMatrix-like storage. More...
 
class  Map< Transpositions< SizeAtCompileTime, MaxSizeAtCompileTime, StorageIndex_ >, PacketAccess >
 
class  MapBase
 
class  MapBase< Derived, ReadOnlyAccessors >
 Base class for dense Map and Block expression with direct access. More...
 
class  MapBase< Derived, WriteAccessors >
 Base class for non-const dense Map and Block expression with direct access. More...
 
class  Matrix
 The matrix class, also used for vectors and row-vectors. More...
 
class  MatrixBase
 Base class for all dense matrices, vectors, and expressions. More...
 
class  MatrixComplexPowerReturnValue
 
struct  MatrixExponentialReturnValue
 
class  MatrixFunctionReturnValue
 
class  MatrixLogarithmReturnValue
 
class  MatrixPowerReturnValue
 
class  MatrixSquareRootReturnValue
 
class  MatrixWrapper
 Expression of an array as a mathematical vector or matrix. More...
 
struct  MatrixXpr
 
class  MaxSizeVector
 The MaxSizeVector class. More...
 
class  MetisOrdering
 
class  NaturalOrdering
 
class  NestByValue
 Expression which must be nested by value. More...
 
class  NoAlias
 Pseudo expression providing an operator = assuming no aliasing. More...
 
struct  Notification
 
class  NumTraits
 Holds information about the various numeric (i.e. scalar) types allowed by Eigen. More...
 
struct  NumTraits< Array< Scalar, Rows, Cols, Options, MaxRows, MaxCols > >
 
struct  NumTraits< bool >
 
struct  NumTraits< double >
 
struct  NumTraits< Eigen::bfloat16 >
 
struct  NumTraits< Eigen::half >
 
struct  NumTraits< float >
 
struct  NumTraits< long double >
 
struct  NumTraits< std::complex< Real_ > >
 
struct  NumTraits< std::string >
 
struct  NumTraits< void >
 
class  OuterStride
 Convenience specialization of Stride to specify only an outer stride See class Map for some examples. More...
 
class  ParametrizedLine
 A parametrized line. More...
 
class  PardisoImpl
 
class  PardisoLDLT
 A sparse direct Cholesky (LDLT) factorization and solver based on the PARDISO library. More...
 
class  PardisoLLT
 A sparse direct Cholesky (LLT) factorization and solver based on the PARDISO library. More...
 
class  PardisoLU
 A sparse direct LU factorization and solver based on the PARDISO library. More...
 
struct  partial_redux_dummy_func
 
class  PartialPivLU
 LU decomposition of a matrix with partial pivoting, and related features. More...
 
class  PartialReduxExpr
 Generic expression of a partially reduxed matrix. More...
 
class  PastixBase
 
class  PastixLDLT
 A sparse direct supernodal Cholesky (LLT) factorization and solver based on the PaStiX library. More...
 
class  PastixLLT
 A sparse direct supernodal Cholesky (LLT) factorization and solver based on the PaStiX library. More...
 
class  PastixLU
 Interface to the PaStix solver. More...
 
class  PermutationBase
 Base class for permutations. More...
 
class  PermutationMatrix
 Permutation matrix. More...
 
struct  PermutationShape
 
struct  PermutationStorage
 
class  PermutationWrapper
 Class to view a vector of integers as a permutation matrix. More...
 
class  PlainObjectBase
 Dense storage base class for matrices and arrays. More...
 
class  Product
 Expression of the product of two arbitrary matrices or vectors. More...
 
class  ProductImpl
 
class  ProductImpl< Lhs, Rhs, Option, Dense >
 
struct  ProductReturnType
 
class  Quaternion
 The quaternion class used to represent 3D orientations and rotations. More...
 
class  QuaternionBase
 Base class for quaternion expressions. More...
 
class  RealQZ
 Performs a real QZ decomposition of a pair of square matrices. More...
 
class  RealSchur
 Performs a real Schur decomposition of a square matrix. More...
 
class  Ref
 A matrix or vector expression mapping an existing expression. More...
 
class  Ref< const SparseMatrix< MatScalar, MatOptions, MatIndex >, Options, StrideType >
 
class  Ref< const SparseVector< MatScalar, MatOptions, MatIndex >, Options, StrideType >
 
class  Ref< const TPlainObjectType, Options, StrideType >
 
class  Ref< SparseMatrixType, Options >
 A sparse matrix expression referencing an existing sparse expression. More...
 
class  Ref< SparseVectorType >
 A sparse vector expression referencing an existing sparse vector expression. More...
 
class  RefBase
 
class  Replicate
 Expression of the multiple replication of a matrix or vector. More...
 
class  Reshaped
 Expression of a fixed-size or dynamic-size reshape. More...
 
class  ReshapedImpl
 
class  ReshapedImpl< XprType, Rows, Cols, Order, Dense >
 
class  ReturnByValue
 
class  Reverse
 Expression of the reverse of a vector or matrix. More...
 
class  Rotation2D
 Represents a rotation/orientation in a 2 dimensional space. More...
 
class  RotationBase
 Common base class for compact rotation representations. More...
 
class  RunQueue
 
class  ScalarBinaryOpTraits
 Determines whether the given binary operation of two numeric types is allowed and what the scalar return type is. More...
 
struct  ScalarBinaryOpTraits< T, T, BinaryOp >
 
struct  ScalarBinaryOpTraits< T, typename NumTraits< std::enable_if_t< NumTraits< T >::IsComplex, T > >::Real, BinaryOp >
 
struct  ScalarBinaryOpTraits< T, void, BinaryOp >
 
struct  ScalarBinaryOpTraits< typename NumTraits< std::enable_if_t< NumTraits< T >::IsComplex, T > >::Real, T, BinaryOp >
 
struct  ScalarBinaryOpTraits< void, T, BinaryOp >
 
struct  ScalarBinaryOpTraits< void, void, BinaryOp >
 
class  Select
 Expression of a coefficient wise version of the C++ ternary operator ?: More...
 
struct  selfadjoint_product_selector
 
struct  selfadjoint_product_selector< MatrixType, OtherType, UpLo, false >
 
struct  selfadjoint_product_selector< MatrixType, OtherType, UpLo, true >
 
struct  selfadjoint_rank1_update
 
struct  selfadjoint_rank1_update< Scalar, Index, ColMajor, UpLo, ConjLhs, ConjRhs >
 
struct  selfadjoint_rank1_update< Scalar, Index, RowMajor, UpLo, ConjLhs, ConjRhs >
 
class  SelfAdjointEigenSolver
 Computes eigenvalues and eigenvectors of selfadjoint matrices. More...
 
struct  SelfAdjointShape
 
class  SelfAdjointView
 Expression of a selfadjoint matrix from a triangular part of a dense matrix. More...
 
class  Serializer
 
class  Serializer< Array< Scalar, Rows, Cols, Options, MaxRows, MaxCols > >
 
class  Serializer< DenseBase< Derived >, void >
 
class  Serializer< Matrix< Scalar, Rows, Cols, Options, MaxRows, MaxCols > >
 
class  Serializer< SparseMatrix< Scalar, Options, StorageIndex >, void >
 
class  Serializer< SparseVector< Scalar, Options, StorageIndex >, void >
 
class  Serializer< T, typename std::enable_if_t< std::is_trivial< T >::value &&std::is_standard_layout< T >::value > >
 
class  SimplicialCholesky
 
class  SimplicialCholeskyBase
 A base class for direct sparse Cholesky factorizations. More...
 
class  SimplicialLDLT
 A direct sparse LDLT Cholesky factorizations without square root. More...
 
class  SimplicialLLT
 A direct sparse LLT Cholesky factorizations. More...
 
class  SkewSymmetricBase
 Base class for skew symmetric matrices and expressions. More...
 
class  SkewSymmetricMatrix3
 Represents a 3x3 skew symmetric matrix with its storage. More...
 
struct  SkewSymmetricShape
 
class  SkewSymmetricWrapper
 Expression of a skew symmetric matrix. More...
 
struct  SluMatrix
 
struct  SluMatrixMapHelper
 
struct  SluMatrixMapHelper< Matrix< Scalar, Rows, Cols, Options, MRows, MCols > >
 
struct  SluMatrixMapHelper< SparseMatrixBase< Derived > >
 
class  Solve
 Pseudo expression representing a solving operation. More...
 
class  SolveImpl
 
class  SolveImpl< Decomposition, RhsType, Dense >
 
class  SolverBase
 A base class for matrix decomposition and solvers. More...
 
struct  SolverShape
 
struct  SolverStorage
 
class  SolveWithGuess
 Pseudo expression representing a solving operation. More...
 
struct  Sparse
 
class  SparseCompressedBase
 Common base class for sparse [compressed]-{row|column}-storage format. More...
 
class  SparseDenseOuterProduct
 
struct  SparseDenseProductReturnType
 
class  SparseDiagonalProduct
 
class  SparseLU
 Sparse supernodal LU factorization for general matrices. More...
 
struct  SparseLUMatrixLReturnType
 
struct  SparseLUMatrixUReturnType
 
class  SparseLUTransposeView
 
class  SparseMapBase
 
class  SparseMapBase< Derived, ReadOnlyAccessors >
 Common base class for Map and Ref instance of sparse matrix and vector. More...
 
class  SparseMapBase< Derived, WriteAccessors >
 Common base class for writable Map and Ref instance of sparse matrix and vector. More...
 
class  SparseMatrix
 A versatible sparse matrix representation. More...
 
class  SparseMatrixBase
 Base class of any sparse matrices or sparse expressions. More...
 
class  SparseQR
 Sparse left-looking QR factorization with numerical column pivoting. More...
 
struct  SparseQR_QProduct
 
struct  SparseQRMatrixQReturnType
 
struct  SparseQRMatrixQTransposeReturnType
 
class  SparseSelfAdjointView
 Pseudo expression to manipulate a triangular sparse matrix as a selfadjoint matrix. More...
 
struct  SparseShape
 
class  SparseSolverBase
 A base class for sparse solvers. More...
 
class  SparseSparseProduct
 
struct  SparseSparseProductReturnType
 
class  SparseSymmetricPermutationProduct
 
class  SparseTimeDenseProduct
 
class  SparseVector
 a sparse vector class More...
 
class  SparseView
 Expression of a dense or sparse matrix with zero or too small values removed. More...
 
class  SPQR
 Sparse QR factorization based on SuiteSparseQR library. More...
 
struct  SPQR_QProduct
 
struct  SPQRMatrixQReturnType
 
struct  SPQRMatrixQTransposeReturnType
 
struct  StlThreadEnvironment
 
class  Stride
 Holds strides information for Map. More...
 
class  SuperILU
 A sparse direct incomplete LU factorization and solver based on the SuperLU library. More...
 
class  SuperLU
 A sparse direct LU factorization and solver based on the SuperLU library. More...
 
class  SuperLUBase
 The base class for the direct and incomplete LU factorization of SuperLU. More...
 
class  SVDBase
 Base class of SVD algorithms. More...
 
class  SwapWrapper
 
class  ThreadLocal
 
class  ThreadPoolInterface
 
class  ThreadPoolTempl
 
class  Transform
 Represents an homogeneous transformation in a N dimensional space. More...
 
class  Translation
 Represents a translation transformation. More...
 
class  Transpose
 Expression of the transpose of a matrix. More...
 
class  Transpose< TranspositionsBase< TranspositionsDerived > >
 
class  TransposeImpl
 
class  TransposeImpl< MatrixType, Dense >
 
class  TransposeImpl< MatrixType, Sparse >
 
class  Transpositions
 Represents a sequence of transpositions (row/column interchange) More...
 
class  TranspositionsBase
 
struct  TranspositionsShape
 
struct  TranspositionsStorage
 
class  TranspositionsWrapper
 
class  TriangularBase
 Base class for triangular part in a matrix. More...
 
struct  TriangularShape
 
class  TriangularView
 Expression of a triangular part in a matrix. More...
 
class  TriangularViewImpl
 
class  TriangularViewImpl< MatrixType, Mode, Sparse >
 Base class for a triangular part in a sparse matrix. More...
 
class  TriangularViewImpl< MatrixType_, Mode_, Dense >
 Base class for a triangular part in a dense matrix. More...
 
class  Tridiagonalization
 Tridiagonal decomposition of a selfadjoint matrix. More...
 
class  Triplet
 A small structure to hold a non zero as a triplet (i,j,value). More...
 
class  UmfPackLU
 A sparse LU factorization and solver based on UmfPack. More...
 
class  UniformScaling
 Represents a generic uniform scaling transformation. More...
 
class  VectorBlock
 Expression of a fixed-size or dynamic-size sub-vector. More...
 
class  VectorwiseOp
 Pseudo expression providing broadcasting and partial reduction operations. More...
 
class  WithFormat
 Pseudo expression providing matrix output with given format. More...
 

Typedefs

template<typename MatrixType >
using AccelerateCholeskyAtA = AccelerateImpl< MatrixType, 0, SparseFactorizationCholeskyAtA, false >
 
template<typename MatrixType , int UpLo = Lower>
using AccelerateLDLT = AccelerateImpl< MatrixType, UpLo|Symmetric, SparseFactorizationLDLT, true >
 
template<typename MatrixType , int UpLo = Lower>
using AccelerateLDLTSBK = AccelerateImpl< MatrixType, UpLo|Symmetric, SparseFactorizationLDLTSBK, true >
 
template<typename MatrixType , int UpLo = Lower>
using AccelerateLDLTTPP = AccelerateImpl< MatrixType, UpLo|Symmetric, SparseFactorizationLDLTTPP, true >
 
template<typename MatrixType , int UpLo = Lower>
using AccelerateLDLTUnpivoted = AccelerateImpl< MatrixType, UpLo|Symmetric, SparseFactorizationLDLTUnpivoted, true >
 
template<typename MatrixType , int UpLo = Lower>
using AccelerateLLT = AccelerateImpl< MatrixType, UpLo|Symmetric, SparseFactorizationCholesky, true >
 
template<typename MatrixType >
using AccelerateQR = AccelerateImpl< MatrixType, 0, SparseFactorizationQR, false >
 
typedef Transform< double, 2, AffineAffine2d
 
typedef Transform< float, 2, AffineAffine2f
 
typedef Transform< double, 3, AffineAffine3d
 
typedef Transform< float, 3, AffineAffine3f
 
typedef Transform< double, 2, AffineCompactAffineCompact2d
 
typedef Transform< float, 2, AffineCompactAffineCompact2f
 
typedef Transform< double, 3, AffineCompactAffineCompact3d
 
typedef Transform< float, 3, AffineCompactAffineCompact3f
 
typedef AlignedBox< double, 1 > AlignedBox1d
 
typedef AlignedBox< float, 1 > AlignedBox1f
 
typedef AlignedBox< int, 1 > AlignedBox1i
 
typedef AlignedBox< double, 2 > AlignedBox2d
 
typedef AlignedBox< float, 2 > AlignedBox2f
 
typedef AlignedBox< int, 2 > AlignedBox2i
 
typedef AlignedBox< double, 3 > AlignedBox3d
 
typedef AlignedBox< float, 3 > AlignedBox3f
 
typedef AlignedBox< int, 3 > AlignedBox3i
 
typedef AlignedBox< double, 4 > AlignedBox4d
 
typedef AlignedBox< float, 4 > AlignedBox4f
 
typedef AlignedBox< int, 4 > AlignedBox4i
 
typedef AlignedBox< double, DynamicAlignedBoxXd
 
typedef AlignedBox< float, DynamicAlignedBoxXf
 
typedef AlignedBox< int, DynamicAlignedBoxXi
 
typedef DiagonalMatrix< double, 2 > AlignedScaling2d
 
typedef DiagonalMatrix< float, 2 > AlignedScaling2f
 
typedef DiagonalMatrix< double, 3 > AlignedScaling3d
 
typedef DiagonalMatrix< float, 3 > AlignedScaling3f
 
typedef AngleAxis< double > AngleAxisd
 
typedef AngleAxis< float > AngleAxisf
 
template<typename T , std::size_t N>
using array = std::array< T, N >
 
template<typename Type >
using Array2 = Array< Type, 2, 1 >
 [c++11] More...
 
template<typename Type >
using Array22 = Array< Type, 2, 2 >
 [c++11] More...
 
typedef Array< std::complex< double >, 2, 2 > Array22cd
 
typedef Array< std::complex< float >, 2, 2 > Array22cf
 
typedef Array< double, 2, 2 > Array22d
 
typedef Array< float, 2, 2 > Array22f
 
typedef Array< int, 2, 2 > Array22i
 
typedef Array< std::complex< double >, 2, 1 > Array2cd
 
typedef Array< std::complex< float >, 2, 1 > Array2cf
 
typedef Array< double, 2, 1 > Array2d
 
typedef Array< float, 2, 1 > Array2f
 
typedef Array< int, 2, 1 > Array2i
 
template<typename Type >
using Array2X = Array< Type, 2, Dynamic >
 [c++11] More...
 
typedef Array< std::complex< double >, 2, DynamicArray2Xcd
 
typedef Array< std::complex< float >, 2, DynamicArray2Xcf
 
typedef Array< double, 2, DynamicArray2Xd
 
typedef Array< float, 2, DynamicArray2Xf
 
typedef Array< int, 2, DynamicArray2Xi
 
template<typename Type >
using Array3 = Array< Type, 3, 1 >
 [c++11] More...
 
template<typename Type >
using Array33 = Array< Type, 3, 3 >
 [c++11] More...
 
typedef Array< std::complex< double >, 3, 3 > Array33cd
 
typedef Array< std::complex< float >, 3, 3 > Array33cf
 
typedef Array< double, 3, 3 > Array33d
 
typedef Array< float, 3, 3 > Array33f
 
typedef Array< int, 3, 3 > Array33i
 
typedef Array< std::complex< double >, 3, 1 > Array3cd
 
typedef Array< std::complex< float >, 3, 1 > Array3cf
 
typedef Array< double, 3, 1 > Array3d
 
typedef Array< float, 3, 1 > Array3f
 
typedef Array< int, 3, 1 > Array3i
 
template<typename Type >
using Array3X = Array< Type, 3, Dynamic >
 [c++11] More...
 
typedef Array< std::complex< double >, 3, DynamicArray3Xcd
 
typedef Array< std::complex< float >, 3, DynamicArray3Xcf
 
typedef Array< double, 3, DynamicArray3Xd
 
typedef Array< float, 3, DynamicArray3Xf
 
typedef Array< int, 3, DynamicArray3Xi
 
template<typename Type >
using Array4 = Array< Type, 4, 1 >
 [c++11] More...
 
template<typename Type >
using Array44 = Array< Type, 4, 4 >
 [c++11] More...
 
typedef Array< std::complex< double >, 4, 4 > Array44cd
 
typedef Array< std::complex< float >, 4, 4 > Array44cf
 
typedef Array< double, 4, 4 > Array44d
 
typedef Array< float, 4, 4 > Array44f
 
typedef Array< int, 4, 4 > Array44i
 
typedef Array< std::complex< double >, 4, 1 > Array4cd
 
typedef Array< std::complex< float >, 4, 1 > Array4cf
 
typedef Array< double, 4, 1 > Array4d
 
typedef Array< float, 4, 1 > Array4f
 
typedef Array< int, 4, 1 > Array4i
 
template<typename Type >
using Array4X = Array< Type, 4, Dynamic >
 [c++11] More...
 
typedef Array< std::complex< double >, 4, DynamicArray4Xcd
 
typedef Array< std::complex< float >, 4, DynamicArray4Xcf
 
typedef Array< double, 4, DynamicArray4Xd
 
typedef Array< float, 4, DynamicArray4Xf
 
typedef Array< int, 4, DynamicArray4Xi
 
template<typename Type >
using ArrayX = Array< Type, Dynamic, 1 >
 [c++11] More...
 
template<typename Type >
using ArrayX2 = Array< Type, Dynamic, 2 >
 [c++11] More...
 
typedef Array< std::complex< double >, Dynamic, 2 > ArrayX2cd
 
typedef Array< std::complex< float >, Dynamic, 2 > ArrayX2cf
 
typedef Array< double, Dynamic, 2 > ArrayX2d
 
typedef Array< float, Dynamic, 2 > ArrayX2f
 
typedef Array< int, Dynamic, 2 > ArrayX2i
 
template<typename Type >
using ArrayX3 = Array< Type, Dynamic, 3 >
 [c++11] More...
 
typedef Array< std::complex< double >, Dynamic, 3 > ArrayX3cd
 
typedef Array< std::complex< float >, Dynamic, 3 > ArrayX3cf
 
typedef Array< double, Dynamic, 3 > ArrayX3d
 
typedef Array< float, Dynamic, 3 > ArrayX3f
 
typedef Array< int, Dynamic, 3 > ArrayX3i
 
template<typename Type >
using ArrayX4 = Array< Type, Dynamic, 4 >
 [c++11] More...
 
typedef Array< std::complex< double >, Dynamic, 4 > ArrayX4cd
 
typedef Array< std::complex< float >, Dynamic, 4 > ArrayX4cf
 
typedef Array< double, Dynamic, 4 > ArrayX4d
 
typedef Array< float, Dynamic, 4 > ArrayX4f
 
typedef Array< int, Dynamic, 4 > ArrayX4i
 
typedef Array< std::complex< double >, Dynamic, 1 > ArrayXcd
 
typedef Array< std::complex< float >, Dynamic, 1 > ArrayXcf
 
typedef Array< double, Dynamic, 1 > ArrayXd
 
typedef Array< float, Dynamic, 1 > ArrayXf
 
typedef Array< int, Dynamic, 1 > ArrayXi
 
template<typename Type >
using ArrayXX = Array< Type, Dynamic, Dynamic >
 [c++11] More...
 
typedef Array< std::complex< double >, Dynamic, DynamicArrayXXcd
 
typedef Array< std::complex< float >, Dynamic, DynamicArrayXXcf
 
typedef Array< double, Dynamic, DynamicArrayXXd
 
typedef Array< float, Dynamic, DynamicArrayXXf
 
typedef Array< int, Dynamic, DynamicArrayXXi
 
typedef int BlasIndex
 
typedef std::complex< double > dcomplex
 
typedef int DefaultPermutationIndex
 
typedef EIGEN_DEFAULT_DENSE_INDEX_TYPE DenseIndex
 
template<typename Derived , typename ScalarExponent >
using GlobalUnaryPowReturnType = std::enable_if_t< !internal::is_arithmetic< typename NumTraits< Derived >::Real >::value &&internal::is_arithmetic< typename NumTraits< ScalarExponent >::Real >::value, CwiseUnaryOp< internal::scalar_unary_pow_op< typename Derived::Scalar, ScalarExponent >, const Derived > >
 
typedef EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
 The Index type as used for the API. More...
 
typedef Transform< double, 2, IsometryIsometry2d
 
typedef Transform< float, 2, IsometryIsometry2f
 
typedef Transform< double, 3, IsometryIsometry3d
 
typedef Transform< float, 3, IsometryIsometry3f
 
template<typename Type >
using Matrix2 = Matrix< Type, 2, 2 >
 [c++11] 2×2 matrix of type Type. More...
 
typedef Matrix< std::complex< double >, 2, 2 > Matrix2cd
 2×2 matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 2, 2 > Matrix2cf
 2×2 matrix of type std::complex<float>. More...
 
typedef Matrix< double, 2, 2 > Matrix2d
 2×2 matrix of type double. More...
 
typedef Matrix< float, 2, 2 > Matrix2f
 2×2 matrix of type float. More...
 
typedef Matrix< int, 2, 2 > Matrix2i
 2×2 matrix of type int. More...
 
template<typename Type >
using Matrix2X = Matrix< Type, 2, Dynamic >
 [c++11] 2×Dynamic matrix of type Type More...
 
typedef Matrix< std::complex< double >, 2, DynamicMatrix2Xcd
 2×Dynamic matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 2, DynamicMatrix2Xcf
 2×Dynamic matrix of type std::complex<float>. More...
 
typedef Matrix< double, 2, DynamicMatrix2Xd
 2×Dynamic matrix of type double. More...
 
typedef Matrix< float, 2, DynamicMatrix2Xf
 2×Dynamic matrix of type float. More...
 
typedef Matrix< int, 2, DynamicMatrix2Xi
 2×Dynamic matrix of type int. More...
 
template<typename Type >
using Matrix3 = Matrix< Type, 3, 3 >
 [c++11] 3×3 matrix of type Type. More...
 
typedef Matrix< std::complex< double >, 3, 3 > Matrix3cd
 3×3 matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 3, 3 > Matrix3cf
 3×3 matrix of type std::complex<float>. More...
 
typedef Matrix< double, 3, 3 > Matrix3d
 3×3 matrix of type double. More...
 
typedef Matrix< float, 3, 3 > Matrix3f
 3×3 matrix of type float. More...
 
typedef Matrix< int, 3, 3 > Matrix3i
 3×3 matrix of type int. More...
 
template<typename Type >
using Matrix3X = Matrix< Type, 3, Dynamic >
 [c++11] 3×Dynamic matrix of type Type More...
 
typedef Matrix< std::complex< double >, 3, DynamicMatrix3Xcd
 3×Dynamic matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 3, DynamicMatrix3Xcf
 3×Dynamic matrix of type std::complex<float>. More...
 
typedef Matrix< double, 3, DynamicMatrix3Xd
 3×Dynamic matrix of type double. More...
 
typedef Matrix< float, 3, DynamicMatrix3Xf
 3×Dynamic matrix of type float. More...
 
typedef Matrix< int, 3, DynamicMatrix3Xi
 3×Dynamic matrix of type int. More...
 
template<typename Type >
using Matrix4 = Matrix< Type, 4, 4 >
 [c++11] 4×4 matrix of type Type. More...
 
typedef Matrix< std::complex< double >, 4, 4 > Matrix4cd
 4×4 matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 4, 4 > Matrix4cf
 4×4 matrix of type std::complex<float>. More...
 
typedef Matrix< double, 4, 4 > Matrix4d
 4×4 matrix of type double. More...
 
typedef Matrix< float, 4, 4 > Matrix4f
 4×4 matrix of type float. More...
 
typedef Matrix< int, 4, 4 > Matrix4i
 4×4 matrix of type int. More...
 
template<typename Type >
using Matrix4X = Matrix< Type, 4, Dynamic >
 [c++11] 4×Dynamic matrix of type Type More...
 
typedef Matrix< std::complex< double >, 4, DynamicMatrix4Xcd
 4×Dynamic matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 4, DynamicMatrix4Xcf
 4×Dynamic matrix of type std::complex<float>. More...
 
typedef Matrix< double, 4, DynamicMatrix4Xd
 4×Dynamic matrix of type double. More...
 
typedef Matrix< float, 4, DynamicMatrix4Xf
 4×Dynamic matrix of type float. More...
 
typedef Matrix< int, 4, DynamicMatrix4Xi
 4×Dynamic matrix of type int. More...
 
template<typename Type >
using MatrixX = Matrix< Type, Dynamic, Dynamic >
 [c++11] Dynamic×Dynamic matrix of type Type. More...
 
template<typename Type >
using MatrixX2 = Matrix< Type, Dynamic, 2 >
 [c++11] Dynamic×2 matrix of type Type. More...
 
typedef Matrix< std::complex< double >, Dynamic, 2 > MatrixX2cd
 Dynamic×2 matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, Dynamic, 2 > MatrixX2cf
 Dynamic×2 matrix of type std::complex<float>. More...
 
typedef Matrix< double, Dynamic, 2 > MatrixX2d
 Dynamic×2 matrix of type double. More...
 
typedef Matrix< float, Dynamic, 2 > MatrixX2f
 Dynamic×2 matrix of type float. More...
 
typedef Matrix< int, Dynamic, 2 > MatrixX2i
 Dynamic×2 matrix of type int. More...
 
template<typename Type >
using MatrixX3 = Matrix< Type, Dynamic, 3 >
 [c++11] Dynamic×3 matrix of type Type. More...
 
typedef Matrix< std::complex< double >, Dynamic, 3 > MatrixX3cd
 Dynamic×3 matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, Dynamic, 3 > MatrixX3cf
 Dynamic×3 matrix of type std::complex<float>. More...
 
typedef Matrix< double, Dynamic, 3 > MatrixX3d
 Dynamic×3 matrix of type double. More...
 
typedef Matrix< float, Dynamic, 3 > MatrixX3f
 Dynamic×3 matrix of type float. More...
 
typedef Matrix< int, Dynamic, 3 > MatrixX3i
 Dynamic×3 matrix of type int. More...
 
template<typename Type >
using MatrixX4 = Matrix< Type, Dynamic, 4 >
 [c++11] Dynamic×4 matrix of type Type. More...
 
typedef Matrix< std::complex< double >, Dynamic, 4 > MatrixX4cd
 Dynamic×4 matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, Dynamic, 4 > MatrixX4cf
 Dynamic×4 matrix of type std::complex<float>. More...
 
typedef Matrix< double, Dynamic, 4 > MatrixX4d
 Dynamic×4 matrix of type double. More...
 
typedef Matrix< float, Dynamic, 4 > MatrixX4f
 Dynamic×4 matrix of type float. More...
 
typedef Matrix< int, Dynamic, 4 > MatrixX4i
 Dynamic×4 matrix of type int. More...
 
typedef Matrix< std::complex< double >, Dynamic, DynamicMatrixXcd
 Dynamic×Dynamic matrix of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, Dynamic, DynamicMatrixXcf
 Dynamic×Dynamic matrix of type std::complex<float>. More...
 
typedef Matrix< double, Dynamic, DynamicMatrixXd
 Dynamic×Dynamic matrix of type double. More...
 
typedef Matrix< float, Dynamic, DynamicMatrixXf
 Dynamic×Dynamic matrix of type float. More...
 
typedef Matrix< int, Dynamic, DynamicMatrixXi
 Dynamic×Dynamic matrix of type int. More...
 
typedef Transform< double, 2, ProjectiveProjective2d
 
typedef Transform< float, 2, ProjectiveProjective2f
 
typedef Transform< double, 3, ProjectiveProjective3d
 
typedef Transform< float, 3, ProjectiveProjective3f
 
typedef Quaternion< double > Quaterniond
 
typedef Quaternion< float > Quaternionf
 
typedef Map< Quaternion< double >, AlignedQuaternionMapAlignedd
 
typedef Map< Quaternion< float >, AlignedQuaternionMapAlignedf
 
typedef Map< Quaternion< double >, 0 > QuaternionMapd
 
typedef Map< Quaternion< float >, 0 > QuaternionMapf
 
typedef Rotation2D< double > Rotation2Dd
 
typedef Rotation2D< float > Rotation2Df
 
template<typename Type , int Size>
using RowVector = Matrix< Type, 1, Size >
 [c++11] 1×Size vector of type Type. More...
 
template<typename Type >
using RowVector2 = Matrix< Type, 1, 2 >
 [c++11] 1×2 vector of type Type. More...
 
typedef Matrix< std::complex< double >, 1, 2 > RowVector2cd
 1×2 vector of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 1, 2 > RowVector2cf
 1×2 vector of type std::complex<float>. More...
 
typedef Matrix< double, 1, 2 > RowVector2d
 1×2 vector of type double. More...
 
typedef Matrix< float, 1, 2 > RowVector2f
 1×2 vector of type float. More...
 
typedef Matrix< int, 1, 2 > RowVector2i
 1×2 vector of type int. More...
 
template<typename Type >
using RowVector3 = Matrix< Type, 1, 3 >
 [c++11] 1×3 vector of type Type. More...
 
typedef Matrix< std::complex< double >, 1, 3 > RowVector3cd
 1×3 vector of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 1, 3 > RowVector3cf
 1×3 vector of type std::complex<float>. More...
 
typedef Matrix< double, 1, 3 > RowVector3d
 1×3 vector of type double. More...
 
typedef Matrix< float, 1, 3 > RowVector3f
 1×3 vector of type float. More...
 
typedef Matrix< int, 1, 3 > RowVector3i
 1×3 vector of type int. More...
 
template<typename Type >
using RowVector4 = Matrix< Type, 1, 4 >
 [c++11] 1×4 vector of type Type. More...
 
typedef Matrix< std::complex< double >, 1, 4 > RowVector4cd
 1×4 vector of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 1, 4 > RowVector4cf
 1×4 vector of type std::complex<float>. More...
 
typedef Matrix< double, 1, 4 > RowVector4d
 1×4 vector of type double. More...
 
typedef Matrix< float, 1, 4 > RowVector4f
 1×4 vector of type float. More...
 
typedef Matrix< int, 1, 4 > RowVector4i
 1×4 vector of type int. More...
 
template<typename Type >
using RowVectorX = Matrix< Type, 1, Dynamic >
 [c++11] 1×Dynamic vector of type Type. More...
 
typedef Matrix< std::complex< double >, 1, DynamicRowVectorXcd
 1×Dynamic vector of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 1, DynamicRowVectorXcf
 1×Dynamic vector of type std::complex<float>. More...
 
typedef Matrix< double, 1, DynamicRowVectorXd
 1×Dynamic vector of type double. More...
 
typedef Matrix< float, 1, DynamicRowVectorXf
 1×Dynamic vector of type float. More...
 
typedef Matrix< int, 1, DynamicRowVectorXi
 1×Dynamic vector of type int. More...
 
typedef std::complex< float > scomplex
 
typedef ThreadPoolTempl< StlThreadEnvironmentThreadPool
 
typedef Translation< double, 2 > Translation2d
 
typedef Translation< float, 2 > Translation2f
 
typedef Translation< double, 3 > Translation3d
 
typedef Translation< float, 3 > Translation3f
 
template<typename Type , int Size>
using Vector = Matrix< Type, Size, 1 >
 [c++11] Size×1 vector of type Type. More...
 
template<typename Type >
using Vector2 = Matrix< Type, 2, 1 >
 [c++11] 2×1 vector of type Type. More...
 
typedef Matrix< std::complex< double >, 2, 1 > Vector2cd
 2×1 vector of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 2, 1 > Vector2cf
 2×1 vector of type std::complex<float>. More...
 
typedef Matrix< double, 2, 1 > Vector2d
 2×1 vector of type double. More...
 
typedef Matrix< float, 2, 1 > Vector2f
 2×1 vector of type float. More...
 
typedef Matrix< int, 2, 1 > Vector2i
 2×1 vector of type int. More...
 
template<typename Type >
using Vector3 = Matrix< Type, 3, 1 >
 [c++11] 3×1 vector of type Type. More...
 
typedef Matrix< std::complex< double >, 3, 1 > Vector3cd
 3×1 vector of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 3, 1 > Vector3cf
 3×1 vector of type std::complex<float>. More...
 
typedef Matrix< double, 3, 1 > Vector3d
 3×1 vector of type double. More...
 
typedef Matrix< float, 3, 1 > Vector3f
 3×1 vector of type float. More...
 
typedef Matrix< int, 3, 1 > Vector3i
 3×1 vector of type int. More...
 
template<typename Type >
using Vector4 = Matrix< Type, 4, 1 >
 [c++11] 4×1 vector of type Type. More...
 
typedef Matrix< std::complex< double >, 4, 1 > Vector4cd
 4×1 vector of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, 4, 1 > Vector4cf
 4×1 vector of type std::complex<float>. More...
 
typedef Matrix< double, 4, 1 > Vector4d
 4×1 vector of type double. More...
 
typedef Matrix< float, 4, 1 > Vector4f
 4×1 vector of type float. More...
 
typedef Matrix< int, 4, 1 > Vector4i
 4×1 vector of type int. More...
 
template<typename Type >
using VectorX = Matrix< Type, Dynamic, 1 >
 [c++11] Dynamic×1 vector of type Type. More...
 
typedef Matrix< std::complex< double >, Dynamic, 1 > VectorXcd
 Dynamic×1 vector of type std::complex<double>. More...
 
typedef Matrix< std::complex< float >, Dynamic, 1 > VectorXcf
 Dynamic×1 vector of type std::complex<float>. More...
 
typedef Matrix< double, Dynamic, 1 > VectorXd
 Dynamic×1 vector of type double. More...
 
typedef Matrix< float, Dynamic, 1 > VectorXf
 Dynamic×1 vector of type float. More...
 
typedef Matrix< int, Dynamic, 1 > VectorXi
 Dynamic×1 vector of type int. More...
 

Enumerations

enum  {
  Large ,
  Small
}
 
enum  { DontAlignCols }
 
enum  {
  StreamPrecision ,
  FullPrecision
}
 
enum  { StandardCompressedFormat }
 
enum  AccessorLevels {
  ReadOnlyAccessors ,
  WriteAccessors ,
  DirectAccessors ,
  DirectWriteAccessors
}
 
enum  Action {
  GetAction ,
  SetAction
}
 
enum  AlignmentType {
  Unaligned ,
  Aligned8 ,
  Aligned16 ,
  Aligned32 ,
  Aligned64 ,
  Aligned128 ,
  AlignedMask ,
  Aligned ,
  AlignedMax
}
 
enum  AmbiVectorMode {
  IsDense ,
  IsSparse
}
 
enum  AutoSize_t { AutoSize }
 
enum  CholmodMode {
  CholmodAuto ,
  CholmodSimplicialLLt ,
  CholmodSupernodalLLt ,
  CholmodLDLt
}
 
enum  ComputationInfo {
  Success ,
  NumericalIssue ,
  NoConvergence ,
  InvalidInput
}
 
enum  DecompositionOptions {
  Pivoting ,
  NoPivoting ,
  ComputeFullU ,
  ComputeThinU ,
  ComputeFullV ,
  ComputeThinV ,
  EigenvaluesOnly ,
  ComputeEigenvectors ,
  EigVecMask ,
  Ax_lBx ,
  ABx_lx ,
  BAx_lx ,
  GenEigMask
}
 
enum  Default_t { Default }
 
enum  DirectionType {
  Vertical ,
  Horizontal ,
  BothDirections
}
 
enum  NaNPropagationOptions {
  PropagateFast ,
  PropagateNaN ,
  PropagateNumbers
}
 
enum  NoChange_t { NoChange }
 
enum  ProductImplType {
  DefaultProduct ,
  LazyProduct ,
  AliasFreeProduct ,
  CoeffBasedProductMode ,
  LazyCoeffBasedProductMode ,
  OuterProduct ,
  InnerProduct ,
  GemvProduct ,
  GemmProduct
}
 
enum  QRPreconditioners {
  ColPivHouseholderQRPreconditioner ,
  NoQRPreconditioner ,
  HouseholderQRPreconditioner ,
  FullPivHouseholderQRPreconditioner ,
  DisableQRDecomposition
}
 
enum  Sequential_t { Sequential }
 
enum  SideType {
  OnTheLeft ,
  OnTheRight
}
 
enum  SimplicialCholeskyMode {
  SimplicialCholeskyLLT ,
  SimplicialCholeskyLDLT
}
 
enum  SpecializedType {
  Specialized ,
  BuiltIn
}
 
enum  StorageOptions {
  ColMajor ,
  RowMajor ,
  AutoAlign ,
  DontAlign
}
 
enum  TransformTraits {
  Isometry ,
  Affine ,
  AffineCompact ,
  Projective
}
 
enum  TraversalType {
  DefaultTraversal ,
  LinearTraversal ,
  InnerVectorizedTraversal ,
  LinearVectorizedTraversal ,
  SliceVectorizedTraversal ,
  InvalidTraversal ,
  AllAtOnceTraversal
}
 
enum  UnrollingType {
  NoUnrolling ,
  InnerUnrolling ,
  CompleteUnrolling
}
 
enum  UpLoType {
  Lower ,
  Upper ,
  UnitDiag ,
  ZeroDiag ,
  UnitLower ,
  UnitUpper ,
  StrictlyLower ,
  StrictlyUpper ,
  SelfAdjoint ,
  Symmetric
}
 

Functions

template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_abs_op< typename Derived::Scalar >, const Derived > abs (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_abs2_op< typename Derived::Scalar >, const Derived > abs2 (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_acos_op< typename Derived::Scalar >, const Derived > acos (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_acosh_op< typename Derived::Scalar >, const Derived > acosh (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_arg_op< typename Derived::Scalar >, const Derived > arg (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_asin_op< typename Derived::Scalar >, const Derived > asin (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_asinh_op< typename Derived::Scalar >, const Derived > asinh (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_atan_op< typename Derived::Scalar >, const Derived > atan (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_atanh_op< typename Derived::Scalar >, const Derived > atanh (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_carg_op< typename Derived::Scalar >, const Derived > carg (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_ceil_op< typename Derived::Scalar >, const Derived > ceil (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_conjugate_op< typename Derived::Scalar >, const Derived > conj (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_cos_op< typename Derived::Scalar >, const Derived > cos (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_cosh_op< typename Derived::Scalar >, const Derived > cosh (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_cube_op< typename Derived::Scalar >, const Derived > cube (const Eigen::ArrayBase< Derived > &x)
 
template<typename... Args>
const uint8_t * deserialize (const uint8_t *src, const uint8_t *end, Args &... args)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_digamma_op< typename Derived::Scalar >, const Derived > digamma (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_erf_op< typename Derived::Scalar >, const Derived > erf (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_erfc_op< typename Derived::Scalar >, const Derived > erfc (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_exp_op< typename Derived::Scalar >, const Derived > exp (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_expm1_op< typename Derived::Scalar >, const Derived > expm1 (const Eigen::ArrayBase< Derived > &x)
 
template<int N>
static const auto fix ()
 
template<int N>
static const auto fix (int val)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_floor_op< typename Derived::Scalar >, const Derived > floor (const Eigen::ArrayBase< Derived > &x)
 
template<typename VectorsType , typename CoeffsType >
HouseholderSequence< VectorsType, CoeffsType > householderSequence (const VectorsType &v, const CoeffsType &h)
 Convenience function for constructing a Householder sequence. More...
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_imag_op< typename Derived::Scalar >, const Derived > imag (const Eigen::ArrayBase< Derived > &x)
 
void initParallel ()
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_inverse_op< typename Derived::Scalar >, const Derived > inverse (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_isfinite_op< typename Derived::Scalar >, const Derived > isfinite (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_isinf_op< typename Derived::Scalar >, const Derived > isinf (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_isnan_op< typename Derived::Scalar >, const Derived > isnan (const Eigen::ArrayBase< Derived > &x)
 
klu_numeric * klu_factor (int Ap[], int Ai[], double Ax[], klu_symbolic *Symbolic, klu_common *Common, double)
 
klu_numeric * klu_factor (int Ap[], int Ai[], std::complex< double > Ax[], klu_symbolic *Symbolic, klu_common *Common, std::complex< double >)
 
int klu_solve (klu_symbolic *Symbolic, klu_numeric *Numeric, Index ldim, Index nrhs, double B[], klu_common *Common, double)
 A sparse LU factorization and solver based on KLU. More...
 
int klu_solve (klu_symbolic *Symbolic, klu_numeric *Numeric, Index ldim, Index nrhs, std::complex< double >B[], klu_common *Common, std::complex< double >)
 
int klu_tsolve (klu_symbolic *Symbolic, klu_numeric *Numeric, Index ldim, Index nrhs, double B[], klu_common *Common, double)
 
int klu_tsolve (klu_symbolic *Symbolic, klu_numeric *Numeric, Index ldim, Index nrhs, std::complex< double >B[], klu_common *Common, std::complex< double >)
 
std::ptrdiff_t l1CacheSize ()
 
std::ptrdiff_t l2CacheSize ()
 
std::ptrdiff_t l3CacheSize ()
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_lgamma_op< typename Derived::Scalar >, const Derived > lgamma (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_log_op< typename Derived::Scalar >, const Derived > log (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_log10_op< typename Derived::Scalar >, const Derived > log10 (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_log1p_op< typename Derived::Scalar >, const Derived > log1p (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_log2_op< typename Derived::Scalar >, const Derived > log2 (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_logistic_op< typename Derived::Scalar >, const Derived > logistic (const Eigen::ArrayBase< Derived > &x)
 
int nbThreads ()
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_ndtri_op< typename Derived::Scalar >, const Derived > ndtri (const Eigen::ArrayBase< Derived > &x)
 
template<typename SparseDerived , typename PermutationType >
const Product< Inverse< PermutationType >, SparseDerived, AliasFreeProductoperator* (const InverseImpl< PermutationType, PermutationStorage > &tperm, const SparseMatrixBase< SparseDerived > &matrix)
 
template<typename MatrixDerived , typename PermutationDerived >
const Product< MatrixDerived, PermutationDerived, AliasFreeProductoperator* (const MatrixBase< MatrixDerived > &matrix, const PermutationBase< PermutationDerived > &permutation)
 
template<typename MatrixDerived , typename TranspositionsDerived >
const Product< MatrixDerived, TranspositionsDerived, AliasFreeProductoperator* (const MatrixBase< MatrixDerived > &matrix, const TranspositionsBase< TranspositionsDerived > &transpositions)
 
template<typename OtherDerived , typename VectorsType , typename CoeffsType , int Side>
internal::matrix_type_times_scalar_type< typename VectorsType::Scalar, OtherDerived >::Type operator* (const MatrixBase< OtherDerived > &other, const HouseholderSequence< VectorsType, CoeffsType, Side > &h)
 Computes the product of a matrix with a Householder sequence. More...
 
template<typename SparseDerived , typename PermDerived >
const Product< PermDerived, SparseDerived, AliasFreeProductoperator* (const PermutationBase< PermDerived > &perm, const SparseMatrixBase< SparseDerived > &matrix)
 
template<typename PermutationDerived , typename MatrixDerived >
const Product< PermutationDerived, MatrixDerived, AliasFreeProductoperator* (const PermutationBase< PermutationDerived > &permutation, const MatrixBase< MatrixDerived > &matrix)
 
template<typename SparseDerived , typename PermutationType >
const Product< SparseDerived, Inverse< PermutationType >, AliasFreeProductoperator* (const SparseMatrixBase< SparseDerived > &matrix, const InverseImpl< PermutationType, PermutationStorage > &tperm)
 
template<typename SparseDerived , typename PermDerived >
const Product< SparseDerived, PermDerived, AliasFreeProductoperator* (const SparseMatrixBase< SparseDerived > &matrix, const PermutationBase< PermDerived > &perm)
 
template<typename TranspositionsDerived , typename MatrixDerived >
const Product< TranspositionsDerived, MatrixDerived, AliasFreeProductoperator* (const TranspositionsBase< TranspositionsDerived > &transpositions, const MatrixBase< MatrixDerived > &matrix)
 
template<typename DenseDerived , typename SparseDerived >
const CwiseBinaryOp< internal::scalar_sum_op< typename DenseDerived::Scalar, typename SparseDerived::Scalar >, const DenseDerived, const SparseDerived > operator+ (const MatrixBase< DenseDerived > &a, const SparseMatrixBase< SparseDerived > &b)
 
template<typename SparseDerived , typename DenseDerived >
const CwiseBinaryOp< internal::scalar_sum_op< typename SparseDerived::Scalar, typename DenseDerived::Scalar >, const SparseDerived, const DenseDerived > operator+ (const SparseMatrixBase< SparseDerived > &a, const MatrixBase< DenseDerived > &b)
 
template<typename DenseDerived , typename SparseDerived >
const CwiseBinaryOp< internal::scalar_difference_op< typename DenseDerived::Scalar, typename SparseDerived::Scalar >, const DenseDerived, const SparseDerived > operator- (const MatrixBase< DenseDerived > &a, const SparseMatrixBase< SparseDerived > &b)
 
template<typename SparseDerived , typename DenseDerived >
const CwiseBinaryOp< internal::scalar_difference_op< typename SparseDerived::Scalar, typename DenseDerived::Scalar >, const SparseDerived, const DenseDerived > operator- (const SparseMatrixBase< SparseDerived > &a, const MatrixBase< DenseDerived > &b)
 
template<typename Derived >
std::ostream & operator<< (std::ostream &s, const DiagonalBase< Derived > &m)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_real_op< typename Derived::Scalar >, const Derived > real (const Eigen::ArrayBase< Derived > &x)
 
template<typename VectorsType , typename CoeffsType >
HouseholderSequence< VectorsType, CoeffsType, OnTheRightrightHouseholderSequence (const VectorsType &v, const CoeffsType &h)
 Convenience function for constructing a Householder sequence. More...
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_rint_op< typename Derived::Scalar >, const Derived > rint (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_round_op< typename Derived::Scalar >, const Derived > round (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_rsqrt_op< typename Derived::Scalar >, const Derived > rsqrt (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const DiagonalWrapper< const Derived > Scaling (const MatrixBase< Derived > &coeffs)
 
template<typename Scalar >
DiagonalMatrix< Scalar, 2 > Scaling (const Scalar &sx, const Scalar &sy)
 
template<typename Scalar >
DiagonalMatrix< Scalar, 3 > Scaling (const Scalar &sx, const Scalar &sy, const Scalar &sz)
 
template<typename RealScalar >
UniformScaling< std::complex< RealScalar > > Scaling (const std::complex< RealScalar > &s)
 
UniformScaling< double > Scaling (double s)
 
UniformScaling< float > Scaling (float s)
 
template<typename Derived >
DiagonalWrapper< const Derived >::PlainObject Scaling (MatrixBase< Derived > &&coeffs)
 
template<typename FirstType , typename LastType >
auto seq (FirstType f, LastType l)
 
template<typename FirstType , typename LastType , typename IncrType >
auto seq (FirstType f, LastType l, IncrType incr)
 
template<typename FirstType , typename SizeType >
ArithmeticSequence< typename internal::cleanup_index_type< FirstType >::type, typename internal::cleanup_index_type< SizeType >::type > seqN (FirstType first, SizeType size)
 
template<typename FirstType , typename SizeType , typename IncrType >
ArithmeticSequence< typename internal::cleanup_index_type< FirstType >::type, typename internal::cleanup_index_type< SizeType >::type, typename internal::cleanup_seq_incr< IncrType >::type > seqN (FirstType first, SizeType size, IncrType incr)
 
template<typename... Args>
uint8_t * serialize (uint8_t *dest, uint8_t *end, const Args &... args)
 
template<typename... Args>
size_t serialize_size (const Args &... args)
 
void setCpuCacheSizes (std::ptrdiff_t l1, std::ptrdiff_t l2, std::ptrdiff_t l3)
 
void setNbThreads (int v)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_sign_op< typename Derived::Scalar >, const Derived > sign (const Eigen::ArrayBase< Derived > &x)
 
static const char * SimdInstructionSetsInUse (void)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_sin_op< typename Derived::Scalar >, const Derived > sin (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_sinh_op< typename Derived::Scalar >, const Derived > sinh (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_sqrt_op< typename Derived::Scalar >, const Derived > sqrt (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_square_op< typename Derived::Scalar >, const Derived > square (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_tan_op< typename Derived::Scalar >, const Derived > tan (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived >
const Eigen::CwiseUnaryOp< Eigen::internal::scalar_tanh_op< typename Derived::Scalar >, const Derived > tanh (const Eigen::ArrayBase< Derived > &x)
 
template<typename Derived , typename OtherDerived >
internal::umeyama_transform_matrix_type< Derived, OtherDerived >::type umeyama (const MatrixBase< Derived > &src, const MatrixBase< OtherDerived > &dst, bool with_scaling=true)
 Returns the transformation between two point sets. More...
 
void umfpack_defaults (double control[UMFPACK_CONTROL], double, int)
 
void umfpack_defaults (double control[UMFPACK_CONTROL], double, SuiteSparse_long)
 
void umfpack_defaults (double control[UMFPACK_CONTROL], std::complex< double >, int)
 
void umfpack_defaults (double control[UMFPACK_CONTROL], std::complex< double >, SuiteSparse_long)
 
void umfpack_free_numeric (void **Numeric, double, int)
 
void umfpack_free_numeric (void **Numeric, double, SuiteSparse_long)
 
void umfpack_free_numeric (void **Numeric, std::complex< double >, int)
 
void umfpack_free_numeric (void **Numeric, std::complex< double >, SuiteSparse_long)
 
void umfpack_free_symbolic (void **Symbolic, double, int)
 
void umfpack_free_symbolic (void **Symbolic, double, SuiteSparse_long)
 
void umfpack_free_symbolic (void **Symbolic, std::complex< double >, int)
 
void umfpack_free_symbolic (void **Symbolic, std::complex< double >, SuiteSparse_long)
 
int umfpack_get_determinant (double *Mx, double *Ex, void *NumericHandle, double User_Info[UMFPACK_INFO], int)
 
SuiteSparse_long umfpack_get_determinant (double *Mx, double *Ex, void *NumericHandle, double User_Info[UMFPACK_INFO], SuiteSparse_long)
 
int umfpack_get_determinant (std::complex< double > *Mx, double *Ex, void *NumericHandle, double User_Info[UMFPACK_INFO], int)
 
SuiteSparse_long umfpack_get_determinant (std::complex< double > *Mx, double *Ex, void *NumericHandle, double User_Info[UMFPACK_INFO], SuiteSparse_long)
 
int umfpack_get_lunz (int *lnz, int *unz, int *n_row, int *n_col, int *nz_udiag, void *Numeric, double)
 
int umfpack_get_lunz (int *lnz, int *unz, int *n_row, int *n_col, int *nz_udiag, void *Numeric, std::complex< double >)
 
SuiteSparse_long umfpack_get_lunz (SuiteSparse_long *lnz, SuiteSparse_long *unz, SuiteSparse_long *n_row, SuiteSparse_long *n_col, SuiteSparse_long *nz_udiag, void *Numeric, double)
 
SuiteSparse_long umfpack_get_lunz (SuiteSparse_long *lnz, SuiteSparse_long *unz, SuiteSparse_long *n_row, SuiteSparse_long *n_col, SuiteSparse_long *nz_udiag, void *Numeric, std::complex< double >)
 
int umfpack_get_numeric (int Lp[], int Lj[], double Lx[], int Up[], int Ui[], double Ux[], int P[], int Q[], double Dx[], int *do_recip, double Rs[], void *Numeric)
 
int umfpack_get_numeric (int Lp[], int Lj[], std::complex< double > Lx[], int Up[], int Ui[], std::complex< double > Ux[], int P[], int Q[], std::complex< double > Dx[], int *do_recip, double Rs[], void *Numeric)
 
SuiteSparse_long umfpack_get_numeric (SuiteSparse_long Lp[], SuiteSparse_long Lj[], double Lx[], SuiteSparse_long Up[], SuiteSparse_long Ui[], double Ux[], SuiteSparse_long P[], SuiteSparse_long Q[], double Dx[], SuiteSparse_long *do_recip, double Rs[], void *Numeric)
 
SuiteSparse_long umfpack_get_numeric (SuiteSparse_long Lp[], SuiteSparse_long Lj[], std::complex< double > Lx[], SuiteSparse_long Up[], SuiteSparse_long Ui[], std::complex< double > Ux[], SuiteSparse_long P[], SuiteSparse_long Q[], std::complex< double > Dx[], SuiteSparse_long *do_recip, double Rs[], void *Numeric)
 
int umfpack_numeric (const int Ap[], const int Ai[], const double Ax[], void *Symbolic, void **Numeric, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
int umfpack_numeric (const int Ap[], const int Ai[], const std::complex< double > Ax[], void *Symbolic, void **Numeric, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
SuiteSparse_long umfpack_numeric (const SuiteSparse_long Ap[], const SuiteSparse_long Ai[], const double Ax[], void *Symbolic, void **Numeric, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
SuiteSparse_long umfpack_numeric (const SuiteSparse_long Ap[], const SuiteSparse_long Ai[], const std::complex< double > Ax[], void *Symbolic, void **Numeric, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
void umfpack_report_control (double control[UMFPACK_CONTROL], double, int)
 
void umfpack_report_control (double control[UMFPACK_CONTROL], double, SuiteSparse_long)
 
void umfpack_report_control (double control[UMFPACK_CONTROL], std::complex< double >, int)
 
void umfpack_report_control (double control[UMFPACK_CONTROL], std::complex< double >, SuiteSparse_long)
 
void umfpack_report_info (double control[UMFPACK_CONTROL], double info[UMFPACK_INFO], double, int)
 
void umfpack_report_info (double control[UMFPACK_CONTROL], double info[UMFPACK_INFO], double, SuiteSparse_long)
 
void umfpack_report_info (double control[UMFPACK_CONTROL], double info[UMFPACK_INFO], std::complex< double >, int)
 
void umfpack_report_info (double control[UMFPACK_CONTROL], double info[UMFPACK_INFO], std::complex< double >, SuiteSparse_long)
 
void umfpack_report_status (double control[UMFPACK_CONTROL], int status, double, int)
 
void umfpack_report_status (double control[UMFPACK_CONTROL], int status, double, SuiteSparse_long)
 
void umfpack_report_status (double control[UMFPACK_CONTROL], int status, std::complex< double >, int)
 
void umfpack_report_status (double control[UMFPACK_CONTROL], int status, std::complex< double >, SuiteSparse_long)
 
int umfpack_solve (int sys, const int Ap[], const int Ai[], const double Ax[], double X[], const double B[], void *Numeric, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
int umfpack_solve (int sys, const int Ap[], const int Ai[], const std::complex< double > Ax[], std::complex< double > X[], const std::complex< double > B[], void *Numeric, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
SuiteSparse_long umfpack_solve (int sys, const SuiteSparse_long Ap[], const SuiteSparse_long Ai[], const double Ax[], double X[], const double B[], void *Numeric, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
SuiteSparse_long umfpack_solve (int sys, const SuiteSparse_long Ap[], const SuiteSparse_long Ai[], const std::complex< double > Ax[], std::complex< double > X[], const std::complex< double > B[], void *Numeric, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
int umfpack_symbolic (int n_row, int n_col, const int Ap[], const int Ai[], const double Ax[], void **Symbolic, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
int umfpack_symbolic (int n_row, int n_col, const int Ap[], const int Ai[], const std::complex< double > Ax[], void **Symbolic, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
SuiteSparse_long umfpack_symbolic (SuiteSparse_long n_row, SuiteSparse_long n_col, const SuiteSparse_long Ap[], const SuiteSparse_long Ai[], const double Ax[], void **Symbolic, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
SuiteSparse_long umfpack_symbolic (SuiteSparse_long n_row, SuiteSparse_long n_col, const SuiteSparse_long Ap[], const SuiteSparse_long Ai[], const std::complex< double > Ax[], void **Symbolic, const double Control[UMFPACK_CONTROL], double Info[UMFPACK_INFO])
 
template<typename Scalar_ , int Options_, typename Index_ >
const cholmod_sparse viewAsCholmod (const SparseMatrix< Scalar_, Options_, Index_ > &mat)
 
template<typename Scalar_ , int Options_, typename Index_ , unsigned int UpLo>
cholmod_sparse viewAsCholmod (const SparseSelfAdjointView< const SparseMatrix< Scalar_, Options_, Index_ >, UpLo > &mat)
 
template<typename Scalar_ , int Options_, typename Index_ >
const cholmod_sparse viewAsCholmod (const SparseVector< Scalar_, Options_, Index_ > &mat)
 
template<typename Derived >
cholmod_dense viewAsCholmod (MatrixBase< Derived > &mat)
 
template<typename Scalar_ , int Options_, typename StorageIndex_ >
cholmod_sparse viewAsCholmod (Ref< SparseMatrix< Scalar_, Options_, StorageIndex_ > > mat)
 
template<typename Scalar , int Flags, typename StorageIndex >
Map< SparseMatrix< Scalar, Flags, StorageIndex > > viewAsEigen (cholmod_sparse &cm)
 

Variables

const unsigned int ActualPacketAccessBit
 
EIGEN_DEPRECATED const unsigned int AlignedBit
 
const int AutoOrder
 
const int CoherentAccessPattern
 
const unsigned int CompressedAccessBit
 
const unsigned int DirectAccessBit
 
const int Dynamic
 
const int DynamicIndex
 
EIGEN_DEPRECATED const unsigned int EvalBeforeAssigningBit
 
const unsigned int EvalBeforeNestingBit
 
const unsigned int HereditaryBits
 
const int HugeCost
 
const int Infinity
 
const int InnerRandomAccessPattern
 
const unsigned int LinearAccessBit
 
const unsigned int LvalueBit
 
const unsigned int NestByRefBit
 
const unsigned int NoPreferredStorageOrderBit
 
const int OuterRandomAccessPattern
 
const unsigned int PacketAccessBit
 
const int RandomAccessPattern
 
const unsigned int RowMajorBit
 
const int UndefinedIncr
 

Detailed Description

: InteropHeaders

Namespace containing all symbols from the Eigen library.

: TypeCasting

: PacketMath

: MathFunctions

TODO *

  • Check StorageOrder on dhs_pack (the innermost second loop seems unvectorized when it could). *
  • Check the possibility of transposing as GETREAL and GETIMAG when needed. *

InteropHeaders.h

MathFunctions.h

PacketMath.h

TypeCasting.h

This file implements a self adjoint product: C += A A^T updating only half of the selfadjoint matrix C. It corresponds to the level 3 SYRK and level 2 SYR Blas routines.

Typedef Documentation

◆ AccelerateCholeskyAtA

template<typename MatrixType >
using Eigen::AccelerateCholeskyAtA = typedef AccelerateImpl<MatrixType, 0, SparseFactorizationCholeskyAtA, false>

Definition at line 107 of file AccelerateSupport.h.

◆ AccelerateLDLT

template<typename MatrixType , int UpLo = Lower>
using Eigen::AccelerateLDLT = typedef AccelerateImpl<MatrixType, UpLo | Symmetric, SparseFactorizationLDLT, true>

Definition at line 39 of file AccelerateSupport.h.

◆ AccelerateLDLTSBK

template<typename MatrixType , int UpLo = Lower>
using Eigen::AccelerateLDLTSBK = typedef AccelerateImpl<MatrixType, UpLo | Symmetric, SparseFactorizationLDLTSBK, true>

Definition at line 67 of file AccelerateSupport.h.

◆ AccelerateLDLTTPP

template<typename MatrixType , int UpLo = Lower>
using Eigen::AccelerateLDLTTPP = typedef AccelerateImpl<MatrixType, UpLo | Symmetric, SparseFactorizationLDLTTPP, true>

Definition at line 81 of file AccelerateSupport.h.

◆ AccelerateLDLTUnpivoted

template<typename MatrixType , int UpLo = Lower>
using Eigen::AccelerateLDLTUnpivoted = typedef AccelerateImpl<MatrixType, UpLo | Symmetric, SparseFactorizationLDLTUnpivoted, true>

Definition at line 53 of file AccelerateSupport.h.

◆ AccelerateLLT

template<typename MatrixType , int UpLo = Lower>
using Eigen::AccelerateLLT = typedef AccelerateImpl<MatrixType, UpLo | Symmetric, SparseFactorizationCholesky, true>

Definition at line 25 of file AccelerateSupport.h.

◆ AccelerateQR

template<typename MatrixType >
using Eigen::AccelerateQR = typedef AccelerateImpl<MatrixType, 0, SparseFactorizationQR, false>

Definition at line 94 of file AccelerateSupport.h.

◆ AlignedScaling2d

Deprecated:

Definition at line 173 of file Scaling.h.

◆ AlignedScaling2f

Deprecated:

Definition at line 171 of file Scaling.h.

◆ AlignedScaling3d

Deprecated:

Definition at line 177 of file Scaling.h.

◆ AlignedScaling3f

Deprecated:

Definition at line 175 of file Scaling.h.

◆ array

template<typename T , std::size_t N>
using Eigen::array = typedef std::array<T, N>

Definition at line 256 of file EmulateArray.h.

◆ BlasIndex

typedef int Eigen::BlasIndex

Definition at line 133 of file MKL_support.h.

◆ dcomplex

typedef std::complex<double> Eigen::dcomplex

Definition at line 127 of file MKL_support.h.

◆ DefaultPermutationIndex

Definition at line 270 of file ForwardDeclarations.h.

◆ DenseIndex

Definition at line 74 of file Meta.h.

◆ GlobalUnaryPowReturnType

template<typename Derived , typename ScalarExponent >
using Eigen::GlobalUnaryPowReturnType = typedef std::enable_if_t< !internal::is_arithmetic<typename NumTraits<Derived>::Real>::value && internal::is_arithmetic<typename NumTraits<ScalarExponent>::Real>::value, CwiseUnaryOp<internal::scalar_unary_pow_op<typename Derived::Scalar, ScalarExponent>, const Derived> >

Definition at line 99 of file GlobalFunctions.h.

◆ Index

The Index type as used for the API.

To change this, #define the preprocessor symbol EIGEN_DEFAULT_DENSE_INDEX_TYPE.

See also
Preprocessor directives, StorageIndex.

Definition at line 82 of file Meta.h.

◆ scomplex

typedef std::complex<float> Eigen::scomplex

Definition at line 128 of file MKL_support.h.

◆ ThreadPool

◆ Translation2d

typedef Translation<double,2> Eigen::Translation2d

Definition at line 171 of file Translation.h.

◆ Translation2f

typedef Translation<float, 2> Eigen::Translation2f

Definition at line 170 of file Translation.h.

◆ Translation3d

typedef Translation<double,3> Eigen::Translation3d

Definition at line 173 of file Translation.h.

◆ Translation3f

typedef Translation<float, 3> Eigen::Translation3f

Definition at line 172 of file Translation.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
Large 
Small 

Definition at line 18 of file GeneralProduct.h.

18  {
19  Large = 2,
20  Small = 3
21 };

◆ anonymous enum

anonymous enum
Enumerator
DontAlignCols 

Definition at line 18 of file IO.h.

18 { DontAlignCols = 1 };
@ DontAlignCols
Definition: IO.h:18

◆ anonymous enum

anonymous enum
Enumerator
StreamPrecision 
FullPrecision 

Definition at line 19 of file IO.h.

19  { StreamPrecision = -1,
20  FullPrecision = -2 };
@ StreamPrecision
Definition: IO.h:19
@ FullPrecision
Definition: IO.h:20

◆ anonymous enum

anonymous enum
Enumerator
StandardCompressedFormat 

used by Ref<SparseMatrix> to specify whether the input storage must be in standard compressed form

Definition at line 17 of file SparseRef.h.

17  {
19 };
@ StandardCompressedFormat
Definition: SparseRef.h:18

◆ Action

Enumerator
GetAction 
SetAction 

Definition at line 508 of file Constants.h.

@ GetAction
Definition: Constants.h:508
@ SetAction
Definition: Constants.h:508

◆ AmbiVectorMode

Enumerator
IsDense 
IsSparse 

Definition at line 368 of file Constants.h.

368  {
369  IsDense = 0,
370  IsSparse
371 };
@ IsDense
Definition: Constants.h:369
@ IsSparse
Definition: Constants.h:370

◆ AutoSize_t

Enumerator
AutoSize 

Definition at line 18 of file ReshapedHelper.h.

18 { AutoSize };

◆ CholmodMode

Enumerator
CholmodAuto 
CholmodSimplicialLLt 
CholmodSupernodalLLt 
CholmodLDLt 

Definition at line 205 of file CholmodSupport.h.

◆ Default_t

Enumerator
Default 

Definition at line 364 of file Constants.h.

364 { Default };
@ Default
Definition: Constants.h:364

◆ NoChange_t

Enumerator
NoChange 

Definition at line 362 of file Constants.h.

362 { NoChange };
@ NoChange
Definition: Constants.h:362

◆ ProductImplType

Enumerator
DefaultProduct 
LazyProduct 
AliasFreeProduct 
CoeffBasedProductMode 
LazyCoeffBasedProductMode 
OuterProduct 
InnerProduct 
GemvProduct 
GemmProduct 

Definition at line 503 of file Constants.h.

◆ Sequential_t

Enumerator
Sequential 

Definition at line 363 of file Constants.h.

363 { Sequential };
@ Sequential
Definition: Constants.h:363

◆ SimplicialCholeskyMode

Enumerator
SimplicialCholeskyLLT 
SimplicialCholeskyLDLT 

Definition at line 17 of file SimplicialCholesky.h.

17  {
20 };
@ SimplicialCholeskyLDLT
@ SimplicialCholeskyLLT

◆ SpecializedType

Enumerator
Specialized 
BuiltIn 

Definition at line 311 of file Constants.h.

311  {
312  Specialized,
313  BuiltIn
314 };
@ Specialized
Definition: Constants.h:312
@ BuiltIn
Definition: Constants.h:313

◆ TraversalType

Enumerator
DefaultTraversal 
LinearTraversal 
InnerVectorizedTraversal 
LinearVectorizedTraversal 
SliceVectorizedTraversal 
InvalidTraversal 
AllAtOnceTraversal 

Definition at line 277 of file Constants.h.

277  {
295 };
@ InnerVectorizedTraversal
Definition: Constants.h:284
@ LinearVectorizedTraversal
Definition: Constants.h:287
@ DefaultTraversal
Definition: Constants.h:279
@ SliceVectorizedTraversal
Definition: Constants.h:290
@ LinearTraversal
Definition: Constants.h:281
@ AllAtOnceTraversal
Definition: Constants.h:294
@ InvalidTraversal
Definition: Constants.h:292

◆ UnrollingType

Enumerator
NoUnrolling 
InnerUnrolling 
CompleteUnrolling 

Definition at line 299 of file Constants.h.

299  {
301  NoUnrolling,
307 };
@ InnerUnrolling
Definition: Constants.h:303
@ CompleteUnrolling
Definition: Constants.h:306
@ NoUnrolling
Definition: Constants.h:301

Function Documentation

◆ abs()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_abs_op <typename Derived::Scalar>, const Derived> Eigen::abs ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise absolute value of x
See also
ArrayBase::abs , MatrixBase::cwiseAbs
Math functions, class CwiseUnaryOp

◆ abs2()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_abs2_op <typename Derived::Scalar>, const Derived> Eigen::abs2 ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise squared absolute value of x
See also
ArrayBase::abs2 , MatrixBase::cwiseAbs2
Math functions, class CwiseUnaryOp

◆ acos()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_acos_op <typename Derived::Scalar>, const Derived> Eigen::acos ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise arc-consine of x
See also
ArrayBase::acos
Math functions, class CwiseUnaryOp

◆ acosh()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_acosh_op <typename Derived::Scalar>, const Derived> Eigen::acosh ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise inverse hyperbolic cosine of x
See also
ArrayBase::acosh
Math functions, class CwiseUnaryOp

◆ arg()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_arg_op <typename Derived::Scalar>, const Derived> Eigen::arg ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise complex argument of x
See also
ArrayBase::arg , MatrixBase::cwiseArg
Math functions, class CwiseUnaryOp

◆ asin()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_asin_op <typename Derived::Scalar>, const Derived> Eigen::asin ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise arc-sine of x
See also
ArrayBase::asin
Math functions, class CwiseUnaryOp

◆ asinh()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_asinh_op <typename Derived::Scalar>, const Derived> Eigen::asinh ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise inverse hyperbolic sine of x
See also
ArrayBase::asinh
Math functions, class CwiseUnaryOp

◆ atan()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_atan_op <typename Derived::Scalar>, const Derived> Eigen::atan ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise arc-tangent of x
See also
ArrayBase::atan
Math functions, class CwiseUnaryOp

◆ atanh()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_atanh_op <typename Derived::Scalar>, const Derived> Eigen::atanh ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise inverse hyperbolic tangent of x
See also
ArrayBase::atanh
Math functions, class CwiseUnaryOp

◆ carg()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_carg_op <typename Derived::Scalar>, const Derived> Eigen::carg ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise complex argument of x
See also
ArrayBase::carg , MatrixBase::cwiseCArg
Math functions, class CwiseUnaryOp

◆ ceil()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_ceil_op <typename Derived::Scalar>, const Derived> Eigen::ceil ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise nearest integer not less than the giben value of x
See also
Eigen::floor , ArrayBase::ceil
Math functions, class CwiseUnaryOp

◆ conj()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_conjugate_op <typename Derived::Scalar>, const Derived> Eigen::conj ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise complex conjugate of x
See also
ArrayBase::conjugate
Math functions, class CwiseUnaryOp

◆ cos()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_cos_op <typename Derived::Scalar>, const Derived> Eigen::cos ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise cosine of x
See also
ArrayBase::cos
Math functions, class CwiseUnaryOp

◆ cosh()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_cosh_op <typename Derived::Scalar>, const Derived> Eigen::cosh ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise hyperbolic cosine of x
See also
ArrayBase::cosh
Math functions, class CwiseUnaryOp

◆ cube()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_cube_op <typename Derived::Scalar>, const Derived> Eigen::cube ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise cube (power 3) of x
See also
Eigen::pow , ArrayBase::cube
Math functions, class CwiseUnaryOp

◆ deserialize()

template<typename... Args>
const uint8_t* Eigen::deserialize ( const uint8_t *  src,
const uint8_t *  end,
Args &...  args 
)
inline

Deserialize a set of values from the byte buffer.

Parameters
srcinput byte buffer; if this is nullptr, does nothing.
endthe end of input byte buffer.
args... arguments to deserialize in sequence.
Returns
the next address after all parsed values; nullptr if parsing errors are detected.

Definition at line 214 of file Serializer.h.

214  {
215  return internal::serialize_impl<sizeof...(args), Args...>::deserialize(src, end, args...);
216 }
static const lastp1_t end
const uint8_t * deserialize(const uint8_t *src, const uint8_t *end, Args &... args)
Definition: Serializer.h:214

◆ digamma()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_digamma_op <typename Derived::Scalar>, const Derived> Eigen::digamma ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise derivative of lgamma of x
See also
ArrayBase::digamma
Math functions, class CwiseUnaryOp

◆ erf()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_erf_op <typename Derived::Scalar>, const Derived> Eigen::erf ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise error function of x
See also
ArrayBase::erf
Math functions, class CwiseUnaryOp

◆ erfc()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_erfc_op <typename Derived::Scalar>, const Derived> Eigen::erfc ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise complement error function of x
See also
ArrayBase::erfc
Math functions, class CwiseUnaryOp

◆ exp()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_exp_op <typename Derived::Scalar>, const Derived> Eigen::exp ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise exponential of x
See also
ArrayBase::exp
Math functions, class CwiseUnaryOp

◆ expm1()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_expm1_op <typename Derived::Scalar>, const Derived> Eigen::expm1 ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise exponential of a value minus 1 of x
See also
ArrayBase::expm1
Math functions, class CwiseUnaryOp

◆ floor()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_floor_op <typename Derived::Scalar>, const Derived> Eigen::floor ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise nearest integer not greater than the giben value of x
See also
Eigen::ceil , ArrayBase::floor
Math functions, class CwiseUnaryOp

◆ imag()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_imag_op <typename Derived::Scalar>, const Derived> Eigen::imag ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise imaginary part of x
See also
ArrayBase::imag
Math functions, class CwiseUnaryOp

◆ initParallel()

void Eigen::initParallel ( )
inline

Must be call first when calling Eigen from multiple threads

Definition at line 51 of file Parallelizer.h.

52 {
53  int nbt;
55  std::ptrdiff_t l1, l2, l3;
57 }
void manage_multi_threading(Action action, int *v)
Definition: Parallelizer.h:20
void manage_caching_sizes(Action action, std::ptrdiff_t *l1, std::ptrdiff_t *l2, std::ptrdiff_t *l3)

◆ inverse()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_inverse_op <typename Derived::Scalar>, const Derived> Eigen::inverse ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise inverse of x
See also
ArrayBase::inverse
Math functions, class CwiseUnaryOp

◆ isfinite()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_isfinite_op <typename Derived::Scalar>, const Derived> Eigen::isfinite ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise finite value test of x
See also
Eigen::isinf , Eigen::isnan , ArrayBase::isfinite
Math functions, class CwiseUnaryOp

◆ isinf()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_isinf_op <typename Derived::Scalar>, const Derived> Eigen::isinf ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise infinite value test of x
See also
Eigen::isnan , Eigen::isfinite , ArrayBase::isinf
Math functions, class CwiseUnaryOp

◆ isnan()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_isnan_op <typename Derived::Scalar>, const Derived> Eigen::isnan ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise not-a-number test of x
See also
Eigen::isinf , Eigen::isfinite , ArrayBase::isnan
Math functions, class CwiseUnaryOp

◆ klu_factor() [1/2]

klu_numeric* Eigen::klu_factor ( int  Ap[],
int  Ai[],
double  Ax[],
klu_symbolic *  Symbolic,
klu_common *  Common,
double   
)
inline

Definition at line 52 of file KLUSupport.h.

52  {
53  return klu_factor(Ap, Ai, Ax, Symbolic, Common);
54 }
klu_numeric * klu_factor(int Ap[], int Ai[], std::complex< double > Ax[], klu_symbolic *Symbolic, klu_common *Common, std::complex< double >)
Definition: KLUSupport.h:56

◆ klu_factor() [2/2]

klu_numeric* Eigen::klu_factor ( int  Ap[],
int  Ai[],
std::complex< double >  Ax[],
klu_symbolic *  Symbolic,
klu_common *  Common,
std::complex< double >   
)
inline

Definition at line 56 of file KLUSupport.h.

56  {
57  return klu_z_factor(Ap, Ai, &numext::real_ref(Ax[0]), Symbolic, Common);
58 }
internal::add_const_on_value_type_t< EIGEN_MATHFUNC_RETVAL(real_ref, Scalar) > real_ref(const Scalar &x)

◆ klu_solve()

int Eigen::klu_solve ( klu_symbolic *  Symbolic,
klu_numeric *  Numeric,
Index  ldim,
Index  nrhs,
std::complex< double >  B[],
klu_common *  Common,
std::complex< double >   
)
inline

Definition at line 40 of file KLUSupport.h.

40  {
41  return klu_z_solve(Symbolic, Numeric, internal::convert_index<int>(ldim), internal::convert_index<int>(nrhs), &numext::real_ref(B[0]), Common);
42 }
MatrixXf B

◆ klu_tsolve() [1/2]

int Eigen::klu_tsolve ( klu_symbolic *  Symbolic,
klu_numeric *  Numeric,
Index  ldim,
Index  nrhs,
double  B[],
klu_common *  Common,
double   
)
inline

Definition at line 44 of file KLUSupport.h.

44  {
45  return klu_tsolve(Symbolic, Numeric, internal::convert_index<int>(ldim), internal::convert_index<int>(nrhs), B, Common);
46 }
int klu_tsolve(klu_symbolic *Symbolic, klu_numeric *Numeric, Index ldim, Index nrhs, std::complex< double >B[], klu_common *Common, std::complex< double >)
Definition: KLUSupport.h:48

◆ klu_tsolve() [2/2]

int Eigen::klu_tsolve ( klu_symbolic *  Symbolic,
klu_numeric *  Numeric,
Index  ldim,
Index  nrhs,
std::complex< double >  B[],
klu_common *  Common,
std::complex< double >   
)
inline

Definition at line 48 of file KLUSupport.h.

48  {
49  return klu_z_tsolve(Symbolic, Numeric, internal::convert_index<int>(ldim), internal::convert_index<int>(nrhs), &numext::real_ref(B[0]), 0, Common);
50 }

◆ l1CacheSize()

std::ptrdiff_t Eigen::l1CacheSize ( )
inline
Returns
the currently set level 1 cpu cache size (in bytes) used to estimate the ideal blocking size parameters.
See also
setCpuCacheSize

Definition at line 3264 of file products/GeneralBlockPanelKernel.h.

3265 {
3266  std::ptrdiff_t l1, l2, l3;
3267  internal::manage_caching_sizes(GetAction, &l1, &l2, &l3);
3268  return l1;
3269 }

◆ l2CacheSize()

std::ptrdiff_t Eigen::l2CacheSize ( )
inline
Returns
the currently set level 2 cpu cache size (in bytes) used to estimate the ideal blocking size parameters.
See also
setCpuCacheSize

Definition at line 3273 of file products/GeneralBlockPanelKernel.h.

3274 {
3275  std::ptrdiff_t l1, l2, l3;
3276  internal::manage_caching_sizes(GetAction, &l1, &l2, &l3);
3277  return l2;
3278 }

◆ l3CacheSize()

std::ptrdiff_t Eigen::l3CacheSize ( )
inline
Returns
the currently set level 3 cpu cache size (in bytes) used to estimate the ideal blocking size paramete\ rs.
See also
setCpuCacheSize

Definition at line 3283 of file products/GeneralBlockPanelKernel.h.

3284 {
3285  std::ptrdiff_t l1, l2, l3;
3286  internal::manage_caching_sizes(GetAction, &l1, &l2, &l3);
3287  return l3;
3288 }

◆ lgamma()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_lgamma_op <typename Derived::Scalar>, const Derived> Eigen::lgamma ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise natural logarithm of the gamma function of x
See also
ArrayBase::lgamma
Math functions, class CwiseUnaryOp

◆ log()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_log_op <typename Derived::Scalar>, const Derived> Eigen::log ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise natural logarithm of x
See also
Eigen::log10 , ArrayBase::log
Math functions, class CwiseUnaryOp

◆ log10()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_log10_op <typename Derived::Scalar>, const Derived> Eigen::log10 ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise base 10 logarithm of x
See also
Eigen::log , ArrayBase::log10
Math functions, class CwiseUnaryOp

◆ log1p()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_log1p_op <typename Derived::Scalar>, const Derived> Eigen::log1p ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise natural logarithm of 1 plus the value of x
See also
ArrayBase::log1p
Math functions, class CwiseUnaryOp

◆ log2()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_log2_op <typename Derived::Scalar>, const Derived> Eigen::log2 ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise base 2 logarithm of x
See also
Eigen::log , ArrayBase::log2
Math functions, class CwiseUnaryOp

◆ logistic()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_logistic_op <typename Derived::Scalar>, const Derived> Eigen::logistic ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise logistic function of x
See also
ArrayBase::logistic
Math functions, class CwiseUnaryOp

◆ nbThreads()

int Eigen::nbThreads ( )
inline
Returns
the max number of threads reserved for Eigen
See also
setNbThreads

Definition at line 61 of file Parallelizer.h.

62 {
63  int ret;
65  return ret;
66 }

◆ ndtri()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_ndtri_op <typename Derived::Scalar>, const Derived> Eigen::ndtri ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise inverse normal distribution function of x
See also
ArrayBase::ndtri
Math functions, class CwiseUnaryOp

◆ operator*() [1/9]

template<typename SparseDerived , typename PermutationType >
const Product<Inverse<PermutationType>, SparseDerived, AliasFreeProduct> Eigen::operator* ( const InverseImpl< PermutationType, PermutationStorage > &  tperm,
const SparseMatrixBase< SparseDerived > &  matrix 
)
inline
Returns
the matrix with the inverse permutation applied to the rows.

Definition at line 245 of file SparsePermutation.h.

246  {
247  return Product<Inverse<PermutationType>, SparseDerived, AliasFreeProduct>(tperm.derived(), matrix.derived());
248 }

◆ operator*() [2/9]

template<typename MatrixDerived , typename PermutationDerived >
const Product<MatrixDerived, PermutationDerived, AliasFreeProduct> Eigen::operator* ( const MatrixBase< MatrixDerived > &  matrix,
const PermutationBase< PermutationDerived > &  permutation 
)
Returns
the matrix with the permutation applied to the columns.

Definition at line 517 of file PermutationMatrix.h.

519 {
520  return Product<MatrixDerived, PermutationDerived, AliasFreeProduct>
521  (matrix.derived(), permutation.derived());
522 }

◆ operator*() [3/9]

template<typename MatrixDerived , typename TranspositionsDerived >
const Product<MatrixDerived, TranspositionsDerived, AliasFreeProduct> Eigen::operator* ( const MatrixBase< MatrixDerived > &  matrix,
const TranspositionsBase< TranspositionsDerived > &  transpositions 
)
Returns
the matrix with the transpositions applied to the columns.

Definition at line 315 of file Transpositions.h.

317 {
318  return Product<MatrixDerived, TranspositionsDerived, AliasFreeProduct>
319  (matrix.derived(), transpositions.derived());
320 }

◆ operator*() [4/9]

template<typename OtherDerived , typename VectorsType , typename CoeffsType , int Side>
internal::matrix_type_times_scalar_type<typename VectorsType::Scalar,OtherDerived>::Type Eigen::operator* ( const MatrixBase< OtherDerived > &  other,
const HouseholderSequence< VectorsType, CoeffsType, Side > &  h 
)

Computes the product of a matrix with a Householder sequence.

Parameters
[in]otherMatrix being multiplied.
[in]hHouseholderSequence being multiplied.
Returns
Expression object representing the product.

This function computes \( MH \) where \( M \) is the matrix other and \( H \) is the Householder sequence represented by h.

Definition at line 528 of file HouseholderSequence.h.

529 {
531  res(other.template cast<typename internal::matrix_type_times_scalar_type<typename VectorsType::Scalar,OtherDerived>::ResultScalar>());
532  h.applyThisOnTheRight(res);
533  return res;
534 }
CastXpr< NewType >::Type cast() const
cout<< "Here is the matrix m:"<< endl<< m<< endl;Matrix< ptrdiff_t, 3, 1 > res

◆ operator*() [5/9]

template<typename SparseDerived , typename PermDerived >
const Product<PermDerived, SparseDerived, AliasFreeProduct> Eigen::operator* ( const PermutationBase< PermDerived > &  perm,
const SparseMatrixBase< SparseDerived > &  matrix 
)
inline
Returns
the matrix with the permutation applied to the rows

Definition at line 229 of file SparsePermutation.h.

230  {
231  return Product<PermDerived, SparseDerived, AliasFreeProduct>(perm.derived(), matrix.derived());
232 }

◆ operator*() [6/9]

template<typename PermutationDerived , typename MatrixDerived >
const Product<PermutationDerived, MatrixDerived, AliasFreeProduct> Eigen::operator* ( const PermutationBase< PermutationDerived > &  permutation,
const MatrixBase< MatrixDerived > &  matrix 
)
Returns
the matrix with the permutation applied to the rows.

Definition at line 529 of file PermutationMatrix.h.

531 {
532  return Product<PermutationDerived, MatrixDerived, AliasFreeProduct>
533  (permutation.derived(), matrix.derived());
534 }

◆ operator*() [7/9]

template<typename SparseDerived , typename PermutationType >
const Product<SparseDerived, Inverse<PermutationType>, AliasFreeProduct> Eigen::operator* ( const SparseMatrixBase< SparseDerived > &  matrix,
const InverseImpl< PermutationType, PermutationStorage > &  tperm 
)
inline
Returns
the matrix with the inverse permutation applied to the columns.

Definition at line 237 of file SparsePermutation.h.

238  {
239  return Product<SparseDerived, Inverse<PermutationType>, AliasFreeProduct>(matrix.derived(), tperm.derived());
240 }

◆ operator*() [8/9]

template<typename SparseDerived , typename PermDerived >
const Product<SparseDerived, PermDerived, AliasFreeProduct> Eigen::operator* ( const SparseMatrixBase< SparseDerived > &  matrix,
const PermutationBase< PermDerived > &  perm 
)
inline
Returns
the matrix with the permutation applied to the columns

Definition at line 221 of file SparsePermutation.h.

222  {
223  return Product<SparseDerived, PermDerived, AliasFreeProduct>(matrix.derived(), perm.derived());
224 }

◆ operator*() [9/9]

template<typename TranspositionsDerived , typename MatrixDerived >
const Product<TranspositionsDerived, MatrixDerived, AliasFreeProduct> Eigen::operator* ( const TranspositionsBase< TranspositionsDerived > &  transpositions,
const MatrixBase< MatrixDerived > &  matrix 
)
Returns
the matrix with the transpositions applied to the rows.

Definition at line 327 of file Transpositions.h.

329 {
330  return Product<TranspositionsDerived, MatrixDerived, AliasFreeProduct>
331  (transpositions.derived(), matrix.derived());
332 }

◆ operator+() [1/2]

template<typename DenseDerived , typename SparseDerived >
const CwiseBinaryOp<internal::scalar_sum_op<typename DenseDerived::Scalar,typename SparseDerived::Scalar>, const DenseDerived, const SparseDerived> Eigen::operator+ ( const MatrixBase< DenseDerived > &  a,
const SparseMatrixBase< SparseDerived > &  b 
)
inline

Definition at line 972 of file SparseCwiseBinaryOp.h.

973 {
974  return CwiseBinaryOp<internal::scalar_sum_op<typename DenseDerived::Scalar,typename SparseDerived::Scalar>, const DenseDerived, const SparseDerived>(a.derived(), b.derived());
975 }
Array< int, 3, 1 > b

◆ operator+() [2/2]

template<typename SparseDerived , typename DenseDerived >
const CwiseBinaryOp<internal::scalar_sum_op<typename SparseDerived::Scalar,typename DenseDerived::Scalar>, const SparseDerived, const DenseDerived> Eigen::operator+ ( const SparseMatrixBase< SparseDerived > &  a,
const MatrixBase< DenseDerived > &  b 
)
inline

Definition at line 979 of file SparseCwiseBinaryOp.h.

980 {
981  return CwiseBinaryOp<internal::scalar_sum_op<typename SparseDerived::Scalar,typename DenseDerived::Scalar>, const SparseDerived, const DenseDerived>(a.derived(), b.derived());
982 }

◆ operator-() [1/2]

template<typename DenseDerived , typename SparseDerived >
const CwiseBinaryOp<internal::scalar_difference_op<typename DenseDerived::Scalar,typename SparseDerived::Scalar>, const DenseDerived, const SparseDerived> Eigen::operator- ( const MatrixBase< DenseDerived > &  a,
const SparseMatrixBase< SparseDerived > &  b 
)
inline

Definition at line 986 of file SparseCwiseBinaryOp.h.

987 {
988  return CwiseBinaryOp<internal::scalar_difference_op<typename DenseDerived::Scalar,typename SparseDerived::Scalar>, const DenseDerived, const SparseDerived>(a.derived(), b.derived());
989 }

◆ operator-() [2/2]

template<typename SparseDerived , typename DenseDerived >
const CwiseBinaryOp<internal::scalar_difference_op<typename SparseDerived::Scalar,typename DenseDerived::Scalar>, const SparseDerived, const DenseDerived> Eigen::operator- ( const SparseMatrixBase< SparseDerived > &  a,
const MatrixBase< DenseDerived > &  b 
)
inline

Definition at line 993 of file SparseCwiseBinaryOp.h.

994 {
995  return CwiseBinaryOp<internal::scalar_difference_op<typename SparseDerived::Scalar,typename DenseDerived::Scalar>, const SparseDerived, const DenseDerived>(a.derived(), b.derived());
996 }

◆ operator<<()

template<typename Derived >
std::ostream& Eigen::operator<< ( std::ostream &  s,
const DiagonalBase< Derived > &  m 
)

Definition at line 257 of file IO.h.

257  {
258  return internal::print_matrix(s, m.derived(), EIGEN_DEFAULT_IO_FORMAT);
259 }
Matrix3f m
#define EIGEN_DEFAULT_IO_FORMAT
Definition: Macros.h:1065
std::ostream & print_matrix(std::ostream &s, const Derived &_m, const IOFormat &fmt)
Definition: IO.h:133

◆ real()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_real_op <typename Derived::Scalar>, const Derived> Eigen::real ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise real part of x
See also
ArrayBase::real
Math functions, class CwiseUnaryOp

◆ rint()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_rint_op <typename Derived::Scalar>, const Derived> Eigen::rint ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise nearest integer of x
See also
Eigen::floor , Eigen::ceil , ArrayBase::round
Math functions, class CwiseUnaryOp

◆ round()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_round_op <typename Derived::Scalar>, const Derived> Eigen::round ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise nearest integer of x
See also
Eigen::floor , Eigen::ceil , ArrayBase::round
Math functions, class CwiseUnaryOp

◆ rsqrt()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_rsqrt_op <typename Derived::Scalar>, const Derived> Eigen::rsqrt ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise reciprocal square root of x
See also
ArrayBase::rsqrt
Math functions, class CwiseUnaryOp

◆ Scaling() [1/7]

template<typename Derived >
const DiagonalWrapper<const Derived> Eigen::Scaling ( const MatrixBase< Derived > &  coeffs)
inline

Constructs an axis aligned scaling expression from vector expression coeffs This is an alias for coeffs.asDiagonal()

Definition at line 162 of file Scaling.h.

163 { return coeffs.asDiagonal(); }

◆ Scaling() [2/7]

template<typename Scalar >
DiagonalMatrix<Scalar,2> Eigen::Scaling ( const Scalar &  sx,
const Scalar &  sy 
)
inline

Constructs a 2D axis aligned scaling

Definition at line 151 of file Scaling.h.

152 { return DiagonalMatrix<Scalar,2>(sx, sy); }

◆ Scaling() [3/7]

template<typename Scalar >
DiagonalMatrix<Scalar,3> Eigen::Scaling ( const Scalar &  sx,
const Scalar &  sy,
const Scalar &  sz 
)
inline

Constructs a 3D axis aligned scaling

Definition at line 155 of file Scaling.h.

156 { return DiagonalMatrix<Scalar,3>(sx, sy, sz); }

◆ Scaling() [4/7]

template<typename RealScalar >
UniformScaling<std::complex<RealScalar> > Eigen::Scaling ( const std::complex< RealScalar > &  s)
inline

Constructs a uniform scaling from scale factor s

Definition at line 146 of file Scaling.h.

147 { return UniformScaling<std::complex<RealScalar> >(s); }

◆ Scaling() [5/7]

UniformScaling<double> Eigen::Scaling ( double  s)
inline

Constructs a uniform scaling from scale factor s

Definition at line 143 of file Scaling.h.

143 { return UniformScaling<double>(s); }

◆ Scaling() [6/7]

UniformScaling<float> Eigen::Scaling ( float  s)
inline

Constructs a uniform scaling from scale factor s

Definition at line 141 of file Scaling.h.

141 { return UniformScaling<float>(s); }

◆ Scaling() [7/7]

template<typename Derived >
DiagonalWrapper<const Derived>::PlainObject Eigen::Scaling ( MatrixBase< Derived > &&  coeffs)
inline

Constructs an axis aligned scaling expression from vector coeffs when passed as an rvalue reference

Definition at line 167 of file Scaling.h.

168 { return typename DiagonalWrapper<const Derived>::PlainObject(std::move(coeffs.derived())); }

◆ seq() [1/2]

template<typename FirstType , typename LastType >
auto Eigen::seq ( FirstType  f,
LastType  l 
)
Returns
an ArithmeticSequence starting at f, up (or down) to l, and unit increment

It is essentially an alias to:

seqN(f,l-f+1);
ArithmeticSequence< typename internal::cleanup_index_type< FirstType >::type, typename internal::cleanup_index_type< SizeType >::type, typename internal::cleanup_seq_incr< IncrType >::type > seqN(FirstType first, SizeType size, IncrType incr)
See also
seqN(FirstType,SizeType), seq(FirstType,LastType,IncrType)

◆ seq() [2/2]

template<typename FirstType , typename LastType , typename IncrType >
auto Eigen::seq ( FirstType  f,
LastType  l,
IncrType  incr 
)
Returns
an ArithmeticSequence starting at f, up (or down) to l, and with positive (or negative) increment incr

It is essentially an alias to:

seqN(f, (l-f+incr)/incr, incr);
See also
seqN(FirstType,SizeType,IncrType), seq(FirstType,LastType)

◆ seqN() [1/2]

template<typename FirstType , typename SizeType >
ArithmeticSequence<typename internal::cleanup_index_type<FirstType>::type,typename internal::cleanup_index_type<SizeType>::type > Eigen::seqN ( FirstType  first,
SizeType  size 
)
Returns
an ArithmeticSequence starting at first, of length size, and unit increment
See also
seqN(FirstType,SizeType,IncrType), seq(FirstType,LastType)

Definition at line 108 of file ArithmeticSequence.h.

108  {
109  return ArithmeticSequence<typename internal::cleanup_index_type<FirstType>::type,typename internal::cleanup_index_type<SizeType>::type>(first,size);
110 }
EIGEN_CONSTEXPR Index first(const T &x) EIGEN_NOEXCEPT

◆ seqN() [2/2]

template<typename FirstType , typename SizeType , typename IncrType >
ArithmeticSequence< typename internal::cleanup_index_type< FirstType >::type, typename internal::cleanup_index_type< SizeType >::type, typename internal::cleanup_seq_incr< IncrType >::type > Eigen::seqN ( FirstType  first,
SizeType  size,
IncrType  incr 
)
Returns
an ArithmeticSequence starting at first, of length size, and increment incr
See also
seqN(FirstType,SizeType), seq(FirstType,LastType,IncrType)

Definition at line 99 of file ArithmeticSequence.h.

99  {
100  return ArithmeticSequence<typename internal::cleanup_index_type<FirstType>::type,typename internal::cleanup_index_type<SizeType>::type,typename internal::cleanup_seq_incr<IncrType>::type>(first,size,incr);
101 }

◆ serialize()

template<typename... Args>
uint8_t* Eigen::serialize ( uint8_t *  dest,
uint8_t *  end,
const Args &...  args 
)
inline

Serialize a set of values to the byte buffer.

Parameters
destoutput byte buffer; if this is nullptr, does nothing.
endthe end of the output byte buffer.
args... arguments to serialize in sequence.
Returns
the next address after all serialized values.

Definition at line 200 of file Serializer.h.

200  {
201  return internal::serialize_impl<sizeof...(args), Args...>::serialize(dest, end, args...);
202 }
uint8_t * serialize(uint8_t *dest, uint8_t *end, const Args &... args)
Definition: Serializer.h:200

◆ serialize_size()

template<typename... Args>
size_t Eigen::serialize_size ( const Args &...  args)
inline

Determine the buffer size required to serialize a set of values.

Parameters
args... arguments to serialize in sequence.
Returns
the total size of the required buffer.

Definition at line 186 of file Serializer.h.

186  {
187  return internal::serialize_impl<sizeof...(args), Args...>::serialize_size(args...);
188 }
size_t serialize_size(const Args &... args)
Definition: Serializer.h:186

◆ setCpuCacheSizes()

void Eigen::setCpuCacheSizes ( std::ptrdiff_t  l1,
std::ptrdiff_t  l2,
std::ptrdiff_t  l3 
)
inline

Set the cpu L1 and L2 cache sizes (in bytes). These values are use to adjust the size of the blocks for the algorithms working per blocks.

See also
computeProductBlockingSizes

Definition at line 3295 of file products/GeneralBlockPanelKernel.h.

3296 {
3297  internal::manage_caching_sizes(SetAction, &l1, &l2, &l3);
3298 }

◆ setNbThreads()

void Eigen::setNbThreads ( int  v)
inline

Sets the max number of threads reserved for Eigen

See also
nbThreads

Definition at line 70 of file Parallelizer.h.

71 {
73 }
Array< int, Dynamic, 1 > v

◆ sign()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_sign_op <typename Derived::Scalar>, const Derived> Eigen::sign ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise sign (or 0) of x
See also
ArrayBase::sign
Math functions, class CwiseUnaryOp

◆ SimdInstructionSetsInUse()

static const char* Eigen::SimdInstructionSetsInUse ( void  )
inlinestatic

Definition at line 472 of file ConfigureVectorization.h.

472  {
473 #if defined(EIGEN_VECTORIZE_AVX512)
474  return "AVX512, FMA, AVX2, AVX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2";
475 #elif defined(EIGEN_VECTORIZE_AVX)
476  return "AVX SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2";
477 #elif defined(EIGEN_VECTORIZE_SSE4_2)
478  return "SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2";
479 #elif defined(EIGEN_VECTORIZE_SSE4_1)
480  return "SSE, SSE2, SSE3, SSSE3, SSE4.1";
481 #elif defined(EIGEN_VECTORIZE_SSSE3)
482  return "SSE, SSE2, SSE3, SSSE3";
483 #elif defined(EIGEN_VECTORIZE_SSE3)
484  return "SSE, SSE2, SSE3";
485 #elif defined(EIGEN_VECTORIZE_SSE2)
486  return "SSE, SSE2";
487 #elif defined(EIGEN_VECTORIZE_ALTIVEC)
488  return "AltiVec";
489 #elif defined(EIGEN_VECTORIZE_VSX)
490  return "VSX";
491 #elif defined(EIGEN_VECTORIZE_NEON)
492  return "ARM NEON";
493 #elif defined(EIGEN_VECTORIZE_SVE)
494  return "ARM SVE";
495 #elif defined(EIGEN_VECTORIZE_ZVECTOR)
496  return "S390X ZVECTOR";
497 #elif defined(EIGEN_VECTORIZE_MSA)
498  return "MIPS MSA";
499 #else
500  return "None";
501 #endif
502 }

◆ sin()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_sin_op <typename Derived::Scalar>, const Derived> Eigen::sin ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise sine of x
See also
ArrayBase::sin
Math functions, class CwiseUnaryOp

◆ sinh()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_sinh_op <typename Derived::Scalar>, const Derived> Eigen::sinh ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise hyperbolic sine of x
See also
ArrayBase::sinh
Math functions, class CwiseUnaryOp

◆ sqrt()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_sqrt_op <typename Derived::Scalar>, const Derived> Eigen::sqrt ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise square root of x
See also
ArrayBase::sqrt , MatrixBase::cwiseSqrt
Math functions, class CwiseUnaryOp

◆ square()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_square_op <typename Derived::Scalar>, const Derived> Eigen::square ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise square (power 2) of x
See also
Eigen::abs2 , Eigen::pow , ArrayBase::square
Math functions, class CwiseUnaryOp

◆ tan()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_tan_op <typename Derived::Scalar>, const Derived> Eigen::tan ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise tangent of x
See also
ArrayBase::tan
Math functions, class CwiseUnaryOp

◆ tanh()

template<typename Derived >
const Eigen::CwiseUnaryOp<Eigen::internal:: scalar_tanh_op <typename Derived::Scalar>, const Derived> Eigen::tanh ( const Eigen::ArrayBase< Derived > &  x)
inline
Returns
an expression of the coefficient-wise hyperbolic tangent of x
See also
ArrayBase::tanh
Math functions, class CwiseUnaryOp

◆ umfpack_defaults() [1/4]

void Eigen::umfpack_defaults ( double  control[UMFPACK_CONTROL],
double  ,
int   
)
inline

Definition at line 33 of file UmfPackSupport.h.

34 { umfpack_di_defaults(control); }

◆ umfpack_defaults() [2/4]

void Eigen::umfpack_defaults ( double  control[UMFPACK_CONTROL],
double  ,
SuiteSparse_long   
)
inline

Definition at line 39 of file UmfPackSupport.h.

40 { umfpack_dl_defaults(control); }

◆ umfpack_defaults() [3/4]

void Eigen::umfpack_defaults ( double  control[UMFPACK_CONTROL],
std::complex< double >  ,
int   
)
inline

Definition at line 36 of file UmfPackSupport.h.

37 { umfpack_zi_defaults(control); }

◆ umfpack_defaults() [4/4]

void Eigen::umfpack_defaults ( double  control[UMFPACK_CONTROL],
std::complex< double >  ,
SuiteSparse_long   
)
inline

Definition at line 42 of file UmfPackSupport.h.

43 { umfpack_zl_defaults(control); }

◆ umfpack_free_numeric() [1/4]

void Eigen::umfpack_free_numeric ( void **  Numeric,
double  ,
int   
)
inline

Definition at line 85 of file UmfPackSupport.h.

86 { umfpack_di_free_numeric(Numeric); *Numeric = 0; }

◆ umfpack_free_numeric() [2/4]

void Eigen::umfpack_free_numeric ( void **  Numeric,
double  ,
SuiteSparse_long   
)
inline

Definition at line 91 of file UmfPackSupport.h.

92 { umfpack_dl_free_numeric(Numeric); *Numeric = 0; }

◆ umfpack_free_numeric() [3/4]

void Eigen::umfpack_free_numeric ( void **  Numeric,
std::complex< double >  ,
int   
)
inline

Definition at line 88 of file UmfPackSupport.h.

89 { umfpack_zi_free_numeric(Numeric); *Numeric = 0; }

◆ umfpack_free_numeric() [4/4]

void Eigen::umfpack_free_numeric ( void **  Numeric,
std::complex< double >  ,
SuiteSparse_long   
)
inline

Definition at line 94 of file UmfPackSupport.h.

95 { umfpack_zl_free_numeric(Numeric); *Numeric = 0; }

◆ umfpack_free_symbolic() [1/4]

void Eigen::umfpack_free_symbolic ( void **  Symbolic,
double  ,
int   
)
inline

Definition at line 98 of file UmfPackSupport.h.

99 { umfpack_di_free_symbolic(Symbolic); *Symbolic = 0; }

◆ umfpack_free_symbolic() [2/4]

void Eigen::umfpack_free_symbolic ( void **  Symbolic,
double  ,
SuiteSparse_long   
)
inline

Definition at line 104 of file UmfPackSupport.h.

105 { umfpack_dl_free_symbolic(Symbolic); *Symbolic = 0; }

◆ umfpack_free_symbolic() [3/4]

void Eigen::umfpack_free_symbolic ( void **  Symbolic,
std::complex< double >  ,
int   
)
inline

Definition at line 101 of file UmfPackSupport.h.

102 { umfpack_zi_free_symbolic(Symbolic); *Symbolic = 0; }

◆ umfpack_free_symbolic() [4/4]

void Eigen::umfpack_free_symbolic ( void **  Symbolic,
std::complex< double >  ,
SuiteSparse_long   
)
inline

Definition at line 107 of file UmfPackSupport.h.

108 { umfpack_zl_free_symbolic(Symbolic); *Symbolic = 0; }

◆ umfpack_get_determinant() [1/4]

int Eigen::umfpack_get_determinant ( double *  Mx,
double *  Ex,
void *  NumericHandle,
double  User_Info[UMFPACK_INFO],
int   
)
inline

Definition at line 251 of file UmfPackSupport.h.

252 {
253  return umfpack_di_get_determinant(Mx,Ex,NumericHandle,User_Info);
254 }

◆ umfpack_get_determinant() [2/4]

SuiteSparse_long Eigen::umfpack_get_determinant ( double *  Mx,
double *  Ex,
void *  NumericHandle,
double  User_Info[UMFPACK_INFO],
SuiteSparse_long   
)
inline

Definition at line 262 of file UmfPackSupport.h.

263 {
264  return umfpack_dl_get_determinant(Mx,Ex,NumericHandle,User_Info);
265 }

◆ umfpack_get_determinant() [3/4]

int Eigen::umfpack_get_determinant ( std::complex< double > *  Mx,
double *  Ex,
void *  NumericHandle,
double  User_Info[UMFPACK_INFO],
int   
)
inline

Definition at line 256 of file UmfPackSupport.h.

257 {
258  double& mx_real = numext::real_ref(*Mx);
259  return umfpack_zi_get_determinant(&mx_real,0,Ex,NumericHandle,User_Info);
260 }

◆ umfpack_get_determinant() [4/4]

SuiteSparse_long Eigen::umfpack_get_determinant ( std::complex< double > *  Mx,
double *  Ex,
void *  NumericHandle,
double  User_Info[UMFPACK_INFO],
SuiteSparse_long   
)
inline

Definition at line 267 of file UmfPackSupport.h.

268 {
269  double& mx_real = numext::real_ref(*Mx);
270  return umfpack_zl_get_determinant(&mx_real,0,Ex,NumericHandle,User_Info);
271 }

◆ umfpack_get_lunz() [1/4]

int Eigen::umfpack_get_lunz ( int *  lnz,
int *  unz,
int *  n_row,
int *  n_col,
int *  nz_udiag,
void *  Numeric,
double   
)
inline

Definition at line 196 of file UmfPackSupport.h.

197 {
198  return umfpack_di_get_lunz(lnz,unz,n_row,n_col,nz_udiag,Numeric);
199 }

◆ umfpack_get_lunz() [2/4]

int Eigen::umfpack_get_lunz ( int *  lnz,
int *  unz,
int *  n_row,
int *  n_col,
int *  nz_udiag,
void *  Numeric,
std::complex< double >   
)
inline

Definition at line 201 of file UmfPackSupport.h.

202 {
203  return umfpack_zi_get_lunz(lnz,unz,n_row,n_col,nz_udiag,Numeric);
204 }

◆ umfpack_get_lunz() [3/4]

SuiteSparse_long Eigen::umfpack_get_lunz ( SuiteSparse_long *  lnz,
SuiteSparse_long *  unz,
SuiteSparse_long *  n_row,
SuiteSparse_long *  n_col,
SuiteSparse_long *  nz_udiag,
void *  Numeric,
double   
)
inline

Definition at line 206 of file UmfPackSupport.h.

208 {
209  return umfpack_dl_get_lunz(lnz,unz,n_row,n_col,nz_udiag,Numeric);
210 }

◆ umfpack_get_lunz() [4/4]

SuiteSparse_long Eigen::umfpack_get_lunz ( SuiteSparse_long *  lnz,
SuiteSparse_long *  unz,
SuiteSparse_long *  n_row,
SuiteSparse_long *  n_col,
SuiteSparse_long *  nz_udiag,
void *  Numeric,
std::complex< double >   
)
inline

Definition at line 212 of file UmfPackSupport.h.

214 {
215  return umfpack_zl_get_lunz(lnz,unz,n_row,n_col,nz_udiag,Numeric);
216 }

◆ umfpack_get_numeric() [1/4]

int Eigen::umfpack_get_numeric ( int  Lp[],
int  Lj[],
double  Lx[],
int  Up[],
int  Ui[],
double  Ux[],
int  P[],
int  Q[],
double  Dx[],
int *  do_recip,
double  Rs[],
void *  Numeric 
)
inline

Definition at line 219 of file UmfPackSupport.h.

221 {
222  return umfpack_di_get_numeric(Lp,Lj,Lx,Up,Ui,Ux,P,Q,Dx,do_recip,Rs,Numeric);
223 }
Projective3d P(Matrix4d::Random())
MatrixXf Q

◆ umfpack_get_numeric() [2/4]

int Eigen::umfpack_get_numeric ( int  Lp[],
int  Lj[],
std::complex< double >  Lx[],
int  Up[],
int  Ui[],
std::complex< double >  Ux[],
int  P[],
int  Q[],
std::complex< double >  Dx[],
int *  do_recip,
double  Rs[],
void *  Numeric 
)
inline

Definition at line 225 of file UmfPackSupport.h.

227 {
228  double& lx0_real = numext::real_ref(Lx[0]);
229  double& ux0_real = numext::real_ref(Ux[0]);
230  double& dx0_real = numext::real_ref(Dx[0]);
231  return umfpack_zi_get_numeric(Lp,Lj,Lx?&lx0_real:0,0,Up,Ui,Ux?&ux0_real:0,0,P,Q,
232  Dx?&dx0_real:0,0,do_recip,Rs,Numeric);
233 }

◆ umfpack_get_numeric() [3/4]

SuiteSparse_long Eigen::umfpack_get_numeric ( SuiteSparse_long  Lp[],
SuiteSparse_long  Lj[],
double  Lx[],
SuiteSparse_long  Up[],
SuiteSparse_long  Ui[],
double  Ux[],
SuiteSparse_long  P[],
SuiteSparse_long  Q[],
double  Dx[],
SuiteSparse_long *  do_recip,
double  Rs[],
void *  Numeric 
)
inline

Definition at line 234 of file UmfPackSupport.h.

236 {
237  return umfpack_dl_get_numeric(Lp,Lj,Lx,Up,Ui,Ux,P,Q,Dx,do_recip,Rs,Numeric);
238 }

◆ umfpack_get_numeric() [4/4]

SuiteSparse_long Eigen::umfpack_get_numeric ( SuiteSparse_long  Lp[],
SuiteSparse_long  Lj[],
std::complex< double >  Lx[],
SuiteSparse_long  Up[],
SuiteSparse_long  Ui[],
std::complex< double >  Ux[],
SuiteSparse_long  P[],
SuiteSparse_long  Q[],
std::complex< double >  Dx[],
SuiteSparse_long *  do_recip,
double  Rs[],
void *  Numeric 
)
inline

Definition at line 240 of file UmfPackSupport.h.

242 {
243  double& lx0_real = numext::real_ref(Lx[0]);
244  double& ux0_real = numext::real_ref(Ux[0]);
245  double& dx0_real = numext::real_ref(Dx[0]);
246  return umfpack_zl_get_numeric(Lp,Lj,Lx?&lx0_real:0,0,Up,Ui,Ux?&ux0_real:0,0,P,Q,
247  Dx?&dx0_real:0,0,do_recip,Rs,Numeric);
248 }

◆ umfpack_numeric() [1/4]

int Eigen::umfpack_numeric ( const int  Ap[],
const int  Ai[],
const double  Ax[],
void *  Symbolic,
void **  Numeric,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 139 of file UmfPackSupport.h.

142 {
143  return umfpack_di_numeric(Ap,Ai,Ax,Symbolic,Numeric,Control,Info);
144 }

◆ umfpack_numeric() [2/4]

int Eigen::umfpack_numeric ( const int  Ap[],
const int  Ai[],
const std::complex< double >  Ax[],
void *  Symbolic,
void **  Numeric,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 146 of file UmfPackSupport.h.

149 {
150  return umfpack_zi_numeric(Ap,Ai,&numext::real_ref(Ax[0]),0,Symbolic,Numeric,Control,Info);
151 }

◆ umfpack_numeric() [3/4]

SuiteSparse_long Eigen::umfpack_numeric ( const SuiteSparse_long  Ap[],
const SuiteSparse_long  Ai[],
const double  Ax[],
void *  Symbolic,
void **  Numeric,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 152 of file UmfPackSupport.h.

155 {
156  return umfpack_dl_numeric(Ap,Ai,Ax,Symbolic,Numeric,Control,Info);
157 }

◆ umfpack_numeric() [4/4]

SuiteSparse_long Eigen::umfpack_numeric ( const SuiteSparse_long  Ap[],
const SuiteSparse_long  Ai[],
const std::complex< double >  Ax[],
void *  Symbolic,
void **  Numeric,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 159 of file UmfPackSupport.h.

162 {
163  return umfpack_zl_numeric(Ap,Ai,&numext::real_ref(Ax[0]),0,Symbolic,Numeric,Control,Info);
164 }

◆ umfpack_report_control() [1/4]

void Eigen::umfpack_report_control ( double  control[UMFPACK_CONTROL],
double  ,
int   
)
inline

Definition at line 72 of file UmfPackSupport.h.

73 { umfpack_di_report_control(control);}

◆ umfpack_report_control() [2/4]

void Eigen::umfpack_report_control ( double  control[UMFPACK_CONTROL],
double  ,
SuiteSparse_long   
)
inline

Definition at line 78 of file UmfPackSupport.h.

79 { umfpack_dl_report_control(control);}

◆ umfpack_report_control() [3/4]

void Eigen::umfpack_report_control ( double  control[UMFPACK_CONTROL],
std::complex< double >  ,
int   
)
inline

Definition at line 75 of file UmfPackSupport.h.

76 { umfpack_zi_report_control(control);}

◆ umfpack_report_control() [4/4]

void Eigen::umfpack_report_control ( double  control[UMFPACK_CONTROL],
std::complex< double >  ,
SuiteSparse_long   
)
inline

Definition at line 81 of file UmfPackSupport.h.

82 { umfpack_zl_report_control(control);}

◆ umfpack_report_info() [1/4]

void Eigen::umfpack_report_info ( double  control[UMFPACK_CONTROL],
double  info[UMFPACK_INFO],
double  ,
int   
)
inline

Definition at line 46 of file UmfPackSupport.h.

47 { umfpack_di_report_info(control, info);}

◆ umfpack_report_info() [2/4]

void Eigen::umfpack_report_info ( double  control[UMFPACK_CONTROL],
double  info[UMFPACK_INFO],
double  ,
SuiteSparse_long   
)
inline

Definition at line 52 of file UmfPackSupport.h.

53 { umfpack_dl_report_info(control, info);}

◆ umfpack_report_info() [3/4]

void Eigen::umfpack_report_info ( double  control[UMFPACK_CONTROL],
double  info[UMFPACK_INFO],
std::complex< double >  ,
int   
)
inline

Definition at line 49 of file UmfPackSupport.h.

50 { umfpack_zi_report_info(control, info);}

◆ umfpack_report_info() [4/4]

void Eigen::umfpack_report_info ( double  control[UMFPACK_CONTROL],
double  info[UMFPACK_INFO],
std::complex< double >  ,
SuiteSparse_long   
)
inline

Definition at line 55 of file UmfPackSupport.h.

56 { umfpack_zl_report_info(control, info);}

◆ umfpack_report_status() [1/4]

void Eigen::umfpack_report_status ( double  control[UMFPACK_CONTROL],
int  status,
double  ,
int   
)
inline

Definition at line 59 of file UmfPackSupport.h.

60 { umfpack_di_report_status(control, status);}

◆ umfpack_report_status() [2/4]

void Eigen::umfpack_report_status ( double  control[UMFPACK_CONTROL],
int  status,
double  ,
SuiteSparse_long   
)
inline

Definition at line 65 of file UmfPackSupport.h.

66 { umfpack_dl_report_status(control, status);}

◆ umfpack_report_status() [3/4]

void Eigen::umfpack_report_status ( double  control[UMFPACK_CONTROL],
int  status,
std::complex< double >  ,
int   
)
inline

Definition at line 62 of file UmfPackSupport.h.

63 { umfpack_zi_report_status(control, status);}

◆ umfpack_report_status() [4/4]

void Eigen::umfpack_report_status ( double  control[UMFPACK_CONTROL],
int  status,
std::complex< double >  ,
SuiteSparse_long   
)
inline

Definition at line 68 of file UmfPackSupport.h.

69 { umfpack_zl_report_status(control, status);}

◆ umfpack_solve() [1/4]

int Eigen::umfpack_solve ( int  sys,
const int  Ap[],
const int  Ai[],
const double  Ax[],
double  X[],
const double  B[],
void *  Numeric,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 167 of file UmfPackSupport.h.

170 {
171  return umfpack_di_solve(sys,Ap,Ai,Ax,X,B,Numeric,Control,Info);
172 }

◆ umfpack_solve() [2/4]

int Eigen::umfpack_solve ( int  sys,
const int  Ap[],
const int  Ai[],
const std::complex< double >  Ax[],
std::complex< double >  X[],
const std::complex< double >  B[],
void *  Numeric,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 174 of file UmfPackSupport.h.

177 {
178  return umfpack_zi_solve(sys,Ap,Ai,&numext::real_ref(Ax[0]),0,&numext::real_ref(X[0]),0,&numext::real_ref(B[0]),0,Numeric,Control,Info);
179 }

◆ umfpack_solve() [3/4]

SuiteSparse_long Eigen::umfpack_solve ( int  sys,
const SuiteSparse_long  Ap[],
const SuiteSparse_long  Ai[],
const double  Ax[],
double  X[],
const double  B[],
void *  Numeric,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 181 of file UmfPackSupport.h.

184 {
185  return umfpack_dl_solve(sys,Ap,Ai,Ax,X,B,Numeric,Control,Info);
186 }

◆ umfpack_solve() [4/4]

SuiteSparse_long Eigen::umfpack_solve ( int  sys,
const SuiteSparse_long  Ap[],
const SuiteSparse_long  Ai[],
const std::complex< double >  Ax[],
std::complex< double >  X[],
const std::complex< double >  B[],
void *  Numeric,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 188 of file UmfPackSupport.h.

191 {
192  return umfpack_zl_solve(sys,Ap,Ai,&numext::real_ref(Ax[0]),0,&numext::real_ref(X[0]),0,&numext::real_ref(B[0]),0,Numeric,Control,Info);
193 }

◆ umfpack_symbolic() [1/4]

int Eigen::umfpack_symbolic ( int  n_row,
int  n_col,
const int  Ap[],
const int  Ai[],
const double  Ax[],
void **  Symbolic,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 111 of file UmfPackSupport.h.

114 {
115  return umfpack_di_symbolic(n_row,n_col,Ap,Ai,Ax,Symbolic,Control,Info);
116 }

◆ umfpack_symbolic() [2/4]

int Eigen::umfpack_symbolic ( int  n_row,
int  n_col,
const int  Ap[],
const int  Ai[],
const std::complex< double >  Ax[],
void **  Symbolic,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 118 of file UmfPackSupport.h.

121 {
122  return umfpack_zi_symbolic(n_row,n_col,Ap,Ai,&numext::real_ref(Ax[0]),0,Symbolic,Control,Info);
123 }

◆ umfpack_symbolic() [3/4]

SuiteSparse_long Eigen::umfpack_symbolic ( SuiteSparse_long  n_row,
SuiteSparse_long  n_col,
const SuiteSparse_long  Ap[],
const SuiteSparse_long  Ai[],
const double  Ax[],
void **  Symbolic,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 124 of file UmfPackSupport.h.

127 {
128  return umfpack_dl_symbolic(n_row,n_col,Ap,Ai,Ax,Symbolic,Control,Info);
129 }

◆ umfpack_symbolic() [4/4]

SuiteSparse_long Eigen::umfpack_symbolic ( SuiteSparse_long  n_row,
SuiteSparse_long  n_col,
const SuiteSparse_long  Ap[],
const SuiteSparse_long  Ai[],
const std::complex< double >  Ax[],
void **  Symbolic,
const double  Control[UMFPACK_CONTROL],
double  Info[UMFPACK_INFO] 
)
inline

Definition at line 131 of file UmfPackSupport.h.

134 {
135  return umfpack_zl_symbolic(n_row,n_col,Ap,Ai,&numext::real_ref(Ax[0]),0,Symbolic,Control,Info);
136 }

◆ viewAsCholmod() [1/5]

template<typename Scalar_ , int Options_, typename Index_ >
const cholmod_sparse Eigen::viewAsCholmod ( const SparseMatrix< Scalar_, Options_, Index_ > &  mat)

Definition at line 107 of file CholmodSupport.h.

108 {
109  cholmod_sparse res = viewAsCholmod(Ref<SparseMatrix<Scalar_,Options_,Index_> >(mat.const_cast_derived()));
110  return res;
111 }
cholmod_dense viewAsCholmod(MatrixBase< Derived > &mat)

◆ viewAsCholmod() [2/5]

template<typename Scalar_ , int Options_, typename Index_ , unsigned int UpLo>
cholmod_sparse Eigen::viewAsCholmod ( const SparseSelfAdjointView< const SparseMatrix< Scalar_, Options_, Index_ >, UpLo > &  mat)

Returns a view of the Eigen sparse matrix mat as Cholmod sparse matrix. The data are not copied but shared.

Definition at line 123 of file CholmodSupport.h.

124 {
125  cholmod_sparse res = viewAsCholmod(Ref<SparseMatrix<Scalar_,Options_,Index_> >(mat.matrix().const_cast_derived()));
126 
127  if(UpLo==Upper) res.stype = 1;
128  if(UpLo==Lower) res.stype = -1;
129  // swap stype for rowmajor matrices (only works for real matrices)
130  EIGEN_STATIC_ASSERT((Options_ & RowMajorBit) == 0 || NumTraits<Scalar_>::IsComplex == 0, THIS_METHOD_IS_ONLY_FOR_COLUMN_MAJOR_MATRICES);
131  if(Options_ & RowMajorBit) res.stype *=-1;
132 
133  return res;
134 }
#define EIGEN_STATIC_ASSERT(X, MSG)
Definition: StaticAssert.h:26
@ Lower
Definition: Constants.h:211
@ Upper
Definition: Constants.h:213
const unsigned int RowMajorBit
Definition: Constants.h:68

◆ viewAsCholmod() [3/5]

template<typename Scalar_ , int Options_, typename Index_ >
const cholmod_sparse Eigen::viewAsCholmod ( const SparseVector< Scalar_, Options_, Index_ > &  mat)

Definition at line 114 of file CholmodSupport.h.

115 {
116  cholmod_sparse res = viewAsCholmod(Ref<SparseMatrix<Scalar_,Options_,Index_> >(mat.const_cast_derived()));
117  return res;
118 }

◆ viewAsCholmod() [4/5]

template<typename Derived >
cholmod_dense Eigen::viewAsCholmod ( MatrixBase< Derived > &  mat)

Returns a view of the Eigen dense matrix mat as Cholmod dense matrix. The data are not copied but shared.

Definition at line 139 of file CholmodSupport.h.

140 {
141  EIGEN_STATIC_ASSERT((internal::traits<Derived>::Flags&RowMajorBit)==0,THIS_METHOD_IS_ONLY_FOR_COLUMN_MAJOR_MATRICES);
142  typedef typename Derived::Scalar Scalar;
143 
144  cholmod_dense res;
145  res.nrow = mat.rows();
146  res.ncol = mat.cols();
147  res.nzmax = res.nrow * res.ncol;
148  res.d = Derived::IsVectorAtCompileTime ? mat.derived().size() : mat.derived().outerStride();
149  res.x = (void*)(mat.derived().data());
150  res.z = 0;
151 
152  internal::cholmod_configure_matrix<Scalar>::run(res);
153 
154  return res;
155 }

◆ viewAsCholmod() [5/5]

template<typename Scalar_ , int Options_, typename StorageIndex_ >
cholmod_sparse Eigen::viewAsCholmod ( Ref< SparseMatrix< Scalar_, Options_, StorageIndex_ > >  mat)

Wraps the Eigen sparse matrix mat into a Cholmod sparse matrix object. Note that the data are shared.

Definition at line 60 of file CholmodSupport.h.

61 {
62  cholmod_sparse res;
63  res.nzmax = mat.nonZeros();
64  res.nrow = mat.rows();
65  res.ncol = mat.cols();
66  res.p = mat.outerIndexPtr();
67  res.i = mat.innerIndexPtr();
68  res.x = mat.valuePtr();
69  res.z = 0;
70  res.sorted = 1;
71  if(mat.isCompressed())
72  {
73  res.packed = 1;
74  res.nz = 0;
75  }
76  else
77  {
78  res.packed = 0;
79  res.nz = mat.innerNonZeroPtr();
80  }
81 
82  res.dtype = 0;
83  res.stype = -1;
84 
85  if (internal::is_same<StorageIndex_,int>::value)
86  {
87  res.itype = CHOLMOD_INT;
88  }
89  else if (internal::is_same<StorageIndex_,SuiteSparse_long>::value)
90  {
91  res.itype = CHOLMOD_LONG;
92  }
93  else
94  {
95  eigen_assert(false && "Index type not supported yet");
96  }
97 
98  // setup res.xtype
99  internal::cholmod_configure_matrix<Scalar_>::run(res);
100 
101  res.stype = 0;
102 
103  return res;
104 }
#define eigen_assert(x)
Definition: Macros.h:902

◆ viewAsEigen()

template<typename Scalar , int Flags, typename StorageIndex >
Map<SparseMatrix<Scalar,Flags,StorageIndex> > Eigen::viewAsEigen ( cholmod_sparse &  cm)

Returns a view of the Cholmod sparse matrix cm as an Eigen sparse matrix. The data are not copied but shared.

Definition at line 160 of file CholmodSupport.h.

161 {
162  return Map<SparseMatrix<Scalar,Flags,StorageIndex> >
163  (cm.nrow, cm.ncol, static_cast<StorageIndex*>(cm.p)[cm.ncol],
164  static_cast<StorageIndex*>(cm.p), static_cast<StorageIndex*>(cm.i),static_cast<Scalar*>(cm.x) );
165 }

Variable Documentation

◆ AutoOrder

const int Eigen::AutoOrder

Definition at line 19 of file ReshapedHelper.h.

◆ CoherentAccessPattern

const int Eigen::CoherentAccessPattern

Definition at line 49 of file SparseUtil.h.

◆ Dynamic

const int Eigen::Dynamic

This value means that a positive quantity (e.g., a size) is not known at compile-time, and that instead the value is stored in some runtime variable.

Changing the value of Dynamic breaks the ABI, as Dynamic is often used as a template parameter for Matrix.

Definition at line 24 of file Constants.h.

◆ DynamicIndex

const int Eigen::DynamicIndex

This value means that a signed quantity (e.g., a signed index) is not known at compile-time, and that instead its value has to be specified at runtime.

Definition at line 29 of file Constants.h.

◆ HereditaryBits

const unsigned int Eigen::HereditaryBits

Definition at line 197 of file Constants.h.

◆ HugeCost

const int Eigen::HugeCost

This value means that the cost to evaluate an expression coefficient is either very expensive or cannot be known at compile time.

This value has to be positive to (1) simplify cost computation, and (2) allow to distinguish between a very expensive and very very expensive expressions. It thus must also be large enough to make sure unrolling won't happen and that sub expressions will be evaluated, but not too large to avoid overflow.

Definition at line 46 of file Constants.h.

◆ Infinity

const int Eigen::Infinity

This value means +Infinity; it is currently used only as the p parameter to MatrixBase::lpNorm<int>(). The value Infinity there means the L-infinity norm.

Definition at line 38 of file Constants.h.

◆ InnerRandomAccessPattern

const int Eigen::InnerRandomAccessPattern

Definition at line 50 of file SparseUtil.h.

◆ NestByRefBit

const unsigned int Eigen::NestByRefBit

Definition at line 171 of file Constants.h.

◆ OuterRandomAccessPattern

const int Eigen::OuterRandomAccessPattern

Definition at line 51 of file SparseUtil.h.

◆ RandomAccessPattern

const int Eigen::RandomAccessPattern

Definition at line 52 of file SparseUtil.h.

◆ UndefinedIncr

const int Eigen::UndefinedIncr

This value means that the increment to go from one value to another in a sequence is not constant for each step.

Definition at line 33 of file Constants.h.