This book is a guide to understanding and using the software package ARPACK to solve large algebraic eigenvalue problems. The software described is based on the implicitly restarted Arnoldi method, which has been heralded as one of the three most important advances in large scale eigenanalysis in the past ten years. The book explains the acquisition, installation, capabilities, and detailed use of the software for computing a desired subset of the eigenvalues and eigenvectors of large (sparse) standard or generalized eigenproblems. It also discusses the underlying theory and algorithmic background at a level that is accessible to the general practitioner.
ScaLAPACK is an acronym for Scalable Linear Algebra Package or Scalable LAPACK. It is a library of high-performance linear algebra routines for distributed memory message-passing MIMD computers and networks of workstations supporting parallel virtual machine (PVM) and/or message passing interface (MPI). It is a continuation of the LAPACK project, which designed and produced analogous software for workstations, vector supercomputers, and shared memory parallel computers. Both libraries contain routines for solving systems of linear equations, least squares problems, and eigenvalue problems. The goals of both projects are efficiency, scalability, reliability, portability, flexibility, and ease of use. ScaLAPACK includes routines for the solution of dense, band, and tridiagonal linear systems of equations, condition estimation and iterative refinement, for LU and Cholesky factorization, matrix inversion, full-rank linear least squares problems, orthogonal and generalized orthogonal factorizations, orthogonal transformation routines, reductions to upper Hessenberg, bidiagonal and tridiagonal form, reduction of a symmetric-definite/ Hermitian-definite generalized eigenproblem to standard form, the symmetric/Hermitian, generalized symmetric/Hermitian, and nonsymmetric eigenproblem, and the singular value decomposition. Prototype codes are provided for out-of-core linear solvers for LU, Cholesky, and QR, the matrix sign function for eigenproblems, an HPF interface to a subset of ScaLAPACK routines, and SuperLU. Software is available in single-precision real, double-precision real, single-precision complex, and double-precision complex. The software has been written to be portable across a wide range of distributed-memory environments such as the Cray T3, IBM SP, Intel series, TM CM-5, networks of workstations, and any system for which PVM or MPI is available. Each Users' Guide includes a CD-ROM containing the HTML version of the ScaLAPACK Users' Guide, the source code for ScaLAPACK and LAPACK, testing and timing programs, prebuilt versions of the library for a number of computers, example programs, and the full set of LAPACK Working Notes.
LAPACK is a library of numerical linear algebra subroutines designed for high performance on workstations, vector computers, and shared memory multiprocessors. Release 3.0 of LAPACK introduces new routines and extends the functionality of existing routines.
A Tutorial on Elliptic PDE Solvers and Their Parallelization is a valuable aid for learning about the possible errors and bottlenecks in parallel computing. One of the highlights of the tutorial is that the course material can run on a laptop, not just on a parallel computer or cluster of PCs, thus allowing readers to experience their first successes in parallel computing in a relatively short amount of time. This tutorial is intended for advanced undergraduate and graduate students in computational sciences and engineering; however, it may also be helpful to professionals who use PDE-based parallel computer simulations in the field.
With a substantial amount of new material, the Handbook of Linear Algebra, Second Edition provides comprehensive coverage of linear algebra concepts, applications, and computational software packages in an easy-to-use format. It guides you from the very elementary aspects of the subject to the frontiers of current research. Along with revisions and updates throughout, the second edition of this bestseller includes 20 new chapters. New to the Second Edition Separate chapters on Schur complements, additional types of canonical forms, tensors, matrix polynomials, matrix equations, special types of matrices, generalized inverses, matrices over finite fields, invariant subspaces, representations of quivers, and spectral sets New chapters on combinatorial matrix theory topics, such as tournaments, the minimum rank problem, and spectral graph theory, as well as numerical linear algebra topics, including algorithms for structured matrix computations, stability of structured matrix computations, and nonlinear eigenvalue problems More chapters on applications of linear algebra, including epidemiology and quantum error correction New chapter on using the free and open source software system Sage for linear algebra Additional sections in the chapters on sign pattern matrices and applications to geometry Conjectures and open problems in most chapters on advanced topics Highly praised as a valuable resource for anyone who uses linear algebra, the first edition covered virtually all aspects of linear algebra and its applications. This edition continues to encompass the fundamentals of linear algebra, combinatorial and numerical linear algebra, and applications of linear algebra to various disciplines while also covering up-to-date software packages for linear algebra computations.
Based on a course developed by the author, Introduction to High Performance Scientific Computing introduces methods for adding parallelism to numerical methods for solving differential equations. It contains exercises and programming projects that facilitate learning as well as examples and discussions based on the C programming language, with additional comments for those already familiar with C++. The text provides an overview of concepts and algorithmic techniques for modern scientific computing and is divided into six self-contained parts that can be assembled in any order to create an introductory course using available computer hardware. Part I introduces the C programming language for those not already familiar with programming in a compiled language. Part II describes parallelism on shared memory architectures using OpenMP. Part III details parallelism on computer clusters using MPI for coordinating a computation. Part IV demonstrates the use of graphical programming units (GPUs) to solve problems using the CUDA language for NVIDIA graphics cards. Part V addresses programming on GPUs for non-NVIDIA graphics cards using the OpenCL framework. Finally, Part VI contains a brief discussion of numerical methods and applications, giving the reader an opportunity to test the methods on typical computing problems.
ECMI has a brand name in Industrial Mathematics and organises successful biannual conferences. This time, the conference on Industrial Mathematics held in Eindhoven in June 2004 Mathematics focused on Aerospace, Electronic Industry, Chemical Technology, Life Sciences, Materials, Geophysics, Financial Mathematics and Water flow. The majority of the invited talks on these topics can be found in these proceedings. Apart from these lectures, a large number of contributed papers and minisymposium papers are included here. They give an interesting (and impressive) overview of the important place mathematics has achieved in solving all kinds of problems met in industry, and commerce in particular.
This companion piece to the author’s 2018 book, A Software Repository for Orthogonal Polynomials, focuses on Gaussian quadrature and the related Christoffel function. The book makes Gauss quadrature rules of any order easily accessible for a large variety of weight functions and for arbitrary precision. It also documents and illustrates known as well as original approximations for Gauss quadrature weights and Christoffel functions. The repository contains 60+ datasets, each dealing with a particular weight function. Included are classical, quasi-classical, and, most of all, nonclassical weight functions and associated orthogonal polynomials. Scientists, engineers, applied mathematicians, and statisticians will find the book of interest.
The Portable, Extensible Toolkit for Scientific Computation (PETSc) is an open-source library of advanced data structures and methods for solving linear and nonlinear equations and for managing discretizations. This book uses these modern numerical tools to demonstrate how to solve nonlinear partial differential equations (PDEs) in parallel. It starts from key mathematical concepts, such as Krylov space methods, preconditioning, multigrid, and Newton’s method. In PETSc these components are composed at run time into fast solvers. Discretizations are introduced from the beginning, with an emphasis on finite difference and finite element methodologies. The example C programs of the first 12 chapters, listed on the inside front cover, solve (mostly) elliptic and parabolic PDE problems. Discretization leads to large, sparse, and generally nonlinear systems of algebraic equations. For such problems, mathematical solver concepts are explained and illustrated through the examples, with sufficient context to speed further development. PETSc for Partial Differential Equations addresses both discretizations and fast solvers for PDEs, emphasizing practice more than theory. Well-structured examples lead to run-time choices that result in high solver performance and parallel scalability. The last two chapters build on the reader’s understanding of fast solver concepts when applying the Firedrake Python finite element solver library. This textbook, the first to cover PETSc programming for nonlinear PDEs, provides an on-ramp for graduate students and researchers to a major area of high-performance computing for science and engineering. It is suitable as a supplement for courses in scientific computing or numerical methods for differential equations.