Introduction to Scientific Computing |
|
(winter 2004/2005) |
| Modelling: | Computer algebra programs like Mathematica, Maple,Axiom, or Reduce support derivations and proofs of theorems via symbolic means. |
| Numerics: | Mathematica, Maple, or MATLAB support the development, testing, and analysis of (numerical) algorithms and allow an efficient prototyping. |
| Implementation: | A zoo of (numerical) libraries provide up-to-date modules for standard tasks (numerical linear algebra etc.), tailored to specific target architectures. | Visualization: | Packages like IDL, IRIS Explorer, or AVS/Express offer (nearly) all you want. |
| GAMS: | Guide to Available Mathematical Software |
| + service offered by the National Institute of Standards & Technology | |
| + see http://gams.nist.gov/ | |
| + catalogue and database of more than 100 packages and libraries with together several tens of thousands of routines | |
| + Topics range from number theory to statistics! | |
| + majority: FORTRAN programs for numerical tasks (systems of linear equations, eigenvalues, roots, differential equations, \dots) | |
| + includes both public domain material (at NIST or at NETLIB, see below) and commercial (licenced) products. | |
| + good user guidance | |
| Matrix Market: | |
| +see http://math.nist.gov/MatrixMarket/ | |
| + repository of test data for use in comparative studies of algorithms for numerical linear algebra | |
| + features nearly 500 (sparse) matrices from various fields of applications (chemical engineering, fluid flow, power system networks, quantum physics, or structural engineering, e.g.) | |
| + provides also matrix generation tools | |
| + classification according to matrix properties: 1) number filed: real or complex 2) nonzero structure: dense, banded sparse, tridiagonal, ... 3) symmetry: none, symmetric, skewsymmetric, SPD, SSPD, ... 4) shape: square, more rows than columns, ... | |
| NETLIB: | repository of free software for numerical purposes |
| + see http://www.netlib.org/ | |
| + offered by University of Tennessee and Oak Ridge Nat'l Lab | |
| + several mirrored copies all over the world | |
| + about 135 million requests since 1985, > 40 million in 2000 | |
| + > 90\% http, rest ftp and email | |
| + about 160 different libraries, among which 1) BLAS (Basic Linear Algebra Subprograms, see below) 2) LAPACK (Linear Algebra PACKage, see below) 2) ODEPACK (ordinary differential equations) 3) MPI (message passing interface, for parallelization) 4) PLTMG (elliptic boundary value problems) | |
| Visual Numerics: | |
| + see < a href="http://www.vni.com">http://www.vni.com | |
| + mathematical libraries | |
| + predecessor: IMSL (The Int'l Math. \& Statist. Library) | |
| Diffpack: | |
| + offered by Numerical Objects, see http://www.nobjects.com | |
| + environment for the development of code for numerical simulation problems plus libraries of efficient routines | |
| + object-oriented concept, available for most UNIX platforms | |
| NAG: | Numerical Algorithms Group |
| + see http://www.nag.co.uk/ | |
| + non-profit software house, spin-off of Oxford University | |
| + FORTRAN/FORTRAN90/C/Parallel libraries; | |
| + AXIOM; IRIS Explorer (Visual.); Fastflo (CFD and more) | |
| Numerical Recipes: | |
| + see http://www.nr.com | |
| + book series The Art of Scientific Computing (CU Press) | |
| + sophisticated algorithms and their implementations | |
| + available for FORTRAN 77, FORTRAN 90, C, Pascal, ... | |
| + corresponding software is licenced and commercial | |
| + about 350 routines for topics like 1) solution of linear systems 2) interpolation and extrapolation 3) numerical quadrature 4) differentiation and approximation 5) roots and extrema 6) eigenvalues, differential equations, and more |
| + collection of robust, efficient, and portable modules for elementary vector and matrix operations |
| + basis for LAPACK routines, for example |
| + allows plug-and-play for numerical subroutines |
| + FORTRAN, to be used from FORTRAN/C/C++ |
| + Java BLAS available, too |
| + levels: 1) vector and vector-vector operations (norm, scalar product, vector addition, SAXPY, ...) 2) matrix-vector operations (rank-1-modifications, matrix-vector product, tridiagonal systems); vector processors 3) matrix-matrix operations; parallel computers! |
| + popular collection of FORTRAN subroutines for standard problems from numerical linear algebra like linear systems, regression, eigenvalues, SVD, |
| + dense and band matrices (not general sparse ones) |
| + successor of EISPACK and LINPACK, tuning for modern microprocessors and supercomputer architectures (reduction of memory accesses, block operations, ...) |
| + LAPACK routines use BLAS modules |
| + variants: 1) LAPACK90, CLAPACK, LAPACK++ 2) ScaLAPACK (MIMD systems, scalability!) |
| + design of algorithms |
| + testing and rapid prototyping |
| + analysis (convergence behaviour etc.) |
| + not yet: production runs, memory or runtime optimization |
| + computer algebra programs like Maple or Mathematica |
| + MATLAB |
| + by Waterloo Maple Inc., a spin-off of the University of Waterloo in Ontario (see http://www.maplesoft.com) |
| + originally a mere computer algebra program, today ``interactive environment for mathematical problem solving and programming'' |
| + focus: 1) symbolic computations, formula manipulation 2) numerical computations with arbitrary accuracy 3) 2D and 3D graphical output 4) straightforward programming for algorithm development |
| + structure: kernel + main library + mixed library + packages |
| + by The MathWorks (see http://www.mathworks.com/) |
| + originally: primarily for use in (maths) education |
| + today: ``high-performance numerical computation and visualization
software'', standard tool for scientific computing research groups:
1) development, prototyping, programming 2) computations 3) visualization |
| + singular success story: >500 employees, >100 countries, >2000 universities and research institutes |
| + structure: basic program plus a collection of specialized tool boxes |