Laguerre polynomials
Loading...
Searching...
No Matches
Laguerre::ModifiedLaguerre13< T > Class Template Reference

#include <Laguerre13m.h>

Inheritance diagram for Laguerre::ModifiedLaguerre13< T >:
BaseSolver< T >

Public Member Functions

 ModifiedLaguerre13 ()
 
void operator() (std::vector< T > &poly, std::vector< std::complex< T > > &roots, std::vector< int > &conv, int itmax=80) override
 Find the roots of a polynomial using Laguerre's method.
 

Private Member Functions

void laguer13 (const std::vector< std::complex< T > > &a, std::complex< T > &x, int &lam)
 Laguerre's method to find a root of a polynomial.
 

Static Private Attributes

static constexpr T eps = std::numeric_limits<T>::epsilon()
 

Constructor & Destructor Documentation

◆ ModifiedLaguerre13()

template<typename T >
Laguerre::ModifiedLaguerre13< T >::ModifiedLaguerre13 ( )
inline

Member Function Documentation

◆ laguer13()

template<typename T >
void Laguerre::ModifiedLaguerre13< T >::laguer13 ( const std::vector< std::complex< T > > & a,
std::complex< T > & x,
int & lam )
inlineprivate

Laguerre's method to find a root of a polynomial.

Parameters
aPolynomial object.
xInitial guess for the root.

◆ operator()()

template<typename T >
void Laguerre::ModifiedLaguerre13< T >::operator() ( std::vector< T > & poly,
std::vector< std::complex< T > > & roots,
std::vector< int > & conv,
int itmax = 80 )
inlineoverridevirtual

Find the roots of a polynomial using Laguerre's method.

Parameters
polyPolynomial object.
rootsVector to store the roots.
convVector to store convergence status of each root.
itmaxMaximum number of iterations.

Implements BaseSolver< T >.

Member Data Documentation

◆ eps

template<typename T >
constexpr T Laguerre::ModifiedLaguerre13< T >::eps = std::numeric_limits<T>::epsilon()
staticconstexprprivate

The documentation for this class was generated from the following file: