* Linear Algebra O MTL, The Matrix Template Library. Dense and sparse Matrices and vectors; Banded, Symmetric, Triangular Matrice; Basic Algorithms. C .
Matrix mode library, close and sparse matrix, vector, strip, symmetrical, triangular matrix, basic algorithm (C language) o Ublas, Blas IN C with Expression Templates.
Expression template forms of BLAS, O TVMET, A C Library for "Tiny" VECTORS AND MATRICES with Expression Templates.
Small vector and matrix expression template o GMM , generic C template library for sparse, dense and skyline matrices, with solvers from ITL. O MET, a C matrix library with expression templates, which eliminates the overhead of overloaded operators. O SL , The Scientific Library Project. Will Provide Matrices, Random Numbers, Complex, Quaternions, Plotting, And FFTS. C .
Scientific computational library, providing matrices, random numbers, complex, quad quaternary, fast resilience transform (C language) O SELDON, C Library for Linear Algebra with Blas Interface. MATRIX TYPES (Sparse, Symmetric, Hermitian, ETC.) Area Supported.
BLAS linear algebra interface support sparse, symmetric, conjugate matrix o ALP, linear and polynomial algebra Vectors, matrices, polynomials o SVMT:.. E. Robert Tisdale's proposal for a standard C Scalar, Vector, Matrix and Tensor Class Library (with implementation) Note:. this is a proposal, not an official standard o GNUSSL [ftp only], the GNU Scientific Software Library Linear algebra and arrays C o CPPLapack, C wrapper for BLAS and LAPACK o Lapack , C wrapper..... for BLAS and LAPACK. o IML A C template library for numerical iterative methods. o MV Numerical Matrix / Vector Classes in C o SparseLib A library for sparse matrix computations, including the sparse BLAS (Basic Linear Algebra Subprograms). C . o ISIS , an object-oriented framework for solving sparse linear systems of equations. C . o ARPACK , a C template library for solving large-scale standard and generalized eigenvalue problems. o The Template Numerical Toolkit (TNT) for linear algebra is a successor to the Lapack , Sparselib , IML , and MV packages. Its goal is to integrate these ideas into a generic algorithmic library, supporting generic user-defined data types, and increasing its functionality. C . C . O Cam C Class Library (Matrix, Vector, And Graphics Classes) o Newmat, A C
matrix library (docs, download) o CLHEP includes matrix classes, random number generators for the High Energy Physics (HEP) community. C . o BPKIT, Block Preconditioning Toolkit for iterative solution of linear systems. Callable from C , C, or FORTRAN. * Arrays and Images o POOMA II framework for scientific computing on sequential and parallel computers Provides parallel arrays; fields, meshes, particles to come in version 2.1 (June 1999) C o The Blitz class library:... Array and Vector classes which rival . Fortran's performance C o The AIPS Array and Image Classes (Astronomical Information Processing System) C o Daixtrose, a general-purpose expression template engine o PETE, an expression templates library -.... add expression templates to your own array class. O SCTL (Bluesail), C , Arrays, Matrics, Vectors, Sparse, Rotations. o Vigra, Generic Computer Vision / Image Processing Library. o CPPIMA A C image processing library o LIMP, Large Image Manipulation Program o Image Restoration and Inpainting, C library for image restoration. o valarray
* Neural Networks, genetic algorithms, machine learning, data mining o PDP , a neural-network simulation system written in C o EO - Evolutionary Computation Framework o CONICAL, C classes for building Neural Networks o GALib, a C library for genetic algorithms o Xelopes data mining library (Java, C , C #) o MLC , Machine learning algorithms and data mining. * High-Energy Physics and Quantum Chemistry o QC , quantum chemistry software in C , supporting MNDO, AM1 and PM3 models. o FTensor, C Class Library for Tensors. O Glucat, Clifford Algebra Template Library. O Computational Thermodynamics Library O Tech-x Has Made Available C Libraries Related to Particle Accelerator Design.
* Multiprecision, arbitrary precision data types o NTL, arbitrary length integers, vectors / matrices / polynomials over integers and over finite fields. O EXTNUM, version of double which has the same number of mantissa bits as IEEE 754, but extends the exponent to have range from 10 ^ -646456993 to 10 ^ 646456992. o CLN, an extensive number library. Arbitrary precision integer, float, rational, polynomials, complex, modular integers, transcendental functions, assembly language kernels for some CPUs. o MUNTL, multiprecision unsigned number template library (C ). o MPFUN , a multiple precision floating point computation package in C . o LiDIA, A library for computational number theory. Provides a collection of highly optimized implementations of various multiprecision data types and time-intensive algorithms. o Apfloat, A C High Performance Arbitrary Precision Arithmetic Package O Hfloat, An Arbitrary Precision Package , Optimized for very large (> 1000) (decimal) digit numbers. O fPoint, a C class which helps convert floating-point arithmetic to fixed-point arithmetic by recommending range and precision requirements. O doubledouble, a quad-precision (approximately 30 Decimal Place) Floating Point Arithmetic Class.
* Differential Equations o Rheoolef, finite element environment in C . O EXPDE, a C library for solving partial differential equations on semi-unstructured grids. Parallel. O PZ, a C library for finite elements. 1-3 dimensions with hp-adaptivity, continuous or discontinuous, variety of matrix formats. o MBDyn, multibody dynamics analysis in C . Built-in parallelization via MPI / Metis. o P2MESH, 2D finite volume / finite elements, C library designed for fast prototyping of high-performance PDE solvers. o Femlisp, a Common Lisp framework for Finite Element Methods. o GETFEM , a C finite element library, generic, arbitrary dimensions. o MOUSE, a C library for finite volume computations on unstructured grids. o DEAL, a C library for adaptive finite elements And Error Estimation. Supports SMPS. O Ode , a class library for order Differential Equations. EXPLICIT AND LINEAR-IMPLICIT ODE SY stems, IVP and BVP parameters, various solvers (Runge-Kutta, multistep, BDF). [English] [Deutsch] o PETSc, object-oriented software for partial differential equations (programmed in C) o Diffpack, partial differential equations in C . ($) o TIDE:. classes for Ordinary Differential Equations Provides vectors and matrices, extrapolation integrator for ODEs, sparse matrix classes, eigenvalues, shooting for two point BVPs, nonlinear solver, continuation o BoxLib / CCSE Applications Suite (docs), a class Library Supporting Adaptive Mesh Refinement (AMR) Schemes for Computational Fluid Dynamics. O Overture, A C
Class library for solving PDEs in complicated domains. Includes adaptive mesh refinement and overlapping grids. O FEMLIB (ftp, www) A Finite Element package [ftp only] by Michael Tiller (BROKEN LINK, no longer supported) * Automatic differentiation and interval arithmetic o Gaol, C library for interval arithmetic. Includes methods for interval constraint solvers. o FADBAD-TADIFF, a C package for automatic differentiation using any arithmetic (double or interval) by operator overloading. o PROFIL / BIAS [English] [Deutsch], A c interval arithmetic class librage.
* Visualization o The Visualization Toolkit (vtk), an extensive, free C library for scientific visualization. O VisAD, a Java library for interactive and collaborative visualization and analysis of numerical data o Java 2D Graph package. Includes contour plots, animation. O Ptplot , A 2D Data Plotter in Java
* Graph Theory / Combinatorics o Boost Graph Library, a general purpose, generic C library for graph data structures and graph algorithms. O GTL, the Graph Template Library (C ). O LEDA, a C library for graph theory and combinatorial computing.
* Language interoperability / scripting o CPPF77 (cppf77.zip), a utility for interfacing C and Fortran 77 programs. O Paul Dubois's code for interfacing Python and C o SWIG, generates Perl, Python, Tcl, Java, Eiffel and Guile wrappers for C libraries. o SILOON (Scripting Interface Languages for Object-Oriented Numerics), toolkits and run-time support for building scripting interfaces to existing numerical codes in C, C , and Fortran. Generates script bindings for Perl, Tcl, and Python. o Matwrap , a tool which generates C wrapper code for matrix-oriented scripting languages such as Matlab 5, Octave, and tela. * Transforms o fFTPACK , a C wrapper for fFTPACK complex routines using LAPACK Matrix and Vector classes. o The FXT library of transforms. FFTS, Hartley, Number Theoretic, Walsh, Others Coded IN C .
* Optimization o COOOL, an object-oriented optimization library o OptSolve , a C optimization library from Tech-X. (Commercial) o StarFLIP, optimization library for combinatorial problems with fuzzy constraints (C ) o LM (Levenberg-Marquardt) implementation in Java For Nonlinear Least Squares Problems.
* Miscellaneous o GOOSE, GNU Object-Oriented Statistics Environment (C ). O Borneo, a dialect of the Java language designed to have true support for the IEEE 754 floating point standard. O SDTS , a library for manipulating SDTS datasets (geographical information systems ) o Newran, C library for generating streams of random numbers. o Multivariate polynomial interpolation library in C o MPI-2 C bindings (message passing library for parallel computers) o CNCL, Communication networks simulation / analysis library (C ). o OOMF, Object Oriented MicroMagnetic computing Framework at ITL / NIST o CPPF77, a utility for interfacing C and Fortran 77 programs o The Standard Template Library (STL) o The Bench Benchmark Suite o EFLIB:. Extended Function Library for Object-Pascal Generalized arithmetics, equation. Solvers, More. * Tools O Tau (Tuning and Analysis Utilities), EX PLICIT INSTRUMENTA OF C Libraries for profiling and traction. for Both Serial and Parallel Codes.
Compilers
* Compilers o KAI C , an optimizing compiler from Kuck & Associates (now a division of Intel). Unfortunately, this product has been discontinued. O The free GCC (Gnu Compiler Collection) has a good C compiler which can be used under unix or windows (with CygWin). o Intel's C compiler. o The Portland Group C compiler o The MPC , a massively parallel, message passing, meta-level processing C . o Titanium (free), a dialect of Java for large-scale scientific computing .
Commercial software o Diffpack, a development framework for multi-physics simulations (C ). O VectorSpace provides vs.lib (integrable / differentiable objects in C ) and fe.lib (an object-oriented finite element library). O NMath provides vector, matrix, complex numbers and math functions for the .NET platform (eg C #) o macstl, std :: valarray implementation using SIMD opcodes (Altivec on PowerPC, SSE / SSE2 on Intel) o ExacMath library (quad and double-quad precision floating point math), from Floating Point Software. o math.h and LAPACK.h from Rogue Wave Software, Inc (LAPACK.h is not the same package as Roldan Pozo's LAPACK listed above) o MtxVec, linear algebra / numerical library for Delphi and C BUILDER. O Extreme Optimization Library, Numeric Library for .NET O MAT
) And fe.lib (an object-oriented finite element library). * NMath provides vector, matrix, complex numbers and math functions for the .NET platform (eg C #) * macstl, std :: valarray implementation using SIMD opcodes (Altivec on PowerPC, SSE / SSE2 on Intel) * ExacMath library (quad and double-quad precision floating point math), from Floating Point Software. * math.h and LAPACK.h from Rogue Wave Software, Inc (LAPACK.h is not the same . package as Roldan Pozo's LAPACK listed above) * MtxVec, linear algebra / numerical library for Delphi and C Builder * Extreme Optimization Library, numerical library for .NET * MAT
# KAI C , an optimizing compiler from Kuck & Associates (now a division of Intel). Unfortunately, this product has been discontinued. The free GCC (Gnu Compiler Collection) has a good C compiler which can be used under unix or windows (with CygWin). # Intel's C compiler. # The Portland Group C compiler # The MPC , a massively parallel, message passing, meta-level processing C . # Titanium (free), a dialect of Java for large-scale scientific computing.Commercial software
* Diffpack, a development framework for multi-physics simulations (C ). * VectorSpace provides vs.lib (integrable / differentiable objects in C ) and fe.lib (an object-oriented finite element library). * NMath provides vector, matrix, complex numbers and math functions for the .NET platform (eg C #) * macstl, std :: valarray implementation using SIMD opcodes (Altivec on PowerPC, SSE / SSE2 on Intel) * ExacMath library (quad and double-quad precision floating point math) , from Floating Point Software. * math.h and LAPACK.h from Rogue Wave Software, Inc (LAPACK.h is not the same package as Roldan Pozo's LAPACK listed above) * MtxVec, linear algebra / numerical library for Delphi and C Builder. * Extreme Optimization Library, numerical library for .NET * MAT