12 #ifndef EIGEN_COMPLEX_EIGEN_SOLVER_H
13 #define EIGEN_COMPLEX_EIGEN_SOLVER_H
127 template<
typename InputType>
214 template<
typename InputType>
258 template<typename InputType>
272 if(computeEigenvectors)
283 template<
typename MatrixType>
292 m_matX = EigenvectorType::Zero(
n,
n);
293 for(
Index k=
n-1 ; k>=0 ; k--)
316 for(
Index k=0 ; k<
n ; k++)
323 template<
typename MatrixType>
335 if(computeEigenvectors)
#define EIGEN_STATIC_ASSERT_NON_INTEGER(TYPE)
Computes eigenvalues and eigenvectors of general complex matrices.
ComplexSchur< MatrixType > m_schur
std::complex< RealScalar > ComplexScalar
Complex scalar type for MatrixType.
ComplexEigenSolver(Index size)
Default Constructor with memory preallocation.
Index getMaxIterations()
Returns the maximum number of iterations.
ComplexEigenSolver()
Default constructor.
MatrixType::Scalar Scalar
Scalar type for matrices of type MatrixType.
ComplexEigenSolver(const EigenBase< InputType > &matrix, bool computeEigenvectors=true)
Constructor; computes eigendecomposition of given matrix.
ComplexEigenSolver & compute(const EigenBase< InputType > &matrix, bool computeEigenvectors=true)
Computes eigendecomposition of given matrix.
Matrix< ComplexScalar, RowsAtCompileTime, ColsAtCompileTime, Options, MaxRowsAtCompileTime, MaxColsAtCompileTime > EigenvectorType
Type for matrix of eigenvectors as returned by eigenvectors().
void sortEigenvalues(bool computeEigenvectors)
ComplexEigenSolver & setMaxIterations(Index maxIters)
Sets the maximum number of iterations allowed.
const EigenvalueType & eigenvalues() const
Returns the eigenvalues of given matrix.
MatrixType_ MatrixType
Synonym for the template parameter MatrixType_.
NumTraits< Scalar >::Real RealScalar
void doComputeEigenvectors(RealScalar matrixnorm)
ComputationInfo info() const
Reports whether previous computation was successful.
EigenvalueType m_eivalues
const EigenvectorType & eigenvectors() const
Returns the eigenvectors of given matrix.
Performs a complex Schur decomposition of a real or complex square matrix.
ComputationInfo info() const
Reports whether previous computation was successful.
const ComplexMatrixType & matrixU() const
Returns the unitary matrix in the Schur decomposition.
const ComplexMatrixType & matrixT() const
Returns the triangular matrix in the Schur decomposition.
Index getMaxIterations()
Returns the maximum number of iterations.
ComplexSchur & setMaxIterations(Index maxIters)
Sets the maximum number of iterations allowed.
ComplexSchur & compute(const EigenBase< InputType > &matrix, bool computeU=true)
Computes Schur decomposition of given matrix.
internal::traits< Derived >::Scalar Scalar
The matrix class, also used for vectors and row-vectors.
constexpr const Scalar & coeff(Index rowId, Index colId) const
constexpr Scalar & coeffRef(Index rowId, Index colId)
bfloat16() min(const bfloat16 &a, const bfloat16 &b)
void swap(scoped_array< T > &a, scoped_array< T > &b)
internal::add_const_on_value_type_t< EIGEN_MATHFUNC_RETVAL(real_ref, Scalar) > real_ref(const Scalar &x)
EIGEN_ALWAYS_INLINE T maxi(const T &x, const T &y)
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Holds information about the various numeric (i.e. scalar) types allowed by Eigen.