fnormal - floating-point normalization
|
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
|
|
>
|
|
| (1) |
>
|
|
| (2) |
>
|
|
| (3) |
>
|
|
| (4) |
>
|
|
| (5) |
>
|
|
| (6) |
>
|
|
| (7) |
>
|
|
| (8) |
>
|
|
| (9) |
|
|
Download Help Document
Was this information helpful?