11 #ifndef EIGEN_FORWARDDECLARATIONS_H 12 #define EIGEN_FORWARDDECLARATIONS_H 47 template<
typename Derived>
struct EigenBase;
48 template<
typename Derived>
class DenseBase;
52 template<
typename Derived,
56 template<
typename _Scalar,
int _Rows,
int _Cols,
58 #if EIGEN_GNUC_AT(3,4) 77 template<
typename Derived>
class ArrayBase;
79 template<
typename ExpressionType,
unsigned int Added,
unsigned int Removed>
class Flagged;
80 template<
typename ExpressionType,
template <
typename>
class StorageBase >
class NoAlias;
81 template<
typename ExpressionType>
class NestByValue;
85 template<
typename XprType,
int BlockRows=Dynamic,
int BlockCols=Dynamic,
bool InnerPanel = false>
class Block;
87 template<
typename MatrixType,
int Size=Dynamic>
class VectorBlock;
88 template<
typename MatrixType>
class Transpose;
90 template<
typename NullaryOp,
typename MatrixType>
class CwiseNullaryOp;
91 template<
typename UnaryOp,
typename MatrixType>
class CwiseUnaryOp;
92 template<
typename ViewOp,
typename MatrixType>
class CwiseUnaryView;
93 template<
typename BinaryOp,
typename Lhs,
typename Rhs>
class CwiseBinaryOp;
94 template<
typename TernaryOp,
typename Arg1,
typename Arg2,
typename Arg3>
class CwiseTernaryOp;
95 template<
typename Decomposition,
typename Rhstype>
class Solve;
96 template<
typename XprType>
class Inverse;
98 template<
typename Lhs,
typename Rhs,
int Option = DefaultProduct>
class Product;
102 template<
typename _Scalar,
int SizeAtCompileTime,
int MaxSizeAtCompileTime=SizeAtCompileTime>
class DiagonalMatrix;
103 template<
typename MatrixType,
typename DiagonalType,
int ProductOrder>
class DiagonalProduct;
104 template<
typename MatrixType,
int Index = 0>
class Diagonal;
105 template<
int SizeAtCompileTime,
int MaxSizeAtCompileTime = SizeAtCompileTime,
typename IndexType=
int>
class PermutationMatrix;
106 template<
int SizeAtCompileTime,
int MaxSizeAtCompileTime = SizeAtCompileTime,
typename IndexType=
int>
class Transpositions;
112 template<
typename Derived,
115 template<
int InnerStr
ideAtCompileTime,
int OuterStr
ideAtCompileTime>
class Stride;
118 template<
typename MatrixType,
int MapOptions=Unaligned,
typename Str
ideType = Str
ide<0,0> >
class Map;
119 template<
typename Derived>
class RefBase;
120 template<
typename PlainObjectType,
int Options = 0,
124 template<
typename MatrixType,
unsigned int Mode>
class TriangularView;
125 template<
typename MatrixType,
unsigned int Mode>
class SelfAdjointView;
127 template<
typename ExpressionType>
class WithFormat;
143 template<
typename _Scalar,
int Rows=Dynamic,
int Cols=Dynamic,
int Supers=Dynamic,
int Subs=Dynamic,
int Options=0>
class BandMatrix;
147 template<
typename Lhs,
typename Rhs>
struct product_type;
156 template<
typename T,
165 template<
typename Lhs,
typename Rhs,
176 template<
typename LhsScalar,
typename RhsScalar,
bool ConjLhs=false,
bool ConjRhs=false>
struct conj_helper;
178 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_sum_op;
179 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_difference_op;
180 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_conj_product_op;
181 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_min_op;
182 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_max_op;
183 template<
typename Scalar>
struct scalar_opposite_op;
184 template<
typename Scalar>
struct scalar_conjugate_op;
185 template<
typename Scalar>
struct scalar_real_op;
186 template<
typename Scalar>
struct scalar_imag_op;
187 template<
typename Scalar>
struct scalar_abs_op;
188 template<
typename Scalar>
struct scalar_abs2_op;
189 template<
typename Scalar>
struct scalar_sqrt_op;
190 template<
typename Scalar>
struct scalar_rsqrt_op;
191 template<
typename Scalar>
struct scalar_exp_op;
192 template<
typename Scalar>
struct scalar_log_op;
193 template<
typename Scalar>
struct scalar_cos_op;
194 template<
typename Scalar>
struct scalar_sin_op;
195 template<
typename Scalar>
struct scalar_acos_op;
196 template<
typename Scalar>
struct scalar_asin_op;
197 template<
typename Scalar>
struct scalar_tan_op;
198 template<
typename Scalar>
struct scalar_inverse_op;
199 template<
typename Scalar>
struct scalar_square_op;
200 template<
typename Scalar>
struct scalar_cube_op;
201 template<
typename Scalar,
typename NewType>
struct scalar_cast_op;
202 template<
typename Scalar>
struct scalar_random_op;
203 template<
typename Scalar>
struct scalar_constant_op;
204 template<
typename Scalar>
struct scalar_identity_op;
205 template<
typename Scalar,
bool iscpx>
struct scalar_sign_op;
206 template<
typename Scalar,
typename ScalarExponent>
struct scalar_pow_op;
208 template<
typename LhsScalar,
typename RhsScalar=LhsScalar>
struct scalar_product_op;
226 template<
typename _Scalar,
int _Rows,
int _Cols,
228 #if EIGEN_GNUC_AT(3,4) 235 : !(_Cols==1 && _Rows!=1) ? EIGEN_DEFAULT_MATRIX_STORAGE_ORDER_OPTION
240 : EIGEN_DEFAULT_MATRIX_STORAGE_ORDER_OPTION ),
242 int _MaxRows = _Rows,
int _MaxCols = _Cols>
class Array;
243 template<
typename ConditionMatrixType,
typename ThenMatrixType,
typename ElseMatrixType>
class Select;
246 template<
typename MatrixType,
int RowFactor,
int ColFactor>
class Replicate;
247 template<
typename MatrixType,
int Direction = BothDirections>
class Reverse;
258 template<
typename MatrixType,
int QRPreconditioner = ColPivHouseholderQRPreconditioner>
class JacobiSVD;
259 template<
typename MatrixType>
class BDCSVD;
260 template<
typename MatrixType,
int UpLo = Lower>
class LLT;
261 template<
typename MatrixType,
int UpLo = Lower>
class LDLT;
267 template<
typename Lhs,
typename Rhs>
class Cross;
273 template<
typename Scalar,
int Options = AutoAlign>
class Quaternion;
274 template<
typename Scalar,
int Dim,
int Mode,
int _Options=AutoAlign>
class Transform;
275 template <
typename _Scalar,
int _AmbientDim,
int Options=AutoAlign>
class ParametrizedLine;
276 template <
typename _Scalar,
int _AmbientDim,
int Options=AutoAlign>
class Hyperplane;
292 template <
typename Scalar>
296 typedef ComplexScalar
type(ComplexScalar,
int);
302 #endif // EIGEN_FORWARDDECLARATIONS_H
Generic expression of a matrix where all coefficients are defined by a functor.
Robust Cholesky decomposition of a matrix with pivoting.
std::complex< typename NumTraits< Scalar >::Real > ComplexScalar
Enforce aligned packet loads and stores regardless of what is requested.
Expression of the product of two arbitrary matrices or vectors.
Expression of a mathematical vector or matrix as an array object.
Householder rank-revealing QR decomposition of a matrix with full pivoting.
Pseudo expression providing an operator = assuming no aliasing.
A matrix or vector expression mapping an existing array of data.
Proxy for the matrix square root of some matrix (expression).
Base class for triangular part in a matrix.
Expression of the transpose of a matrix.
const unsigned int DirectAccessBit
const unsigned int LvalueBit
Represents a rectangular matrix with a banded storage.
Represents a diagonal matrix with its storage.
LU decomposition of a matrix with partial pivoting, and related features.
Namespace containing all symbols from the Eigen library.
Holds strides information for Map.
Rotation given by a cosine-sine pair.
Generic expression of a partially reduxed matrix.
Holds information about the various numeric (i.e. scalar) types allowed by Eigen. ...
Pseudo expression providing partial reduction operations.
Complete orthogonal decomposition (COD) of a matrix.
Base class for all dense matrices, vectors, and arrays.
Proxy for the matrix function of some matrix (expression).
Proxy for the matrix power of some matrix (expression).
Base class for permutations.
Helper class used by the comma initializer operator.
Sequence of Householder reflections acting on subspaces with decreasing size.
Represents a translation transformation.
Expression of the inverse of another expression.
Generic lvalue expression of a coefficient-wise unary operator of a matrix or a vector.
Expression of an array as a mathematical vector or matrix.
Expression of a fixed-size or dynamic-size sub-vector.
Generic expression where a coefficient-wise binary operator is applied to two expressions.
Base class of any sparse matrices or sparse expressions.
Householder rank-revealing QR decomposition of a matrix with column-pivoting.
Standard Cholesky decomposition (LL^T) of a matrix and associated features.
Convenience specialization of Stride to specify only an inner stride See class Map for some examples...
Eigen::Triplet< double > T
Generic expression where a coefficient-wise ternary operator is applied to two expressions.
Expression of the multiple replication of a matrix or vector.
Common base class for compact rotation representations.
Expression of a selfadjoint matrix from a triangular part of a dense matrix.
Expression of a dense or sparse matrix with zero or too small values removed.
Base class for all 1D and 2D array, and related expressions.
Class to view a vector of integers as a permutation matrix.
Base class for quaternion expressions.
Expression which must be nested by value.
class Bidiagonal Divide and Conquer SVD
A matrix or vector expression mapping an existing expression.
mp::number< mp::cpp_dec_float< 100 >, mp::et_on > Real
ComplexScalar type(ComplexScalar, int)
Represents a rotation/orientation in a 2 dimensional space.
Expression of a fixed-size or dynamic-size block.
The quaternion class used to represent 3D orientations and rotations.
LU decomposition of a matrix with complete pivoting, and related features.
storage_kind_to_shape< typename traits< T >::StorageKind >::Shape Shape
Householder QR decomposition of a matrix.
General-purpose arrays with easy API for coefficient-wise operations.
Two-sided Jacobi SVD decomposition of a rectangular matrix.
Expression of a triangular part in a matrix.
Expression of a diagonal matrix.
Proxy for the matrix exponential of some matrix (expression).
Expression of a diagonal/subdiagonal/superdiagonal in a matrix.
Pseudo expression representing a solving operation.
Generic expression where a coefficient-wise unary operator is applied to an expression.
The matrix class, also used for vectors and row-vectors.
Convenience specialization of Stride to specify only an outer stride See class Map for some examples...
Expression of the reverse of a vector or matrix.
A base class for matrix decomposition and solvers.
Proxy for the matrix power of some matrix (expression).
Base class for all dense matrices, vectors, and expressions.
Represents a 3D rotation as a rotation angle around an arbitrary 3D axis.
Represents a sequence of transpositions (row/column interchange)
Proxy for the matrix logarithm of some matrix (expression).
#define EIGEN_DEFAULT_MATRIX_STORAGE_ORDER_OPTION
Expression of one (or a set of) homogeneous vector(s)
Expression of a coefficient wise version of the C++ ternary operator ?:
An InnerIterator allows to loop over the element of any matrix expression.