pub enum Elementary {
Show 24 variants
Sin(Arc<Elementary>),
Cos(Arc<Elementary>),
Tan(Arc<Elementary>),
Sec(Arc<Elementary>),
Csc(Arc<Elementary>),
Cot(Arc<Elementary>),
Asin(Arc<Elementary>),
Acos(Arc<Elementary>),
Atan(Arc<Elementary>),
Sinh(Arc<Elementary>),
Cosh(Arc<Elementary>),
Tanh(Arc<Elementary>),
Add(Arc<Elementary>, Arc<Elementary>),
Sub(Arc<Elementary>, Arc<Elementary>),
Mul(Arc<Elementary>, Arc<Elementary>),
Div(Arc<Elementary>, Arc<Elementary>),
Pow(Arc<Elementary>, Arc<Elementary>),
Log(Arc<Elementary>, Arc<Elementary>),
Factorial(Arc<Elementary>),
Gamma(Arc<Elementary>),
Polygamma(Arc<Elementary>, usize),
Abs(Arc<Elementary>),
Con(f64),
X,
}
Variants§
Sin(Arc<Elementary>)
Cos(Arc<Elementary>)
Tan(Arc<Elementary>)
Sec(Arc<Elementary>)
Csc(Arc<Elementary>)
Cot(Arc<Elementary>)
Asin(Arc<Elementary>)
Acos(Arc<Elementary>)
Atan(Arc<Elementary>)
Sinh(Arc<Elementary>)
Cosh(Arc<Elementary>)
Tanh(Arc<Elementary>)
Add(Arc<Elementary>, Arc<Elementary>)
Sub(Arc<Elementary>, Arc<Elementary>)
Mul(Arc<Elementary>, Arc<Elementary>)
Div(Arc<Elementary>, Arc<Elementary>)
Pow(Arc<Elementary>, Arc<Elementary>)
Log(Arc<Elementary>, Arc<Elementary>)
Factorial(Arc<Elementary>)
Gamma(Arc<Elementary>)
Polygamma(Arc<Elementary>, usize)
Abs(Arc<Elementary>)
Con(f64)
X
Implementations§
Source§impl Elementary
impl Elementary
pub fn derivative(self) -> Result<Elementary, Error>
pub fn derivative_unsimplified(self) -> Elementary
Source§impl Elementary
impl Elementary
pub fn expand_maclaurin(&self, order: u8) -> Result<SeriesExpansion, Error>
pub fn expand_taylor( &self, order: u8, centre: f64, ) -> Result<SeriesExpansion, Error>
Source§impl Elementary
impl Elementary
Source§impl Elementary
impl Elementary
pub fn simplify(&self) -> Result<Self, Error>
pub fn simplify_operations(&self) -> Result<Self, Error>
pub fn simplify_power(base: &Self, exp: &Self) -> Result<Self, Error>
pub fn divide(&self) -> Result<Self, Error>
pub fn factor(&self) -> Result<Vec<Self>, Error>
pub fn simplify_constant(&self) -> Result<Self, Error>
Trait Implementations§
Source§impl Add<&mut Elementary> for Elementary
impl Add<&mut Elementary> for Elementary
Source§impl Add<Elementary> for Arc<Elementary>
impl Add<Elementary> for Arc<Elementary>
Source§type Output = Elementary
type Output = Elementary
The resulting type after applying the
+
operator.Source§impl Add<f64> for Elementary
impl Add<f64> for Elementary
Source§impl Add for Elementary
impl Add for Elementary
Source§impl AddAssign for Elementary
impl AddAssign for Elementary
Source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
Performs the
+=
operation. Read moreSource§impl Clone for Elementary
impl Clone for Elementary
Source§fn clone(&self) -> Elementary
fn clone(&self) -> Elementary
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for Elementary
impl Debug for Elementary
Source§impl Div<&mut Elementary> for Elementary
impl Div<&mut Elementary> for Elementary
Source§impl Div<Elementary> for Arc<Elementary>
impl Div<Elementary> for Arc<Elementary>
Source§type Output = Elementary
type Output = Elementary
The resulting type after applying the
/
operator.Source§impl Div<f64> for Elementary
impl Div<f64> for Elementary
Source§impl Div for Elementary
impl Div for Elementary
Source§impl DivAssign for Elementary
impl DivAssign for Elementary
Source§fn div_assign(&mut self, rhs: Self)
fn div_assign(&mut self, rhs: Self)
Performs the
/=
operation. Read moreSource§impl<'a> From<&'a str> for Elementary
impl<'a> From<&'a str> for Elementary
Source§impl From<Elementary> for Function
impl From<Elementary> for Function
Source§fn from(value: Elementary) -> Self
fn from(value: Elementary) -> Self
Converts to this type from the input type.
Source§impl Integrate for Elementary
See Integrate for usage and examples.
impl Integrate for Elementary
See Integrate for usage and examples.
Source§impl Mul<&mut Elementary> for Elementary
impl Mul<&mut Elementary> for Elementary
Source§impl Mul<Elementary> for Arc<Elementary>
impl Mul<Elementary> for Arc<Elementary>
Source§type Output = Elementary
type Output = Elementary
The resulting type after applying the
*
operator.Source§impl Mul<f64> for Elementary
impl Mul<f64> for Elementary
Source§impl Mul for Elementary
impl Mul for Elementary
Source§impl MulAssign for Elementary
impl MulAssign for Elementary
Source§fn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
Performs the
*=
operation. Read moreSource§impl PartialEq for Elementary
impl PartialEq for Elementary
Source§impl Sub<Elementary> for Arc<Elementary>
impl Sub<Elementary> for Arc<Elementary>
Source§type Output = Elementary
type Output = Elementary
The resulting type after applying the
-
operator.Source§impl Sub<f64> for Elementary
impl Sub<f64> for Elementary
Source§impl Sub for Elementary
impl Sub for Elementary
Source§impl Sum for Elementary
impl Sum for Elementary
impl StructuralPartialEq for Elementary
Auto Trait Implementations§
impl Freeze for Elementary
impl RefUnwindSafe for Elementary
impl Send for Elementary
impl Sync for Elementary
impl Unpin for Elementary
impl UnwindSafe for Elementary
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more