diff --git a/src/complex.rs b/src/complex.rs index e8c7557..a791a8c 100644 --- a/src/complex.rs +++ b/src/complex.rs @@ -56,11 +56,13 @@ impl Complex { pub fn unscale(&self, t: T) -> Complex { Complex::new(self.re.clone() / t.clone(), self.im.clone() / t) } +} +impl> Complex { /// Returns the complex conjugate. i.e. `re - i im` #[inline] pub fn conj(&self) -> Complex { - Complex::new(self.re.clone(), T::zero() - self.im.clone()) + Complex::new(self.re.clone(), -self.im.clone()) } /// Returns `1/self` @@ -68,7 +70,7 @@ impl Complex { pub fn inv(&self) -> Complex { let norm_sqr = self.norm_sqr(); Complex::new(self.re.clone() / norm_sqr.clone(), - T::zero() - self.im.clone() / norm_sqr) + -self.im.clone() / norm_sqr) } }