42extern auto horner_ref(std::vector<double>& coeffs, std::vector<Vec2Ref>& vcoeffs,
91 -> std::pair<unsigned int, bool>;
110 return {
Vec2{s, -p},
Vec2{-p * vr.
y(), p * vr.x() + s}};
129 return mp.mdot(vA) / mp.det();
auto bairstow(const std::vector< double > &coeffs, Vec2 &vr, const Options &options) -> std::pair< unsigned int, bool >
Bairstow's method.
ginger::Vector2< double & > Vec2Ref
Definition bairstow.hpp:17
auto delta_ref(const Vec2Ref &vA, const Vec2 &vr, const Vec2Ref &vp) -> Vec2
Calculate Newton correction delta (reference-based)
Definition bairstow.hpp:127
auto makeadjoint_ref(const Vec2 &vr, const Vec2Ref &vp) -> Mat2
Create adjoint matrix from two vectors (reference-based)
Definition bairstow.hpp:107
auto horner_ref(std::vector< double > &coeffs, std::vector< Vec2Ref > &vcoeffs, std::size_t degree, const Vec2 &vr) -> Vec2Ref
Horner's rule (reference-based Vec2 version)
Options for convergence-based algorithms.
Definition config.hpp:15
Matrix2.
Definition matrix2.hpp:28
constexpr auto x() const -> const T1 &
Get the first column vector.
Definition matrix2.hpp:47
Vector2.
Definition vector2.hpp:19
constexpr auto y() const noexcept -> const T2 &
Definition vector2.hpp:81
2x2 matrix template for polynomial root-finding