V1.1.0 Improved precision and better performance

All basic functions were restructured to allow access to full internal 56-bit precision. This was necessary to completely rewrite all trigonometric functions and to update logarithm and exponential functions. As a result, most higher math functions (like sin, cos, tan, asin, acos, atan, log and exp) have now increased precision and reduced execution time, still with small code size. As an example, execution time for fp64_sin is now between 600 and 650 micro seconds on a standard, 16 MHz Arduino MEGA 2560 – or 9500 to 10500 ticks (instructions).

V1.1.0 also includes some minor bugfixes and code improvements.

V1.0.5 available

I fixed a bug that caused incorrect rounding when there was a carry over across all digits, including the one before the decimal point. Check out the latest version via the Arduino library manager.

Initial release V1.0 available

After 2 years of development, reading several 100 pages of algorithms, after typing more than half a million lines of code, after creating, testing and verifying more that 19000 test cases, after endless hours/nights/weekends of hunting down nasty bugs, after documenting more than 60 top level functions, it’s finally good enough to be released as a V1.0.

The initial release of fp64lib for Atmel AVR 328 microprocessors is available here as a downloadable library for the Arduino IDE.

Have fun using it and I am pleased to receive any feedback via mail (at) fp64lib (dot) org.