some words about required mantissa length refering to CGAL::Protect_FPU_rounding
This commit is contained in:
@@ -17,11 +17,13 @@ old prime and can be reused after restoring the old prime.
|
||||
Since the type is based on double
|
||||
arithmetic the prime is restricted to values less than $2^{26}$.
|
||||
The initial value of $p$ is 67111067.
|
||||
Moreover, the implementation of class \ccc{CGAL::Residue} requires that
|
||||
doubles are rounded to nearest, that is, it indispensable that the
|
||||
rounding mode is set accordingly before performing any arithmetic operations.
|
||||
For instance you may use \ccc{CGAL::Protect_FPU_rounding} with
|
||||
\ccc{CGAL_FE_TONEAREST}.
|
||||
|
||||
Please note that the implementation of class \ccc{CGAL::Residue} requires a mantissa
|
||||
precision according to the IEEE Standard for Floating-Point Arithmetic (IEEE 754).
|
||||
However, on some processors the traditional FPU uses an extended precision. Hence, it
|
||||
is indispensable that the proper mantissa length is enforced before performing
|
||||
any arithmetic operations. For instance you may use \ccc{CGAL::Protect_FPU_rounding} with
|
||||
\ccc{CGAL_FE_TONEAREST}, which enforces the required precision as a side effect.
|
||||
|
||||
In case the flag \ccc{CGAL_HAS_THREADS}
|
||||
is undefined the prime is just stored in a static member
|
||||
|
||||
Reference in New Issue
Block a user