pub struct ComplexValidated<K: NumKernel> { /* private fields */ }Expand description
A validated complex number that is guaranteed to conform to a specific NumKernel.
Trait Implementations§
Source§impl<K: NumKernel> ACos for ComplexValidated<K>
impl<K: NumKernel> ACos for ComplexValidated<K>
Source§type Error = FunctionErrors<ACosComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<ACosComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_acos method.Source§impl<K: NumKernel> ACosH for ComplexValidated<K>
impl<K: NumKernel> ACosH for ComplexValidated<K>
Source§type Error = FunctionErrors<ACosHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<ACosHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_acosh method.Source§impl<K: NumKernel> ASin for ComplexValidated<K>
impl<K: NumKernel> ASin for ComplexValidated<K>
Source§type Error = FunctionErrors<ASinComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<ASinComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_asin method.Source§impl<K: NumKernel> ASinH for ComplexValidated<K>
impl<K: NumKernel> ASinH for ComplexValidated<K>
Source§type Error = FunctionErrors<ASinHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<ASinHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_asinh method.Source§impl<K: NumKernel> ATan for ComplexValidated<K>
impl<K: NumKernel> ATan for ComplexValidated<K>
Source§type Error = FunctionErrors<ATanComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<ATanComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_atan method.Source§impl<K: NumKernel> ATanH for ComplexValidated<K>
impl<K: NumKernel> ATanH for ComplexValidated<K>
Source§type Error = FunctionErrors<ATanHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<ATanHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_atanh method.Source§impl<K: NumKernel> Abs for ComplexValidated<K>
impl<K: NumKernel> Abs for ComplexValidated<K>
Source§type Output = RealValidated<K>
type Output = RealValidated<K>
Source§type Error = FunctionErrors<AbsInputErrors<<<K as NumKernel>::ComplexPolicy as ValidationPolicy>::Value>, <<<<K as NumKernel>::ComplexPolicy as ValidationPolicy>::Value as RawComplexTrait>::RawReal as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<AbsInputErrors<<<K as NumKernel>::ComplexPolicy as ValidationPolicy>::Value>, <<<<K as NumKernel>::ComplexPolicy as ValidationPolicy>::Value as RawComplexTrait>::RawReal as RawScalarTrait>::ValidationErrors>
Source§impl<'a, K: NumKernel> Add<&'a ComplexValidated<K>> for ComplexValidated<K>
impl<'a, K: NumKernel> Add<&'a ComplexValidated<K>> for ComplexValidated<K>
Source§impl<'a, K: NumKernel> Add<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Add<&'a <K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<'a, K: NumKernel> Add<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Add<&'a <K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
+ operator.Source§impl<'a, K: NumKernel> Add<ComplexValidated<K>> for &'a ComplexValidated<K>
impl<'a, K: NumKernel> Add<ComplexValidated<K>> for &'a ComplexValidated<K>
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
+ operator.Source§impl<K: NumKernel> Add<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Add<<K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<K: NumKernel> Add<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Add<<K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
+ operator.Source§impl<'a, K: NumKernel> Add for &'a ComplexValidated<K>
impl<'a, K: NumKernel> Add for &'a ComplexValidated<K>
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
+ operator.Source§impl<K: NumKernel> Add for ComplexValidated<K>
impl<K: NumKernel> Add for ComplexValidated<K>
Source§impl<'a, K: NumKernel> AddAssign<&'a ComplexValidated<K>> for ComplexValidated<K>
impl<'a, K: NumKernel> AddAssign<&'a ComplexValidated<K>> for ComplexValidated<K>
Source§fn add_assign(&mut self, rhs: &'a Self)
fn add_assign(&mut self, rhs: &'a Self)
+= operation. Read moreSource§impl<'a, K: NumKernel> AddAssign<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: AddAssign<&'a <K::RealPolicy as ValidationPolicy>::Value>,
impl<'a, K: NumKernel> AddAssign<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: AddAssign<&'a <K::RealPolicy as ValidationPolicy>::Value>,
Source§fn add_assign(&mut self, rhs: &'a RealValidated<K>)
fn add_assign(&mut self, rhs: &'a RealValidated<K>)
+= operation. Read moreSource§impl<K: NumKernel> AddAssign<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: AddAssign<<K::RealPolicy as ValidationPolicy>::Value>,
impl<K: NumKernel> AddAssign<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: AddAssign<<K::RealPolicy as ValidationPolicy>::Value>,
Source§fn add_assign(&mut self, rhs: RealValidated<K>)
fn add_assign(&mut self, rhs: RealValidated<K>)
+= operation. Read moreSource§impl<K: NumKernel> AddAssign for ComplexValidated<K>
impl<K: NumKernel> AddAssign for ComplexValidated<K>
Source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
+= operation. Read moreSource§impl<K: NumKernel> Arg for ComplexValidated<K>
impl<K: NumKernel> Arg for ComplexValidated<K>
Source§type Output = RealValidated<K>
type Output = RealValidated<K>
Source§type Error = FunctionErrors<ArgInputErrors<<K as RawKernel>::RawComplex>, <<<K as RawKernel>::RawComplex as RawComplexTrait>::RawReal as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<ArgInputErrors<<K as RawKernel>::RawComplex>, <<<K as RawKernel>::RawComplex as RawComplexTrait>::RawReal as RawScalarTrait>::ValidationErrors>
Arg::try_arg() method. Read moreSource§fn try_arg(self) -> Result<Self::Output, Self::Error>
fn try_arg(self) -> Result<Self::Output, Self::Error>
self, returning a Result.Source§fn arg(self) -> RealValidated<K>
fn arg(self) -> RealValidated<K>
self.Source§impl<K: NumKernel> AsRef<<K as RawKernel>::RawComplex> for ComplexValidated<K>
impl<K: NumKernel> AsRef<<K as RawKernel>::RawComplex> for ComplexValidated<K>
Source§fn as_ref(&self) -> &K::RawComplex
fn as_ref(&self) -> &K::RawComplex
Source§impl<K: NumKernel> Clone for ComplexValidated<K>
impl<K: NumKernel> Clone for ComplexValidated<K>
Source§impl<K: NumKernel> ComplexScalar for ComplexValidated<K>
impl<K: NumKernel> ComplexScalar for ComplexValidated<K>
Source§impl<K: NumKernel> ComplexScalarConstructors for ComplexValidated<K>
Implement the ComplexScalarConstructors trait for the ComplexValidated type.
impl<K: NumKernel> ComplexScalarConstructors for ComplexValidated<K>
Implement the ComplexScalarConstructors trait for the ComplexValidated type.
Source§type RawComplex = <K as RawKernel>::RawComplex
type RawComplex = <K as RawKernel>::RawComplex
num::Complex<f64> or rug::Complex).Source§fn try_new_complex(
real_part: K::RawReal,
imag_part: K::RawReal,
) -> Result<Self, <Self::RawComplex as RawScalarTrait>::ValidationErrors>
fn try_new_complex( real_part: K::RawReal, imag_part: K::RawReal, ) -> Result<Self, <Self::RawComplex as RawScalarTrait>::ValidationErrors>
Source§fn new_complex(real: Self::RealType, imag: Self::RealType) -> Self
fn new_complex(real: Self::RealType, imag: Self::RealType) -> Self
Source§fn try_new_pure_real(
real_part: <Self::RawComplex as RawComplexTrait>::RawReal,
) -> Result<Self, <Self::RawComplex as RawScalarTrait>::ValidationErrors>
fn try_new_pure_real( real_part: <Self::RawComplex as RawComplexTrait>::RawReal, ) -> Result<Self, <Self::RawComplex as RawScalarTrait>::ValidationErrors>
Source§fn try_new_pure_imaginary(
imag_part: <Self::RawComplex as RawComplexTrait>::RawReal,
) -> Result<Self, <Self::RawComplex as RawScalarTrait>::ValidationErrors>
fn try_new_pure_imaginary( imag_part: <Self::RawComplex as RawComplexTrait>::RawReal, ) -> Result<Self, <Self::RawComplex as RawScalarTrait>::ValidationErrors>
fn new_pure_real(real_part: Self::RealType) -> Self
fn new_pure_imaginary(imag_part: Self::RealType) -> Self
Source§impl<K: NumKernel> ComplexScalarGetParts for ComplexValidated<K>
Implement the ComplexScalarGetParts trait for the ComplexValidated type.
impl<K: NumKernel> ComplexScalarGetParts for ComplexValidated<K>
Implement the ComplexScalarGetParts trait for the ComplexValidated type.
Source§fn real_part(&self) -> RealValidated<K>
fn real_part(&self) -> RealValidated<K>
Get the real part of the complex number.
Source§fn imag_part(&self) -> RealValidated<K>
fn imag_part(&self) -> RealValidated<K>
Get the imaginary part of the complex number.
Source§fn raw_real_part(&self) -> &K::RawReal
fn raw_real_part(&self) -> &K::RawReal
Source§fn raw_imag_part(&self) -> &K::RawReal
fn raw_imag_part(&self) -> &K::RawReal
Source§fn is_pure_real(&self) -> bool
fn is_pure_real(&self) -> bool
true if the complex number is purely real (i.e., has no imaginary part). Read moreSource§fn is_pure_imaginary(&self) -> bool
fn is_pure_imaginary(&self) -> bool
true if the complex number is purely imaginary (i.e., has zero real part and non-zero imaginary part). Read moreSource§impl<K: NumKernel> ComplexScalarMutateParts for ComplexValidated<K>
Implement the ComplexScalarMutateParts trait for the ComplexValidated type.
impl<K: NumKernel> ComplexScalarMutateParts for ComplexValidated<K>
Implement the ComplexScalarMutateParts trait for the ComplexValidated type.
Source§fn add_to_real_part(&mut self, c: &RealValidated<K>)
fn add_to_real_part(&mut self, c: &RealValidated<K>)
Add the value of the the real coefficient c to real part of self.
Source§fn add_to_imaginary_part(&mut self, c: &RealValidated<K>)
fn add_to_imaginary_part(&mut self, c: &RealValidated<K>)
Add the value of the the real coefficient c to imaginary part of self.
Source§fn multiply_real_part(&mut self, c: &RealValidated<K>)
fn multiply_real_part(&mut self, c: &RealValidated<K>)
Multiply the value of the real part by the real coefficient c.
Source§fn multiply_imaginary_part(&mut self, c: &RealValidated<K>)
fn multiply_imaginary_part(&mut self, c: &RealValidated<K>)
Multiply the value of the imaginary part by the real coefficient c.
Source§impl<K: NumKernel> ComplexScalarSetParts for ComplexValidated<K>
Implement the ComplexScalarSetParts trait for the ComplexValidated type.
impl<K: NumKernel> ComplexScalarSetParts for ComplexValidated<K>
Implement the ComplexScalarSetParts trait for the ComplexValidated type.
Source§fn set_real_part(&mut self, real_part: RealValidated<K>)
fn set_real_part(&mut self, real_part: RealValidated<K>)
Set the value of the real part.
Source§fn set_imaginary_part(&mut self, imag_part: RealValidated<K>)
fn set_imaginary_part(&mut self, imag_part: RealValidated<K>)
Set the value of the imaginary part.
Source§fn with_real_part(self, real_part: Self::RealType) -> Self
fn with_real_part(self, real_part: Self::RealType) -> Self
self.Source§fn with_imaginary_part(self, imag_part: Self::RealType) -> Self
fn with_imaginary_part(self, imag_part: Self::RealType) -> Self
self.Source§impl<K: NumKernel> Conjugate for ComplexValidated<K>
impl<K: NumKernel> Conjugate for ComplexValidated<K>
Source§impl<K: NumKernel> Cos for ComplexValidated<K>
impl<K: NumKernel> Cos for ComplexValidated<K>
Source§type Error = FunctionErrors<CosInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<CosInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_cos method.Source§impl<K: NumKernel> CosH for ComplexValidated<K>
impl<K: NumKernel> CosH for ComplexValidated<K>
Source§type Error = FunctionErrors<CosHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<CosHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_cosh method.Source§impl<K: NumKernel> Debug for ComplexValidated<K>
impl<K: NumKernel> Debug for ComplexValidated<K>
Source§impl<'de, K: NumKernel> Deserialize<'de> for ComplexValidated<K>where
K::RawComplex: Deserialize<'de>,
impl<'de, K: NumKernel> Deserialize<'de> for ComplexValidated<K>where
K::RawComplex: Deserialize<'de>,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl<K: NumKernel> Display for ComplexValidated<K>where
K::RawComplex: Display,
impl<K: NumKernel> Display for ComplexValidated<K>where
K::RawComplex: Display,
Source§impl<K: NumKernel> Distribution<ComplexValidated<K>> for StandardUniform
Implement the Distribution trait for ComplexValidated type
using the StandardUniform distribution.
impl<K: NumKernel> Distribution<ComplexValidated<K>> for StandardUniform
Implement the Distribution trait for ComplexValidated type
using the StandardUniform distribution.
Source§fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> ComplexValidated<K>
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> ComplexValidated<K>
T, using rng as the source of randomness.Source§fn sample_iter<R>(self, rng: R) -> Iter<Self, R, T>
fn sample_iter<R>(self, rng: R) -> Iter<Self, R, T>
T, using rng as
the source of randomness. Read moreSource§impl<'a, K: NumKernel> Div<&'a ComplexValidated<K>> for ComplexValidated<K>
impl<'a, K: NumKernel> Div<&'a ComplexValidated<K>> for ComplexValidated<K>
Source§impl<'a, K: NumKernel> Div<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Div<&'a <K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<'a, K: NumKernel> Div<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Div<&'a <K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
/ operator.Source§impl<'a, K: NumKernel> Div<ComplexValidated<K>> for &'a ComplexValidated<K>
impl<'a, K: NumKernel> Div<ComplexValidated<K>> for &'a ComplexValidated<K>
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
/ operator.Source§impl<K: NumKernel> Div<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Div<<K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<K: NumKernel> Div<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Div<<K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
/ operator.Source§impl<'a, K: NumKernel> Div for &'a ComplexValidated<K>
impl<'a, K: NumKernel> Div for &'a ComplexValidated<K>
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
/ operator.Source§impl<K: NumKernel> Div for ComplexValidated<K>
impl<K: NumKernel> Div for ComplexValidated<K>
Source§impl<'a, K: NumKernel> DivAssign<&'a ComplexValidated<K>> for ComplexValidated<K>
impl<'a, K: NumKernel> DivAssign<&'a ComplexValidated<K>> for ComplexValidated<K>
Source§fn div_assign(&mut self, rhs: &'a Self)
fn div_assign(&mut self, rhs: &'a Self)
/= operation. Read moreSource§impl<'a, K: NumKernel> DivAssign<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: DivAssign<&'a <K::RealPolicy as ValidationPolicy>::Value>,
impl<'a, K: NumKernel> DivAssign<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: DivAssign<&'a <K::RealPolicy as ValidationPolicy>::Value>,
Source§fn div_assign(&mut self, rhs: &'a RealValidated<K>)
fn div_assign(&mut self, rhs: &'a RealValidated<K>)
/= operation. Read moreSource§impl<K: NumKernel> DivAssign<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: DivAssign<<K::RealPolicy as ValidationPolicy>::Value>,
impl<K: NumKernel> DivAssign<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: DivAssign<<K::RealPolicy as ValidationPolicy>::Value>,
Source§fn div_assign(&mut self, rhs: RealValidated<K>)
fn div_assign(&mut self, rhs: RealValidated<K>)
/= operation. Read moreSource§impl<K: NumKernel> DivAssign for ComplexValidated<K>
impl<K: NumKernel> DivAssign for ComplexValidated<K>
Source§fn div_assign(&mut self, rhs: Self)
fn div_assign(&mut self, rhs: Self)
/= operation. Read moreSource§impl<K: NumKernel> Exp for ComplexValidated<K>
impl<K: NumKernel> Exp for ComplexValidated<K>
Source§type Error = FunctionErrors<ExpInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<ExpInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_exp method. Read moreSource§impl<K: NumKernel> FpChecks for ComplexValidated<K>
impl<K: NumKernel> FpChecks for ComplexValidated<K>
Source§fn is_infinite(&self) -> bool
fn is_infinite(&self) -> bool
Returns true if self is positive infinity or negative infinity, and false otherwise.
Source§impl<K: NumKernel> FpScalar for ComplexValidated<K>
impl<K: NumKernel> FpScalar for ComplexValidated<K>
Source§fn as_raw_ref(&self) -> &Self::InnerType
fn as_raw_ref(&self) -> &Self::InnerType
Returns a reference to the underlying raw complex value.
Source§type Kind = Complex
type Kind = Complex
Real or Complex.
This is a sealed trait to prevent external implementations.Source§type RealType = RealValidated<K>
type RealType = RealValidated<K>
Source§impl<K: NumKernel> Hash for ComplexValidated<K>where
K::ComplexPolicy: GuaranteesFiniteComplexValues,
Implements Hash for validated complex number types with finite value guarantees.
impl<K: NumKernel> Hash for ComplexValidated<K>where
K::ComplexPolicy: GuaranteesFiniteComplexValues,
Implements Hash for validated complex number types with finite value guarantees.
This implementation is only available when the kernel’s ComplexPolicy
implements the GuaranteesFiniteComplexValues marker trait. This ensures that
both the real and imaginary parts are never NaN, making hash values
consistent and allowing these types to be used as keys in hash-based collections.
§Hashing Strategy
The implementation delegates to the RawScalarTrait::compute_hash() method provided by the
underlying raw complex type (via RawComplexTrait). This method:
- For
Complex<f64>types: Hashes real and imaginary parts sequentially usingf64::to_bits() - For
rug::Complextypes: Hashes real and imaginary components using theircompute_hash()methods - Handles signed zeros correctly in both real and imaginary parts
- Maintains the hash contract:
a == bimplieshash(a) == hash(b)
§Safety and Correctness
This implementation is safe because:
GuaranteesFiniteComplexValuesensures noNaNvalues can exist in either component- The
Eqimplementation is well-defined for finite complex values - Signed zeros are handled consistently in both equality and hashing
- Complex numbers with different component values produce different hashes
§Usage Example
use num_valid::ComplexNative64StrictFinite;
use num::Complex;
use std::collections::HashMap;
use try_create::TryNew;
let mut map = HashMap::new();
let key = ComplexNative64StrictFinite::try_new(Complex::new(1.0, 2.0)).unwrap();
map.insert(key, "complex value");
assert_eq!(map.len(), 1);Source§impl<K: NumKernel> IntoInner for ComplexValidated<K>
impl<K: NumKernel> IntoInner for ComplexValidated<K>
Source§type InnerType = <K as RawKernel>::RawComplex
type InnerType = <K as RawKernel>::RawComplex
Source§fn into_inner(self) -> Self::InnerType
fn into_inner(self) -> Self::InnerType
Source§impl<K: NumKernel> Ln for ComplexValidated<K>
impl<K: NumKernel> Ln for ComplexValidated<K>
Source§type Error = FunctionErrors<LogarithmComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<LogarithmComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_ln method.Source§impl<K: NumKernel> Log10 for ComplexValidated<K>
impl<K: NumKernel> Log10 for ComplexValidated<K>
Source§type Error = FunctionErrors<LogarithmComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<LogarithmComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_log10 method.Source§impl<K: NumKernel> Log2 for ComplexValidated<K>
impl<K: NumKernel> Log2 for ComplexValidated<K>
Source§type Error = FunctionErrors<LogarithmComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<LogarithmComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_log2 method.Source§impl<K: NumKernel> LowerExp for ComplexValidated<K>where
K::RawComplex: Display,
impl<K: NumKernel> LowerExp for ComplexValidated<K>where
K::RawComplex: Display,
Source§impl<'a, K: NumKernel> Mul<&'a ComplexValidated<K>> for ComplexValidated<K>
impl<'a, K: NumKernel> Mul<&'a ComplexValidated<K>> for ComplexValidated<K>
Source§impl<'a, K: NumKernel> Mul<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Mul<&'a <K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<'a, K: NumKernel> Mul<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Mul<&'a <K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
* operator.Source§impl<'a, K: NumKernel> Mul<ComplexValidated<K>> for &'a ComplexValidated<K>
impl<'a, K: NumKernel> Mul<ComplexValidated<K>> for &'a ComplexValidated<K>
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
* operator.Source§impl<'a, K: NumKernel> Mul<ComplexValidated<K>> for &'a RealValidated<K>where
<K::RealPolicy as ValidationPolicy>::Value: Mul<<K::ComplexPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<'a, K: NumKernel> Mul<ComplexValidated<K>> for &'a RealValidated<K>where
<K::RealPolicy as ValidationPolicy>::Value: Mul<<K::ComplexPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
* operator.Source§impl<K: NumKernel> Mul<ComplexValidated<K>> for RealValidated<K>where
<K::RealPolicy as ValidationPolicy>::Value: Mul<<K::ComplexPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<K: NumKernel> Mul<ComplexValidated<K>> for RealValidated<K>where
<K::RealPolicy as ValidationPolicy>::Value: Mul<<K::ComplexPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
* operator.Source§impl<K: NumKernel> Mul<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Mul<<K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<K: NumKernel> Mul<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Mul<<K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
* operator.Source§impl<'a, K: NumKernel> Mul for &'a ComplexValidated<K>
impl<'a, K: NumKernel> Mul for &'a ComplexValidated<K>
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
* operator.Source§impl<K: NumKernel> Mul for ComplexValidated<K>
impl<K: NumKernel> Mul for ComplexValidated<K>
Source§impl<K: NumKernel> MulAddRef for ComplexValidated<K>
impl<K: NumKernel> MulAddRef for ComplexValidated<K>
Source§fn mul_add_ref(self, b: &Self, c: &Self) -> Self
fn mul_add_ref(self, b: &Self, c: &Self) -> Self
Multiplies and adds in one fused operation, rounding to the nearest with only one rounding error.
a.mul_add(b, c) produces a result like a * &b + &c.
Source§impl<'a, K: NumKernel> MulAssign<&'a ComplexValidated<K>> for ComplexValidated<K>
impl<'a, K: NumKernel> MulAssign<&'a ComplexValidated<K>> for ComplexValidated<K>
Source§fn mul_assign(&mut self, rhs: &'a Self)
fn mul_assign(&mut self, rhs: &'a Self)
*= operation. Read moreSource§impl<'a, K: NumKernel> MulAssign<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: MulAssign<&'a <K::RealPolicy as ValidationPolicy>::Value>,
impl<'a, K: NumKernel> MulAssign<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: MulAssign<&'a <K::RealPolicy as ValidationPolicy>::Value>,
Source§fn mul_assign(&mut self, rhs: &'a RealValidated<K>)
fn mul_assign(&mut self, rhs: &'a RealValidated<K>)
*= operation. Read moreSource§impl<K: NumKernel> MulAssign<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: MulAssign<<K::RealPolicy as ValidationPolicy>::Value>,
impl<K: NumKernel> MulAssign<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: MulAssign<<K::RealPolicy as ValidationPolicy>::Value>,
Source§fn mul_assign(&mut self, rhs: RealValidated<K>)
fn mul_assign(&mut self, rhs: RealValidated<K>)
*= operation. Read moreSource§impl<K: NumKernel> MulAssign for ComplexValidated<K>
impl<K: NumKernel> MulAssign for ComplexValidated<K>
Source§fn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
*= operation. Read moreSource§impl<K: NumKernel> Neg for ComplexValidated<K>
impl<K: NumKernel> Neg for ComplexValidated<K>
Source§impl<K: NumKernel> NegAssign for ComplexValidated<K>
impl<K: NumKernel> NegAssign for ComplexValidated<K>
Source§fn neg_assign(&mut self)
fn neg_assign(&mut self)
Performs the negation of self.
Source§impl<K: NumKernel> NeumaierAddable for ComplexValidated<K>
impl<K: NumKernel> NeumaierAddable for ComplexValidated<K>
fn neumaier_compensated_sum( value: Self, sum: &mut Self, compensation: &mut Self, )
Source§impl<K: NumKernel> New for ComplexValidated<K>
impl<K: NumKernel> New for ComplexValidated<K>
Source§impl<K: NumKernel> One for ComplexValidated<K>
impl<K: NumKernel> One for ComplexValidated<K>
Source§impl<K: NumKernel> PartialEq for ComplexValidated<K>
impl<K: NumKernel> PartialEq for ComplexValidated<K>
Source§impl<K: NumKernel> Pow<&RealValidated<K>> for ComplexValidated<K>
impl<K: NumKernel> Pow<&RealValidated<K>> for ComplexValidated<K>
Source§fn pow(self, exponent: &RealValidated<K>) -> Self
fn pow(self, exponent: &RealValidated<K>) -> Self
Raises th number self to the power exponent.
Source§type Error = PowComplexBaseRealExponentErrors<<K as RawKernel>::RawComplex>
type Error = PowComplexBaseRealExponentErrors<<K as RawKernel>::RawComplex>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<i128> for ComplexValidated<K>
impl<K: NumKernel> Pow<i128> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i128>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i128>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<i16> for ComplexValidated<K>
impl<K: NumKernel> Pow<i16> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i16>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i16>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<i32> for ComplexValidated<K>
impl<K: NumKernel> Pow<i32> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i32>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i32>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<i64> for ComplexValidated<K>
impl<K: NumKernel> Pow<i64> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i64>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i64>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<i8> for ComplexValidated<K>
impl<K: NumKernel> Pow<i8> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i8>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, i8>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<isize> for ComplexValidated<K>
impl<K: NumKernel> Pow<isize> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, isize>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, isize>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<u128> for ComplexValidated<K>
impl<K: NumKernel> Pow<u128> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u128>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u128>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<u16> for ComplexValidated<K>
impl<K: NumKernel> Pow<u16> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u16>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u16>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<u32> for ComplexValidated<K>
impl<K: NumKernel> Pow<u32> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u32>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u32>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<u64> for ComplexValidated<K>
impl<K: NumKernel> Pow<u64> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u64>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u64>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<u8> for ComplexValidated<K>
impl<K: NumKernel> Pow<u8> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u8>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, u8>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> Pow<usize> for ComplexValidated<K>
impl<K: NumKernel> Pow<usize> for ComplexValidated<K>
Source§type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, usize>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<PowIntExponentInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value, usize>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_pow method.
This type must implement std::error::Error for proper error handling.Source§impl<K: NumKernel> PowIntExponent for ComplexValidated<K>
impl<K: NumKernel> PowIntExponent for ComplexValidated<K>
type RawType = <K as RawKernel>::RawComplex
Source§impl<K> RandomSampleFromF64 for ComplexValidated<K>where
K: NumKernel,
impl<K> RandomSampleFromF64 for ComplexValidated<K>where
K: NumKernel,
Source§impl<K: NumKernel> Reciprocal for ComplexValidated<K>
impl<K: NumKernel> Reciprocal for ComplexValidated<K>
Source§type Error = FunctionErrors<ReciprocalInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<ReciprocalInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_reciprocal method. Read moreSource§fn try_reciprocal(self) -> Result<Self, Self::Error>
fn try_reciprocal(self) -> Result<Self, Self::Error>
Source§fn reciprocal(self) -> Self
fn reciprocal(self) -> Self
self (1/self).Source§impl<K: NumKernel> Serialize for ComplexValidated<K>where
K::RawComplex: Serialize,
impl<K: NumKernel> Serialize for ComplexValidated<K>where
K::RawComplex: Serialize,
Source§impl<K: NumKernel> Sin for ComplexValidated<K>
impl<K: NumKernel> Sin for ComplexValidated<K>
Source§type Error = FunctionErrors<SinInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<SinInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_sin method.Source§impl<K: NumKernel> SinH for ComplexValidated<K>
impl<K: NumKernel> SinH for ComplexValidated<K>
Source§type Error = FunctionErrors<SinHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<SinHInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_sinh method.Source§impl<K: NumKernel> Sqrt for ComplexValidated<K>
impl<K: NumKernel> Sqrt for ComplexValidated<K>
Source§type Error = FunctionErrors<SqrtComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<SqrtComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_sqrt method.Source§impl<'a, K: NumKernel> Sub<&'a ComplexValidated<K>> for ComplexValidated<K>
impl<'a, K: NumKernel> Sub<&'a ComplexValidated<K>> for ComplexValidated<K>
Source§impl<'a, K: NumKernel> Sub<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Sub<&'a <K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<'a, K: NumKernel> Sub<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Sub<&'a <K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
- operator.Source§impl<'a, K: NumKernel> Sub<ComplexValidated<K>> for &'a ComplexValidated<K>
impl<'a, K: NumKernel> Sub<ComplexValidated<K>> for &'a ComplexValidated<K>
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
- operator.Source§impl<K: NumKernel> Sub<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Sub<<K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
impl<K: NumKernel> Sub<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: Sub<<K::RealPolicy as ValidationPolicy>::Value, Output = <K::ComplexPolicy as ValidationPolicy>::Value>,
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
- operator.Source§impl<'a, K: NumKernel> Sub for &'a ComplexValidated<K>
impl<'a, K: NumKernel> Sub for &'a ComplexValidated<K>
Source§type Output = ComplexValidated<K>
type Output = ComplexValidated<K>
- operator.Source§impl<K: NumKernel> Sub for ComplexValidated<K>
impl<K: NumKernel> Sub for ComplexValidated<K>
Source§impl<'a, K: NumKernel> SubAssign<&'a ComplexValidated<K>> for ComplexValidated<K>
impl<'a, K: NumKernel> SubAssign<&'a ComplexValidated<K>> for ComplexValidated<K>
Source§fn sub_assign(&mut self, rhs: &'a Self)
fn sub_assign(&mut self, rhs: &'a Self)
-= operation. Read moreSource§impl<'a, K: NumKernel> SubAssign<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: SubAssign<&'a <K::RealPolicy as ValidationPolicy>::Value>,
impl<'a, K: NumKernel> SubAssign<&'a RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: SubAssign<&'a <K::RealPolicy as ValidationPolicy>::Value>,
Source§fn sub_assign(&mut self, rhs: &'a RealValidated<K>)
fn sub_assign(&mut self, rhs: &'a RealValidated<K>)
-= operation. Read moreSource§impl<K: NumKernel> SubAssign<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: SubAssign<<K::RealPolicy as ValidationPolicy>::Value>,
impl<K: NumKernel> SubAssign<RealValidated<K>> for ComplexValidated<K>where
<K::ComplexPolicy as ValidationPolicy>::Value: SubAssign<<K::RealPolicy as ValidationPolicy>::Value>,
Source§fn sub_assign(&mut self, rhs: RealValidated<K>)
fn sub_assign(&mut self, rhs: RealValidated<K>)
-= operation. Read moreSource§impl<K: NumKernel> SubAssign for ComplexValidated<K>
impl<K: NumKernel> SubAssign for ComplexValidated<K>
Source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
-= operation. Read moreSource§impl<K: NumKernel> Sum for ComplexValidated<K>
impl<K: NumKernel> Sum for ComplexValidated<K>
Source§impl<K: NumKernel> Tan for ComplexValidated<K>
impl<K: NumKernel> Tan for ComplexValidated<K>
Source§type Error = FunctionErrors<TanComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<TanComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_tan method.Source§impl<K: NumKernel> TanH for ComplexValidated<K>
impl<K: NumKernel> TanH for ComplexValidated<K>
Source§type Error = FunctionErrors<TanHComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
type Error = FunctionErrors<TanHComplexInputErrors<<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value>, <<<ComplexValidated<K> as TryNewValidated>::Policy as ValidationPolicy>::Value as RawScalarTrait>::ValidationErrors>
try_tanh method.Source§impl<K: NumKernel> TryNew for ComplexValidated<K>
impl<K: NumKernel> TryNew for ComplexValidated<K>
Source§impl<K: NumKernel> TryNewValidated for ComplexValidated<K>
impl<K: NumKernel> TryNewValidated for ComplexValidated<K>
Source§type Policy = <K as NumKernel>::ComplexPolicy
type Policy = <K as NumKernel>::ComplexPolicy
ValidationPolicy. Read moreSource§fn try_new_validated(value: Self::InnerType) -> Result<Self, Self::Error>
fn try_new_validated(value: Self::InnerType) -> Result<Self, Self::Error>
Self from value.
This method should first validate value using Self::Policy::validate_ref(&value)
(or Self::Policy::validate(value) if consuming the value is intended by the policy).
If validation is successful, it proceeds to construct the Self instance,
typically by calling Self::try_new(value).
If validation fails, the error from the policy is converted into Self::Error and returned.
If construction after successful validation fails, the error from Self::try_new is returned.Source§impl<K: NumKernel> Zero for ComplexValidated<K>
impl<K: NumKernel> Zero for ComplexValidated<K>
impl<K: NumKernel> Arithmetic for ComplexValidated<K>
impl<K: NumKernel> Copy for ComplexValidated<K>where
K::RawComplex: Copy,
impl<K: NumKernel> Eq for ComplexValidated<K>where
K::ComplexPolicy: GuaranteesFiniteComplexValues,
Implements total equality (Eq) for ComplexValidated types.
This implementation is only available when the kernel’s ComplexPolicy
implements the GuaranteesFiniteComplexValues marker trait. This ensures that
the underlying complex number components are never NaN, making the equality
relation reflexive, symmetric, and transitive, as required by Eq.
impl<K: NumKernel> HyperbolicFunctions for ComplexValidated<K>
impl<K: NumKernel> LogarithmFunctions for ComplexValidated<K>
impl<K: NumKernel> TrigonometricFunctions for ComplexValidated<K>
Auto Trait Implementations§
impl<K> Freeze for ComplexValidated<K>
impl<K> RefUnwindSafe for ComplexValidated<K>
impl<K> Send for ComplexValidated<K>
impl<K> Sync for ComplexValidated<K>
impl<K> Unpin for ComplexValidated<K>
impl<K> UnwindSafe for ComplexValidated<K>
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
Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ConditionallyCreate for T
impl<T> ConditionallyCreate for T
Source§fn create_conditionally(value: Self::InnerType) -> Self
fn create_conditionally(value: Self::InnerType) -> Self
Self. Read more