[][src]Trait series::MulInverse

pub trait MulInverse {
    type Output;
    fn mul_inverse(self) -> Self::Output;
}

Multiplicative inverse

Associated Types

type Output

Loading content...

Required methods

fn mul_inverse(self) -> Self::Output

Loading content...

Implementors

impl<'a, Var, C> MulInverse for SeriesSlice<'a, Var, C> where
    Var: Clone,
    C: Coeff + SubAssign,
    &'b C: Div<Output = C> + Mul<Output = C>, 
[src]

type Output = Series<Var, C>

impl<'a, Var: Clone, C: Coeff + SubAssign> MulInverse for &'a Series<Var, C> where
    Var: Clone,
    C: Coeff + SubAssign,
    &'c C: Div<Output = C> + Mul<Output = C>, 
[src]

type Output = Series<Var, C>

fn mul_inverse(self) -> Self::Output[src]

Compute 1/s for a series s

Example

use series::MulInverse;
let s = series::Series::new("x", -1, vec!(1.,2.,3.));
let s_inv = (&s).mul_inverse();
let one = series::Series::new("x", 0, vec!(1.,0.,0.));
assert_eq!(s * s_inv, one);

impl<Var: Clone, C: Coeff + SubAssign> MulInverse for Series<Var, C> where
    &'a Series<Var, C>: MulInverse<Output = Series<Var, C>>, 
[src]

type Output = Series<Var, C>

fn mul_inverse(self) -> Self::Output[src]

Compute 1/s for a series s

Example

use series::MulInverse;
let s = series::Series::new("x", -1, vec!(1.,2.,3.));
let s_inv = s.clone().mul_inverse();
let one = series::Series::new("x", 0, vec!(1.,0.,0.));
assert_eq!(s * s_inv, one);
Loading content...