Dense matrix and array manipulation » Reference » Core module » Enumerations module

Various enumerations used in Eigen. Many of these are used as template parameters.

Enums

enum AccessorLevels { ReadOnlyAccessors, WriteAccessors, DirectAccessors, DirectWriteAccessors }
enum AlignmentType { Unaligned =0, Aligned8 =8, Aligned16 =16, Aligned32 =32, Aligned64 =64, Aligned128 =128, AlignedMask =255, Aligned =16 deprecated, AlignedMax = Unaligned }
enum ComputationInfo { Success = 0, NumericalIssue = 1, NoConvergence = 2, InvalidInput = 3 }
enum CornerType { TopLeft, TopRight, BottomLeft, BottomRight }
enum DecompositionOptions { Pivoting = 0x01, NoPivoting = 0x02, ComputeFullU = 0x04, ComputeThinU = 0x08, ComputeFullV = 0x10, ComputeThinV = 0x20, EigenvaluesOnly = 0x40, ComputeEigenvectors = 0x80, EigVecMask = EigenvaluesOnly | ComputeEigenvectors, Ax_lBx = 0x100, ABx_lx = 0x200, BAx_lx = 0x400, GenEigMask = Ax_lBx | ABx_lx | BAx_lx }
enum DirectionType { Vertical, Horizontal, BothDirections }
enum QRPreconditioners { NoQRPreconditioner, HouseholderQRPreconditioner, ColPivHouseholderQRPreconditioner, FullPivHouseholderQRPreconditioner }
enum SideType { OnTheLeft = 1, OnTheRight = 2 }
enum StorageOptions { ColMajor = 0, RowMajor = 0x1, AutoAlign = 0, DontAlign = 0x2 }
enum TransformTraits { Isometry = 0x1, Affine = 0x2, AffineCompact = 0x10 | Affine, Projective = 0x20 }
enum UpLoType { Lower =0x1, Upper =0x2, UnitDiag =0x4, ZeroDiag =0x8, UnitLower =UnitDiag|Lower, UnitUpper =UnitDiag|Upper, StrictlyLower =ZeroDiag|Lower, StrictlyUpper =ZeroDiag|Upper, SelfAdjoint =0x10, Symmetric =0x20 }

Enum documentation

enum AccessorLevels

Used as template parameter in DenseCoeffBase and MapBase to indicate which accessors should be provided.

Enumerators
ReadOnlyAccessors

Read-only access via a member function.

WriteAccessors

Read/write access via member functions.

DirectAccessors

Direct read-only access to the coefficients.

DirectWriteAccessors

Direct read/write access to the coefficients.

enum AlignmentType

Enum for indicating whether a buffer is aligned or not.

Enumerators
Unaligned

Data pointer has no specific alignment.

Aligned8

Data pointer is aligned on a 8 bytes boundary.

Aligned16

Data pointer is aligned on a 16 bytes boundary.

Aligned32

Data pointer is aligned on a 32 bytes boundary.

Aligned64

Data pointer is aligned on a 64 bytes boundary.

Aligned128

Data pointer is aligned on a 128 bytes boundary.

AlignedMask
Aligned
AlignedMax

enum ComputationInfo

Enum for reporting the status of a computation.

Enumerators
Success

Computation was successful.

NumericalIssue

The provided data did not satisfy the prerequisites.

NoConvergence

Iterative procedure did not converge.

InvalidInput

The inputs are invalid, or the algorithm has been improperly called. When assertions are enabled, such errors trigger an assert.

enum CornerType

Enum used by DenseBase::corner() in Eigen2 compatibility mode.

Enumerators
TopLeft
TopRight
BottomLeft
BottomRight

enum DecompositionOptions

Enum with options to give to various decompositions.

Enumerators
Pivoting
NoPivoting
ComputeFullU

Used in JacobiSVD to indicate that the square matrix U is to be computed.

ComputeThinU

Used in JacobiSVD to indicate that the thin matrix U is to be computed.

ComputeFullV

Used in JacobiSVD to indicate that the square matrix V is to be computed.

ComputeThinV

Used in JacobiSVD to indicate that the thin matrix V is to be computed.

EigenvaluesOnly

Used in SelfAdjointEigenSolver and GeneralizedSelfAdjointEigenSolver to specify that only the eigenvalues are to be computed and not the eigenvectors.

ComputeEigenvectors

Used in SelfAdjointEigenSolver and GeneralizedSelfAdjointEigenSolver to specify that both the eigenvalues and the eigenvectors are to be computed.

EigVecMask
Ax_lBx

Used in GeneralizedSelfAdjointEigenSolver to indicate that it should solve the generalized eigenproblem $ Ax = \lambda B x $ .

ABx_lx

Used in GeneralizedSelfAdjointEigenSolver to indicate that it should solve the generalized eigenproblem $ ABx = \lambda x $ .

BAx_lx

Used in GeneralizedSelfAdjointEigenSolver to indicate that it should solve the generalized eigenproblem $ BAx = \lambda x $ .

GenEigMask

enum DirectionType

Enum containing possible values for the Direction parameter of Reverse, PartialReduxExpr and VectorwiseOp.

Enumerators
Vertical

For Reverse, all columns are reversed; for PartialReduxExpr and VectorwiseOp, act on columns.

Horizontal

For Reverse, all rows are reversed; for PartialReduxExpr and VectorwiseOp, act on rows.

BothDirections

For Reverse, both rows and columns are reversed; not used for PartialReduxExpr and VectorwiseOp.

enum QRPreconditioners

Possible values for the QRPreconditioner template parameter of JacobiSVD.

Enumerators
NoQRPreconditioner

Do not specify what is to be done if the SVD of a non-square matrix is asked for.

HouseholderQRPreconditioner

Use a QR decomposition without pivoting as the first step.

ColPivHouseholderQRPreconditioner

Use a QR decomposition with column pivoting as the first step.

FullPivHouseholderQRPreconditioner

Use a QR decomposition with full pivoting as the first step.

enum SideType

Enum for specifying whether to apply or solve on the left or right.

Enumerators
OnTheLeft

Apply transformation on the left.

OnTheRight

Apply transformation on the right.

enum StorageOptions

Enum containing possible values for the _Options template parameter of Matrix, Array and BandMatrix.

Enumerators
ColMajor

Storage order is column major (see Storage orders).

RowMajor

Storage order is row major (see Storage orders).

AutoAlign

Align the matrix itself if it is vectorizable fixed-size

DontAlign

Don't require alignment for the matrix itself (the array of coefficients, if dynamically allocated, may still be requested to be aligned)

enum TransformTraits

Enum used to specify how a particular transformation is stored in a matrix.

Enumerators
Isometry

Transformation is an isometry.

Affine

Transformation is an affine transformation stored as a (Dim+1)^2 matrix whose last row is assumed to be [0 ... 0 1].

AffineCompact

Transformation is an affine transformation stored as a (Dim) x (Dim+1) matrix.

Projective

Transformation is a general projective transformation stored as a (Dim+1)^2 matrix.

enum UpLoType

Enum containing possible values for the Mode or UpLo parameter of MatrixBase::selfadjointView() and MatrixBase::triangularView(), and selfadjoint solvers.

Enumerators
Lower

View matrix as a lower triangular matrix.

Upper

View matrix as an upper triangular matrix.

UnitDiag

Matrix has ones on the diagonal; to be used in combination with Lower or Upper.

ZeroDiag

Matrix has zeros on the diagonal; to be used in combination with Lower or Upper.

UnitLower

View matrix as a lower triangular matrix with ones on the diagonal.

UnitUpper

View matrix as an upper triangular matrix with ones on the diagonal.

StrictlyLower

View matrix as a lower triangular matrix with zeros on the diagonal.

StrictlyUpper

View matrix as an upper triangular matrix with zeros on the diagonal.

SelfAdjoint

Used in BandMatrix and SelfAdjointView to indicate that the matrix is self-adjoint.

Symmetric

Used to support symmetric, non-selfadjoint, complex matrices.