pub struct TensorRank4<const D: usize, I, J, K, L, U = Dimensionless>(/* private fields */);Expand description
A d-dimensional tensor of rank 4.
D is the dimension, I, J, K, L are the configurations.
Implementations§
Source§impl<const D: usize, I, J, K, L, U> TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> TensorRank4<D, I, J, K, L, U>
pub fn with_unit<V>(self) -> TensorRank4<D, I, J, K, L, V>
Source§impl<const D: usize, I, J, K, L, U> TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> TensorRank4<D, I, J, K, L, U>
pub fn dyad_ij_kl<U1, U2>(
tensor_rank_2_a: &TensorRank2<D, I, J, U1>,
tensor_rank_2_b: &TensorRank2<D, K, L, U2>,
) -> Selfwhere
U1: UnitMul<U2, Output = U>,
pub fn dyad_ik_jl<U1, U2>(
tensor_rank_2_a: &TensorRank2<D, I, K, U1>,
tensor_rank_2_b: &TensorRank2<D, J, L, U2>,
) -> Selfwhere
U1: UnitMul<U2, Output = U>,
pub fn dyad_il_jk<U1, U2>(
tensor_rank_2_a: &TensorRank2<D, I, L, U1>,
tensor_rank_2_b: &TensorRank2<D, J, K, U2>,
) -> Selfwhere
U1: UnitMul<U2, Output = U>,
pub fn dyad_il_kj<U1, U2>(
tensor_rank_2_a: &TensorRank2<D, I, L, U1>,
tensor_rank_2_b: &TensorRank2<D, K, J, U2>,
) -> Selfwhere
U1: UnitMul<U2, Output = U>,
Trait Implementations§
Source§impl<const D: usize, I, J, K, L, U> Add<&TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Add<&TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> Add<TensorRank4<D, I, J, K, L, U>> for &TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Add<TensorRank4<D, I, J, K, L, U>> for &TensorRank4<D, I, J, K, L, U>
Source§type Output = TensorRank4<D, I, J, K, L, U>
type Output = TensorRank4<D, I, J, K, L, U>
The resulting type after applying the
+ operator.Source§impl<const D: usize, I, J, K, L, U> Add for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Add for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> AddAssign<&TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> AddAssign<&TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
Source§fn add_assign(&mut self, tensor_rank_4: &Self)
fn add_assign(&mut self, tensor_rank_4: &Self)
Performs the
+= operation. Read moreSource§impl<const D: usize, I, J, K, L, U> AddAssign for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> AddAssign for TensorRank4<D, I, J, K, L, U>
Source§fn add_assign(&mut self, tensor_rank_4: Self)
fn add_assign(&mut self, tensor_rank_4: Self)
Performs the
+= operation. Read moreSource§impl<const D: usize, I, J, K, L> AssertEq for TensorRank4<D, I, J, K, L>
impl<const D: usize, I, J, K, L> AssertEq for TensorRank4<D, I, J, K, L>
fn eq(a: Self, b: TensorRank4<D, I, J, K, L>) -> Result<(), AssertionError>
fn eq_within_tols( tols: &Assert, a: Self, b: TensorRank4<D, I, J, K, L>, ) -> Result<(), AssertionError>
Source§impl<const D: usize, I, J, K, L> AssertFd for TensorRank4<D, I, J, K, L>
impl<const D: usize, I, J, K, L> AssertFd for TensorRank4<D, I, J, K, L>
fn eq_within_fd_tol( tols: &Assert, a: Self, b: TensorRank4<D, I, J, K, L>, ) -> Result<(), AssertionError>
Source§impl<const D: usize, I, J, K, L, U> Clone for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Clone for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, M, N, O, P, U> ContractAllWithFirst<&TensorRank2<D, I, M>, &TensorRank2<D, J, N>, &TensorRank2<D, K, O>, &TensorRank2<D, L, P>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, M, N, O, P, U> ContractAllWithFirst<&TensorRank2<D, I, M>, &TensorRank2<D, J, N>, &TensorRank2<D, K, O>, &TensorRank2<D, L, P>> for TensorRank4<D, I, J, K, L, U>
type Output = TensorRank4<D, M, N, O, P, U>
fn contract_all_with_first( self, tensor_rank_2_a: &TensorRank2<D, I, M, Dimensionless>, tensor_rank_2_b: &TensorRank2<D, J, N, Dimensionless>, tensor_rank_2_c: &TensorRank2<D, K, O, Dimensionless>, tensor_rank_2_d: &TensorRank2<D, L, P, Dimensionless>, ) -> Self::Output
Source§impl<const D: usize, I, J, K, L, M, N, U> ContractFirstSecondWithSecond<&TensorRank2<D, I, M>, &TensorRank2<D, J, N>> for TensorRank4<D, M, N, K, L, U>
impl<const D: usize, I, J, K, L, M, N, U> ContractFirstSecondWithSecond<&TensorRank2<D, I, M>, &TensorRank2<D, J, N>> for TensorRank4<D, M, N, K, L, U>
type Output = TensorRank4<D, I, J, K, L, U>
fn contract_first_second_with_second( self, tensor_rank_2_a: &TensorRank2<D, I, M, Dimensionless>, tensor_rank_2_b: &TensorRank2<D, J, N, Dimensionless>, ) -> Self::Output
Source§impl<const D: usize, I, J, K, L, M, O, P, U> ContractFirstThirdFourthWithFirst<&TensorRank2<D, I, M>, &TensorRank2<D, K, O>, &TensorRank2<D, L, P>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, M, O, P, U> ContractFirstThirdFourthWithFirst<&TensorRank2<D, I, M>, &TensorRank2<D, K, O>, &TensorRank2<D, L, P>> for TensorRank4<D, I, J, K, L, U>
type Output = TensorRank4<D, M, J, O, P, U>
fn contract_first_third_fourth_with_first( self, tensor_rank_2_a: &TensorRank2<D, I, M, Dimensionless>, tensor_rank_2_b: &TensorRank2<D, K, O, Dimensionless>, tensor_rank_2_c: &TensorRank2<D, L, P, Dimensionless>, ) -> Self::Output
Source§impl<const D: usize, I, J, K, L, U, V, W> ContractSecondFourthWithFirst<&TensorRank1<D, J, V>, &TensorRank1<D, L, W>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U, V, W> ContractSecondFourthWithFirst<&TensorRank1<D, J, V>, &TensorRank1<D, L, W>> for TensorRank4<D, I, J, K, L, U>
type Output = TensorRank2<D, I, K, <<U as UnitMul<V>>::Output as UnitMul<W>>::Output>
fn contract_second_fourth_with_first( &self, tensor_rank_1_a: &TensorRank1<D, J, V>, tensor_rank_1_b: &TensorRank1<D, L, W>, ) -> Self::Output
Source§impl<const D: usize, I, J, K, L, N, U> ContractSecondWithFirst<&TensorRank2<D, J, N>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, N, U> ContractSecondWithFirst<&TensorRank2<D, J, N>> for TensorRank4<D, I, J, K, L, U>
type Output = TensorRank4<D, I, N, K, L, U>
fn contract_second_with_first( self, tensor_rank_2: &TensorRank2<D, J, N, Dimensionless>, ) -> Self::Output
Source§impl<const D: usize, I, J, K, L, U, V> ContractThirdFourthWithFirstSecond<&TensorRank2<D, K, L, V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, U, V> ContractThirdFourthWithFirstSecond<&TensorRank2<D, K, L, V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
type Output = TensorRank2<D, I, J, <U as UnitMul<V>>::Output>
fn contract_third_fourth_with_first_second( self, tensor_rank_2: &TensorRank2<D, K, L, V>, ) -> Self::Output
Source§impl<const D: usize, I, J, K, L, M, N, U, V> ContractThirdFourthWithFirstSecond<&TensorRank4<D, K, L, M, N, V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, M, N, U, V> ContractThirdFourthWithFirstSecond<&TensorRank4<D, K, L, M, N, V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
type Output = TensorRank4<D, I, J, M, N, <U as UnitMul<V>>::Output>
fn contract_third_fourth_with_first_second( self, tensor: &TensorRank4<D, K, L, M, N, V>, ) -> Self::Output
Source§impl<const D: usize, I, J, K, L, M, U> ContractThirdWithFirst<&TensorRank2<D, M, K>> for TensorRank4<D, I, J, M, L, U>
impl<const D: usize, I, J, K, L, M, U> ContractThirdWithFirst<&TensorRank2<D, M, K>> for TensorRank4<D, I, J, M, L, U>
type Output = TensorRank4<D, I, J, K, L, U>
fn contract_third_with_first( &self, tensor_rank_2: &TensorRank2<D, M, K, Dimensionless>, ) -> Self::Output
Source§impl<const D: usize, I, J, K, L, U> Debug for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Debug for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> Default for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Default for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U, T> Differentiate<T> for TensorRank4<D, I, J, K, L, U>where
U: UnitDiv<T>,
impl<const D: usize, I, J, K, L, U, T> Differentiate<T> for TensorRank4<D, I, J, K, L, U>where
U: UnitDiv<T>,
Source§type Derivative = TensorRank4<D, I, J, K, L, <U as UnitDiv<T>>::Output>
type Derivative = TensorRank4<D, I, J, K, L, <U as UnitDiv<T>>::Output>
The derivative with respect to the variable of integration.
Source§impl<const D: usize, I, J, K, L, U> Display for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Display for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> Div<&f64> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Div<&f64> for TensorRank4<D, I, J, K, L, U>
Source§type Output = TensorRank4<D, I, J, K, L, U>
type Output = TensorRank4<D, I, J, K, L, U>
The resulting type after applying the
/ operator.Source§impl<const D: usize, I, J, K, L, U, V> Div<Quantity<V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitDiv<V>,
impl<const D: usize, I, J, K, L, U, V> Div<Quantity<V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitDiv<V>,
Source§impl<I, J, K, L, U, V> Div<TensorRank4<3, I, J, K, L, V>> for &TensorRank2<3, I, J, U>where
U: UnitDiv<V>,
impl<I, J, K, L, U, V> Div<TensorRank4<3, I, J, K, L, V>> for &TensorRank2<3, I, J, U>where
U: UnitDiv<V>,
Source§impl<const D: usize, I, J, K, L, U> Div<f64> for &TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Div<f64> for &TensorRank4<D, I, J, K, L, U>
Source§type Output = TensorRank4<D, I, J, K, L, U>
type Output = TensorRank4<D, I, J, K, L, U>
The resulting type after applying the
/ operator.Source§impl<const D: usize, I, J, K, L, U> Div<f64> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Div<f64> for TensorRank4<D, I, J, K, L, U>
Source§type Output = TensorRank4<D, I, J, K, L, U>
type Output = TensorRank4<D, I, J, K, L, U>
The resulting type after applying the
/ operator.Source§impl<const D: usize, I, J, K, L, U> DivAssign<&f64> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> DivAssign<&f64> for TensorRank4<D, I, J, K, L, U>
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<const D: usize, I, J, K, L, U> DivAssign<f64> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> DivAssign<f64> for TensorRank4<D, I, J, K, L, U>
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<const D: usize, I, J, K, L, U> Erase for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Erase for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> FiniteDifference for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> FiniteDifference for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> From<&TensorRank4<D, I, J, K, L, U>> for TensorRank2<9, Factor, Flattened, U>
impl<const D: usize, I, J, K, L, U> From<&TensorRank4<D, I, J, K, L, U>> for TensorRank2<9, Factor, Flattened, U>
Source§fn from(tensor_rank_4: &TensorRank4<D, I, J, K, L, U>) -> Self
fn from(tensor_rank_4: &TensorRank4<D, I, J, K, L, U>) -> Self
Converts to this type from the input type.
Source§impl<const D: usize, I, J, K, L, U> From<[[[[f64; D]; D]; D]; D]> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> From<[[[[f64; D]; D]; D]; D]> for TensorRank4<D, I, J, K, L, U>
Source§impl<J, L, U> From<TensorRank4<3, Current, J, Current, L, U>> for TensorRank4<3, Intermediate, J, Intermediate, L, U>
impl<J, L, U> From<TensorRank4<3, Current, J, Current, L, U>> for TensorRank4<3, Intermediate, J, Intermediate, L, U>
Source§impl<I, J, K, U> From<TensorRank4<3, I, J, K, Reference, U>> for TensorRank4<3, I, J, K, Intermediate, U>
impl<I, J, K, U> From<TensorRank4<3, I, J, K, Reference, U>> for TensorRank4<3, I, J, K, Intermediate, U>
Source§fn from(tensor_rank_4: TensorRank4<3, I, J, K, Reference, U>) -> Self
fn from(tensor_rank_4: TensorRank4<3, I, J, K, Reference, U>) -> Self
Converts to this type from the input type.
Source§impl<I, K, U> From<TensorRank4<3, I, Reference, K, Reference, U>> for TensorRank4<3, I, Intermediate, K, Intermediate, U>
impl<I, K, U> From<TensorRank4<3, I, Reference, K, Reference, U>> for TensorRank4<3, I, Intermediate, K, Intermediate, U>
Source§impl<K, U> From<TensorRank4<3, Reference, Reference, K, Reference, U>> for TensorRank4<3, Intermediate, Intermediate, K, Intermediate, U>
impl<K, U> From<TensorRank4<3, Reference, Reference, K, Reference, U>> for TensorRank4<3, Intermediate, Intermediate, K, Intermediate, U>
Source§impl<const D: usize, I, J, K, L, U> From<TensorRank4<D, I, J, K, L, U>> for TensorRank2<9, Factor, Flattened, U>
impl<const D: usize, I, J, K, L, U> From<TensorRank4<D, I, J, K, L, U>> for TensorRank2<9, Factor, Flattened, U>
Source§fn from(tensor_rank_4: TensorRank4<D, I, J, K, L, U>) -> Self
fn from(tensor_rank_4: TensorRank4<D, I, J, K, L, U>) -> Self
Converts to this type from the input type.
Source§impl<const D: usize, I, J, K, L, U> From<TensorRank4<D, I, J, K, L, U>> for Vec<Vec<Vec<Vec<TensorRank0>>>>
impl<const D: usize, I, J, K, L, U> From<TensorRank4<D, I, J, K, L, U>> for Vec<Vec<Vec<Vec<TensorRank0>>>>
Source§fn from(tensor_rank_4: TensorRank4<D, I, J, K, L, U>) -> Self
fn from(tensor_rank_4: TensorRank4<D, I, J, K, L, U>) -> Self
Converts to this type from the input type.
Source§impl<const D: usize, I, J, K, L, U> From<TensorRank4<D, I, J, K, L, U>> for Vec<TensorRank0>
impl<const D: usize, I, J, K, L, U> From<TensorRank4<D, I, J, K, L, U>> for Vec<TensorRank0>
Source§fn from(tensor_rank_4: TensorRank4<D, I, J, K, L, U>) -> Self
fn from(tensor_rank_4: TensorRank4<D, I, J, K, L, U>) -> Self
Converts to this type from the input type.
Source§impl<const D: usize, I, J, K, L, U> From<TensorRank4<D, I, J, K, L, U>> for Vector
impl<const D: usize, I, J, K, L, U> From<TensorRank4<D, I, J, K, L, U>> for Vector
Source§fn from(tensor_rank_4: TensorRank4<D, I, J, K, L, U>) -> Self
fn from(tensor_rank_4: TensorRank4<D, I, J, K, L, U>) -> Self
Converts to this type from the input type.
Source§impl<const D: usize, I, J, K, L, U> From<Vec<Vec<Vec<Vec<f64>>>>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> From<Vec<Vec<Vec<Vec<f64>>>>> for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> FromIterator<TensorRank3<D, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> FromIterator<TensorRank3<D, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
Source§fn from_iter<Ii: IntoIterator<Item = TensorRank3<D, J, K, L, U>>>(
into_iterator: Ii,
) -> Self
fn from_iter<Ii: IntoIterator<Item = TensorRank3<D, J, K, L, U>>>( into_iterator: Ii, ) -> Self
Creates a value from an iterator. Read more
Source§impl<const D: usize, I, J, K, L, U> Hessian for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Hessian for TensorRank4<D, I, J, K, L, U>
Source§fn entry(&self, row: usize, column: usize) -> TensorRank0
fn entry(&self, row: usize, column: usize) -> TensorRank0
The entry at the given (row, column) position.
Source§fn quadratic_form(&self, vector: &Vector) -> TensorRank0
fn quadratic_form(&self, vector: &Vector) -> TensorRank0
The quadratic form of the Hessian with a vector. Read more
Source§fn fill_into(self, square_matrix: &mut SquareMatrix)
fn fill_into(self, square_matrix: &mut SquareMatrix)
Fills the Hessian into a square matrix.
Source§fn retain_from(self, retained: &[bool]) -> SquareMatrix
fn retain_from(self, retained: &[bool]) -> SquareMatrix
Return only the retained indices.
Source§impl<const D: usize, I, J, K, L, U> HessianBlock for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> HessianBlock for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> IntoIterator for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> IntoIterator for TensorRank4<D, I, J, K, L, U>
Source§type Item = TensorRank3<D, J, K, L, U>
type Item = TensorRank3<D, J, K, L, U>
The type of the elements being iterated over.
Source§type IntoIter = IntoIter<<TensorRank4<D, I, J, K, L, U> as IntoIterator>::Item, D>
type IntoIter = IntoIter<<TensorRank4<D, I, J, K, L, U> as IntoIterator>::Item, D>
Which kind of iterator are we turning this into?
Source§impl<const D: usize, I, J, K, L, U, V> Mul<&Quantity<V>> for &TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, U, V> Mul<&Quantity<V>> for &TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, U, V> Mul<&Quantity<V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, U, V> Mul<&Quantity<V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, M, U, V> Mul<&TensorRank2<D, L, M, V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, M, U, V> Mul<&TensorRank2<D, L, M, V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
Source§impl<const D: usize, J, K, L, M, U, V> Mul<&TensorRank4<D, M, J, K, L, V>> for &TensorRank1<D, M, U>where
U: UnitMul<V>,
impl<const D: usize, J, K, L, M, U, V> Mul<&TensorRank4<D, M, J, K, L, V>> for &TensorRank1<D, M, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, M, U, V> Mul<&TensorRank4<D, M, J, K, L, V>> for &TensorRank2<D, I, M, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, M, U, V> Mul<&TensorRank4<D, M, J, K, L, V>> for &TensorRank2<D, I, M, U>where
U: UnitMul<V>,
Source§impl<const D: usize, J, K, L, M, U, V> Mul<&TensorRank4<D, M, J, K, L, V>> for TensorRank1<D, M, U>where
U: UnitMul<V>,
impl<const D: usize, J, K, L, M, U, V> Mul<&TensorRank4<D, M, J, K, L, V>> for TensorRank1<D, M, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, M, U, V> Mul<&TensorRank4<D, M, J, K, L, V>> for TensorRank2<D, I, M, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, M, U, V> Mul<&TensorRank4<D, M, J, K, L, V>> for TensorRank2<D, I, M, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, U> Mul<&f64> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Mul<&f64> for TensorRank4<D, I, J, K, L, U>
Source§type Output = TensorRank4<D, I, J, K, L, U>
type Output = TensorRank4<D, I, J, K, L, U>
The resulting type after applying the
* operator.Source§impl<const D: usize, I, J, K, L, U, V> Mul<Quantity<V>> for &TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, U, V> Mul<Quantity<V>> for &TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, U, V> Mul<Quantity<V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, U, V> Mul<Quantity<V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, M, U, V> Mul<TensorRank2<D, L, M, V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, M, U, V> Mul<TensorRank2<D, L, M, V>> for TensorRank4<D, I, J, K, L, U>where
U: UnitMul<V>,
Source§impl<const D: usize, J, K, L, M, U, V> Mul<TensorRank4<D, M, J, K, L, V>> for &TensorRank1<D, M, U>where
U: UnitMul<V>,
impl<const D: usize, J, K, L, M, U, V> Mul<TensorRank4<D, M, J, K, L, V>> for &TensorRank1<D, M, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, M, U, V> Mul<TensorRank4<D, M, J, K, L, V>> for &TensorRank2<D, I, M, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, M, U, V> Mul<TensorRank4<D, M, J, K, L, V>> for &TensorRank2<D, I, M, U>where
U: UnitMul<V>,
Source§impl<const D: usize, J, K, L, M, U, V> Mul<TensorRank4<D, M, J, K, L, V>> for TensorRank1<D, M, U>where
U: UnitMul<V>,
impl<const D: usize, J, K, L, M, U, V> Mul<TensorRank4<D, M, J, K, L, V>> for TensorRank1<D, M, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, M, U, V> Mul<TensorRank4<D, M, J, K, L, V>> for TensorRank2<D, I, M, U>where
U: UnitMul<V>,
impl<const D: usize, I, J, K, L, M, U, V> Mul<TensorRank4<D, M, J, K, L, V>> for TensorRank2<D, I, M, U>where
U: UnitMul<V>,
Source§impl<const D: usize, I, J, K, L, U> Mul<f64> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Mul<f64> for TensorRank4<D, I, J, K, L, U>
Source§type Output = TensorRank4<D, I, J, K, L, U>
type Output = TensorRank4<D, I, J, K, L, U>
The resulting type after applying the
* operator.Source§impl<const D: usize, I, J, K, L, U> MulAssign<&f64> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> MulAssign<&f64> for TensorRank4<D, I, J, K, L, U>
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<const D: usize, I, J, K, L, U> MulAssign<f64> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> MulAssign<f64> for TensorRank4<D, I, J, K, L, U>
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<const D: usize, I, J, K, L, U> PartialEq for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> PartialEq for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> Sub<&TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Sub<&TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> Sub for &TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Sub for &TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> Sub for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Sub for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> SubAssign<&TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> SubAssign<&TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
Source§fn sub_assign(&mut self, tensor_rank_4: &Self)
fn sub_assign(&mut self, tensor_rank_4: &Self)
Performs the
-= operation. Read moreSource§impl<const D: usize, I, J, K, L, U> SubAssign for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> SubAssign for TensorRank4<D, I, J, K, L, U>
Source§fn sub_assign(&mut self, tensor_rank_4: Self)
fn sub_assign(&mut self, tensor_rank_4: Self)
Performs the
-= operation. Read moreSource§impl<'a, const D: usize, I, J, K, L, U> Sum<&'a TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
impl<'a, const D: usize, I, J, K, L, U> Sum<&'a TensorRank4<D, I, J, K, L, U>> for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> Sum for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Sum for TensorRank4<D, I, J, K, L, U>
Source§impl<const D: usize, I, J, K, L, U> Tensor for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Tensor for TensorRank4<D, I, J, K, L, U>
Source§type Item = TensorRank3<D, J, K, L, U>
type Item = TensorRank3<D, J, K, L, U>
The type of item encountered when iterating over the 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_zero(&self, tol_abs: Scalar, tol_rel: Scalar) -> Option<usize>
fn error_count_zero(&self, tol_abs: Scalar, tol_rel: Scalar) -> Option<usize>
Returns number of nonzero entries given absolute and relative tolerances.
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_p_sum(&self, p: TensorRank0) -> TensorRank0
fn norm_p_sum(&self, p: TensorRank0) -> TensorRank0
Returns the sum of p-th powers of absolute values (used internally by
norm_p).Source§impl<const D: usize, I, J, K, L, U> TensorArray for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> TensorArray for TensorRank4<D, I, J, K, L, U>
Source§type Item = TensorRank3<D, J, K, L, U>
type Item = TensorRank3<D, J, K, L, U>
The type of item encountered when iterating over the tensor.
Auto Trait Implementations§
impl<const D: usize, I, J, K, L, U> Freeze for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> RefUnwindSafe for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Send for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Sync for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> Unpin for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> UnsafeUnpin for TensorRank4<D, I, J, K, L, U>
impl<const D: usize, I, J, K, L, U> UnwindSafe for TensorRank4<D, I, J, K, L, U>
Blanket Implementations§
Source§impl<'a, T> AssertEq<&'a T> for T
impl<'a, T> AssertEq<&'a T> for T
fn eq(a: T, b: &'a T) -> Result<(), AssertionError>
fn eq_within_tols(tols: &Assert, a: T, b: &'a T) -> Result<(), AssertionError>
Source§impl<'a, T> AssertFd<&'a T> for T
impl<'a, T> AssertFd<&'a T> for T
fn eq_within_fd_tol(tols: &Assert, a: T, b: &'a T) -> Result<(), AssertionError>
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