Commit graph

24 commits

Author SHA1 Message Date
Inkrementator
91aa5feead Unify hypot and abs of complex values
This ports the fixes from abs(T)(ComplexT) regarding NaN and skipping
potentially inaccuracy inducing mathematical no-ops when one arg is 0 to
hypot. Both functions do the same thing and should be deduplicated.
hypot also has some logic regarding under and overflows, and while I
don't fully understand it, it should probably not be removed for complex
numbers.
2025-03-17 22:40:31 +01:00
Aditya Chincholkar
271ae6219d
Fix #10577 - [std.math] std.math.algebraic.cbrt is not pure (#10670) 2025-03-16 07:24:13 +08:00
Walter Bright
a44abe9167 use cast() where we can 2024-03-08 11:57:50 -08:00
Dennis Korpel
2bb54df391 Move floatTraits to std.math.traits 2024-01-09 13:00:50 +01:00
HuskyNator
e5e6f6088d Fix misplaced doc backticks and reorder attributes
Reorder attributes as per style guidelines:
> Attributes should be listed in alphabetical ordering

Fix issue 24278
2023-12-15 01:48:21 +01:00
HuskyNator
e425dc69d1 Document problematic behaviour 2023-12-15 01:32:48 +01:00
HuskyNator
00a2b65db9 Separate assert statements 2023-12-12 16:04:58 +01:00
HuskyNator
473bb759d2 Fix tests 2023-12-10 16:08:38 +01:00
HuskyNator
9073c1d454 Change return type of abs to conform with documentation
Integral types should simply return their own type.
2023-12-10 16:00:29 +01:00
Ast-x64
b2d5da9c43 Extend floating point precision in some tests
These tests may work better with quadruple-presicion real types now.
2022-06-16 19:53:02 +00:00
Petar Kirov
dfaaf8fa53 Merge remote-tracking branch 'upstream/stable' into merge_stable 2021-11-09 10:30:28 +02:00
Brian Callahan
8a42656f67 Fix Issue 22416 - Unify polyImpl implementations 2021-10-18 05:40:34 +00:00
Brian Callahan
36eeb42292 OpenBSD: Add polyImpl implementation for x86
Fix Issue 22393 - OpenBSD: Add polyImpl implementation for x86
2021-10-16 08:05:02 -04:00
Iain Buclaw
1cbbb845af std.math: Reference Issue 5305 in unittest taking pointer to function 2021-08-25 19:27:16 +00:00
Luís Ferreira
8514636059 std.math.algebraic: use fabs from druntime
Signed-off-by: Luís Ferreira <contact@lsferreira.net>
2021-08-19 09:56:55 +00:00
Iain Buclaw
79bf8c3c32 std.math.algebraic: Convert hypot to a template 2021-05-11 12:22:13 +02:00
Iain Buclaw
52699fc020 std.math: Adjust whitespace of a few unittests 2021-05-11 09:14:14 +02:00
Iain Buclaw
543a3d0cd6 std.math.algebraic: Support more float types in hypot 2021-05-11 02:59:57 +02:00
Nathan Sashihara
efced87ae8 Again use core.math intrinsics instead of std.math wrappers
As in PR #7821 & PR #7825. Mostly changes imports
from std.math being divided into submodules.
2021-05-04 15:59:34 +02:00
berni44
0c4dcb32a0 Narrow imports in std.math. 2021-04-19 22:32:55 +02:00
berni44
943cf022ea std.math: Move some stranded unittests to correct place. 2021-04-19 18:22:33 +02:00
Iain Buclaw
7a258f293f std.math.algebraic: Add overload for three-dimensional hypotenuse 2021-04-17 18:13:07 +02:00
berni44
06a1727565 std.math: Move classic algebraic functions into submodule. 2021-04-07 12:37:35 +02:00
berni44
7031340f5f Add empty submodules to std.math. 2021-04-04 11:56:27 +02:00