Struct faer_entity::Symbolic
source · pub struct Symbolic;Implementations§
Trait Implementations§
source§impl ComplexField for Symbolic
impl ComplexField for Symbolic
type Real = Symbolic
type Simd = NoSimd
type ScalarSimd = NoSimd
type PortableSimd = NoSimd
source§fn faer_from_f64(_value: f64) -> Self
fn faer_from_f64(_value: f64) -> Self
Converts
The conversion may be lossy when converting to a type with less precision.
value from f64 to Self.The conversion may be lossy when converting to a type with less precision.
source§fn faer_scale_real(self, _rhs: Self::Real) -> Self
fn faer_scale_real(self, _rhs: Self::Real) -> Self
Returns the input, scaled by
rhs.source§fn faer_scale_power_of_two(self, _rhs: Self::Real) -> Self
fn faer_scale_power_of_two(self, _rhs: Self::Real) -> Self
Returns the input, scaled by
rhs.source§fn faer_score(self) -> Self::Real
fn faer_score(self) -> Self::Real
Returns either the norm or squared norm of the number. Read more
source§fn faer_from_real(_real: Self::Real) -> Self
fn faer_from_real(_real: Self::Real) -> Self
Returns a complex number whose real part is equal to
real, and a zero imaginary part.fn faer_slice_as_simd<S: Simd>( slice: &[Self::Unit] ) -> (&[Self::SimdUnit<S>], &[Self::Unit])
fn faer_slice_as_mut_simd<S: Simd>( slice: &mut [Self::Unit] ) -> (&mut [Self::SimdUnit<S>], &mut [Self::Unit])
fn faer_partial_load_unit<S: Simd>( _simd: S, _slice: &[Self::Unit] ) -> Self::SimdUnit<S>
fn faer_partial_store_unit<S: Simd>( _simd: S, _slice: &mut [Self::Unit], _values: Self::SimdUnit<S> )
fn faer_partial_load_last_unit<S: Simd>( _simd: S, _slice: &[Self::Unit] ) -> Self::SimdUnit<S>
fn faer_partial_store_last_unit<S: Simd>( _simd: S, _slice: &mut [Self::Unit], _values: Self::SimdUnit<S> )
fn faer_simd_splat_unit<S: Simd>( _simd: S, _unit: Self::Unit ) -> Self::SimdUnit<S>
fn faer_simd_scalar_mul<S: Simd>(_simd: S, _lhs: Self, _rhs: Self) -> Self
fn faer_simd_scalar_conj_mul<S: Simd>(_simd: S, _lhs: Self, _rhs: Self) -> Self
fn faer_simd_scalar_mul_adde<S: Simd>( _simd: S, _lhs: Self, _rhs: Self, _acc: Self ) -> Self
fn faer_simd_scalar_conj_mul_adde<S: Simd>( _simd: S, _lhs: Self, _rhs: Self, _acc: Self ) -> Self
fn faer_simd_neg<S: Simd>( _simd: S, _values: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_conj<S: Simd>( _simd: S, _values: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_add<S: Simd>( _simd: S, _lhs: SimdGroupFor<Self, S>, _rhs: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_sub<S: Simd>( _simd: S, _lhs: SimdGroupFor<Self, S>, _rhs: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_mul<S: Simd>( _simd: S, _lhs: SimdGroupFor<Self, S>, _rhs: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_scale_real<S: Simd>( _simd: S, _lhs: SimdGroupFor<Self::Real, S>, _rhs: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_conj_mul<S: Simd>( _simd: S, _lhs: SimdGroupFor<Self, S>, _rhs: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_mul_adde<S: Simd>( _simd: S, _lhs: SimdGroupFor<Self, S>, _rhs: SimdGroupFor<Self, S>, _acc: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_conj_mul_adde<S: Simd>( _simd: S, _lhs: SimdGroupFor<Self, S>, _rhs: SimdGroupFor<Self, S>, _acc: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_abs2_adde<S: Simd>( _simd: S, _values: SimdGroupFor<Self, S>, _acc: SimdGroupFor<Self::Real, S> ) -> SimdGroupFor<Self::Real, S>
fn faer_simd_abs2<S: Simd>( _simd: S, _values: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self::Real, S>
fn faer_simd_score<S: Simd>( _simd: S, _values: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self::Real, S>
source§fn faer_is_nan(&self) -> bool
fn faer_is_nan(&self) -> bool
Returns true if
self is a NaN value, or false otherwise.source§fn faer_is_finite(&self) -> bool
fn faer_is_finite(&self) -> bool
Returns true if
self is a NaN value, or false otherwise.fn faer_partial_load<S: Simd>( simd: S, slice: GroupFor<Self, &[UnitFor<Self>]> ) -> SimdGroupFor<Self, S>
fn faer_partial_store<S: Simd>( simd: S, slice: GroupFor<Self, &mut [UnitFor<Self>]>, values: SimdGroupFor<Self, S> )
fn faer_partial_load_last<S: Simd>( simd: S, slice: GroupFor<Self, &[UnitFor<Self>]> ) -> SimdGroupFor<Self, S>
fn faer_partial_store_last<S: Simd>( simd: S, slice: GroupFor<Self, &mut [UnitFor<Self>]>, values: SimdGroupFor<Self, S> )
fn faer_simd_splat<S: Simd>(simd: S, value: Self) -> SimdGroupFor<Self, S>
fn faer_simd_reduce_add<S: Simd>(simd: S, values: SimdGroupFor<Self, S>) -> Self
source§impl Conjugate for Symbolic
impl Conjugate for Symbolic
§type Conj = Symbolic
type Conj = Symbolic
Must have the same layout as
Self, and Conj::Unit must have the same layout as Unit.§type Canonical = Symbolic
type Canonical = Symbolic
Must have the same layout as
Self, and Canonical::Unit must have the same layout as
Unit.source§fn canonicalize(self) -> Self::Canonical
fn canonicalize(self) -> Self::Canonical
Performs the implicit conjugation operation on the given value, returning the canonical
form.
source§impl Entity for Symbolic
impl Entity for Symbolic
type Unit = Symbolic
type Index = usize
type SimdUnit<S: Simd> = Symbolic
type SimdMask<S: Simd> = bool
type SimdIndex<S: Simd> = usize
type Group = IdentityGroup
type Iter<I: Iterator> = I
const N_COMPONENTS: usize = 1usize
const UNIT: GroupCopyFor<Self, ()> = ()
fn faer_from_units(group: GroupFor<Self, Self::Unit>) -> Self
fn faer_into_units(self) -> GroupFor<Self, Self::Unit>
fn faer_as_ref<T>(group: &GroupFor<Self, T>) -> GroupFor<Self, &T>
fn faer_as_mut<T>(group: &mut GroupFor<Self, T>) -> GroupFor<Self, &mut T>
fn faer_map_impl<T, U>( group: GroupFor<Self, T>, f: &mut impl FnMut(T) -> U ) -> GroupFor<Self, U>
fn faer_zip<T, U>( first: GroupFor<Self, T>, second: GroupFor<Self, U> ) -> GroupFor<Self, (T, U)>
fn faer_unzip<T, U>( zipped: GroupFor<Self, (T, U)> ) -> (GroupFor<Self, T>, GroupFor<Self, U>)
fn faer_map_with_context<Ctx, T, U>( ctx: Ctx, group: GroupFor<Self, T>, f: &mut impl FnMut(Ctx, T) -> (Ctx, U) ) -> (Ctx, GroupFor<Self, U>)
fn faer_into_iter<I: IntoIterator>( iter: GroupFor<Self, I> ) -> Self::Iter<I::IntoIter>
fn faer_map<T, U>( group: GroupFor<Self, T>, f: impl FnMut(T) -> U ) -> GroupFor<Self, U>
fn faer_unzip2<T>(zipped: GroupFor<Self, [T; 2]>) -> [GroupFor<Self, T>; 2]
fn faer_unzip4<T>(zipped: GroupFor<Self, [T; 4]>) -> [GroupFor<Self, T>; 4]
fn faer_unzip8<T>(zipped: GroupFor<Self, [T; 8]>) -> [GroupFor<Self, T>; 8]
fn faer_as_arrays<const N: usize, T>( group: GroupFor<Self, &[T]> ) -> (GroupFor<Self, &[[T; N]]>, GroupFor<Self, &[T]>)
fn faer_as_arrays_mut<const N: usize, T>( group: GroupFor<Self, &mut [T]> ) -> (GroupFor<Self, &mut [[T; N]]>, GroupFor<Self, &mut [T]>)
fn faer_deref<T: Copy>(group: GroupFor<Self, &T>) -> GroupFor<Self, T>
fn faer_rb<'short, T: Reborrow<'short>>( value: GroupFor<Self, &'short T> ) -> GroupFor<Self, T::Target>
fn faer_rb_mut<'short, T: ReborrowMut<'short>>( value: GroupFor<Self, &'short mut T> ) -> GroupFor<Self, T::Target>
fn faer_into_const<T: IntoConst>( value: GroupFor<Self, T> ) -> GroupFor<Self, T::Target>
fn faer_copy<T: Copy>(x: &GroupFor<Self, T>) -> GroupFor<Self, T>
source§impl Ord for Symbolic
impl Ord for Symbolic
source§impl PartialEq for Symbolic
impl PartialEq for Symbolic
source§impl PartialOrd for Symbolic
impl PartialOrd for Symbolic
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self and other) and is used by the <=
operator. Read moresource§impl RealField for Symbolic
impl RealField for Symbolic
fn faer_epsilon() -> Option<Self>
fn faer_zero_threshold() -> Option<Self>
fn faer_div(self, _rhs: Self) -> Self
fn faer_usize_to_index(a: usize) -> Self::Index
fn faer_index_to_usize(a: Self::Index) -> usize
fn faer_max_index() -> Self::Index
fn faer_simd_less_than<S: Simd>( _simd: S, _a: SimdGroupFor<Self, S>, _b: SimdGroupFor<Self, S> ) -> Self::SimdMask<S>
fn faer_simd_less_than_or_equal<S: Simd>( _simd: S, _a: SimdGroupFor<Self, S>, _b: SimdGroupFor<Self, S> ) -> Self::SimdMask<S>
fn faer_simd_greater_than<S: Simd>( _simd: S, _a: SimdGroupFor<Self, S>, _b: SimdGroupFor<Self, S> ) -> Self::SimdMask<S>
fn faer_simd_greater_than_or_equal<S: Simd>( _simd: S, _a: SimdGroupFor<Self, S>, _b: SimdGroupFor<Self, S> ) -> Self::SimdMask<S>
fn faer_simd_select<S: Simd>( _simd: S, _mask: Self::SimdMask<S>, _if_true: SimdGroupFor<Self, S>, _if_false: SimdGroupFor<Self, S> ) -> SimdGroupFor<Self, S>
fn faer_simd_index_select<S: Simd>( _simd: S, mask: Self::SimdMask<S>, if_true: Self::SimdIndex<S>, if_false: Self::SimdIndex<S> ) -> Self::SimdIndex<S>
fn faer_simd_index_seq<S: Simd>(_simd: S) -> Self::SimdIndex<S>
fn faer_simd_index_splat<S: Simd>( _simd: S, value: Self::Index ) -> Self::SimdIndex<S>
fn faer_simd_index_add<S: Simd>( _simd: S, a: Self::SimdIndex<S>, b: Self::SimdIndex<S> ) -> Self::SimdIndex<S>
impl Copy for Symbolic
impl Eq for Symbolic
impl Pod for Symbolic
impl StructuralEq for Symbolic
impl StructuralPartialEq for Symbolic
Auto Trait Implementations§
impl RefUnwindSafe for Symbolic
impl Send for Symbolic
impl Sync for Symbolic
impl Unpin for Symbolic
impl UnwindSafe for Symbolic
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
source§impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere T: AnyBitPattern,
§type Bits = T
type Bits = T
Self must have the same layout as the specified Bits except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern.source§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret
bits
as &Self.