Spec-Zone.ru › Eigen3

Eigen::PolynomialSolver

шаблон<typename _Scalar, int _Deg>
класс Eigen::PolynomialSolver< _Scalar, _Deg >

Решатель полиномиальных уравнений.

Вычисляет комплексные корни вещественного полинома.

Параметры
_Scalar тип скаляра, т.е. тип коэффициентов полинома
_Deg степень полинома, может быть значением во время компиляции или Dynamic. Обратите внимание, что количество коэффициентов полинома равно _Deg+1.

Этот класс реализует решатель полиномиальных уравнений и предоставляет удобные методы, такие как

  • вещественные корни,
  • наибольшие и наименьшие комплексные корни,
  • вещественные корни с наибольшим и наименьшим абсолютным значением.
  • наибольшие и наименьшие вещественные корни.

ПРЕДУПРЕЖДЕНИЕ: этот решатель полиномиальных уравнений является экспериментальным, частью неподдерживаемых модулей Eigen.

В настоящее время используется алгоритм QR для вычисления собственных значений матрицы сопутствующих полиномов для вычисления его корней. Это предполагает, что все комплексные модули корней различны: например, не должно быть кратных корней или сопряженных корней. С плавающими типами с 32 битами (float) эта проблема часто встречается. Однако почти всегда достигается правильная точность даже в этих случаях для плавающих типов с 64 битами (double) и небольшой степени полинома (<20).

Inheritance graph
шаблон<typename OtherPolynomial >
void compute (const OtherPolynomial &poly)
- Публичные методы, унаследованные от Eigen::PolynomialSolverBase< _Scalar, _Deg >
const RealScalar & absGreatestRealRoot (bool &hasArealRoot, const RealScalar &absImaginaryThreshold=NumTraits< Scalar >::dummy_precision()) const
const RealScalar & absSmallestRealRoot (bool &hasArealRoot, const RealScalar &absImaginaryThreshold=NumTraits< Scalar >::dummy_precision()) const
const RealScalar & greatestRealRoot (bool &hasArealRoot, const RealScalar &absImaginaryThreshold=NumTraits< Scalar >::dummy_precision()) const
const RootType & greatestRoot () const
шаблон<typename Stl_back_insertion_sequence >
void realRoots (Stl_back_insertion_sequence &bi_seq, const RealScalar &absImaginaryThreshold=NumTraits< Scalar >::dummy_precision()) const
const RootsType & roots () const
const RealScalar & smallestRealRoot (bool &hasArealRoot, const RealScalar &absImaginaryThreshold=NumTraits< Scalar >::dummy_precision()) const
const RootType & smallestRoot () const

compute()

шаблон<typename _Scalar , int _Deg>
шаблон<typename OtherPolynomial >
void Eigen::PolynomialSolver< _Scalar, _Deg >::compute ( const OtherPolynomial & poly )
inline

Вычисляет комплексные корни нового полинома.


Документация для этого класса была сгенерирована из следующего файла:
  • PolynomialSolver.h

© Eigen.
Licensed under the MPL2 License.
https://eigen.tuxfamily.org/dox/unsupported/classEigen_1_1PolynomialSolver.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API