|
|
Exflib is a simple software for scientific multiple-precision arithmetic
for C++ and Fortran 90/95.
- Basic arithmetic and comparisons
- Input/Output in decimal
- Basic mathematical functions
- Parallel computation with MPI, OpenMP
- C++ class implementation
- Overloaded operators, functions
- Rounding Control, Interval Arithmetic (experimental, not available in Alpha version)
- Numerical routines (Bessel, LU, QR, etc).
- Fortran90 Module implementation
- Operators, functions with INTERFACE
- Complex number interface
- Array operations
News
- 2009/12/30 : 20091230 released
- FORTRAN array operation module
- FORTRAN floating-point number manipulation
- FORTRAN, bug fix of zero determination
- 2009/10/17 : Modification in Makefiles
- 2009/10/01 : FORTRAN Complex Number Interface and samples, other bug fixes
- 2008/12/28 : Including FORTRAN files in Windows DLL package
- 2008/11/20 : Bug fix for x86_64-linux
- 2008/11/01 : New version released
(performance improvements, bug fixes)
- 2007/11/20 : release for in Intel MacOS X
- 2007/09/13 : Tutorial Seminar of Multiple-Precision Arithmetic (9/26,9/27)
- 2006/10/11 : 20061011 released
- Comparison rule with an integer is changed
- g95 in cygwin/mingw works well
- Fortran90's bug in linking compiled_date is fixed
- 2006/08/08 : Source Code 20060801 released
- 2006/08/01 : Checking Visual C++ 2005 Express Edition
- 2006/08/01 : English documents
- 2006/04/17 : 20060417 released (SPARC V9 and Fortran90 Module are available)
- 2005/05/10 :
TNT and JAMA are now working with exflib
(patche is needed).
TNT, JAMA contain useful linear algebra routines,
and are promising.
- 2005/05/05 : New top page
- 2005/03/01 : 20050301 released
Known Bugs
- Some Fortran compilers do not support DBLE() and CMPLX().
Supported:
- Sun Studio 12
- gfortran (4.4.1)
- g95 (Feb 27 2008, Jun 24 2009)
- Intel Fortran (11.0 20081105, 10.1 20080602)
- pgf95 6.2-5
Not Supported
- gfortran (4.1.2, 4.2.2)
- pgf95 9.0-1
- PGI Fortran compiler does not support linking static libraries.
(with '.a' suffix)
- Some version of g95/cygwin does not compile a sample program sample-f90/gauss.f90.
Bugs, requests, and so on.
E-mail address : fujiwara *at mark* acs.i.kyoto-u.ac.jp
Replace *at mark* by @.
TODO
- Parallel LU decomposition
- Bessel Functions
- Interval Arithmetic
- Dynamical management of computation precision
- Implementation on POWER, Itanium2
- Mathematical functions (Gamma, sind, atan2, ldexp, etc.)
System Requirements
| Processor | OS | Compiler (Examples) | Mode |
Athlon64, Opteron Core, Xeon EM64T |
Solaris 10 Linux (x86_64) FreeBSD (amd64) MacOS X v10.5(Leopard) |
 
GCC 2.95, 2.96, 3.*, 4.*, gfortran, g95 Sun Studio 10,11,12 Intel Compiler 9,10,11 PGI Compiler 5--9 | 64-bit |
Core, Pentium3, Pentium4, Pentium M, Xeon |
Linux Solaris 9, 10 |
GCC 2.95, 2.96, 3.*, g95 SunStudio 9 Intel Compiler 10,11 PGI Compiler 5,6 | 32-bit |
| Windows |
Cygwin (g++, gfortran, g95) MinGW (g++, g95) Visual C++.net 2003
Visual C++ Toolkit 2003
Visual C++ 2005 Express Edition
Visual C++ 2008 Express Edition
Borland C++
g95-MinGW.exe
|
UltraSPARC III SPARC64V (HPC2500) |
Solaris 8, 9, 10 |
GCC 3, SunStudio 9,10,11
Fujitsu Compiler |
64-bit |
Download
Intel/AMD architecture:
- AMD64, EM64T (Solaris10, Linux / 64-bit), UltraSPARC-III, HPC2500 exflib-x64-bin-20091230.tar.bz2
- AMD64, EM64T (FreeBSD / 64-bit) exflib-amd64-freesbd-20101129.tar.bz2
If you need a shared library, please concat me.
- Intel MacOS X (v10.5) exflib-intelmac-20091230.pkg.tar.bz2
- IA32 Pentium (Linux, Solaris9, Windws Cygwin / 32-bit) exflib-i386-bin-20091230.tar.bz2
- Windows DLL (MinGW, Visual C++, Borland C++ / 32-bit) exflib-win32-dll-20121215.zip
- For Windows Vista / Windows 7 Users:
The script install.bat does not work well due to security problems.
Copy "exfloat.dll" to "C:\WINDOWS\SYSTEM32" or the current directory manually.
- For MinGW-g++ Users
Execute g++-compile.bat in the directory "sample-cxx".
For MinGW-g95 Users
Execute g95-compile.bat in the directory "sample-f90".
Source exflib-src-20060801.tar.bz2
Documents
|
All contents Copyright (C) 1999-- FUJIWARA,Hiroshi.
All rights reserved.
Permission to use, copy and modify this software and its documentation
for academic or noncommercial purpose
and without fee is hereby granted,
provided that the above copyright notice appear in all copies,
that both the copyright notice and this permission notice appear
in supporting documentation,
and that the name of copyright holder not be used in advertising or
publicity pertaining to distribution of the software without specific,
written prior permission.
Copyright holder makes no representations about the suitability of
this software for any purpose. It is provided "as is"
without express or implied warranty.
THE COPYRIGHT HOLDERS AND RELATED ENTITIES
DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.
IN NO EVENT SHALL COPYRIGHT HOLDERS AND RELATED ENTITIES
BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
|
|