Menu

Tree [r1] /
 History

HTTPS access


File Date Author Commit
 gnuplot 2008-02-12 mairw [r1] initial import
 maple 2008-02-12 mairw [r1] initial import
 sh 2008-02-12 mairw [r1] initial import
 src 2008-02-12 mairw [r1] initial import
 AUTHORS 2008-02-12 mairw [r1] initial import
 COPYRIGHT 2008-02-12 mairw [r1] initial import
 README 2008-02-12 mairw [r1] initial import
 critical_profile.txt 2008-02-12 mairw [r1] initial import
 nstest-advect-surface.edp 2008-02-12 mairw [r1] initial import
 nstest-advect.edp 2008-02-12 mairw [r1] initial import
 nstest-capillary-sphere.edp 2008-02-12 mairw [r1] initial import
 nstest-capillary-wave.edp 2008-02-12 mairw [r1] initial import
 nstest-cavity.edp 2008-02-12 mairw [r1] initial import
 nstest-ellipsoid.edp 2008-02-12 mairw [r1] initial import
 nstest-noslip-ellipsoid-steady.edp 2008-02-12 mairw [r1] initial import
 nstest-template.edp 2008-02-12 mairw [r1] initial import
 xprof.ghia 2008-02-12 mairw [r1] initial import
 yprof.ghia 2008-02-12 mairw [r1] initial import

Read Me

This project is a collection of FreeFEM++ scripts used to find numerical solutions 
of the incompressible Navier-Stokes equations.  The scripts include examples
of SUPG/PSPG stabilisation and show how to construct 5th order polynomial
boundary interpolations from moving mesh problems.  The interpolations are 
suitable for applying surface tension boundary conditions.  

Also, the boundary interpolation routines from this project can be re-used in 
  other FreeFEM++ projects where the boundary condition depends on the shape of
  the domain.  The boundary interpolation scripts are:
src/ns-markers.edp         //Routines to track boundary markers
src/ns-boundary*.edp       //Routines to construct a boundary interpolation 
src/ns-interp5.edp         //Defines 5th order polynomial interpolation

For Navier-Stokes problems, each flow problem is defined in a separate parameter 
  file; the examples are named nstest-######.edp.
The default problem parameters and description are defined in the file 
  src/ns-defaults.edp.
  
To run a simulation, use FreeFem++ nstest-#####.edp.

The correct finite element scheme needs to be selected in the file 
  src/ns-finite-elements.edp.  So if no stabilisation is enabled, you must 
  choose an element that satisfies the LBB condition.  If enablePSPG is set
  then equal order elements can be used.  The best combination for moving 
  surface problems is P1bP1 elements with enableSUPG set.
Note that if you wish to use high order elements, such as P3 or P4 then you must
  copy the files Element_P3.so, Element_P4.so and qf11to25.so from the freefem++ 
  examples++-load directory into the freefem-ns/src/ directory.
  
To define a new problem you can work from an example parameter file with reference
  to the comments in src/ns-defaults.edp.  The parameter file template is given
  in nstest-template.edp
  
Examples parameter files are given for:
* Advection tests
* Driven cavity
* Steady flow past an ellipse/ellipsoid
* Transient flows with free surfaces - droplet formation.

Methods used:
* Moving/adaptive mesh
* Semi-implicit time integration
* A selection of stabilisation schemes, including 
==> Pressure Stabilised Petrov Galerkin (PSPG) for equal order finite elements.
==> Streamwise Upwind Petrov Gelerkin (SUPG) for advection dominated problems.
==> A fractional step method which in many cases allows equal order finite elements
    to be used at the expense of accuracy in time (educational only).  
==>Bubble functions, for P1bP1 elements

Various error measures are available, including:
* Velocity error due to divergence not being exactly zero.
* Linearisation error due to advection term being linearised from (u.Del)u to (a.Del)u.

To control the level of debugging output see the file src/ns-debug.edp

The current test cases are:
nstest-