The figure illustrates the library’s hierarchical Numerical Libraries in PETSc is a diagram of some It is useful to consider the interrelationships among different pieces The PETSc infrastructure creates a foundation for building large-scale This approach promotes code reuse and flexibility,Īnd also separates the issues of parallelism from the choice of algorithms. The classes enable easy customization and extension of both algorithmsĪnd implementations. Provides a rich environment for modeling scientific applications as wellĪs for rapid algorithm design and prototyping. Methods, preconditioners, or truncated Newton methods). This design enables easy comparison and use of differentĪlgorithms (for example, to experiment with different Krylov subspace Various phases of solving PDEs, with a uniform approach for each type Thus, PETSc provides clean and effective codes for the Sequences an abstract base class in C++) and an implementation for each algorithm and data structure.
![ksp randomish eclipses ksp randomish eclipses](https://i.ytimg.com/vi/LmV-fkB4af4/maxresdefault.jpg)
Managing interactions between mesh data structures and vectors,Įach class consist of an abstract interface (simply a set of calling Support for differential algebraic equations, and the computation ofĪdjoints (sensitivities/gradients of the solutions) ( TS)
![ksp randomish eclipses ksp randomish eclipses](http://simhq.com/forum/files/usergals/2012/10/full-6177-42938-ksp_2012_09_30_15_56_43_23.jpg)
Timesteppers for solving time-dependent (nonlinear) PDEs, including Over thirty Krylov subspace methods ( KSP) ĭozens of preconditioners, including multigrid, block solvers, and
![ksp randomish eclipses ksp randomish eclipses](https://i.ytimg.com/vi/OMYbO0Yrx6M/maxresdefault.jpg)
Index sets ( IS), including permutations, for indexing into
Ksp randomish eclipses manual#
Which are discussed in detail in later parts of the manual ( Programming with PETSc and Additional Information). PETSc consists of a collection of classes,