pub struct TensorVector<T>(/* private fields */)
where
T: Tensor;Implementations§
Source§impl<const D: usize, const I: usize> TensorVector<TensorRank1<D, I>>
impl<const D: usize, const I: usize> TensorVector<TensorRank1<D, I>>
Source§impl<const D: usize, const I: usize, const J: usize> TensorVector<TensorRank2<D, I, J>>
impl<const D: usize, const I: usize, const J: usize> TensorVector<TensorRank2<D, I, J>>
Source§impl<const D: usize, const I: usize, const J: usize> TensorVector<TensorVector<TensorRank2<D, I, J>>>
impl<const D: usize, const I: usize, const J: usize> TensorVector<TensorVector<TensorRank2<D, I, J>>>
Trait Implementations§
Source§impl<T> Add<&TensorVector<T>> for TensorVector<T>where
T: Tensor,
impl<T> Add<&TensorVector<T>> for TensorVector<T>where
T: Tensor,
Source§impl<T> Add for TensorVector<T>where
T: Tensor,
impl<T> Add for TensorVector<T>where
T: Tensor,
Source§impl<T> AddAssign<&TensorVector<T>> for TensorVector<T>where
T: Tensor,
impl<T> AddAssign<&TensorVector<T>> for TensorVector<T>where
T: Tensor,
Source§fn add_assign(&mut self, tensor_vec: &Self)
fn add_assign(&mut self, tensor_vec: &Self)
Performs the
+= operation. Read moreSource§impl<T> AddAssign for TensorVector<T>where
T: Tensor,
impl<T> AddAssign for TensorVector<T>where
T: Tensor,
Source§fn add_assign(&mut self, tensor_vec: Self)
fn add_assign(&mut self, tensor_vec: Self)
Performs the
+= operation. Read moreSource§impl<T> Clone for TensorVector<T>
impl<T> Clone for TensorVector<T>
Source§fn clone(&self) -> TensorVector<T>
fn clone(&self) -> TensorVector<T>
Returns a duplicate 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<T> Debug for TensorVector<T>
impl<T> Debug for TensorVector<T>
Source§impl<T> Default for TensorVector<T>where
T: Tensor,
impl<T> Default for TensorVector<T>where
T: Tensor,
Source§impl<T> Display for TensorVector<T>where
T: Tensor,
impl<T> Display for TensorVector<T>where
T: Tensor,
Source§impl<T> Div<&f64> for TensorVector<T>where
T: Tensor,
impl<T> Div<&f64> for TensorVector<T>where
T: Tensor,
Source§type Output = TensorVector<T>
type Output = TensorVector<T>
The resulting type after applying the
/ operator.Source§impl<const D: usize, const I: usize, const J: usize> Div<TensorVector<TensorVector<TensorRank2<D, I, J>>>> for &TensorRank1Vec<D, I>
impl<const D: usize, const I: usize, const J: usize> Div<TensorVector<TensorVector<TensorRank2<D, I, J>>>> for &TensorRank1Vec<D, I>
Source§type Output = TensorVector<TensorRank1<D, J>>
type Output = TensorVector<TensorRank1<D, J>>
The resulting type after applying the
/ operator.Source§impl<T> Div<f64> for TensorVector<T>where
T: Tensor,
impl<T> Div<f64> for TensorVector<T>where
T: Tensor,
Source§type Output = TensorVector<T>
type Output = TensorVector<T>
The resulting type after applying the
/ operator.Source§impl<T> DivAssign<&f64> for TensorVector<T>where
T: Tensor,
impl<T> DivAssign<&f64> for TensorVector<T>where
T: Tensor,
Source§fn div_assign(&mut self, tensor_rank_0: &TensorRank0)
fn div_assign(&mut self, tensor_rank_0: &TensorRank0)
Performs the
/= operation. Read moreSource§impl<T> DivAssign<f64> for TensorVector<T>where
T: Tensor,
impl<T> DivAssign<f64> for TensorVector<T>where
T: Tensor,
Source§fn div_assign(&mut self, tensor_rank_0: TensorRank0)
fn div_assign(&mut self, tensor_rank_0: TensorRank0)
Performs the
/= operation. Read moreSource§impl From<TensorVector<TensorRank1<3, 0>>> for TensorRank1Vec<3, 1>
impl From<TensorVector<TensorRank1<3, 0>>> for TensorRank1Vec<3, 1>
Source§fn from(tensor_rank_1_vec: TensorRank1Vec<3, 0>) -> Self
fn from(tensor_rank_1_vec: TensorRank1Vec<3, 0>) -> Self
Converts to this type from the input type.
Source§impl From<TensorVector<TensorRank1<3, 1>>> for TensorRank1Vec<3, 0>
impl From<TensorVector<TensorRank1<3, 1>>> for TensorRank1Vec<3, 0>
Source§fn from(tensor_rank_1_vec: TensorRank1Vec<3, 1>) -> Self
fn from(tensor_rank_1_vec: TensorRank1Vec<3, 1>) -> Self
Converts to this type from the input type.
Source§impl<const D: usize, const I: usize> From<TensorVector<TensorRank1<D, I>>> for Vec<[TensorRank0; D]>
impl<const D: usize, const I: usize> From<TensorVector<TensorRank1<D, I>>> for Vec<[TensorRank0; D]>
Source§fn from(tensor_rank_1_vec: TensorRank1Vec<D, I>) -> Self
fn from(tensor_rank_1_vec: TensorRank1Vec<D, I>) -> Self
Converts to this type from the input type.
Source§impl<const D: usize, const I: usize> From<TensorVector<TensorRank1<D, I>>> for Vec<Vec<TensorRank0>>
impl<const D: usize, const I: usize> From<TensorVector<TensorRank1<D, I>>> for Vec<Vec<TensorRank0>>
Source§fn from(tensor_rank_1_vec: TensorRank1Vec<D, I>) -> Self
fn from(tensor_rank_1_vec: TensorRank1Vec<D, I>) -> Self
Converts to this type from the input type.
Source§impl<const D: usize, const I: usize> From<TensorVector<TensorRank1<D, I>>> for Vector
impl<const D: usize, const I: usize> From<TensorVector<TensorRank1<D, I>>> for Vector
Source§fn from(tensor_rank_1_vec: TensorRank1Vec<D, I>) -> Self
fn from(tensor_rank_1_vec: TensorRank1Vec<D, I>) -> Self
Converts to this type from the input type.
Source§impl<const D: usize, const I: usize, const J: usize> From<TensorVector<TensorVector<TensorRank2<D, I, J>>>> for SquareMatrix
impl<const D: usize, const I: usize, const J: usize> From<TensorVector<TensorVector<TensorRank2<D, I, J>>>> for SquareMatrix
Source§fn from(tensor_rank_2_vec_2d: TensorRank2Vec2D<D, I, J>) -> Self
fn from(tensor_rank_2_vec_2d: TensorRank2Vec2D<D, I, J>) -> Self
Converts to this type from the input type.
Source§impl<T> FromIterator<T> for TensorVector<T>where
T: Tensor,
impl<T> FromIterator<T> for TensorVector<T>where
T: Tensor,
Source§fn from_iter<Ii: IntoIterator<Item = T>>(into_iterator: Ii) -> Self
fn from_iter<Ii: IntoIterator<Item = T>>(into_iterator: Ii) -> Self
Creates a value from an iterator. Read more
Source§impl<T> IntoIterator for TensorVector<T>where
T: Tensor,
impl<T> IntoIterator for TensorVector<T>where
T: Tensor,
Source§impl<const D: usize, const I: usize> Mul<&TensorVector<TensorRank1<D, I>>> for &Matrix
impl<const D: usize, const I: usize> Mul<&TensorVector<TensorRank1<D, I>>> for &Matrix
Source§impl<const D: usize, const I: usize> Mul<&TensorVector<TensorRank1<D, I>>> for &Vector
impl<const D: usize, const I: usize> Mul<&TensorVector<TensorRank1<D, I>>> for &Vector
Source§impl<const D: usize, const I: usize, const J: usize> Mul<&TensorVector<TensorRank1<D, J>>> for &TensorRank2<D, I, J>
impl<const D: usize, const I: usize, const J: usize> Mul<&TensorVector<TensorRank1<D, J>>> for &TensorRank2<D, I, J>
Source§type Output = TensorVector<TensorRank1<D, I>>
type Output = TensorVector<TensorRank1<D, I>>
The resulting type after applying the
* operator.Source§impl<const D: usize, const I: usize, const J: usize> Mul<&TensorVector<TensorRank1<D, J>>> for TensorRank2<D, I, J>
impl<const D: usize, const I: usize, const J: usize> Mul<&TensorVector<TensorRank1<D, J>>> for TensorRank2<D, I, J>
Source§type Output = TensorVector<TensorRank1<D, I>>
type Output = TensorVector<TensorRank1<D, I>>
The resulting type after applying the
* operator.Source§impl<T> Mul<&f64> for TensorVector<T>where
T: Tensor,
impl<T> Mul<&f64> for TensorVector<T>where
T: Tensor,
Source§type Output = TensorVector<T>
type Output = TensorVector<T>
The resulting type after applying the
* operator.Source§impl<const D: usize, const I: usize, const J: usize> Mul<TensorVector<TensorRank1<D, J>>> for &TensorRank2<D, I, J>
impl<const D: usize, const I: usize, const J: usize> Mul<TensorVector<TensorRank1<D, J>>> for &TensorRank2<D, I, J>
Source§type Output = TensorVector<TensorRank1<D, I>>
type Output = TensorVector<TensorRank1<D, I>>
The resulting type after applying the
* operator.Source§impl<const D: usize, const I: usize, const J: usize> Mul<TensorVector<TensorRank1<D, J>>> for TensorRank2<D, I, J>
impl<const D: usize, const I: usize, const J: usize> Mul<TensorVector<TensorRank1<D, J>>> for TensorRank2<D, I, J>
Source§type Output = TensorVector<TensorRank1<D, I>>
type Output = TensorVector<TensorRank1<D, I>>
The resulting type after applying the
* operator.Source§impl<const D: usize, const I: usize, const J: usize, const K: usize> Mul<TensorVector<TensorVector<TensorRank2<D, J, K>>>> for &TensorRank2<D, I, J>
impl<const D: usize, const I: usize, const J: usize, const K: usize> Mul<TensorVector<TensorVector<TensorRank2<D, J, K>>>> for &TensorRank2<D, I, J>
Source§type Output = TensorVector<TensorVector<TensorRank2<D, I, K>>>
type Output = TensorVector<TensorVector<TensorRank2<D, I, K>>>
The resulting type after applying the
* operator.Source§impl<const D: usize, const I: usize, const J: usize, const K: usize> Mul<TensorVector<TensorVector<TensorRank2<D, J, K>>>> for TensorRank2<D, I, J>
impl<const D: usize, const I: usize, const J: usize, const K: usize> Mul<TensorVector<TensorVector<TensorRank2<D, J, K>>>> for TensorRank2<D, I, J>
Source§type Output = TensorVector<TensorVector<TensorRank2<D, I, K>>>
type Output = TensorVector<TensorVector<TensorRank2<D, I, K>>>
The resulting type after applying the
* operator.Source§impl<T> Mul<f64> for &TensorVector<T>
impl<T> Mul<f64> for &TensorVector<T>
Source§type Output = TensorVector<T>
type Output = TensorVector<T>
The resulting type after applying the
* operator.Source§impl<T> Mul<f64> for TensorVector<T>where
T: Tensor,
impl<T> Mul<f64> for TensorVector<T>where
T: Tensor,
Source§type Output = TensorVector<T>
type Output = TensorVector<T>
The resulting type after applying the
* operator.Source§impl<T> MulAssign<&f64> for TensorVector<T>where
T: Tensor,
impl<T> MulAssign<&f64> for TensorVector<T>where
T: Tensor,
Source§fn mul_assign(&mut self, tensor_rank_0: &TensorRank0)
fn mul_assign(&mut self, tensor_rank_0: &TensorRank0)
Performs the
*= operation. Read moreSource§impl<T> MulAssign<f64> for TensorVector<T>where
T: Tensor,
impl<T> MulAssign<f64> for TensorVector<T>where
T: Tensor,
Source§fn mul_assign(&mut self, tensor_rank_0: TensorRank0)
fn mul_assign(&mut self, tensor_rank_0: TensorRank0)
Performs the
*= operation. Read moreSource§impl<T> PartialEq for TensorVector<T>
impl<T> PartialEq for TensorVector<T>
Source§impl<T> Sub<&TensorVector<T>> for TensorVector<T>where
T: Tensor,
impl<T> Sub<&TensorVector<T>> for TensorVector<T>where
T: Tensor,
Source§impl<T> Sub for &TensorVector<T>where
T: Tensor,
impl<T> Sub for &TensorVector<T>where
T: Tensor,
Source§impl<T> Sub for TensorVector<T>where
T: Tensor,
impl<T> Sub for TensorVector<T>where
T: Tensor,
Source§impl<T> SubAssign<&TensorVector<T>> for TensorVector<T>where
T: Tensor,
impl<T> SubAssign<&TensorVector<T>> for TensorVector<T>where
T: Tensor,
Source§fn sub_assign(&mut self, tensor_vec: &Self)
fn sub_assign(&mut self, tensor_vec: &Self)
Performs the
-= operation. Read moreSource§impl<T> SubAssign for TensorVector<T>where
T: Tensor,
impl<T> SubAssign for TensorVector<T>where
T: Tensor,
Source§fn sub_assign(&mut self, tensor_vec: Self)
fn sub_assign(&mut self, tensor_vec: Self)
Performs the
-= operation. Read moreSource§impl<T> Sum for TensorVector<T>where
T: Tensor,
impl<T> Sum for TensorVector<T>where
T: Tensor,
Source§impl<T> Tensor for TensorVector<T>where
T: Tensor,
impl<T> Tensor for TensorVector<T>where
T: Tensor,
Source§fn iter_mut(&mut self) -> impl Iterator<Item = &mut Self::Item>
fn iter_mut(&mut self) -> impl Iterator<Item = &mut Self::Item>
Returns an iterator that allows modifying each value. Read more
Source§fn error_count(
&self,
other: &Self,
tol_abs: &Scalar,
tol_rel: &Scalar,
) -> Option<usize>
fn error_count( &self, other: &Self, tol_abs: &Scalar, tol_rel: &Scalar, ) -> Option<usize>
Returns number of different entries given absolute and relative tolerances.
Source§fn full_contraction(&self, tensor: &Self) -> TensorRank0
fn full_contraction(&self, tensor: &Self) -> TensorRank0
Returns the full contraction with another tensor.
Source§fn norm(&self) -> TensorRank0
fn norm(&self) -> TensorRank0
Returns the tensor norm.
Source§fn norm_inf(&self) -> TensorRank0
fn norm_inf(&self) -> TensorRank0
Returns the infinity norm.
Source§fn norm_squared(&self) -> TensorRank0
fn norm_squared(&self) -> TensorRank0
Returns the tensor norm squared.
Source§fn normalized(self) -> Self
fn normalized(self) -> Self
Returns the tensor normalized.
Source§impl<T> TensorVec for TensorVector<T>where
T: Tensor,
impl<T> TensorVec for TensorVector<T>where
T: Tensor,
Source§fn append(&mut self, other: &mut Self)
fn append(&mut self, other: &mut Self)
Moves all the elements of other into self, leaving other empty.
Source§fn capacity(&self) -> usize
fn capacity(&self) -> usize
Returns the total number of elements the vector can hold without reallocating.
Source§fn new() -> Self
fn new() -> Self
Constructs a new, empty Vec, not allocating until elements are pushed onto it.
Source§fn remove(&mut self, index: usize) -> Self::Item
fn remove(&mut self, index: usize) -> Self::Item
Removes an element from the Vec and returns it, shifting elements to the left.
Source§fn swap_remove(&mut self, index: usize) -> Self::Item
fn swap_remove(&mut self, index: usize) -> Self::Item
Removes an element from the Vec and returns it, replacing it with the last element.
impl<T> StructuralPartialEq for TensorVector<T>where
T: Tensor,
Auto Trait Implementations§
impl<T> Freeze for TensorVector<T>
impl<T> RefUnwindSafe for TensorVector<T>where
T: RefUnwindSafe,
impl<T> Send for TensorVector<T>where
T: Send,
impl<T> Sync for TensorVector<T>where
T: Sync,
impl<T> Unpin for TensorVector<T>where
T: Unpin,
impl<T> UnwindSafe for TensorVector<T>where
T: UnwindSafe,
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