Main Page: Difference between revisions

From openpipeflow.org
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 17: Line 17:
* Primitive-variable pipe-flow code for incompressible flow.
* Primitive-variable pipe-flow code for incompressible flow.
* Simple scripts for visualisation with Matlab/Octave/Visit.
* Simple scripts for visualisation with Matlab/Octave/Visit.
* May be run serial or parallel (with MPI).  Almost linear scaling with number of cores.
* May be run serial or parallel (with MPI).  Essentially linear scaling with number of cores.
* '''[NEW July 2015]''' '2-dimensional' parallelisation, radial+axial split.
* '''[NEW July 2015]''' '2-dimensional' parallelisation, radial+axial split.
* Readable Fortran 90, uses modules and derived types, no esoteric extensions.
* Readable Fortran 90, uses modules and derived types, no esoteric extensions.

Revision as of 07:14, 27 July 2015

Slow streaks (blue) and vortex structures (yellow)

Overview

openpipeflow.org is a free resource for researchers, engineers, educators and the interested public.

A simulation code and documentation on techniques and methods are provided. The majority of mathematical techniques described on these pages are applicable to a huge range of problems beyond pipe flow. The core code is designed to be flexible, and subroutines for some well-known methods are designed to be problem-independent.

Aims

  • To make accessible a range of modelling techniques.
  • To facilitate rapid entry into the world of numerical simulation and fluid dynamics.
  • To provide flexible modules for more the use and development of advanced techniques in research.

Code features

  • Primitive-variable pipe-flow code for incompressible flow.
  • Simple scripts for visualisation with Matlab/Octave/Visit.
  • May be run serial or parallel (with MPI). Essentially linear scaling with number of cores.
  • [NEW July 2015] '2-dimensional' parallelisation, radial+axial split.
  • Readable Fortran 90, uses modules and derived types, no esoteric extensions.
  • Core program <3000 lines.
  • Spatial discretisation: double-Fourier (theta,z) + finite difference (r).
  • PPE formulation; influence matrix corrects boundary conditions to machine precision.
  • Second-order predictor-corrector method, automatic timestep control.

Manual, Tutorial, FAQ

Links are provided on the left sidebar.

The Manual covers

  • setup and typical usage of the code,
  • definition of the model,
  • mathematics behind the methods,
  • conventions used in the code,
  • description of utility codes.

The Tutorial guides a new user through

  • setting up parameters for a job,
  • monitoring a job's progress,
  • simple plotting of time series from a run,
  • visualisation of structures in a snapshot,
  • manipulating data.

Download

See Download.

Database

The Database provides sample parameters and initial conditions from which to launch new simulations. In general, simulations start most reliably from an initial state computed for similar parameters. A range of starting points are provided.

Features to appear/wishlist

  • Utilities for Krylov methods -- Newton-Krylov, Arnoldi.
  • Module for the immersed boundary method (IBM).
  • FAQ.

Citation

  • In talks:
               openpipeflow.org
  • In articles:
               e.g. "using openpipeflow.org, based on code described in \cite{WK09}."
                  @article{WK09,
                       Author = {A. P. Willis and R. R. Kerswell},
                       Year = {2009},
                       Title = {Turbulent dynamics of pipe flow captured in a
                               reduced model: puff relaminarisation and
                               localised `edge' states},
                       Journal = {J.\ Fluid Mech.},
                       Volume = {619},
                       Pages = {213-233}  }

Author

Ashley P. Willis,
School of Mathematics and Statistics (SoMaS),
University of Sheffield, U.K.
ashleypwillis/at/gmail.com

Thanks