Trait gad::analytic::AnalyticAlgebra [−][src]
pub trait AnalyticAlgebra<Value> { fn exp(&mut self, v: &Value) -> Value; fn log(&mut self, v: &Value) -> Value; fn log1p(&mut self, v: &Value) -> Value; fn sin(&mut self, v: &Value) -> Value; fn cos(&mut self, v: &Value) -> Value; fn tanh(&mut self, v: &Value) -> Value; fn sigmoid(&mut self, v: &Value) -> Value; fn reciprocal(&mut self, v: &Value) -> Value; fn sqrt(&mut self, v: &Value) -> Value; fn div(&mut self, v0: &Value, v1: &Value) -> Result<Value>; fn pow(&mut self, v: &Value, p: &Value) -> Result<Value>
where
Self: ArithAlgebra<Value>, { ... } }
Element-wise analytic functions.
Required methods
fn exp(&mut self, v: &Value) -> Value
[src]
Element-wise natural logarithm exp(x)
.
fn log(&mut self, v: &Value) -> Value
[src]
Element-wise natural logarithm log(x)
.
fn log1p(&mut self, v: &Value) -> Value
[src]
Element-wise natural logarithm shifted by one log(1 + x)
.
fn sin(&mut self, v: &Value) -> Value
[src]
Element-wise sinus sin(x)
.
fn cos(&mut self, v: &Value) -> Value
[src]
Element-wise cosinus cos(x)
.
fn tanh(&mut self, v: &Value) -> Value
[src]
Element-wise hyperbolic tangent tanh(x)
.
fn sigmoid(&mut self, v: &Value) -> Value
[src]
Element-wise sigmoid 1 / (1 + exp(-x))
.
fn reciprocal(&mut self, v: &Value) -> Value
[src]
Element-wise reciprocal 1/x
.
fn sqrt(&mut self, v: &Value) -> Value
[src]
Element-wise square root sqrt(x)
.
fn div(&mut self, v0: &Value, v1: &Value) -> Result<Value>
[src]
Element-wise division x / y
.
Provided methods
fn pow(&mut self, v: &Value, p: &Value) -> Result<Value> where
Self: ArithAlgebra<Value>,
[src]
Self: ArithAlgebra<Value>,
Element-wise power x ^ p
.
Implementors
impl AnalyticAlgebra<()> for Check
[src]
impl AnalyticAlgebra<()> for Check
[src]fn exp(&mut self, _v: &())
[src]
fn log(&mut self, _v: &())
[src]
fn log1p(&mut self, _v: &())
[src]
fn sin(&mut self, _v: &())
[src]
fn cos(&mut self, _v: &())
[src]
fn tanh(&mut self, _v: &())
[src]
fn sigmoid(&mut self, _v: &())
[src]
fn reciprocal(&mut self, _v: &())
[src]
fn sqrt(&mut self, _v: &())
[src]
fn div(&mut self, _v0: &(), _v1: &()) -> Result<()>
[src]
fn pow(&mut self, _v0: &(), _v1: &()) -> Result<()>
[src]
impl<D, E, Dims> AnalyticAlgebra<Value<D>> for Graph<Config1<E>> where
E: Default + Clone + CoreAlgebra<D, Value = D> + AnalyticAlgebra<D> + ArithAlgebra<D> + ConstArithAlgebra<D, i16> + LinkedAlgebra<Value<D>, D>,
D: HasDims<Dims = Dims> + Clone + 'static + Send + Sync,
Dims: PartialEq + Debug + Clone + 'static + Send + Sync,
[src]
impl<D, E, Dims> AnalyticAlgebra<Value<D>> for Graph<Config1<E>> where
E: Default + Clone + CoreAlgebra<D, Value = D> + AnalyticAlgebra<D> + ArithAlgebra<D> + ConstArithAlgebra<D, i16> + LinkedAlgebra<Value<D>, D>,
D: HasDims<Dims = Dims> + Clone + 'static + Send + Sync,
Dims: PartialEq + Debug + Clone + 'static + Send + Sync,
[src]fn exp(&mut self, v: &Value<D>) -> Value<D>
[src]
fn log(&mut self, v: &Value<D>) -> Value<D>
[src]
fn log1p(&mut self, v: &Value<D>) -> Value<D>
[src]
fn sin(&mut self, v: &Value<D>) -> Value<D>
[src]
fn cos(&mut self, v: &Value<D>) -> Value<D>
[src]
fn tanh(&mut self, v: &Value<D>) -> Value<D>
[src]
fn sigmoid(&mut self, v: &Value<D>) -> Value<D>
[src]
fn reciprocal(&mut self, v: &Value<D>) -> Value<D>
[src]
fn sqrt(&mut self, v: &Value<D>) -> Value<D>
[src]
fn div(&mut self, v0: &Value<D>, v1: &Value<D>) -> Result<Value<D>>
[src]
impl<D, E, Dims> AnalyticAlgebra<Value<D>> for Graph<ConfigN<E>> where
E: Default + Clone + CoreAlgebra<D, Value = D> + AnalyticAlgebra<D> + ArithAlgebra<D> + ConstArithAlgebra<D, i16> + LinkedAlgebra<Value<D>, D>,
D: HasDims<Dims = Dims> + Clone + 'static + Send + Sync,
Dims: PartialEq + Debug + Clone + 'static + Send + Sync,
[src]
impl<D, E, Dims> AnalyticAlgebra<Value<D>> for Graph<ConfigN<E>> where
E: Default + Clone + CoreAlgebra<D, Value = D> + AnalyticAlgebra<D> + ArithAlgebra<D> + ConstArithAlgebra<D, i16> + LinkedAlgebra<Value<D>, D>,
D: HasDims<Dims = Dims> + Clone + 'static + Send + Sync,
Dims: PartialEq + Debug + Clone + 'static + Send + Sync,
[src]fn exp(&mut self, v: &Value<D>) -> Value<D>
[src]
fn log(&mut self, v: &Value<D>) -> Value<D>
[src]
fn log1p(&mut self, v: &Value<D>) -> Value<D>
[src]
fn sin(&mut self, v: &Value<D>) -> Value<D>
[src]
fn cos(&mut self, v: &Value<D>) -> Value<D>
[src]
fn tanh(&mut self, v: &Value<D>) -> Value<D>
[src]
fn sigmoid(&mut self, v: &Value<D>) -> Value<D>
[src]
fn reciprocal(&mut self, v: &Value<D>) -> Value<D>
[src]
fn sqrt(&mut self, v: &Value<D>) -> Value<D>
[src]
fn div(&mut self, v0: &Value<D>, v1: &Value<D>) -> Result<Value<D>>
[src]
impl<T> AnalyticAlgebra<T> for Eval where
T: Number + Float,
[src]
impl<T> AnalyticAlgebra<T> for Eval where
T: Number + Float,
[src]