adjoints | tao/unconstrained/heat-data-assimulation.c |
bags | dm/ex7.c |
sys/ex5.c |
complex numbers | ksp/ksp/ex11f.F |
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.F |
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/ex15f.F |
ksp/ksp/ex21f.F |
ksp/ksp/ex2f.F |
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.F |
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.F |
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 |
semi-implicit | Solves 2D compressible Euler |
setting a user-defined monitoring routine | ksp/ksp/ex2f.F |
solving a Helmholtz equation | ksp/ksp/ex11f.F |
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 compressible Euler |
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.F |
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 | 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.F |
ksp/ksp/ex21f.F |
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 | 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 |
differential-algebraic equation | Transient nonlinear driven cavity in 2d |
diffusion equation | Solves a simple time-dependent linear PDE (the heat equation) |
tao/unconstrained/heat-data-assimulation.c |
heat equation | Solves a simple time-dependent linear PDE (the heat equation) |
tao/unconstrained/heat-data-assimulation.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/heat-data-assimulation.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 |
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.F |
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 |