Software for the Scalable Solution of PDEs
|Title||Software for the Scalable Solution of PDEs|
|Year of Publication||2000|
|Authors||Balay, S, Gropp, WD, McInnes, LCurfman, Smith, BF|
|Series Title||CRPC Handbook of Parallel Computing|
The numerical approximation of the solution of partial differential equation (PDEs), which can be used to model physical, chemical, and biological phenomena, is an important application of parallel computers. Early efforts to build programs to solve PDE problems had to start from scratch, building code for each algorithm used in the solution process. This custom approach has two major drawback: it limits the use of parallel computers to a small number of groups that have the resources and expertise to develop these codes, and it hampers the ability to take advantage of developments in parallel algorithms. In conventional, serial programming, both of these drawbacks were partially solved by developing libraries of rouines that contained he best numerical analysis and implementation techniques. The same route is being followed for parallel libraries, though parallelism introduces additional complications. Handling these complications has caused many groups to rethink the structure of numerical libraries, leading to better software even for uniprocessor applications. Handling these complications has caused many groups to rethink the structure of numerical libraries, leading to better software even for uniprocessor applications. In this chapter, we will cover some of the issues and solutions in the context of the Portable, Extensible Toolkit for Scientific Computation (PETSc), a collection of tools for the numerical solution of PDEs and related problems.