pub struct ComplexExpression {
pub real: Expression,
pub imag: Expression,
}Fields§
§real: Expression§imag: ExpressionImplementations§
Source§impl ComplexExpression
impl ComplexExpression
pub fn from_string(input: impl AsRef<str>) -> Self
pub fn from_real_64(input: f64) -> Self
pub fn from_real_32(input: f32) -> Self
pub fn new(cisc_expr: CiscExpression) -> Self
pub fn one() -> Self
pub fn zero() -> Self
pub fn i() -> Self
pub fn pi() -> Self
pub fn is_real(&self) -> bool
pub fn is_imag(&self) -> bool
pub fn is_cplx(&self) -> bool
pub fn is_real_fast(&self) -> bool
pub fn is_imag_fast(&self) -> bool
pub fn is_cplx_fast(&self) -> bool
pub fn is_e(&self) -> bool
pub fn is_zero(&self) -> bool
pub fn is_one(&self) -> bool
pub fn is_zero_fast(&self) -> bool
pub fn is_one_fast(&self) -> bool
pub fn eval<C: ComplexScalar>(&self, args: &HashMap<&str, C::R>) -> C
pub fn map_var_names(&self, var_map: &HashMap<String, String>) -> Self
pub fn conjugate(&self) -> Self
pub fn conjugate_in_place(&mut self)
pub fn differentiate(&self, wrt: &str) -> Self
pub fn simplify(&self) -> Self
pub fn get_ancestors(&self, variable: &str) -> Vec<Expression>
pub fn substitute<S: AsRef<Expression>, T: AsRef<Expression>>( &self, original: S, substitution: T, ) -> Self
pub fn rename_variable<S: AsRef<str>, T: AsRef<str>>( &self, original: S, new: T, ) -> Self
pub fn get_unique_variables(&self) -> Vec<String>
pub fn is_parameterized(&self) -> bool
Trait Implementations§
Source§impl Add<&ComplexExpression> for &ComplexExpression
impl Add<&ComplexExpression> for &ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
+ operator.Source§fn add(self, rhs: &ComplexExpression) -> ComplexExpression
fn add(self, rhs: &ComplexExpression) -> ComplexExpression
Performs the
+ operation. Read moreSource§impl Add<&ComplexExpression> for ComplexExpression
impl Add<&ComplexExpression> for ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
+ operator.Source§fn add(self, rhs: &ComplexExpression) -> ComplexExpression
fn add(self, rhs: &ComplexExpression) -> ComplexExpression
Performs the
+ operation. Read moreSource§impl Add<ComplexExpression> for &ComplexExpression
impl Add<ComplexExpression> for &ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
+ operator.Source§fn add(self, rhs: ComplexExpression) -> ComplexExpression
fn add(self, rhs: ComplexExpression) -> ComplexExpression
Performs the
+ operation. Read moreSource§impl Add for ComplexExpression
impl Add for ComplexExpression
Source§impl AddAssign<&ComplexExpression> for ComplexExpression
impl AddAssign<&ComplexExpression> for ComplexExpression
Source§fn add_assign(&mut self, rhs: &Self)
fn add_assign(&mut self, rhs: &Self)
Performs the
+= operation. Read moreSource§impl AddAssign for ComplexExpression
impl AddAssign for ComplexExpression
Source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
Performs the
+= operation. Read moreSource§impl Clone for ComplexExpression
impl Clone for ComplexExpression
Source§fn clone(&self) -> ComplexExpression
fn clone(&self) -> ComplexExpression
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 Debug for ComplexExpression
impl Debug for ComplexExpression
Source§impl Div<&ComplexExpression> for &ComplexExpression
impl Div<&ComplexExpression> for &ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
/ operator.Source§fn div(self, rhs: &ComplexExpression) -> ComplexExpression
fn div(self, rhs: &ComplexExpression) -> ComplexExpression
Performs the
/ operation. Read moreSource§impl Div<&ComplexExpression> for ComplexExpression
impl Div<&ComplexExpression> for ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
/ operator.Source§fn div(self, rhs: &ComplexExpression) -> ComplexExpression
fn div(self, rhs: &ComplexExpression) -> ComplexExpression
Performs the
/ operation. Read moreSource§impl Div<ComplexExpression> for &ComplexExpression
impl Div<ComplexExpression> for &ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
/ operator.Source§fn div(self, rhs: ComplexExpression) -> ComplexExpression
fn div(self, rhs: ComplexExpression) -> ComplexExpression
Performs the
/ operation. Read moreSource§impl Div for ComplexExpression
impl Div for ComplexExpression
Source§impl DivAssign<&ComplexExpression> for ComplexExpression
impl DivAssign<&ComplexExpression> for ComplexExpression
Source§fn div_assign(&mut self, rhs: &Self)
fn div_assign(&mut self, rhs: &Self)
Performs the
/= operation. Read moreSource§impl DivAssign for ComplexExpression
impl DivAssign for ComplexExpression
Source§fn div_assign(&mut self, rhs: Self)
fn div_assign(&mut self, rhs: Self)
Performs the
/= operation. Read moreSource§impl<C: ComplexScalar> From<C> for ComplexExpression
impl<C: ComplexScalar> From<C> for ComplexExpression
Source§impl Hash for ComplexExpression
impl Hash for ComplexExpression
Source§impl Mul<&ComplexExpression> for &ComplexExpression
impl Mul<&ComplexExpression> for &ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
* operator.Source§fn mul(self, rhs: &ComplexExpression) -> ComplexExpression
fn mul(self, rhs: &ComplexExpression) -> ComplexExpression
Performs the
* operation. Read moreSource§impl Mul<&ComplexExpression> for ComplexExpression
impl Mul<&ComplexExpression> for ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
* operator.Source§fn mul(self, rhs: &ComplexExpression) -> ComplexExpression
fn mul(self, rhs: &ComplexExpression) -> ComplexExpression
Performs the
* operation. Read moreSource§impl Mul<ComplexExpression> for &ComplexExpression
impl Mul<ComplexExpression> for &ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
* operator.Source§fn mul(self, rhs: ComplexExpression) -> ComplexExpression
fn mul(self, rhs: ComplexExpression) -> ComplexExpression
Performs the
* operation. Read moreSource§impl Mul for ComplexExpression
impl Mul for ComplexExpression
Source§impl MulAssign<&ComplexExpression> for ComplexExpression
impl MulAssign<&ComplexExpression> for ComplexExpression
Source§fn mul_assign(&mut self, rhs: &Self)
fn mul_assign(&mut self, rhs: &Self)
Performs the
*= operation. Read moreSource§impl MulAssign for ComplexExpression
impl MulAssign for ComplexExpression
Source§fn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
Performs the
*= operation. Read moreSource§impl Neg for &ComplexExpression
impl Neg for &ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
- operator.Source§fn neg(self) -> ComplexExpression
fn neg(self) -> ComplexExpression
Performs the unary
- operation. Read moreSource§impl Neg for ComplexExpression
impl Neg for ComplexExpression
Source§impl PartialEq for ComplexExpression
impl PartialEq for ComplexExpression
Source§impl Sub<&ComplexExpression> for &ComplexExpression
impl Sub<&ComplexExpression> for &ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
- operator.Source§fn sub(self, rhs: &ComplexExpression) -> ComplexExpression
fn sub(self, rhs: &ComplexExpression) -> ComplexExpression
Performs the
- operation. Read moreSource§impl Sub<&ComplexExpression> for ComplexExpression
impl Sub<&ComplexExpression> for ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
- operator.Source§fn sub(self, rhs: &ComplexExpression) -> ComplexExpression
fn sub(self, rhs: &ComplexExpression) -> ComplexExpression
Performs the
- operation. Read moreSource§impl Sub<ComplexExpression> for &ComplexExpression
impl Sub<ComplexExpression> for &ComplexExpression
Source§type Output = ComplexExpression
type Output = ComplexExpression
The resulting type after applying the
- operator.Source§fn sub(self, rhs: ComplexExpression) -> ComplexExpression
fn sub(self, rhs: ComplexExpression) -> ComplexExpression
Performs the
- operation. Read moreSource§impl Sub for ComplexExpression
impl Sub for ComplexExpression
Source§impl SubAssign<&ComplexExpression> for ComplexExpression
impl SubAssign<&ComplexExpression> for ComplexExpression
Source§fn sub_assign(&mut self, rhs: &Self)
fn sub_assign(&mut self, rhs: &Self)
Performs the
-= operation. Read moreSource§impl SubAssign for ComplexExpression
impl SubAssign for ComplexExpression
Source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
Performs the
-= operation. Read moreimpl Eq for ComplexExpression
impl StructuralPartialEq for ComplexExpression
Auto Trait Implementations§
impl Freeze for ComplexExpression
impl RefUnwindSafe for ComplexExpression
impl Send for ComplexExpression
impl Sync for ComplexExpression
impl Unpin for ComplexExpression
impl UnwindSafe for ComplexExpression
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more