A novel approach is presented to deal with geometric computations while joining the efficiency of floating point representations with the robustness of exact arithmetic. Our approach is based on a hybrid geometric kernel where a floating point number is made fully interoperable with an exact rational number, so that the latter can be used only within critical parts of the program or within restricted portions of the input. The whole program can dynamically change the level of precision used to produce new values and to evaluate expressions. Around such a kernel, a mesh processing library has been implemented whose API functions can be classified depending on their precision as always exact, always approximated, or exact if the current level of precision is sufficient. Such a classification allows implementing algorithms with a full control of the robustness at an unprecedented level of granularity. Experiments show that this interoperability comes at a nearly negligible cost: on average, a test algorithm implemented on our hybrid kernel is just 8% slower than the same algorithm implemented on a standard floating point version of the same kernel while providing the possibility to be fully robust if necessary.
ImatiSTL - Fast and reliable mesh processing with a hybrid kernel
M Attene
2017
Abstract
A novel approach is presented to deal with geometric computations while joining the efficiency of floating point representations with the robustness of exact arithmetic. Our approach is based on a hybrid geometric kernel where a floating point number is made fully interoperable with an exact rational number, so that the latter can be used only within critical parts of the program or within restricted portions of the input. The whole program can dynamically change the level of precision used to produce new values and to evaluate expressions. Around such a kernel, a mesh processing library has been implemented whose API functions can be classified depending on their precision as always exact, always approximated, or exact if the current level of precision is sufficient. Such a classification allows implementing algorithms with a full control of the robustness at an unprecedented level of granularity. Experiments show that this interoperability comes at a nearly negligible cost: on average, a test algorithm implemented on our hybrid kernel is just 8% slower than the same algorithm implemented on a standard floating point version of the same kernel while providing the possibility to be fully robust if necessary.File | Dimensione | Formato | |
---|---|---|---|
prod_369079-doc_122706.pdf
non disponibili
Descrizione: ImatiSTL - Fast and reliable mesh processing with a hybrid kernel
Tipologia:
Versione Editoriale (PDF)
Dimensione
1.79 MB
Formato
Adobe PDF
|
1.79 MB | Adobe PDF | Visualizza/Apri Richiedi una copia |
I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.