Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Data Structures | Namespaces | Functions
MathLin_EigenSearch.hxx File Reference
#include <MathUtils_Types.hxx>
#include <MathUtils_Config.hxx>
#include <math_Vector.hxx>
#include <math_Matrix.hxx>
#include <cmath>

Data Structures

struct  MathLin::EigenResult
 Result for eigenvalue decomposition of tridiagonal matrix. More...
 

Namespaces

namespace  MathLin
 
namespace  MathLin::Internal
 

Functions

double MathLin::Internal::Hypot (double theX, double theY)
 Computes sqrt(x*x + y*y) avoiding overflow/underflow.
 
int MathLin::Internal::FindSubmatrixEnd (const math_Vector &theDiag, const math_Vector &theSubdiag, int theStart, int theN)
 Finds the end of unreduced submatrix using deflation test.
 
double MathLin::Internal::ComputeWilkinsonShift (const math_Vector &theDiag, const math_Vector &theSubdiag, int theStart, int theEnd)
 Computes Wilkinson's shift for accelerated convergence.
 
bool MathLin::Internal::PerformQLStep (math_Vector &theDiag, math_Vector &theSubdiag, math_Matrix &theEigenVec, int theStart, int theEnd, double theShift, int theN)
 Performs a single QL step with implicit shift.
 
EigenResult MathLin::EigenTridiagonal (const math_Vector &theDiagonal, const math_Vector &theSubdiagonal, int theMaxIterations=30)
 Eigenvalue decomposition of symmetric tridiagonal matrix using QL algorithm.
 
math_Vector MathLin::GetEigenVector (const EigenResult &theResult, int theIndex)
 Get a single eigenvector from the result.