|
Boost : |
Subject: Re: [boost] [geometry] robustness approaches
From: Simonson, Lucanus J (lucanus.j.simonson_at_[hidden])
Date: 2009-03-20 18:00:50
Fernando Cacciola wrote:
> IIRC there has never been a precedent of a Boost library practically
> requiring (to be actually useful) an external non-boost library, so
> this deserves its own discussion.
>
> While in the case of GTL, it is thechnically up to the user to pick
> up "their own" multipresicion number types, they actually can't do
> that without an external non-boost library since such number types do
> not exists in the SCL.
That may be too strong a statement. Long double provides quite a few bits of precision. There is some upper limit of input bit width which long double is still sufficient to compute the exact result. As that bit width is exceeded the odds of a fault increase as the input bit width increases. If we say the library is by default robust only up to 25 bits (or whatever I determine to be the case) then users have the option of performing robust calculations within that constraint. If they want to handle larger inputs they can provide high precsion data types to override long double.
I have been quite successful in executing very large test cases without needing gmp. I performed the n-layer map overlay on dozens of layers of thousands of segmented circles each that were intersecting quite frequently and it ran just fine without gmp.
Luke
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk