diff options
Diffstat (limited to 'numpy/core/src')
-rw-r--r-- | numpy/core/src/npymath/npy_math_complex.c.src | 15 | ||||
-rw-r--r-- | numpy/core/src/scalarmathmodule.c.src | 2 |
2 files changed, 8 insertions, 9 deletions
diff --git a/numpy/core/src/npymath/npy_math_complex.c.src b/numpy/core/src/npymath/npy_math_complex.c.src index 583328782..b954e93a9 100644 --- a/numpy/core/src/npymath/npy_math_complex.c.src +++ b/numpy/core/src/npymath/npy_math_complex.c.src @@ -195,17 +195,16 @@ #ifndef HAVE_CPOW@C@ @ctype@ npy_cpow@c@ (@ctype@ x, @ctype@ y) { - @ctype@ b, p; - @type@ bx, by, px, py; + @ctype@ b; + @type@ br, bi, yr, yi; + yr = npy_creal@c@(y); + yi = npy_cimag@c@(y); b = npy_clog@c@(x); - p = npy_clog@c@(y); - bx = npy_creal@c@(b); - by = npy_cimag@c@(b); - px = npy_creal@c@(p); - py = npy_cimag@c@(p); + br = npy_creal@c@(b); + bi = npy_cimag@c@(b); - return npy_cexp@c@(npy_cpack@c@(bx * px - by * py, bx * py + by * px)); + return npy_cexp@c@(npy_cpack@c@(br * yr - bi * yi, br * yi + bi * yr)); } #endif diff --git a/numpy/core/src/scalarmathmodule.c.src b/numpy/core/src/scalarmathmodule.c.src index d2be8d69c..5e8cd812f 100644 --- a/numpy/core/src/scalarmathmodule.c.src +++ b/numpy/core/src/scalarmathmodule.c.src @@ -806,7 +806,7 @@ static PyObject * * as a function call. */ #if @cmplx@ - if (arg2.real == 0 && arg1.real == 0) { + if (arg2.real == 0 && arg2.imag == 0) { out1.real = out.real = 1; out1.imag = out.imag = 0; } |