We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 23ccbd9 commit f1903ecCopy full SHA for f1903ec
src/lib.rs
@@ -373,6 +373,10 @@ impl<T: Float> Complex<T> {
373
// = p^c e^(−d θ) (cos(c θ + d ln(ρ)) + i sin(c θ + d ln(ρ)))
374
// = from_polar(p^c e^(−d θ), c θ + d ln(ρ))
375
let (r, theta) = self.to_polar();
376
+
377
+ if r.is_zero() {
378
+ return Self::new(r, r);
379
+ }
380
Self::from_polar(
381
r.powf(exp.re) * (-exp.im * theta).exp(),
382
exp.re * theta + exp.im * r.ln(),
@@ -1908,6 +1912,8 @@ pub(crate) mod test {
1908
1912
Complex::new(1.65826, -0.33502),
1909
1913
1e-5
1910
1914
));
1915
+ let z = Complex::new(0.0, 0.0);
1916
+ assert!(close(z.powc(b), z));
1911
1917
}
1918
1919
#[test]
0 commit comments