[−][src]Struct quick_maths::autodiff::Var
A tracked variable which can be differentiated.
Implementations
impl Var
[src]
pub fn new(v: ScalarFloat) -> Self
[src]
Creates an instance of a variable
pub fn backwards(&self)
[src]
Computes the relationship of all variables used to this variable.
pub fn grad_wrt(&self) -> ScalarFloat
[src]
Returns the gradient of this variable w.r.t the variable that had backward most recently called on it.
Trait Implementations
impl Add<Var> for Var
[src]
type Output = Var
The resulting type after applying the +
operator.
fn add(self, rhs: Var) -> Self::Output
[src]
impl Add<f32> for Var
[src]
type Output = Var
The resulting type after applying the +
operator.
fn add(self, rhs: ScalarFloat) -> Self::Output
[src]
impl Clone for Var
[src]
impl Copy for Var
[src]
impl Debug for Var
[src]
impl Div<Var> for Var
[src]
type Output = Var
The resulting type after applying the /
operator.
fn div(self, rhs: Var) -> Self::Output
[src]
impl Div<f32> for Var
[src]
type Output = Var
The resulting type after applying the /
operator.
fn div(self, rhs: ScalarFloat) -> Self::Output
[src]
impl Float for Var
[src]
fn nan() -> Self
[src]
fn infinity() -> Self
[src]
fn neg_infinity() -> Self
[src]
fn neg_zero() -> Self
[src]
fn min_value() -> Self
[src]
fn max_value() -> Self
[src]
fn min_positive_value() -> Self
[src]
fn ln(self) -> Self
[src]
fn log2(self) -> Self
[src]
fn log10(self) -> Self
[src]
fn classify(self) -> FpCategory
[src]
fn integer_decode(self) -> (u64, i16, i8)
[src]
fn mul_add(self, mul: Self, add: Self) -> Self
[src]
fn log(self, base: Self) -> Self
[src]
Taking the log w.r.t. an arbitrary base is currently unsupported So it assumes that base is fixed.
fn ln_1p(self) -> Self
[src]
fn exp(self) -> Self
[src]
fn exp2(self) -> Self
[src]
fn exp_m1(self) -> Self
[src]
fn sqrt(self) -> Self
[src]
fn cbrt(self) -> Self
[src]
fn abs(self) -> Self
[src]
fn abs_sub(self, o: Self) -> Self
[src]
fn sin(self) -> Self
[src]
fn asin(self) -> Self
[src]
fn cos(self) -> Self
[src]
fn acos(self) -> Self
[src]
fn tan(self) -> Self
[src]
fn atan(self) -> Self
[src]
fn sin_cos(self) -> (Self, Self)
[src]
fn tanh(self) -> Self
[src]
fn sinh(self) -> Self
[src]
fn cosh(self) -> Self
[src]
fn hypot(self, o: Self) -> Self
[src]
fn atan2(self, o: Self) -> Self
[src]
fn asinh(self) -> Self
[src]
fn acosh(self) -> Self
[src]
fn atanh(self) -> Self
[src]
fn recip(self) -> Self
[src]
fn floor(self) -> Self
[src]
fn ceil(self) -> Self
[src]
fn round(self) -> Self
[src]
fn signum(self) -> Self
[src]
fn trunc(self) -> Self
[src]
fn fract(self) -> Self
[src]
fn is_finite(self) -> bool
[src]
fn is_infinite(self) -> bool
[src]
fn is_nan(self) -> bool
[src]
fn is_sign_positive(self) -> bool
[src]
fn is_sign_negative(self) -> bool
[src]
fn is_normal(self) -> bool
[src]
fn powf(self, exp: Self) -> Self
[src]
Treats exp as a constant
fn powi(self, exp: i32) -> Self
[src]
fn max(self, o: Self) -> Self
[src]
fn min(self, o: Self) -> Self
[src]
fn epsilon() -> Self
[src]
fn to_degrees(self) -> Self
[src]
fn to_radians(self) -> Self
[src]
impl Mul<Var> for Var
[src]
type Output = Var
The resulting type after applying the *
operator.
fn mul(self, rhs: Var) -> Self::Output
[src]
impl Mul<f32> for Var
[src]
type Output = Var
The resulting type after applying the *
operator.
fn mul(self, rhs: ScalarFloat) -> Self::Output
[src]
impl Neg for Var
[src]
impl Num for Var
[src]
type FromStrRadixErr = ()
fn from_str_radix(_s: &str, _radix: u32) -> Result<Self, Self::FromStrRadixErr>
[src]
impl NumCast for Var
[src]
fn from<T: ToPrimitive>(n: T) -> Option<Self>
[src]
impl One for Var
[src]
impl PartialEq<Var> for Var
[src]
impl PartialOrd<Var> for Var
[src]
fn partial_cmp(&self, o: &Self) -> Option<Ordering>
[src]
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
impl Rem<Var> for Var
[src]
type Output = Var
The resulting type after applying the %
operator.
fn rem(self, rhs: Var) -> Self::Output
[src]
impl Rem<f32> for Var
[src]
type Output = Var
The resulting type after applying the %
operator.
fn rem(self, rhs: ScalarFloat) -> Self::Output
[src]
impl Sub<Var> for Var
[src]
type Output = Var
The resulting type after applying the -
operator.
fn sub(self, rhs: Var) -> Self::Output
[src]
impl Sub<f32> for Var
[src]
type Output = Var
The resulting type after applying the -
operator.
fn sub(self, rhs: ScalarFloat) -> Self::Output
[src]
impl ToPrimitive for Var
[src]
fn to_i64(&self) -> Option<i64>
[src]
fn to_u64(&self) -> Option<u64>
[src]
fn to_isize(&self) -> Option<isize>
[src]
fn to_i8(&self) -> Option<i8>
[src]
fn to_i16(&self) -> Option<i16>
[src]
fn to_i32(&self) -> Option<i32>
[src]
fn to_i128(&self) -> Option<i128>
[src]
fn to_usize(&self) -> Option<usize>
[src]
fn to_u8(&self) -> Option<u8>
[src]
fn to_u16(&self) -> Option<u16>
[src]
fn to_u32(&self) -> Option<u32>
[src]
fn to_u128(&self) -> Option<u128>
[src]
fn to_f32(&self) -> Option<f32>
[src]
fn to_f64(&self) -> Option<f64>
[src]
impl Zero for Var
[src]
Auto Trait Implementations
impl RefUnwindSafe for Var
impl Send for Var
impl Sync for Var
impl Unpin for Var
impl UnwindSafe for Var
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Float for T where
T: Float + Debug,
[src]
T: Float + Debug,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, Rhs, Output> NumOps<Rhs, Output> for T where
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,
[src]
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,
impl<T> Real for T where
T: Float,
[src]
T: Float,
fn min_value() -> T
[src]
fn min_positive_value() -> T
[src]
fn epsilon() -> T
[src]
fn max_value() -> T
[src]
fn floor(self) -> T
[src]
fn ceil(self) -> T
[src]
fn round(self) -> T
[src]
fn trunc(self) -> T
[src]
fn fract(self) -> T
[src]
fn abs(self) -> T
[src]
fn signum(self) -> T
[src]
fn is_sign_positive(self) -> bool
[src]
fn is_sign_negative(self) -> bool
[src]
fn mul_add(self, a: T, b: T) -> T
[src]
fn recip(self) -> T
[src]
fn powi(self, n: i32) -> T
[src]
fn powf(self, n: T) -> T
[src]
fn sqrt(self) -> T
[src]
fn exp(self) -> T
[src]
fn exp2(self) -> T
[src]
fn ln(self) -> T
[src]
fn log(self, base: T) -> T
[src]
fn log2(self) -> T
[src]
fn log10(self) -> T
[src]
fn to_degrees(self) -> T
[src]
fn to_radians(self) -> T
[src]
fn max(self, other: T) -> T
[src]
fn min(self, other: T) -> T
[src]
fn abs_sub(self, other: T) -> T
[src]
fn cbrt(self) -> T
[src]
fn hypot(self, other: T) -> T
[src]
fn sin(self) -> T
[src]
fn cos(self) -> T
[src]
fn tan(self) -> T
[src]
fn asin(self) -> T
[src]
fn acos(self) -> T
[src]
fn atan(self) -> T
[src]
fn atan2(self, other: T) -> T
[src]
fn sin_cos(self) -> (T, T)
[src]
fn exp_m1(self) -> T
[src]
fn ln_1p(self) -> T
[src]
fn sinh(self) -> T
[src]
fn cosh(self) -> T
[src]
fn tanh(self) -> T
[src]
fn asinh(self) -> T
[src]
fn acosh(self) -> T
[src]
fn atanh(self) -> T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,