Skip to main content

Crate ginger

Crate ginger 

Source
Expand description

§Ginger-rs

This crate provides implementations of polynomial root finding algorithms.

§Modules

  • aberth - Implements the Aberth method for finding the roots of a polynomial.
  • horner - Implements Horner’s method for polynomial evaluation.
  • matrix2 - Implements a simple 2x2 matrix.
  • rootfinding - Implements the Bairstow’s method for finding the roots of a polynomial.
  • leja_order - Implements the Leja ordering.
  • vector2 - Implements a simple 2D vector.
  • vector2_ref - Implements a simple 2D vector reference.

Re-exports§

pub use crate::aberth::aberth;
pub use crate::aberth::aberth_atomic;
pub use crate::aberth::aberth_autocorr;
pub use crate::aberth::aberth_mt;
pub use crate::aberth::initial_aberth;
pub use crate::aberth::initial_aberth_autocorr;
pub use crate::aberth::poly_from_autocorr_roots;
pub use crate::aberth::poly_from_roots;
pub use crate::autocorr::extract_autocorr;
pub use crate::autocorr::initial_autocorr;
pub use crate::autocorr::pbairstow_autocorr;
pub use crate::autocorr::pbairstow_autocorr_atomic;
pub use crate::autocorr::pbairstow_autocorr_mt;
pub use crate::autocorr::poly_from_autocorr_factors;
pub use crate::execution_policy::should_parallelize;
pub use crate::execution_policy::AtomicCell;
pub use crate::execution_policy::PARALLEL_THRESHOLD;
pub use crate::horner::horner_eval_c;
pub use crate::horner::horner_eval_f;
pub use crate::matrix2::Matrix2;
pub use crate::rootfinding::initial_guess;
pub use crate::rootfinding::pbairstow_even;
pub use crate::rootfinding::pbairstow_even_atomic;
pub use crate::rootfinding::pbairstow_even_mt;
pub use crate::rootfinding::poly_from_quadratic_factors;
pub use crate::rootfinding::Options;
pub use crate::rootfinding::Vec2;
pub use crate::scaling::derivative_coeffs;
pub use crate::scaling::residual_scale;
pub use crate::scaling::scaled_coeffs;
pub use crate::seqlock::AtomicComplex;
pub use crate::seqlock::AtomicVec2;
pub use crate::solve::solve_aberth;
pub use crate::solve::solve_aberth_autocorr;
pub use crate::solve::solve_pbairstow_autocorr;
pub use crate::solve::solve_pbairstow_even;
pub use crate::solve::SolveMode;
pub use crate::vector2::Vector2;

Modules§

aberth
This module implements the Aberth method for finding the roots of a polynomial.
autocorr
This module implements Bairstow’s method for auto-correlation (palindromic) polynomials. Auto-correlation polynomial root-finding (palindromic polynomials).
execution_policy
This module provides the execution policies (sequential / Jacobi-MT / atomic). Execution policies for parallelizable root-finding solvers.
horner
This module implements Horner’s method for polynomial evaluation.
leja_order
This module implements the Leja ordering.
matrix2
This module implements a simple 2x2 matrix.
rootfinding
This module implements the Bairstow’s method for finding the roots of a polynomial.
scaling
This module provides coefficient scaling for scale-invariant convergence. Coefficient scaling that makes the convergence test scale-invariant.
seqlock
This module provides seqlock-based atomic pairs for the atomic multi-threading method. Seqlock-based atomic pairs for the atomic multi-threading method.
solve
This module provides the facade entry points with auto policy selection. Facade entry points that auto-select the execution policy.
tables
This module provides precomputed low-discrepancy sequence table lookups.
vector2
This module implements a simple 2D vector.
vector2_ref
This module implements a simple 2D vector reference.