All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
Eigen Namespace Reference

Namespace containing all symbols from the Eigen library. More...

Namespaces

 internal
 

Classes

class  AlignedVector3
 A vectorization friendly 3D vector. More...
 
class  AutoDiffScalar
 A scalar type replacement with automatic differentation capability. More...
 
class  BlockSparseMatrix
 A versatile sparse matrix representation where each element is a block. More...
 
class  DGMRES
 A Restarted GMRES with deflation. This class implements a modification of the GMRES solver for sparse linear systems. The basis is built with modified Gram-Schmidt. At each restart, a few approximated eigenvectors corresponding to the smallest eigenvalues are used to build a preconditioner for the next cycle. This preconditioner for deflation can be combined with any other preconditioner, the IncompleteLUT for instance. The preconditioner is applied at right of the matrix and the combination is multiplicative. More...
 
class  DynamicSGroup
 Dynamic symmetry group. More...
 
class  DynamicSparseMatrix
 A sparse matrix class designed for matrix assembly purpose. More...
 
class  EulerAngles
 Represents a rotation in a 3 dimensional space as three Euler angles. More...
 
class  EulerSystem
 Represents a fixed Euler rotation system. More...
 
class  GMRES
 A GMRES solver for sparse square problems. More...
 
class  HybridNonLinearSolver
 Finds a zero of a system of n nonlinear functions in n variables by a modification of the Powell hybrid method ("dogleg"). More...
 
class  IterationController
 Controls the iterations of the iterative solvers. More...
 
class  IterScaling
 iterative scaling algorithm to equilibrate rows and column norms in matrices More...
 
class  KdBVH
 A simple bounding volume hierarchy based on AlignedBox. More...
 
class  KroneckerProduct
 Kronecker tensor product helper class for dense matrices. More...
 
class  KroneckerProductBase
 The base class of dense and sparse Kronecker product. More...
 
class  KroneckerProductSparse
 Kronecker tensor product helper class for sparse matrices. More...
 
class  LevenbergMarquardt
 Performs non linear optimization over a non-linear function, using a variant of the Levenberg Marquardt algorithm. More...
 
class  MatrixComplexPowerReturnValue
 Proxy for the matrix power of some matrix (expression). More...
 
struct  MatrixExponentialReturnValue
 Proxy for the matrix exponential of some matrix (expression). More...
 
class  MatrixFunctionReturnValue
 Proxy for the matrix function of some matrix (expression). More...
 
class  MatrixLogarithmReturnValue
 Proxy for the matrix logarithm of some matrix (expression). More...
 
class  MatrixMarketIterator
 Iterator to browse matrices from a specified folder. More...
 
class  MatrixPower
 Class for computing matrix powers. More...
 
class  MatrixPowerAtomic
 Class for computing matrix powers. More...
 
class  MatrixPowerParenthesesReturnValue
 Proxy for the matrix power of some matrix. More...
 
class  MatrixPowerReturnValue
 Proxy for the matrix power of some matrix (expression). More...
 
class  MatrixSquareRootReturnValue
 Proxy for the matrix square root of some matrix (expression). More...
 
class  MaxSizeVector
 The MaxSizeVector class. More...
 
class  MINRES
 A minimal residual solver for sparse symmetric problems. More...
 
class  NumericalDiff
 
class  PolynomialSolver
 A polynomial solver. More...
 
class  PolynomialSolverBase
 Defined to be inherited by polynomial solvers: it provides convenient methods such as. More...
 
class  RandomSetter
 The RandomSetter is a wrapper object allowing to set/update a sparse matrix with random access. More...
 
class  SGroup
 Symmetry group, initialized from template arguments. More...
 
class  SkylineInplaceLU
 Inplace LU decomposition of a skyline matrix and associated features. More...
 
class  SkylineMatrix
 The main skyline matrix class. More...
 
class  SkylineMatrixBase
 Base class of any skyline matrices or skyline expressions. More...
 
class  SkylineStorage
 
class  Spline
 A class representing multi-dimensional spline curves. More...
 
struct  SplineFitting
 Spline fitting methods. More...
 
struct  SplineTraits< Spline< _Scalar, _Dim, _Degree >, _DerivativeOrder >
 Compile-time attributes of the Spline class for fixed degree. More...
 
struct  SplineTraits< Spline< _Scalar, _Dim, _Degree >, Dynamic >
 Compile-time attributes of the Spline class for Dynamic degree. More...
 
class  StaticSGroup
 Static symmetry group. More...
 
struct  StdMapTraits
 
class  Tensor
 The tensor class. More...
 
class  TensorBase
 The tensor base class. More...
 
class  TensorConcatenationOp
 Tensor concatenation class. More...
 
class  TensorConversionOp
 Tensor conversion class. This class makes it possible to vectorize type casting operations when the number of scalars per packet in the source and the destination type differ. More...
 
class  TensorCustomBinaryOp
 Tensor custom class. More...
 
class  TensorCustomUnaryOp
 Tensor custom class. More...
 
class  TensorDevice
 Pseudo expression providing an operator = that will evaluate its argument on the specified computing 'device' (GPU, thread pool, ...) More...
 
class  TensorEvaluator
 A cost model used to limit the number of threads used for evaluating tensor expression. More...
 
class  TensorFixedSize
 The fixed sized version of the tensor class. More...
 
class  TensorMap
 A tensor expression mapping an existing array of data. More...
 
class  TensorRef
 A reference to a tensor expression The expression will be evaluated lazily (as much as possible). More...
 

Typedefs

typedef EulerAngles< double,
EulerSystemXYX
EulerAnglesXYXd
 
typedef EulerAngles< float,
EulerSystemXYX
EulerAnglesXYXf
 
typedef EulerAngles< double,
EulerSystemXYZ
EulerAnglesXYZd
 
typedef EulerAngles< float,
EulerSystemXYZ
EulerAnglesXYZf
 
typedef EulerAngles< double,
EulerSystemXZX
EulerAnglesXZXd
 
typedef EulerAngles< float,
EulerSystemXZX
EulerAnglesXZXf
 
typedef EulerAngles< double,
EulerSystemXZY
EulerAnglesXZYd
 
typedef EulerAngles< float,
EulerSystemXZY
EulerAnglesXZYf
 
typedef EulerAngles< double,
EulerSystemYXY
EulerAnglesYXYd
 
typedef EulerAngles< float,
EulerSystemYXY
EulerAnglesYXYf
 
typedef EulerAngles< double,
EulerSystemYXZ
EulerAnglesYXZd
 
typedef EulerAngles< float,
EulerSystemYXZ
EulerAnglesYXZf
 
typedef EulerAngles< double,
EulerSystemYZX
EulerAnglesYZXd
 
typedef EulerAngles< float,
EulerSystemYZX
EulerAnglesYZXf
 
typedef EulerAngles< double,
EulerSystemYZY
EulerAnglesYZYd
 
typedef EulerAngles< float,
EulerSystemYZY
EulerAnglesYZYf
 
typedef EulerAngles< double,
EulerSystemZXY
EulerAnglesZXYd
 
typedef EulerAngles< float,
EulerSystemZXY
EulerAnglesZXYf
 
typedef EulerAngles< double,
EulerSystemZXZ
EulerAnglesZXZd
 
typedef EulerAngles< float,
EulerSystemZXZ
EulerAnglesZXZf
 
typedef EulerAngles< double,
EulerSystemZYX
EulerAnglesZYXd
 
typedef EulerAngles< float,
EulerSystemZYX
EulerAnglesZYXf
 
typedef EulerAngles< double,
EulerSystemZYZ
EulerAnglesZYZd
 
typedef EulerAngles< float,
EulerSystemZYZ
EulerAnglesZYZf
 
typedef EulerSystem< EULER_X,
EULER_Y, EULER_X
EulerSystemXYX
 
typedef EulerSystem< EULER_X,
EULER_Y, EULER_Z
EulerSystemXYZ
 
typedef EulerSystem< EULER_X,
EULER_Z, EULER_X
EulerSystemXZX
 
typedef EulerSystem< EULER_X,
EULER_Z, EULER_Y
EulerSystemXZY
 
typedef EulerSystem< EULER_Y,
EULER_X, EULER_Y
EulerSystemYXY
 
typedef EulerSystem< EULER_Y,
EULER_X, EULER_Z
EulerSystemYXZ
 
typedef EulerSystem< EULER_Y,
EULER_Z, EULER_X
EulerSystemYZX
 
typedef EulerSystem< EULER_Y,
EULER_Z, EULER_Y
EulerSystemYZY
 
typedef EulerSystem< EULER_Z,
EULER_X, EULER_Y
EulerSystemZXY
 
typedef EulerSystem< EULER_Z,
EULER_X, EULER_Z
EulerSystemZXZ
 
typedef EulerSystem< EULER_Z,
EULER_Y, EULER_X
EulerSystemZYX
 
typedef EulerSystem< EULER_Z,
EULER_Y, EULER_Z
EulerSystemZYZ
 
typedef Spline< double, 2 > Spline2d
 2D double B-spline with dynamic degree.
 
typedef Spline< float, 2 > Spline2f
 2D float B-spline with dynamic degree.
 
typedef Spline< double, 3 > Spline3d
 3D double B-spline with dynamic degree.
 
typedef Spline< float, 3 > Spline3f
 3D float B-spline with dynamic degree.
 

Enumerations

enum  EulerAxis {
  EULER_X,
  EULER_Y,
  EULER_Z
}
 Representation of a fixed signed rotation axis for EulerSystem. More...
 

Functions

template<typename ADerived , typename BDerived , typename XDerived >
const TensorCwiseTernaryOp
< internal::scalar_betainc_op
< typename XDerived::Scalar >
, const ADerived, const
BDerived, const XDerived > 
betainc (const ADerived &a, const BDerived &b, const XDerived &x)
 
template<typename ArgADerived , typename ArgBDerived , typename ArgXDerived >
const Eigen::CwiseTernaryOp
< Eigen::internal::scalar_betainc_op
< typename ArgXDerived::Scalar >
, const ArgADerived, const
ArgBDerived, const ArgXDerived > 
betainc (const Eigen::ArrayBase< ArgADerived > &a, const Eigen::ArrayBase< ArgBDerived > &b, const Eigen::ArrayBase< ArgXDerived > &x)
 
template<typename BVH , typename Intersector >
void BVIntersect (const BVH &tree, Intersector &intersector)
 
template<typename BVH1 , typename BVH2 , typename Intersector >
void BVIntersect (const BVH1 &tree1, const BVH2 &tree2, Intersector &intersector)
 
template<typename BVH , typename Minimizer >
Minimizer::Scalar BVMinimize (const BVH &tree, Minimizer &minimizer)
 
template<typename BVH1 , typename BVH2 , typename Minimizer >
Minimizer::Scalar BVMinimize (const BVH1 &tree1, const BVH2 &tree2, Minimizer &minimizer)
 
template<typename Polynomial >
NumTraits< typename
Polynomial::Scalar >::Real 
cauchy_max_bound (const Polynomial &poly)
 
template<typename Polynomial >
NumTraits< typename
Polynomial::Scalar >::Real 
cauchy_min_bound (const Polynomial &poly)
 
template<typename PointArrayType , typename KnotVectorType >
void ChordLengths (const PointArrayType &pts, KnotVectorType &chord_lengths)
 Computes chord length parameters which are required for spline interpolation. More...
 
template<typename Derived , typename ExponentDerived >
const Eigen::CwiseBinaryOp
< Eigen::internal::scalar_igamma_op
< typename Derived::Scalar >
, const Derived, const
ExponentDerived > 
igamma (const Eigen::ArrayBase< Derived > &a, const Eigen::ArrayBase< ExponentDerived > &x)
 
template<typename Derived , typename ExponentDerived >
const Eigen::CwiseBinaryOp
< Eigen::internal::scalar_igammac_op
< typename Derived::Scalar >
, const Derived, const
ExponentDerived > 
igammac (const Eigen::ArrayBase< Derived > &a, const Eigen::ArrayBase< ExponentDerived > &x)
 
template<typename KnotVectorType >
void KnotAveraging (const KnotVectorType &parameters, DenseIndex degree, KnotVectorType &knots)
 Computes knot averages.The knots are computed as

\begin{align*} u_0 & = \hdots = u_p = 0 \\ u_{m-p} & = \hdots = u_{m} = 1 \\ u_{j+p} & = \frac{1}{p}\sum_{i=j}^{j+p-1}\bar{u}_i \quad\quad j=1,\hdots,n-p \end{align*}

where $p$ is the degree and $m+1$ the number knots of the desired interpolating spline. More...

 
template<typename KnotVectorType , typename ParameterVectorType , typename IndexArray >
void KnotAveragingWithDerivatives (const ParameterVectorType &parameters, const unsigned int degree, const IndexArray &derivativeIndices, KnotVectorType &knots)
 Computes knot averages when derivative constraints are present. Note that this is a technical interpretation of the referenced article since the algorithm contained therein is incorrect as written. More...
 
template<typename A , typename B >
KroneckerProduct< A, B > kroneckerProduct (const MatrixBase< A > &a, const MatrixBase< B > &b)
 
template<typename A , typename B >
KroneckerProductSparse< A, B > kroneckerProduct (const EigenBase< A > &a, const EigenBase< B > &b)
 
template<typename MatrixType , typename ResultType >
void matrix_sqrt_quasi_triangular (const MatrixType &arg, ResultType &result)
 Compute matrix square root of quasi-triangular matrix. More...
 
template<typename MatrixType , typename ResultType >
void matrix_sqrt_triangular (const MatrixType &arg, ResultType &result)
 Compute matrix square root of triangular matrix. More...
 
template<typename Polynomials , typename T >
poly_eval (const Polynomials &poly, const T &x)
 
template<typename Polynomials , typename T >
poly_eval_horner (const Polynomials &poly, const T &x)
 
template<typename DerivedN , typename DerivedX >
const Eigen::CwiseBinaryOp
< Eigen::internal::scalar_polygamma_op
< typename DerivedX::Scalar >
, const DerivedN, const
DerivedX > 
polygamma (const Eigen::ArrayBase< DerivedN > &n, const Eigen::ArrayBase< DerivedX > &x)
 
template<typename RootVector , typename Polynomial >
void roots_to_monicPolynomial (const RootVector &rv, Polynomial &poly)
 
template<typename DerivedX , typename DerivedQ >
const Eigen::CwiseBinaryOp
< Eigen::internal::scalar_zeta_op
< typename DerivedX::Scalar >
, const DerivedX, const
DerivedQ > 
zeta (const Eigen::ArrayBase< DerivedX > &x, const Eigen::ArrayBase< DerivedQ > &q)
 

Detailed Description

Namespace containing all symbols from the Eigen library.

Function Documentation

template<typename ADerived , typename BDerived , typename XDerived >
const TensorCwiseTernaryOp<internal::scalar_betainc_op<typename XDerived::Scalar>, const ADerived, const BDerived, const XDerived> Eigen::betainc ( const ADerived &  a,
const BDerived &  b,
const XDerived &  x 
)
inline

[c++11]

Returns
an expression of the coefficient-wise betainc(x, a, b) to the given tensors.

This function computes the regularized incomplete beta function (integral).

template<typename ArgADerived , typename ArgBDerived , typename ArgXDerived >
const Eigen::CwiseTernaryOp<Eigen::internal::scalar_betainc_op<typename ArgXDerived::Scalar>, const ArgADerived, const ArgBDerived, const ArgXDerived> Eigen::betainc ( const Eigen::ArrayBase< ArgADerived > &  a,
const Eigen::ArrayBase< ArgBDerived > &  b,
const Eigen::ArrayBase< ArgXDerived > &  x 
)
inline

[c++11]

Returns
an expression of the coefficient-wise betainc(x, a, b) to the given arrays.

This function computes the regularized incomplete beta function (integral).

Note
This function supports only float and double scalar types in c++11 mode. To support other scalar types, or float/double in non c++11 mode, the user has to provide implementations of betainc(T,T,T) for any scalar type T to be supported.
See Also
Eigen::betainc(), Eigen::lgamma()
template<typename BVH , typename Intersector >
void Eigen::BVIntersect ( const BVH &  tree,
Intersector &  intersector 
)

Given a BVH, runs the query encapsulated by intersector. The Intersector type must provide the following members:

bool intersectVolume(const BVH::Volume &volume) //returns true if volume intersects the query
bool intersectObject(const BVH::Object &object) //returns true if the search should terminate immediately
template<typename BVH1 , typename BVH2 , typename Intersector >
void Eigen::BVIntersect ( const BVH1 &  tree1,
const BVH2 &  tree2,
Intersector &  intersector 
)

Given two BVH's, runs the query on their Cartesian product encapsulated by intersector. The Intersector type must provide the following members:

bool intersectVolumeVolume(const BVH1::Volume &v1, const BVH2::Volume &v2) //returns true if product of volumes intersects the query
bool intersectVolumeObject(const BVH1::Volume &v1, const BVH2::Object &o2) //returns true if the volume-object product intersects the query
bool intersectObjectVolume(const BVH1::Object &o1, const BVH2::Volume &v2) //returns true if the volume-object product intersects the query
bool intersectObjectObject(const BVH1::Object &o1, const BVH2::Object &o2) //returns true if the search should terminate immediately
template<typename BVH , typename Minimizer >
Minimizer::Scalar Eigen::BVMinimize ( const BVH &  tree,
Minimizer &  minimizer 
)

Given a BVH, runs the query encapsulated by minimizer.

Returns
the minimum value. The Minimizer type must provide the following members:
typedef Scalar //the numeric type of what is being minimized--not necessarily the Scalar type of the BVH (if it has one)
Scalar minimumOnVolume(const BVH::Volume &volume)
Scalar minimumOnObject(const BVH::Object &object)
template<typename BVH1 , typename BVH2 , typename Minimizer >
Minimizer::Scalar Eigen::BVMinimize ( const BVH1 &  tree1,
const BVH2 &  tree2,
Minimizer &  minimizer 
)

Given two BVH's, runs the query on their cartesian product encapsulated by minimizer.

Returns
the minimum value. The Minimizer type must provide the following members:
typedef Scalar //the numeric type of what is being minimized--not necessarily the Scalar type of the BVH (if it has one)
Scalar minimumOnVolumeVolume(const BVH1::Volume &v1, const BVH2::Volume &v2)
Scalar minimumOnVolumeObject(const BVH1::Volume &v1, const BVH2::Object &o2)
Scalar minimumOnObjectVolume(const BVH1::Object &o1, const BVH2::Volume &v2)
Scalar minimumOnObjectObject(const BVH1::Object &o1, const BVH2::Object &o2)
template<typename Derived , typename ExponentDerived >
const Eigen::CwiseBinaryOp<Eigen::internal::scalar_igamma_op<typename Derived::Scalar>, const Derived, const ExponentDerived> Eigen::igamma ( const Eigen::ArrayBase< Derived > &  a,
const Eigen::ArrayBase< ExponentDerived > &  x 
)
inline

[c++11]

Returns
an expression of the coefficient-wise igamma(a, x) to the given arrays.

This function computes the coefficient-wise incomplete gamma function.

Note
This function supports only float and double scalar types in c++11 mode. To support other scalar types, or float/double in non c++11 mode, the user has to provide implementations of igammac(T,T) for any scalar type T to be supported.
See Also
Eigen::igammac(), Eigen::lgamma()
template<typename Derived , typename ExponentDerived >
const Eigen::CwiseBinaryOp<Eigen::internal::scalar_igammac_op<typename Derived::Scalar>, const Derived, const ExponentDerived> Eigen::igammac ( const Eigen::ArrayBase< Derived > &  a,
const Eigen::ArrayBase< ExponentDerived > &  x 
)
inline

[c++11]

Returns
an expression of the coefficient-wise igammac(a, x) to the given arrays.

This function computes the coefficient-wise complementary incomplete gamma function.

Note
This function supports only float and double scalar types in c++11 mode. To support other scalar types, or float/double in non c++11 mode, the user has to provide implementations of igammac(T,T) for any scalar type T to be supported.
See Also
Eigen::igamma(), Eigen::lgamma()
template<typename DerivedN , typename DerivedX >
const Eigen::CwiseBinaryOp<Eigen::internal::scalar_polygamma_op<typename DerivedX::Scalar>, const DerivedN, const DerivedX> Eigen::polygamma ( const Eigen::ArrayBase< DerivedN > &  n,
const Eigen::ArrayBase< DerivedX > &  x 
)
inline

[c++11]

Returns
an expression of the coefficient-wise polygamma(n, x) to the given arrays.

It returns the n -th derivative of the digamma(psi) evaluated at x.

Note
This function supports only float and double scalar types in c++11 mode. To support other scalar types, or float/double in non c++11 mode, the user has to provide implementations of polygamma(T,T) for any scalar type T to be supported.
See Also
Eigen::digamma()
template<typename DerivedX , typename DerivedQ >
const Eigen::CwiseBinaryOp<Eigen::internal::scalar_zeta_op<typename DerivedX::Scalar>, const DerivedX, const DerivedQ> Eigen::zeta ( const Eigen::ArrayBase< DerivedX > &  x,
const Eigen::ArrayBase< DerivedQ > &  q 
)
inline
Returns
an expression of the coefficient-wise zeta(x, q) to the given arrays.

It returns the Riemann zeta function of two arguments x and q:

Parameters
xis the exposent, it must be > 1
qis the shift, it must be > 0
Note
This function supports only float and double scalar types. To support other scalar types, the user has to provide implementations of zeta(T,T) for any scalar type T to be supported.
See Also
ArrayBase::zeta()