| adjoints | tao/unconstrained/spectraladjointassimilation.c |
| bags | dm/ex7.c |
| sys/ex5.c |
| complex numbers | ksp/ksp/ex11f.F90 |
| Solves a linear system in parallel with KSP |
| DM |
| using distributed arrays | Nonlinear Radiative Transport PDE with multigrid in 3d |
| Solves a linear system in parallel with KSP and DM |
| DMDA |
| using distributed arrays | -Laplacian u = b as a nonlinear problem |
| Bratu nonlinear PDE in 2d |
| Bratu nonlinear PDE in 3d |
| ksp/ksp/ex14f.F90 |
| Minimum surface problem in 2D |
| Nonlinear driven cavity with multigrid in 2d |
| Nonlinear Radiative Transport PDE with multigrid in 2d |
| snes/ex5f.F90 |
| snes/ex5f90.F90 |
| snes/ex5f90t.F90 |
| Surface processes in geophysics |
| Transient nonlinear driven cavity in 2d |
| Fortran90 |
| accessing indices in index set | vec/is/is/ex3f90.F90 |
| accessing indices of index set | vec/is/is/ex1f90.F90 |
| assembling vectors | vec/vec/ex4f90.F90 |
| using basic vector routines | vec/vec/ex1f90.F90 |
| vec/vec/ex20f90.F90 |
| global to local mappings | Demonstrates using ISLocalToGlobalMappings |
| Demonstrates using ISLocalToGlobalMappings with block size |
| HDF5 | dm/ex9.c |
| Helmholtz equation | Solves a linear system in parallel with KSP |
| index sets |
| accessing indices from Fortran | vec/is/is/ex2f.F |
| creating a block index set | Demonstrates creating a blocked index set |
| creating a stride index set | Demonstrates creating a stride index set |
| creating general | Creating a general index set |
| manipulating a block index set | vec/is/is/ex3f90.F90 |
| manipulating a general index set | Creating a general index set |
| vec/is/is/ex1f.F |
| vec/is/is/ex1f90.F90 |
| manipulating a stride index set | vec/is/is/ex2f.F |
| introduction to PETSc | Demonstrates PetscGetVersonNumber() |
| Illustrates creating an options database |
| Introductory example that illustrates printing |
| Introductory example that illustrates running PETSc on a subset of processes |
| sys/ex16.c |
| sys/ex4f.F |
| sys/ex4f90.F90 |
| IS |
| creating a block index set | Demonstrates creating a blocked index set |
| creating a general index set | Creating a general index set |
| creating a stride index set | Demonstrates creating a stride index set |
| IS coloirng types | -Laplacian u = b as a nonlinear problem |
| Bratu nonlinear PDE in 2d |
| Surface processes in geophysics |
| KSP | ksp/ksp/ex74.c |
| Additive Schwarz Method (ASM) with user-defined subdomains | Illustrates use of the preconditioner ASM |
| Additive Schwarz Method (GASM) with user-defined subdomains | Illustrates use of PCGASM |
| Illustrates use of the preconditioner GASM |
| basic parallel example | Bilinear elements on the unit square for Laplacian |
| ksp/ksp/ex10.c |
| ksp/ksp/ex15f.F90 |
| ksp/ksp/ex2f.F90 |
| ksp/ksp/ex67.c |
| Solves a (permuted) linear system in parallel with KSP |
| Solves a linear system in parallel with KSP |
| Solves a linear system in parallel with KSP and DM |
| Solves a tridiagonal linear system |
| basic sequential example | ksp/ksp/ex13f90.F90 |
| Solves a variable Poisson problem with KSP |
| customizing the block Jacobi preconditioner | Block Jacobi preconditioner for solving a linear system in parallel with KSP |
| ksp/ksp/ex7f.F90 |
| different matrices for linear system and preconditioner | ksp/ksp/ex6f.F90 |
| Laplacian, 2d | ksp/ksp/ex12.c |
| ksp/ksp/ex13f90.F90 |
| Solves 2D inhomogeneous Laplacian |
| Solves 2D inhomogeneous Laplacian using multigrid |
| Solves a (permuted) linear system in parallel with KSP |
| Solves a linear system in parallel with KSP |
| Solves a linear system in parallel with KSP and DM |
| Solves a sequence of linear systems with different right-hand-side vectors |
| Solves a variable Poisson problem with KSP |
| Laplacian, 3d | Solves 3D Laplacian using multigrid |
| repeatedly solving linear systems | ksp/ksp/ex5f.F90 |
| ksp/ksp/ex6f.F90 |
| Solves a sequence of linear systems with different right-hand-side vectors |
| Solves two linear systems in parallel with KSP |
| The solution of 2 different linear systems with different linear solvers |
| setting a user-defined monitoring routine | ksp/ksp/ex2f.F90 |
| solving a Helmholtz equation | ksp/ksp/ex11f.F90 |
| Solves a linear system in parallel with KSP |
| solving a linear system | Reads a PETSc matrix and vector from a file and solves a linear system |
| Reads a PETSc matrix and vector from a file and solves the normal equations |
| Reads a PETSc matrix and vector from a socket connection, solves a linear system and sends the result back |
| solving a system of linear equations | ksp/ksp/ex12.c |
| ksp/ksp/ex1f.F90 |
| ksp/ksp/ex54f.F90 |
| Solves 2D inhomogeneous Laplacian |
| Solves 2D inhomogeneous Laplacian using multigrid |
| Solves 3D Laplacian using multigrid |
| Solves a tridiagonal linear system with KSP |
| writing a user-defined nonlinear solver | ksp/ksp/ex14f.F90 |
| Laplacian, 2d | ksp/ksp/ex13f90.F90 |
| Solves a (permuted) linear system in parallel with KSP |
| Solves a linear system in parallel with KSP |
| Solves a linear system in parallel with KSP and DM |
| Solves a sequence of linear systems with different right-hand-side vectors |
| Solves a variable Poisson problem with KSP |
| local to global mappings | Demonstrates using ISLocalToGlobalMappings |
| Demonstrates using ISLocalToGlobalMappings with block size |
| Mat |
| composite matrices | mat/ex9.c |
| image segmentation | mat/ex15.c |
| mat/ex17.c |
| loading a binary matrix | mat/ex10.c |
| loading a binary matrix and vector | ksp/ksp/ex10.c |
| mat/ex12.c |
| Reads a PETSc matrix and vector from a file and reorders it |
| mat partitioning | mat/ex15.c |
| mat/ex17.c |
| mesh partitioning | mat/ex11.c |
| ordering a matrix - loading a binary matrix and vector | mat/ex12.c |
| Reads a PETSc matrix and vector from a file and reorders it |
| MAT | ksp/ksp/ex74.c |
| mathematical functions | Demonstrates various vector routines for DMDA |
| MATKAIJ | ksp/ksp/ex74.c |
| MatNest | snes/ex73f90t.F90 |
| Matrices |
| inserting elements by blocks | Bilinear elements on the unit square for Laplacian |
| multicomponent | Nonlinear driven cavity with multigrid in 2d |
| multigrid | Minimum surface problem in 2D |
| Nonlinear Radiative Transport PDE with multigrid in 2d |
| Nonlinear Radiative Transport PDE with multigrid in 3d |
| Normal equations | Reads a PETSc matrix and vector from a file and solves the normal equations |
| optimization |
| likely | Example of using PetscLikely() and PetscUnlikely() |
| unlikely | Example of using PetscLikely() and PetscUnlikely() |
| Optimization using adjoint sensitivities | Solves a ODE-constrained optimization problem -- finding the optimal initial conditions for the van der Pol equation |
| Optimization using adjoint sensitivity analysis | Solves the van der Pol equation |
| PC |
| registering preconditioners | ksp/ksp/ex12.c |
| setting a user-defined shell preconditioner | ksp/ksp/ex15f.F90 |
| Solves a linear system in parallel with KSP |
| periodic boundary conditions | ksp/ksp/ex67.c |
| Newton methods to solve u'' = f in parallel with periodic boundary conditions |
| petsc |
| introduction | Synchronized printing |
| PetscLog |
| activating/deactivating events for profiling | Augmenting PETSc profiling by add events |
| activating/deactivating events for profiling (basic example) | sys/ex3f.F |
| sys/logging/ex1f.F90 |
| preloading executable | ksp/ksp/ex10.c |
| mat/ex12.c |
| Reads a PETSc matrix and vector from a file and reorders it |
| profiling multiple stages of code | ksp/ksp/ex5f.F90 |
| Solves two linear systems in parallel with KSP |
| The solution of 2 different linear systems with different linear solvers |
| user-defined event profiling | Augmenting PETSc profiling by add events |
| The solution of 2 different linear systems with different linear solvers |
| user-defined event profiling (basic example) | sys/ex3f.F |
| sys/logging/ex1f.F90 |
| printf |
| in parallel | Synchronized printing |
| synchronized | Synchronized printing |
| printing |
| in parallel | Illustrates creating an options database |
| Introductory example that illustrates printing |
| Synchronized printing |
| sys/ex16.c |
| synchronized | Synchronized printing |
| process |
| subset set PETSC_COMM_WORLD | Introductory example that illustrates running PETSc on a subset of processes |
| sys/ex4f.F |
| sys/ex4f90.F90 |
| profiling |
| activating/deactivating events | Augmenting PETSc profiling by add events |
| user-defined event | Augmenting PETSc profiling by add events |
| pseudo-timestepping | Solves the time independent Bratu problem using pseudo-timestepping |
| ts/ex1f.F |
| SNES |
| basic example | Newton's method for a two-variable system, sequential |
| Newton's method to solve a two-variable system that comes from the Rosenbrock function |
| basic parallel example | Newton methods to solve u'' = f in parallel with periodic boundary conditions |
| Newton methods to solve u'' + u^{2} = f in parallel |
| basic uniprocessor example | Newton method to solve u'' + u^{2} = f, sequentially |
| snes/ex1f.F90 |
| parallel Bratu example | -Laplacian u = b as a nonlinear problem |
| Bratu nonlinear PDE in 2d |
| Bratu nonlinear PDE in 3d |
| snes/ex5f.F90 |
| snes/ex5f90.F90 |
| snes/ex5f90t.F90 |
| snes/ex73f90t.F90 |
| parallel Surface process example | Surface processes in geophysics |
| setting a user-defined monitoring routine | Newton method to solve u'' + u^{2} = f, sequentially |
| Newton methods to solve u'' + u^{2} = f in parallel |
| solving a system of nonlinear equations | Minimum surface problem in 2D |
| Nonlinear Radiative Transport PDE with multigrid in 2d |
| Nonlinear Radiative Transport PDE with multigrid in 3d |
| solving a system of nonlinear equations (parallel multicomponent example) | Nonlinear driven cavity with multigrid in 2d |
| stride |
| creating a stride index set | Demonstrates creating a stride index set |
| TAO |
| Solving a bound constrained minimization problem | tao/bound/jbearing2.c |
| tao/bound/plate2.c |
| tao/bound/plate2f.F90 |
| Solving a complementarity problem | tao/complementarity/blackscholes.c |
| tao/complementarity/minsurf1.c |
| Solving a system of nonlinear equations, nonlinear least squares | Finds the least-squares solution to the under constraint linear model Ax = b, with L1-norm regularizer |
| Finds the least-squares solution to the under constraint linear model Ax = b, with regularizer |
| tao/leastsquares/chwirut1.c |
| tao/leastsquares/chwirut2.c |
| tao/pde_constrained/elliptic.c |
| tao/pde_constrained/hyperbolic.c |
| tao/pde_constrained/parabolic.c |
| Solving an unconstrained minimization problem | tao/constrained/maros.c |
| tao/leastsquares/chwirut1f.F90 |
| tao/leastsquares/chwirut2f.F90 |
| tao/unconstrained/eptorsion1.c |
| tao/unconstrained/eptorsion2.c |
| tao/unconstrained/eptorsion2f.F |
| tao/unconstrained/minsurf2.c |
| tao/unconstrained/rosenbrock1.c |
| tao/unconstrained/rosenbrock1f.F90 |
| TS | Solves the ordinary differential equations (IVPs) using explicit and implicit time-integration methods |
| adjoint sensitivity analysis | Performs adjoint sensitivity analysis for the van der Pol equation |
| Burger's equation | ts/ex50.c |
| differential-algebraic equation | Transient nonlinear driven cavity in 2d |
| diffusion equation | Solves a simple time-dependent linear PDE (the heat equation) |
| tao/unconstrained/spectraladjointassimilation.c |
| heat equation | Solves a simple time-dependent linear PDE (the heat equation) |
| tao/unconstrained/spectraladjointassimilation.c |
| multicomponent | Transient nonlinear driven cavity in 2d |
| nonlinear problems | Solves the time independent Bratu problem using pseudo-timestepping |
| ts/ex1f.F |
| pseudo-timestepping | Solves the time independent Bratu problem using pseudo-timestepping |
| ts/ex1f.F |
| solving a system of nonlinear equations (parallel multicomponent example) | Transient nonlinear driven cavity in 2d |
| time-dependent linear problems | Solves a simple time-dependent linear PDE (the heat equation) |
| tao/unconstrained/spectraladjointassimilation.c |
| time-dependent nonlinear problems | Performs adjoint sensitivity analysis for the van der Pol equation |
| Solves a ODE-constrained optimization problem -- finding the optimal initial conditions for the van der Pol equation |
| Solves a time-dependent nonlinear PDE |
| Solves a time-dependent nonlinear PDE with lower and upper bounds on the interior grid points |
| Solves the van der Pol DAE |
| Solves the van der Pol equation |
| Solves the van der Pol equation and demonstrate IMEX |
| ts/ex50.c |
| van der Pol DAE | Solves the van der Pol DAE |
| van der Pol equation | Performs adjoint sensitivity analysis for the van der Pol equation |
| Solves the van der Pol equation and demonstrate IMEX |
| van der Pol equation DAE equivalent | Performs adjoint sensitivity analysis for the van der Pol equation |
| Solves a ODE-constrained optimization problem -- finding the optimal initial conditions for the van der Pol equation |
| Solves the van der Pol equation |
| Variational inequality nonlinear solver | Solves a time-dependent nonlinear PDE with lower and upper bounds on the interior grid points |
| vectors |
| arrays | vec/vec/ex4f90.F90 |
| arrays of vectors | vec/vec/ex4f.F |
| assembling | vec/vec/ex2f.F |
| vec/vec/ex4f.F |
| assembling vectors | Builds a parallel vector with 1 component on the first processor, 2 on the second, etc |
| Computes the integral of 2*x/(1+x^2) from x=0 |
| Demonstrates use of VecCreateGhost() |
| vec/vec/ex14f.F90 |
| vec/vec/ex4f90.F90 |
| vec/vec/ex9f.F90 |
| assembling vectors with local ordering | Demonstrates using a local ordering to set values into a parallel vector |
| basic routines | Basic vector routines |
| vec/vec/ex1f.F90 |
| vec/vec/ex21f90.F90 |
| drawing vectors | Parallel vector layout |
| vec/vec/ex3f.F |
| fortran-c | Demonstrates calling a Fortran computational routine from C |
| ghost padding | Demonstrates use of VecCreateGhost() |
| vec/vec/ex14f.F90 |
| vec/vec/ex9f.F90 |
| local access to | Parallel vector layout |
| norms of sub-vectors | Demonstrates VecStrideNorm() |
| vec/vec/ex11f.F |
| vec/vec/ex11f90.F90 |
| setting values | Parallel vector layout |
| sub-vectors | Demonstrates VecStrideScatter() and VecStrideGather() |
| Demonstrates VecStrideScatter() and VecStrideGather() with subvectors that are also strided |
| using basic vector routines | vec/vec/ex1f90.F90 |
| vec/vec/ex20f90.F90 |
| viewing | Parallel HDF5 Vec Viewing |
| Vectors |
| loading a binary vector | mat/ex12.c |
| Reads a PETSc matrix and vector from a file and reorders it |
| viewers | dm/ex7.c |
| dm/ex9.c |
| append | Appends to an ASCII file |
| hdf5 | Parallel HDF5 Vec Viewing |