Struct bacon_sci::polynomial::Polynomial [−][src]
pub struct Polynomial<N: ComplexField + FromPrimitive + Copy> where
<N as ComplexField>::RealField: FromPrimitive + Copy, { /* fields omitted */ }Expand description
Polynomial on a ComplexField.
Implementations
impl<N: ComplexField + FromPrimitive + Copy> Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Returns the zero polynomial on a given field with preallocated memory
Create a polynomial from a slice, with the first element of the slice being the highest power
pub fn set_tolerance(
&mut self,
tolerance: <N as ComplexField>::RealField
) -> Result<(), String>
Returns the coefficients in the correct order to recreate the polynomial with Polynomial::from_slice(data: &[N]);
Get the coefficient of a power
Make a polynomial complex
Evaluate a polynomial and its derivative at a value
Set a coefficient of a power in the polynomial
Remove the coefficient of a power in the polynomial
Remove all leading 0 coefficients
Get the derivative of the polynomial
Get the antiderivative of the polynomial with specified constant
Integrate this polynomial between to starting points
Divide this polynomial by another, getting a quotient and remainder, using tol to check for 0
Get the n (possibly including repeats) of the polynomial given n using Laguerre’s method
Get the polynomial in point form evaluated at roots of unity at k points where k is the smallest power of 2 greater than or equal to size
Trait Implementations
impl<N: ComplexField + FromPrimitive + Copy> Add<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Add<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the + operator.
Performs the + operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Add<&'_ Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Add<&'_ Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the + operator.
Performs the + operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Add<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Add<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the + operator.
Performs the + operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Add<N> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Add<N> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the + operator.
Performs the + operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Add<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Add<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the + operator.
Performs the + operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Add<Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Add<Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the + operator.
Performs the + operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> AddAssign<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> AddAssign<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the += operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> AddAssign<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> AddAssign<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the += operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> AddAssign<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> AddAssign<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the += operation. Read more
impl<N: Clone + ComplexField + FromPrimitive + Copy> Clone for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: Clone + ComplexField + FromPrimitive + Copy> Clone for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: Debug + ComplexField + FromPrimitive + Copy> Debug for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: Debug + ComplexField + FromPrimitive + Copy> Debug for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Default for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Default for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Div<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Div<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the / operator.
Performs the / operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Div<N> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Div<N> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the / operator.
Performs the / operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> DivAssign<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> DivAssign<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the /= operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> From<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> From<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the conversion.
Performs the conversion.
impl<N: ComplexField + FromPrimitive + Copy> FromIterator<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> FromIterator<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Creates a value from an iterator. Read more
impl<N: ComplexField + FromPrimitive + Copy> Mul<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Mul<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the * operator.
Performs the * operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Mul<&'_ Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Mul<&'_ Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the * operator.
Performs the * operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Mul<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Mul<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the * operator.
Performs the * operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Mul<N> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Mul<N> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the * operator.
Performs the * operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Mul<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Mul<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the * operator.
Performs the * operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Mul<Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Mul<Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the * operator.
Performs the * operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> MulAssign<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> MulAssign<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the *= operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> MulAssign<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> MulAssign<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the *= operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> MulAssign<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> MulAssign<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the *= operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Neg for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Neg for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the - operator.
Performs the unary - operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Neg for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Neg for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the - operator.
Performs the unary - operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Sub<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Sub<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the - operator.
Performs the - operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Sub<&'_ Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Sub<&'_ Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the - operator.
Performs the - operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Sub<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Sub<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the - operator.
Performs the - operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Sub<N> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Sub<N> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the - operator.
Performs the - operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Sub<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Sub<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the - operator.
Performs the - operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Sub<Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Sub<Polynomial<N>> for &Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
type Output = Polynomial<N>
type Output = Polynomial<N>
The resulting type after applying the - operator.
Performs the - operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> SubAssign<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> SubAssign<&'_ Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the -= operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> SubAssign<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> SubAssign<N> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the -= operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> SubAssign<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> SubAssign<Polynomial<N>> for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Performs the -= operation. Read more
impl<N: ComplexField + FromPrimitive + Copy> Zero for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
impl<N: ComplexField + FromPrimitive + Copy> Zero for Polynomial<N> where
<N as ComplexField>::RealField: FromPrimitive + Copy,
Auto Trait Implementations
impl<N> RefUnwindSafe for Polynomial<N> where
N: RefUnwindSafe,
<N as ComplexField>::RealField: RefUnwindSafe,
impl<N> Send for Polynomial<N>
impl<N> Sync for Polynomial<N>
impl<N> Unpin for Polynomial<N> where
N: Unpin,
<N as ComplexField>::RealField: Unpin,
impl<N> UnwindSafe for Polynomial<N> where
N: UnwindSafe,
<N as ComplexField>::RealField: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
The inverse inclusion map: attempts to construct self from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> bool
Checks if self is actually part of its subset T (and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SP
The inclusion map: converts self to the equivalent element of its superset.