- Linear Algebra
- MTL, the matrix template library. dense and sparse matrices and vectors; banded, hierarchical Ric, triangular matrices; basic algorithms. c ++.
Matrix Template Library, closely and sparse matrix, vector, band, symmetry, Triangle Matrix, basic algorithm (C ++ LANGUAGE)
- Ublas, Blas in C ++ with expression templates.
Blas in C ++ in expression template form,
- Tvmet, a C ++ library for "tiny" vectors and matrices with expression templates.
Small vector and Matrix Expression templates
- GMM ++, generic C ++ template library for sparse, dense and skyline matrices, with solvers from ITL.
- Met, a C ++ matrix library with expression templates, which eliminates the overhead of overloaded operators.
- SL ++, the Scientific Library Project. will provide matrices, random numbers, complex, quaternions, plotify, and FFTS. c ++.
Scientific Computing database, which provides matrix, random number, plural number, and Quaternary element, and fast compound leaf Transformation (C ++ LANGUAGE)
- Seldon, C ++ library for Linear Algebra with Blas interface. Your matrix types (sparse, symmetric, Hermitian, etc.) are supported.
Blas linear algebra interface, supporting sparse, symmetric, and bounded Matrix
- Phosphatase, linear and polynomial algebra. vectors, matrices, polynomials.
- 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.
- Gnussl [ftp only], the GNU scientific software library. Linear Algebra and arrays. c ++.
- Cpplapack, C ++ wrapper for BLAS and LAPACK.
- LAPACK ++, C ++ wrapper for BLAS and LAPACK.
- IML ++ a c ++ template library for numerical iterative methods.
- MV ++ numerical matrix/vector classes in C ++
- Sparselib ++ a library for sparse matrix computations, including the sparse Blas (Basic linear algebra subprograms). c ++.
- Isis ++, an object-oriented framework for solving sparse linear systems of equations. c ++.
- Arpack ++, a C ++ template library for solving large-scale standard and generalized eigenvalue problems.
- 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 ++.
- Linalg, basic linear algebra and Optimization Classes. c ++.
- Cam C ++ class library (matrix, vector, and graphics classes)
- Newmat, a C ++ matrix Library (Docs, download)
- Clheincludes matrix classes, random number generators for the high energy physics (Windows) community. c ++.
- Bpkit, block preconditioning toolkit for Iterative Solution of Linear Systems. callable from C ++, C, or FORTRAN.
- Arrays and Images
- Pooma II framework for scientific computing on sequential and parallel computers. provides parallel arrays; fields, meshes, participant to come in version 2.1 (June 1999). c ++.
- The Blitz ++ Class Library: array and vector classes which rival Fortran's performance. c ++.
- The AIPS ++ array and image classes (ast1_mical Information Processing System). c ++.
- Daixtrose, a general-purpose expression template engine.
- Pete, an expression templates library -- add expression templates to your own array class.
- Sctl (bluesail), c ++, arrays, Matrics, vectors, sparse, rotations.
- Vigra, generic computer vision/Image Processing library.
- Cppima a c ++ image processing Library
- Limp, large Image Manipulation Program
- Image Restoration and inpainting, C ++ library for image restoration.
- Valarray <Troy> [ftp only], approximation of the valarray <t> class described in Ch. 26 of the ANSI/iso c ++ standard. uses expression templates for efficient evaluation.
- Image Understanding environment (IUE), A darpa project. c ++.
- Waili, a wavelet transform library in C ++.
- Neural Networks, genetic algorithms, machine learning, Data Mining
- PDP ++, a neural-network simulation system written in C ++
- EO -- evolutionary computation framework
- Conical, C ++ classes for building Neural Networks
- Galib, a C ++ library for Genetic Algorithms
- Xelopes Data Mining Library (Java, C ++, C #)
- MLC ++, machine learning algorithms and data mining.
- High-energy physics and Quantum Chemistry
- QC ++, quantum chemistry software in C ++, supporting MNDO, AM1 and PM3 models.
- Ftensor, C ++ class library for tensors.
- Glucat, Clifford Algebra template library.
- Computational thermodynamics Library
- Tech-X has made available c ++ libraries related to particle accelerator design.
- Multiprecision, arbitrary precision Data Types
- NTL, arbitrary length integers, vectors/Matrices/polynomials over integers and over finite fields.
- PHP "> 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.
- CLN, an extensive number library. arbitrary precision integer, float, rational, polynomials, complex, modular integers, transcendental functions, assembly language kernels for some CPUs.
- Muntl, multiprecision unsigned number Template Library (C ++ ).
- Mpfun ++, a multiple precision floating point computation package in C ++.
- Lidia, a library for Computational number theory. Provides a collection of highly optimized implementations of various multiprecision data types and time-intensive algorithms.
- Apfloat, a C ++ High Performance arbitrary precision arithmetic package
- Hfloat, an arbitrary precision package, optimized for very large (> 1000) (decimal) digit numbers.
- Fpoint, a C ++ class which helps convert floating-point arithmetic to fixed-point Arithmetic by recommending range and precision requirements.
- Doubledouble, a quad-precision (approximately 30 decimal place) Floating Point Arithmetic class.
- Differential Equations
- Rheoolef, finite element environment in C ++.
- Expvdf, a C ++ library for solving Partial Differential Equations on semi-unstructured grids. parallel.
- PZ, a C ++ library for finite elements. 1-3 dimensions with Hp-adaptivity, continuous or discontinuous, variety of matrix formats.
- Mbdyn, Multibody Dynamics Analysis in C ++. Built-in parallconfiguration via MPI/Metis.
- P2mesh, 2D finite volume/Finite Elements, C ++ library designed for fast prototyping of high-performance PVDF solvers.
- Femlisp, a Common Lisp framework for finite element methods.
- Getfem ++, a C ++ Finite Element Library, generic, arbitrary dimensions.
- Mouse, a C ++ library for Finite Volume Computations on unstructured grids.
- Deal, a C ++ library for Adaptive Finite Elements and Error Estimation. Supports SMPS.
- Ode ++, a class library for ordinary differential equations. explicit and linear-implicit ode systems, IVP and BVP parameters, varous solvers (Runge-Kutta, multistep, BDF ). [English] [Deutsch]
- Petsc, object-oriented software for partial differential equations (programmed in C)
- Diffpack, partial differential equations in C ++. ($)
- Tide: classes for ordinary differential equations. Provides vectors and matrices, extrapoation integrator for odes, sparse matrix classes, eigenvalues, shooting for two point BVPS, nonlinear solver, continuation
- Boxlib/ccse Applications Suite (Docs), a class library supporting adaptive mesh refinement (AMR) schemes for computational fluid dynamics.
- Overture, a C ++ class library for solving PDEs in complicated domains. adaptive mesh refinement and overlapping grids.
- Femlib (FTP, WWW) a finite element package [ftp only] by Michael tiller (broken link, no longer supported)
- Automatic differentiation and Interval Arithmetic
- Gaol, C ++ library for Interval Arithmetic. Includes methods for Interval constraint solvers.
- FADBAD-TADIFF, a C ++ package for automatic differentiation using any Arithmetic (double or interval) by operator overloading.
- Profil/bias [English] [Deutsch], a C ++ Interval Arithmetic class library.
- Visualization
- The Visualization Toolkit (VTK), an extensive, free C ++ library for scientific visualization.
- Visad, a Java library for interactive and collaborative visualization and Analysis of numerical data
- Java 2D graph package. Includes contour plots, animation.
- Java/ptplot/"> ptplot, a 2D data plotter in Java
- Graph Theory/combinatorics
- Boost graph library, a general purpose, generic C ++ library for graph data structures and graph algorithms.
- GTL, the graph Template Library (C ++ ).
- Leda, a C ++ library for graph theory and combinatorial computing.
- Language interoperability/Scripting
- Cppf77 (cppf77.zip), a utility for interfacing C ++ and Fortran 77 Programs.
- Paul Dubois's code for interfacing Python and C ++
- Swig, generates Perl, Python, TCL, Java, Eiffel and guile wrappers for C ++ libraries.
- Siloon (scripting interface extensions ages 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.
- Matwrap, a tool which generates C ++ wrapper code for Matrix-oriented scripting languages such as MATLAB 5, Ave ave, and Tela.
- Transforms
- Fftpack ++, a C ++ wrapper for fftpack complex routines using LAPACK ++ matrix and vector classes.
- The fxt library of transforms. FFTS, Hartley, number theoretic, Walsh, others coded in C ++.
- Optimization
- Coool, an object-oriented optimization Library
- Optsolve ++, a C ++ optimization library from tech-X. (commercial)
- Starflip, optimization library for Combinatorial Problems with Fuzzy constraints (C ++)
- Javanumeric/index.html "> LM (Levenberg-Marquardt) Implementation in Java for Nonlinear Least Squares Problems.
- Miscellaneous
- Goose, GNU object-oriented statistics environment (C ++ ).
- Borneo, a dialect of the Java language designed to have true support for the IEEE 754 floating point standard.
- SDTS ++, a library for manipulating SDTS datasets (Geographical Information Systems)
- Newran, C ++ library for generating streams of random numbers.
- Multivariate Polynomial Interpolation library in C ++
- MPI-2 C ++ bindings (Message Passing library for Parallel computers)
- Cncl, communication networks simulation/analysis Library (C ++ ).
- Oomf, object oriented micromagnetic computing framework at ITL/NIST
- Cppf77, a utility for interfacing C ++ and Fortran 77 Programs.
- The standard template library (STL)
- The Copyright ++ benchmark suite
- Eflib: extended function library for Object-Pascal. Generalized arithmetics, equation solvers, more.
- Tools
- Tau (tuning and analysis utilities), explicit instruments of C ++ libraries for profiling and tracing. For both serial and parallel Codes.
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 PC ++, a massively parallel, message passing, meta-level processing c ++.
Titanium (free), a dialect of Java for large-scale scientific computing.
- 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 ).
- PHP "> nmath provides vector, matrix, complex numbers and math functions for the. NET platform (e.g. 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 <lib> (MATLAB Compatible C ++ matrix Class Library)
- C-XSC: a c ++ class library for extended scientific computing (a c ++ interval Methods Class Library)
- Siscat, C ++ software for scattered data approximation
- JNL, a numerical language/library proposal for Java from visual numerics.
- Lia, Gia, ice libraries for Interval methods in C ++ from delisoft Ltd. Includes interval arithmetic, global optimization, and solving nonlinear equations.
- Amres, a C ++ library for financial analysis.
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 ).
PHP "> nmath provides vector, matrix, complex numbers and math functions for the. NET platform (e.g. 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 <lib> (MATLAB Compatible C ++ matrix Class Library)
C-XSC: a c ++ class library for extended scientific computing (a c ++ interval Methods Class Library)
Siscat, C ++ software for scattered data approximation
JNL, a numerical language/library proposal for Java from visual numerics.
Lia, Gia, ice libraries for Interval methods in C ++ from delisoft Ltd. Includes interval arithmetic, global optimization, and solving nonlinear equations.
Amres, a C ++ library for financial analysis.