# Manual

From openpipeflow.org

If something needs updating or you have suggestions, please communicate them (Main_Page#Author) and/or request an openpipeflow login (top right corner). This website uses Mediawiki and is easy to edit.

**Overview of the solver**

- File:TheOpenpipeflowSolver.pdf - An overview of the code, its context, and how to cite Openpipeflow.

**Equations, properties, methods, etc.**:

- Equations and parameters - Non-dimensionalisation, Navier-Stokes, Reynolds numbers.
- The PPE formulation - Pressure-Poisson Equation, and the influence matrix technique.
- Table of unit conversions - scale factors between code and 'lab' units.
- Differential operators in cylindrical coordinates - grad, div, curl, Laplacian, etc.
- Symmetries of pipe flow - discrete and continuous symmetries.
- Method of slices - symmetry reduction, elimination of physically irrelevant spatial shifts.
- Newton-Krylov method - see non-problem specific code below.

**Using the simulation code**:

- Getting started - overview of files, setup, starting and ending a job.
- Tutorial - setup a job, basic monitoring and visualisation of outputs.
- Core implementation - Discretisation, Predictor-Corrector, Code Structure, Parallelisation.
- Parallel i/o - a brief note on parallel data access.
- Utilities - pre/post-processing, runtime processing and manipulations, Newton solver for pipe flow.

**Non-problem specific codes**

- These are designed for integration with any pre-existing code.
- File:Arnoldi.f - Krylov-subspace method for calculating eigenvalues of a matrix.
- File:GMRESm.f90 - Krylov-subspace method for solving the linear system Ax=b for x.
- File:NewtonHook.f90 - Newton-Krylov-Hookstep method for finding nonlinear solutions x of F(x)=0.