Softpedia
 


LINUX CATEGORIES:



GLOBAL PAGES >>
NEWS ARCHIVE >>
SOFTPEDIA REVIEWS >>
MEET THE EDITORS >>
WEEK'S BEST
  • Linux Kernel 3.9.6 / 3....
  • Linux Kernel 3.0.82 LTS...
  • KDE Software Compilatio...
  • PulseAudio 4.0
  • Wireshark 1.10.0
  • NetworkManager 0.9.8.2
  • LibreOffice 3.6.6 / 4.0...
  • SystemRescueCd 3.7.0
  • Linux Kernel 3.10 RC6
  • Ubuntu Tweak 0.8.5
  • Home > Linux > Programming > Libraries

    MAPM 4.9.5

    Download button

    Downloads: 484  View global page NEW!  Tell us about an update
    User Rating:
    Rated by:
    Good (3.8/5)
    16 user(s)
    Developer:

    License / Price:

    Last Updated:

    Category:
    Michael C Ring | More programs
    Freeware / FREE
    December 10th, 2007, 22:39 GMT
    ROOT / Programming / Libraries

     Read user reviews (0)  Refer to a friend  Subscribe

    MAPM description

    MAPM is a portable arbitrary precision math library in C.

    MAPM is a portable arbitrary precision math library in C.

    MAPM (My Arbitrary Precision Math) library is a set of functions that allow the user to perform math to any level of accuracy that is desired. The precision of a number is only limited by 'INT_MAX' and available memory. For a 16 bit compiler, a number may have 2^15 digits (or ~32,000). For a 32 bit compiler, a number may have 2^31 digits (or ~2.14E+9). See the README file (in the distribution as well as a link below) for a more complete discussion of the actual numerical limitations.

    This library has a natural support for floating point values. From most of the other 'C' libraries I looked at, they seem to have a preference for integer only type math manipulations. (This library will also do integer only math if you desire.)

    And if a library can only do integers, it can't do ...

    Trig functions and other common C math library functions. This library will perform the following functions to any desired precision level : SQRT, CBRT, SIN, COS, TAN, ARC-SIN, ARC-COS, ARC-TAN, ARC-TAN2, LOG, LOG10, EXP, POW, SINH, COSH, TANH, ARC-SINH, ARC-COSH, ARC-TANH, FLOOR, CEIL, GCD, LCM, and also FACTORIAL. The full 'math.h' is not duplicated, though I think these are most of the important ones. My definition of what's important is what I've actually used in a real application.
    This library also has a random number generator with a period of 1.0E+15, i.e. the generator will produce 1.0E+15 unique random numbers before the pattern repeats.

    This library utilizes a fast multiplication algorithm. This results in much faster multiplications than the typical O(n^2) algorithm. It uses an FFT (fast fourier transform) based multiplication algorithm. This results in only O(n * Log2(n)) growth.

    The library is written in 'C' and the distribution includes all source code and documentation. It has been tested under Linux (x86), FreeBSD, HP-UX, Sun Solaris, Venix, MAC OSX, DOS, and Win 2000, NT, XP. GCC was the primary compiler used in the Unix environment. For DOS/NT/XP, the MAPM library has been tested with the the following compilers:

    · GCC (2.8.1, 2.95.2, and 3.2.3) for DOS (D.J. Delorie's DJGPP)
    · Borland C++ 5.x (32 bit) and Turbo C++ 3.0 (16 bit)
    · Microsoft Visual C++ 6.0 (32 bit) and Microsoft C 5.1, 8.00c (16 bit)
    · LCC-Win32 Ver 3.2/3.3
    · MINGW-32 Version mingw-1.0.1-20010726
    · Metrowerks CodeWarrior Pro 7.0
    · Watcom C/C++ 11.x, Open Watcom 1.0
    · DEV-C++ 5.0 Beta 8 Release 4.9.8.0
    · Digital Mars Compiler 8.49
    · National Instruments LabWindows CVI 6.0

    Great care was taken during design to make the library as portable as possible. If you are using a compiler not listed above, you should have minimal problems getting the library to compile on your system. If you compile the library with a compiler that I don't have access to, feel free to send me your makefile/build script and I'll include it with the next release.

    What's New in This Release:

    · With the release of version 4.9.5, I have updated the license to allow distribution of modified library source code. In the DOCS directory of the distribution, there is a file 'license.txt' which should be inserted before any modified source files. Simply edit the 'license.txt' template accordingly, and permission is granted to distribute modified source code.



    Product's homepage

      


    TAGS:

    arbitrary precision | C++ library | math library | arbitrary | precision | math

    Go to top

    WindowsGamesDriversMacLinuxScriptsMobileHandheldNews

    SUBMIT PROGRAM   |   ADVERTISE   |   GET HELP   |   SEND US FEEDBACK   |   RSS FEEDS   |   UPDATE YOUR SOFTWARE   |   ROMANIAN FORUM