NextAfter
return the next representable number after x
Calling Sequence
Parameters
Description
Thread Safety
Examples
NextAfter(x, y)
x
-
expression
y
The NextAfter(x, y) function returns the next machine representable number after x in the direction toward y, where "machine" means either the software floating-point computation environment determined by Digits, or the hardware floating-point computation environment of the underlying physical hardware.
Which floating-point environment is used depends on the type of x. If x is a hardware floating-point value (see HFloat), the hardware floating-point environment is used. Otherwise the software floating-point environment is used.
If x=y and x and y are real extended_numeric, then NextAfter(x, y) = x and no exception is signaled (this specifically includes the case when x=0, even when x and y are differently signed).
If either of x or y is undefined, the result is one of the input undefineds.
If x is the largest machine representable number and x<y, then NextAfter(x, y) = infinity and the overflow event is signaled.
If x is the smallest positive machine representable number and y<x, then NextAfter(x, y) = +0, and the underflow event is signaled. Similarly, NextAfter(-x, -y) = -0.
If y is unordered with x (i.e., Unordered(x, y) returns true), but neither is undefined, an invalid_operation is signaled.
The NextAfter command is thread-safe as of Maple 15.
For more information on thread safety, see index/threadsafe.
NextAfter(0,0);
0
NextAfter(0,-1);
−1.⁢10−11
NextAfter(0,1);
1.⁢10−11
NextAfter(0.2,1);
0.2000000001
NextAfter(HFloat(2.3),10);
2.30000000000000
Digits := 20;
Digits≔20
0.20000000000000000001
See Also
Digits
exceptions
float
numeric_types
Download Help Document
What kind of issue would you like to report? (Optional)