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 PetscDataTypeFromString() |

Demonstrates PetscFileRetrieve() |

Demonstrates PetscGetVersonNumber() |

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 |

Chombo | Demonstrates call PETSc and Chombo in the same program |

Trilinos | Demonstrates call PETSc first and then Trilinos in the same program |

Demonstrates calling Trilinos and then PETSc in the same program |

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 |

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 |

Krylov methods to solve u'' = f in parallel with periodic boundary conditions |

ksp/ksp/ex10.c |

ksp/ksp/ex15f.F90 |

ksp/ksp/ex21f.F90 |

ksp/ksp/ex2f.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 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 |

different matrices for linear system and preconditioner | ksp/ksp/ex6f.F90 |

Laplacian, 2d | ksp/ksp/ex13f90.F90 |

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/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/ex1f.F90 |

ksp/ksp/ex54f.F90 |

Solves 2D inhomogeneous Laplacian using multigrid |

Solves 3D Laplacian using multigrid |

Solves a linear system in parallel with KSP |

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 |

mathematical functions | Demonstrates various vector routines for DMDA |

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 DAE-constrained optimization problem -- finding the optimal initial conditions for the van der Pol equation |

Solves an ODE-constrained optimization problem -- finding the optimal initial conditions for the van der Pol equation |

Solves an ODE-constrained optimization problem -- finding the optimal stiffness parameter for the van der Pol equation |

Optimization using adjoint sensitivity analysis | Solves the van der Pol equation |

PC |

registering preconditioners | Solves a linear system in parallel with KSP |

setting a user-defined shell preconditioner | ksp/ksp/ex15f.F90 |

ksp/ksp/ex21f.F90 |

Solves a linear system in parallel with KSP |

periodic boundary conditions | Krylov methods to solve u'' = f in parallel with periodic boundary conditions |

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 | 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 | Demonstrates PetscDataTypeFromString() |

Demonstrates PetscFileRetrieve() |

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 |

shared memory | 2d Bratu problem in shared memory parallel with SNES |

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 |

2d Bratu problem in shared memory parallel with SNES |

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 | 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 DAE-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 an ODE-constrained optimization problem -- finding the optimal initial conditions for the van der Pol equation |

Solves an ODE-constrained optimization problem -- finding the optimal stiffness parameter for the van der Pol equation |

Solves the van der Pol DAE |

Solves the van der Pol equation |

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 an ODE-constrained optimization problem -- finding the optimal initial conditions for the van der Pol equation |

Solves an ODE-constrained optimization problem -- finding the optimal stiffness parameter for the van der Pol equation |

Solves the van der Pol equation |

van der Pol equation DAE equivalent | Performs adjoint sensitivity analysis for the van der Pol equation |

Solves a DAE-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 |

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 |

sys/ex15.c |

append | Appends to an ASCII file |

hdf5 | Parallel HDF5 Vec Viewing |