fnormal - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Mozilla Firefox.

Online Help

All Products    Maple    MapleSim


fnormal

floating-point normalization

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

fnormal(e)

fnormal(e, digits)

fnormal(e, digits, epsilon)

Parameters

e

-

algebraic expression, or a list, set, relation, series, or range of algebraic expressions

digits

-

(optional) number of digits for floating-point evaluation (defaults to the value of the global variable Digits)

epsilon

-

(optional) error tolerance for ``fuzzy zero'' (defaults to the value Float(1,-digits+2))

Description

• 

The value returned by fnormal is an expression equivalent to e under the assumption that all numeric values with magnitude less than epsilon may be considered to be zero.

• 

In addition, all floats in e which remain nonzero are converted to floats with digits precision.

• 

fnormal preserves numeric type and sign information as much as possible.  Thus, for example, fnormal(1e-20*I, 10) = 0.*I not 0. .  This ensures that branching behavior is generally not affected by fnormal.  Use simplify(expr, zero) to remove 0 real or imaginary parts of complex floating point numbers.

• 

If e is a list, set, range, series, equation, or relation, then fnormal is applied recursively to the components of e.

Examples

> 

fnormal⁡1.×10−10

0.

(1)
> 

fnormal⁡1+1.×10−10⁢I

1.+0.⁢I

(2)
> 

fnormal⁡10−10,−10−9,10−8

0.,−0.,1100000000

(3)
> 

e≔2⁢x2+0.00001⁢x−π

e≔2⁢x2+0.00001⁢x−π

(4)
> 

fnormal⁡e

2⁢x2+0.00001⁢x−π

(5)
> 

fnormal⁡e,4

2⁢x2−3.141592654

(6)
> 

f≔evalf⁡e

f≔2.⁢x2+0.00001⁢x−3.141592654

(7)
> 

fnormal⁡f,4

2.⁢x2−3.142

(8)
> 

ln⁡−1.−1.×10−15⁢I,ln⁡fnormal⁡−1.−1.×10−15⁢I,10,ln⁡simplify⁡fnormal⁡−1.−1.×10−15⁢I,10,zero

5.×10−31−3.141592654⁢I,0.−3.141592654⁢I,0.+3.141592654⁢I

(9)

See Also

evalf

evalhf

simplify/zero

type/embedded_axis