Mercurial > octave
changeset 30782:230c1c39744b
maint: Merge stable to default.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Sat, 26 Feb 2022 10:34:32 +0100 |
parents | 1fcb3359f6a4 (current diff) d041ca628d99 (diff) |
children | d37b9645fae7 |
files | libinterp/corefcn/mappers.cc |
diffstat | 2 files changed, 9 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/libinterp/corefcn/mappers.cc Fri Feb 25 16:22:32 2022 -0800 +++ b/libinterp/corefcn/mappers.cc Sat Feb 26 10:34:32 2022 +0100 @@ -1787,8 +1787,14 @@ /* %!assert (log1p ([0, 2*eps, -2*eps]), [0, 2*eps, -2*eps], 1e-29) -%!assert (log1p (single ([0, 2*eps, -2*eps])), +%!assert (log1p (single ([0, 2*eps, -2*eps])), ... %! single ([0, 2*eps, -2*eps]), 1e-29) +## Compare to result from Wolfram Alpha rounded to 16 significant digits +%!assert <*62094> (log1p (0.1i), ... +%! 0.004975165426584041 + 0.09966865249116203i, eps (0.2)) +%!assert <*62094> (log1p (single (0.1i)), ... +%! single (0.004975165426584041 + 0.09966865249116203i), ... +%! eps (single (0.2))) %!error log1p () %!error log1p (1, 2)
--- a/liboctave/numeric/lo-specfun.cc Fri Feb 25 16:22:32 2022 -0800 +++ b/liboctave/numeric/lo-specfun.cc Sat Feb 26 10:34:32 2022 +0100 @@ -1965,7 +1965,7 @@ { double u = 2*r + r*r + i*i; retval = Complex (log1p (u / (1+std::sqrt (u+1))), - atan2 (1 + r, i)); + atan2 (i, 1 + r)); } else retval = std::log (Complex (1) + x); @@ -1984,7 +1984,7 @@ { float u = 2*r + r*r + i*i; retval = FloatComplex (log1p (u / (1+std::sqrt (u+1))), - atan2 (1 + r, i)); + atan2 (i, 1 + r)); } else retval = std::log (FloatComplex (1) + x);