CAPD::DynSys Library  6.0.0
floatMatrixAlgorithms.hpp File Reference
#include <vector>
#include <stdexcept>
#include <iostream>
#include "capd/basicalg/minmax.h"
#include "capd/basicalg/power.h"
#include "capd/matrixAlgorithms/floatMatrixAlgorithms.h"
#include "capd/basicalg/TypeTraits.h"
#include "capd/basicalg/doubleFun.h"
#include "capd/vectalg/Matrix.hpp"
#include "capd/vectalg/Norm.h"

Classes

class  capd::matrixAlgorithms::Gershgorin< MatrixType, isInterval >
 
class  capd::matrixAlgorithms::Gershgorin< MatrixType, false >
 Specialization for non-rigorous types. More...
 
class  capd::matrixAlgorithms::Gershgorin< MatrixType, true >
 Specialization for rigorous (interval) types. More...
 
struct  capd::matrixAlgorithms::GetExpRemainder< T, true >
 
struct  capd::matrixAlgorithms::GetExpRemainder< T, false >
 

Namespaces

 capd
 
 capd::matrixAlgorithms
 Matrix algorithms: Gauss elimination, orthonormalization, QR decomposition etc.
 

Functions

template<typename MatrixType >
MatrixType::ScalarType capd::matrixAlgorithms::det (MatrixType A)
 Computes determinant of a matrix A by LU decomposition. More...
 
template<typename MatrixType , typename ResultType >
void capd::matrixAlgorithms::gauss (MatrixType a, ResultType b, ResultType &result)
 
template<typename MatrixType , typename VectorType >
VectorType capd::matrixAlgorithms::gauss (const MatrixType &A, const VectorType &b)
 Gauss elimination. More...
 
template<typename MatrixType , typename VectorType , typename IntVectorType >
void capd::matrixAlgorithms::computeSortingPermutation (const MatrixType &Q, const VectorType &v, IntVectorType &permutation)
 computes sorting permutation according to sizes of the set in the direction of the base vectors More...
 
template<typename MatrixType >
void capd::matrixAlgorithms::orthonormalize (MatrixType &Q, const typename MatrixType::RowVectorType &v)
 
template<typename MatrixType >
void capd::matrixAlgorithms::orthonormalize (MatrixType &Q, const MatrixType &R)
 
template<typename MatrixType >
void capd::matrixAlgorithms::orthonormalize (MatrixType &Q)
 
template<typename MatrixType >
void capd::matrixAlgorithms::QR_decompose (const MatrixType &A, MatrixType &Q, MatrixType &R)
 
template<typename MatrixType , typename IntVectorType >
void capd::matrixAlgorithms::QRdecomposeWithPivoting (const MatrixType &A, const typename MatrixType::RowVectorType &v, MatrixType &Q, MatrixType &R, typename MatrixType::RowVectorType &sizes, IntVectorType &p)
 
template<typename MatrixType >
int capd::matrixAlgorithms::symMatrixDiagonalize (const MatrixType &A, MatrixType &D, typename MatrixType::ScalarType diagonalizingRelTolerance=capd::TypeTraits< typename MatrixType::ScalarType >::epsilon())
 
template<typename MatrixType >
MatrixType::ScalarType capd::matrixAlgorithms::spectralRadiusOfSymMatrix (const MatrixType &A, typename MatrixType::ScalarType diagonalizingRelTolerance=capd::TypeTraits< typename MatrixType::ScalarType >::epsilon())
 this function computes bound for spectral radius of a symmetric matrix first it computes matrix which has the same eigenvalues and which is close to diagonal, next bound is computed from Gerschgorin theorem More...
 
template<typename MatrixType >
MatrixType::ScalarType capd::matrixAlgorithms::maxEigenValueOfSymMatrix (const MatrixType &A, typename MatrixType::ScalarType diagonalizingRelTolerance=capd::TypeTraits< typename MatrixType::ScalarType >::epsilon())
 this function computes bound for maximal eigenvalue of a symmetric matrix first it computes matrix which has the same eigenvalues and which is close to diagonal, next bound is computed from Gerschgorin theorem More...
 
template<typename MatrixType >
void capd::matrixAlgorithms::croutDecomposition (const MatrixType &A, MatrixType &D, MatrixType &G)
 Crout Decomposition of a matrix As a result matrix D is a lower triangle and G is an upper triangle with 1 on diagonal. More...
 
template<typename MatrixType >
MatrixType capd::matrixAlgorithms::invLowerTriangleMatrix (const MatrixType &A)
 
template<typename MatrixType >
MatrixType capd::matrixAlgorithms::invUpperTriangleMatrix (const MatrixType &A)
 
template<typename MatrixType >
MatrixType capd::matrixAlgorithms::inverseMatrix (const MatrixType &A)
 
template<typename MatrixType >
MatrixType capd::matrixAlgorithms::gaussInverseMatrix (const MatrixType &A)
 
template<typename MatrixType >
MatrixType capd::matrixAlgorithms::matrixExp (const MatrixType &M, typename MatrixType::ScalarType tolerance=capd::TypeTraits< typename MatrixType::ScalarType >::epsilon())
 

Detailed Description

Author
The CAPD Group