pub trait Backend {
Show 123 methods
// Required methods
fn name(&self) -> &'static str;
fn has_cublas(&self) -> bool;
unsafe fn alloc(&self, n: usize) -> Result<BackendArray>;
fn alloc_and_store_zeros(&self, n: usize) -> Result<BackendArray>;
fn alloc_and_store(&self, elems: &[f32]) -> Result<BackendArray>;
fn load(&self, a: &BackendArray, elems: &mut [f32]) -> Result<()>;
fn store(&self, a: &BackendArray, elems: &[f32]) -> Result<()>;
fn copy(&self, a: &BackendArray, b: &BackendArray) -> Result<()>;
fn transpose_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn add_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn add_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn add_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn add_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sub_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sub_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sub_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sub_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn mul_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
l: usize,
) -> Result<()>;
fn mul_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
l: usize,
) -> Result<()>;
fn mul_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
l: usize,
) -> Result<()>;
fn mul_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
l: usize,
) -> Result<()>;
fn mul_a_b_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn mul_at_b_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn mul_a_bt_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn mul_at_bt_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn div_a_b_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn div_at_b_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn div_a_bt_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn div_at_bt_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn add_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn add_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sub_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sub_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn rsub_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn rsub_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn mul_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn mul_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn div_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn div_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn rdiv_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn rdiv_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sigmoid_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sigmoid_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn tanh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn tanh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn swish_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn swish_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn softmax_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn softmax_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sqrt_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sqrt_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn repeat_col_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn repeat_row_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn abs_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn abs_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn pow_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn pow_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn pow_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn pow_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn pow_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn pow_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn rpow_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn rpow_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn exp_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn exp_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn ln_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn ln_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn log2_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn log2_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn log10_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn log10_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sin_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sin_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn cos_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn cos_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn tan_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn tan_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn asin_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn asin_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn acos_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn acos_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atan_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atan_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atan2_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atan2_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atan2_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atan2_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atan2_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atan2_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn ratan2_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn ratan2_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sinh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn sinh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn cosh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn cosh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn asinh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn asinh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn acosh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn acosh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atanh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn atanh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn signum_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn signum_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn ceil_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn ceil_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn floor_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn floor_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn round_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn round_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn trunc_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn trunc_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn max_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn max_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn max_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn max_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn max_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn max_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn min_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn min_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn min_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn min_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn min_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
fn min_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>;
}Expand description
A backend trait.
The backend provides a low-level interface to computing platform (OpenCL or CUDA) for basic operations and functions on matrices. The backend methods operate on backend arrays which refers to areas of the device memory. The backend is low-level layer between a frontend and computing platform.
Required Methods§
Sourcefn has_cublas(&self) -> bool
fn has_cublas(&self) -> bool
Returns true if the backend uses cuBLAS, otherwise false.
Sourceunsafe fn alloc(&self, n: usize) -> Result<BackendArray>
unsafe fn alloc(&self, n: usize) -> Result<BackendArray>
Allocates a backend array.
Sourcefn alloc_and_store_zeros(&self, n: usize) -> Result<BackendArray>
fn alloc_and_store_zeros(&self, n: usize) -> Result<BackendArray>
Allocates a backend array and stores zeros in the backend array.
Sourcefn alloc_and_store(&self, elems: &[f32]) -> Result<BackendArray>
fn alloc_and_store(&self, elems: &[f32]) -> Result<BackendArray>
Allocates a backend array and stores the elements in the backend array.
Sourcefn load(&self, a: &BackendArray, elems: &mut [f32]) -> Result<()>
fn load(&self, a: &BackendArray, elems: &mut [f32]) -> Result<()>
Loads elements from the backenc array.
Sourcefn store(&self, a: &BackendArray, elems: &[f32]) -> Result<()>
fn store(&self, a: &BackendArray, elems: &[f32]) -> Result<()>
Stores elements in the backend array.
Sourcefn copy(&self, a: &BackendArray, b: &BackendArray) -> Result<()>
fn copy(&self, a: &BackendArray, b: &BackendArray) -> Result<()>
Copies the a backend array to the b backend array.
Sourcefn transpose_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn transpose_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Transposes the a matrix and then the result is in the b matrix
().
Sourcefn add_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn add_a_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Adds the b matrix to the a matrix and then the result is in the c matrix
().
Sourcefn add_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn add_at_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Adds the b matrix to the transposed a matrix and then the result is in the c matrix
().
Sourcefn add_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn add_a_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Adds the transposed b matrix to the a matrix and then the result is in the c matrix
().
Sourcefn add_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn add_at_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Adds the transposed b matrix to the transposed a matrix and then the result is in the
c matrix
().
Sourcefn sub_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sub_a_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Subtracts the b matrix from the a matrix and then the result is in the c matrix
().
Sourcefn sub_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sub_at_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Subtracts the b matrix from the transposed a matrix and then the result is in the c
matrix
().
Sourcefn sub_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sub_a_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Subtracts the transposed b matrix from the a matrix and then the result is in the c
matrix
().
Sourcefn sub_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sub_at_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Subtracts the transposed b matrix from the transposed a matrix and then the result is
in the c matrix
().
Sourcefn mul_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
l: usize,
) -> Result<()>
fn mul_a_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, l: usize, ) -> Result<()>
Multiplies the a matrix by the b matrix and then the result is in the c matrix
().
Sourcefn mul_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
l: usize,
) -> Result<()>
fn mul_at_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, l: usize, ) -> Result<()>
Multiplies the transposed a matrix by the b matrix and then the result is in the c
matrix
().
Sourcefn mul_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
l: usize,
) -> Result<()>
fn mul_a_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, l: usize, ) -> Result<()>
Multiplies the a matrix by the transposed b matrix and then the result is in the c
matrix
().
Sourcefn mul_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
l: usize,
) -> Result<()>
fn mul_at_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, l: usize, ) -> Result<()>
Multiplies the transposed a matrix by the transposed b matrix and then the result is in
the c matrix
().
Sourcefn mul_a_b_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn mul_a_b_for_elems( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Multiplies the a matrix elements by the b matrix elements and then the result is in the
c matrix
().
Sourcefn mul_at_b_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn mul_at_b_for_elems( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Multiplies the transposed a matrix elements by the b matrix elements and saves the
result to the c matrix
().
Sourcefn mul_a_bt_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn mul_a_bt_for_elems( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Multiplies the a matrix elements by the transposed b matrix elements and then the
result is in the c matrix
().
Sourcefn mul_at_bt_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn mul_at_bt_for_elems( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Multiplies the transposed a matrix elements by the transposed b matrix elements and
then the result is in the c matrix.
().
Sourcefn div_a_b_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn div_a_b_for_elems( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Divides the a matrix elements by the b matrix elements and then the result is in the
c matrix
().
Sourcefn div_at_b_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn div_at_b_for_elems( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Divides the transposed a matrix elements by the b matrix elements and then the result
is in the c matrix
().
Sourcefn div_a_bt_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn div_a_bt_for_elems( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Divides thea matrix elements by the transposed b matrix elements and then the result
is in the c matrix
().
Sourcefn div_at_bt_for_elems(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn div_at_bt_for_elems( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Divides the transposed a matrix elements by the transposed b matrix elements and then
the result is in the c matrix
().
Sourcefn add_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn add_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Adds the b scalar to the a matrix and then the result is in the c matrix
().
Sourcefn add_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn add_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Adds the b scalar to the transposed a matrix and then the result is in the c matrix
().
Sourcefn sub_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sub_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Subtracts the b scalar from the a matrix and then the result is in the c matrix.
().
Sourcefn sub_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sub_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Subtracts the b scalar from the transposed a matrix and then the result is in the c
matrix
().
Sourcefn rsub_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn rsub_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Subtracts the a matrix from the b scalar and then the result is in the c matrix
().
Sourcefn rsub_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn rsub_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Subtracts the transposed a matrix from the b scalar and then the result is in the c
matrix
().
Sourcefn mul_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn mul_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Multiplies the a matrix by the b scalar and then the result is in the c matrix
().
Sourcefn mul_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn mul_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Multiplies the transposed a matrix by the b scalar and then the result is in the c
matrix
().
Sourcefn div_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn div_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Divides the a matrix by the b scalar and then the result is in the c matrix
().
Sourcefn div_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn div_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Divides the transposed a matrix by the b scalar and then the result is in the c
matrix
().
Sourcefn rdiv_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn rdiv_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Divides the b scalar by the a matrix elements and then the result is in the c matrix
().
Sourcefn rdiv_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn rdiv_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Divides the b scalar by the transposed a matrix elements and then the result is in the
c matrix
().
Sourcefn sigmoid_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sigmoid_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates sigmoid function for the a matrix and then the result is in the b matrix
().
Sourcefn sigmoid_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sigmoid_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates sigmoid function for the transposed a matrix and then the result is in the
b matrix
().
Sourcefn tanh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn tanh_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates hyperbolic tangent function for the a matrix and then the result is in b
matrix
().
Sourcefn tanh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn tanh_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates hyperbolic tangent function for the transposed a matrix and then the result
is in the b matrix
().
Sourcefn swish_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn swish_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates swish function for the a matrix and then the result is in the b matrix
().
Sourcefn swish_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn swish_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates swish function for the transposed a matrix and then the result is in the b
matrix
().
Sourcefn softmax_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn softmax_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates softmax function for the a matrix and then the result is in the b matrix
().
Sourcefn softmax_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn softmax_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates softmax function for the transposed a matrix and then the result is in the b
matrix
().
Sourcefn sqrt_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sqrt_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates square roots of the a matrix elements and then the result is in the b matrix
().
Sourcefn sqrt_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sqrt_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates square roots of the transposed a matrix elements and then the result is in the
b matrix
().
Sourcefn repeat_col_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn repeat_col_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Repeats the a vector as column
().
Sourcefn repeat_row_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn repeat_row_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Repeats the a vector as row
().
Sourcefn abs_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn abs_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates absolute values of the a matrix elements and then the result is in the b
matrix
().
Sourcefn abs_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn abs_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates absolute values of the transposed a matrix elements and then the result is in
the b matrix
().
Sourcefn pow_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn pow_a_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Raises the a matrix elements to the power of the b matrix elements and then the result
is in the c matrix
().
Sourcefn pow_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn pow_at_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Raises the transposed a matrix elements to the power of the b matrix elements and then
the result is in the c matrix
().
Sourcefn pow_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn pow_a_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Raises the a matrix elements to the power of the transposed b matrix elements and then
the result is in the c matrix
().
Sourcefn pow_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn pow_at_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Raises the transposed a matrix elements to the power of the transposed b matrix
elements and then the result is in the c matrix
().
Sourcefn pow_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn pow_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Raises the a matrix elements to the power of the b scalar and then the result is in
the c matrix
().
Sourcefn pow_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn pow_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Raises the transposed a matrix elements to the power of the b scalar and then the
result is in the c matrix
().
Sourcefn rpow_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn rpow_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Raises the b scalar to the power of the a matrix elements and then the result is in
the c matrix
().
Sourcefn rpow_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn rpow_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Raises the b scalar to the power of the transposed a matrix elements and then the
result is in the c matrix
().
Sourcefn exp_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn exp_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates exponential function for the a matrix and then the result is in the b
matrix
().
Sourcefn exp_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn exp_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates exponential function for the transposed a matrix elements and then the result
is in the b matrix
().
Sourcefn ln_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn ln_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates natural logarithm of the a matrix elements and then the result is in the b
matrix
().
Sourcefn ln_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn ln_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates natural logarithm of the transposed a matrix elements and then the result is
in the b matrix
().
Sourcefn log2_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn log2_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates base 2 logarithm of the a matrix elements and then the result is in the b
matrix
().
Sourcefn log2_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn log2_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates base 2 logarithm of the transposed a matrix elements and then the result is
in the b matrix
().
Sourcefn log10_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn log10_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates base 10 logarithm of the a matrix elements and then the result is in the b
matrix
().
Sourcefn log10_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn log10_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates base 10 logarithm of the transposed a matrix elements and then the result is
in the b matrix
().
Sourcefn sin_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sin_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates sine function for the a matrix and then the result is in the b matrix
().
Sourcefn sin_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sin_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates sine function for the transposed a matrix and then the result is in the b
matrix
().
Sourcefn cos_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn cos_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates cosine function for the a matrix and then the result is in the b matrix
().
Sourcefn cos_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn cos_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates cosine function for the transposed a matrix and then the result is in the b
matrix
().
Sourcefn tan_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn tan_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates tangent function for the a matrix and then the result is in the b matrix
().
Sourcefn tan_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn tan_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates tangent function for the transposed a matrix and then the result is in the
b matrix
().
Sourcefn asin_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn asin_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arcsine function for the a matrix and then the result is in the b matrix
().
Sourcefn asin_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn asin_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arcsine function for the transposed a matrix and then the result is in the
b matrix
().
Sourcefn acos_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn acos_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arccosine function for the a matrix and then the result is in the b matrix
().
Sourcefn acos_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn acos_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arccosine function for the transposed a matrix and then the result is in the
b matrix
().
Sourcefn atan_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atan_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the a matrix and then the result is in the b matrix
().
Sourcefn atan_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atan_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the transposed a matrix and then the result is in the
b matrix
().
Sourcefn atan2_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atan2_a_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the a matrix elements and the b matrix elements and
then the result is in the c matrix
().
Sourcefn atan2_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atan2_at_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the transposed a matrix elements and the b matrix
elements and then the result is in the c matrix
().
Sourcefn atan2_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atan2_a_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the a matrix elements and the transposed b matrix
elements and then the result is in the c matrix
().
Sourcefn atan2_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atan2_at_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the transposeda matrix elements and the transposed
b matrix elements and then the result is in the c matrix
().
Sourcefn atan2_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atan2_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the a matrix elements and the b scalar and then the
result is in the c matrix
().
Sourcefn atan2_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atan2_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the transposed a matrix elements and the b scalar
and then the result is in the c matrix
().
Sourcefn ratan2_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn ratan2_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the b scalar and the a matrix elements and then the
result is in the c matrix
().
Sourcefn ratan2_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn ratan2_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates arctangent function for the b scalar and the transposed a matrix elements
and then the result is in the c matrix
().
Sourcefn sinh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sinh_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates hyperbolic sine function for the a matrix and then the result is in the b
matrix
().
Sourcefn sinh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn sinh_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates hyperbolic sine function for the transposed a matrix and then the result is
in the b matrix
().
Sourcefn cosh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn cosh_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates hyperbolic cosine function for the a matrix and then the result is in the b
matrix
().
Sourcefn cosh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn cosh_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates hyperbolic cosine function for the transposed a matrix and then the result is
in the b matrix
().
Sourcefn asinh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn asinh_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates inverse hyperbolic sine function for the a matrix and then the result is in
the b matrix
().
Sourcefn asinh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn asinh_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates inverse hyperbolic sine function for the transposed a matrix and then the
result is in the b matrix
().
Sourcefn acosh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn acosh_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates inverse hyperbolic cosine function for the a matrix and then the result is in
the b matrix
().
Sourcefn acosh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn acosh_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates inverse hyperbolic cosine function for the transposed a matrix and then the
result is in the b matrix
().
Sourcefn atanh_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atanh_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates inverse hyperbolic tangent function for the a matrix and then the result is
in the b matrix
().
Sourcefn atanh_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn atanh_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates inverse hyperbolic tangent function for the transposed a matrix and then the
result is in the b matrix
().
Sourcefn signum_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn signum_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates signum function for the a matrix and then the result is in the b matrix
().
Sourcefn signum_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn signum_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates signum function for the transposed a matrix and then the result is in the b
matrix
().
Sourcefn ceil_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn ceil_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates ceil function for the a matrix and then the result is in the b matrix
().
Sourcefn ceil_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn ceil_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates ceil function for the transposed a matrix and then the result is in the b
matrix
().
Sourcefn floor_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn floor_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates floor function for the a matrix and then the result is in the b matrix
().
Sourcefn floor_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn floor_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates floor function for the transposed a matrix and then the result is in the b
matrix
().
Sourcefn round_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn round_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates round function for the a matrix and then the result is in the b matrix
().
Sourcefn round_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn round_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates round function for the transposed a matrix and then the result is in the b
matrix
().
Sourcefn trunc_a(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn trunc_a( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates trunc function for the a matrix and then the result is in the b matrix
().
Sourcefn trunc_at(
&self,
a: &BackendArray,
b: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn trunc_at( &self, a: &BackendArray, b: &BackendArray, n: usize, m: usize, ) -> Result<()>
Calculates trunc function for the transposed a matrix and then the result is in the b
matrix
().
Sourcefn max_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn max_a_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds maximum values between the a matrix elements and the b matrix elements and then
the result is in the c matrix
().
Sourcefn max_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn max_at_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds maximum values between the transposed a matrix elements and the b matrix
elements and then the result is in the c matrix
().
Sourcefn max_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn max_a_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds maximum values between the a matrix elements and the transposed b matrix
elements and then the result is in the c matrix
().
Sourcefn max_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn max_at_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds maximum values between the transposed a matrix elements and the transposed b
matrix elements and then the result is in the c matrix
().
Sourcefn max_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn max_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds maximum values between the a matrix elements and the b scalar and then the
result is in the c matrix
().
Sourcefn max_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn max_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds maximum values between the transposed a matrix elements and the b scalar and
then the result is in the c matrix
().
Sourcefn min_a_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn min_a_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds minimum values between the a matrix elements and the b matrix elements and then
the result is in the c matrix
().
Sourcefn min_at_b(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn min_at_b( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds minimum values between the transposed a matrix elements and the b matrix
elements and then the result is in the c matrix
().
Sourcefn min_a_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn min_a_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds minimum values between the a matrix elements and the transposed b matrix
elements and then the result is in the c matrix
().
Sourcefn min_at_bt(
&self,
a: &BackendArray,
b: &BackendArray,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn min_at_bt( &self, a: &BackendArray, b: &BackendArray, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds minimum values between the transposed a matrix elements and the transposed b
matrix elements and then the result is in the c matrix
().
Sourcefn min_a_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn min_a_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds minimum values between the a matrix elements and the b scalar and then the
result is in the c matrix
().
Sourcefn min_at_b_for_scalar(
&self,
a: &BackendArray,
b: f32,
c: &BackendArray,
n: usize,
m: usize,
) -> Result<()>
fn min_at_b_for_scalar( &self, a: &BackendArray, b: f32, c: &BackendArray, n: usize, m: usize, ) -> Result<()>
Finds minimum values between the transposed a matrix elements and the b scalar and
then the result is in the c matrix
().