FEM2D_NAVIER_STOKES_CHANNEL is a FORTRAN90 library which supplies information defining a Navier-Stokes flow problem in a channel. The channel is a rectangular region that is 3 units wide and 1 unit high. This problem is used as a test case for the Navier-Stokes solver.
To run the problem directly, you only need the user-supplied routines in channel.f90, the node data in nodes6.txt, and the element data in triangles6.txt.
You compile and link the solver with channel.f90, using commands like:
gfortran fem2d_navier_stokes.f90 channel.f90 mv a.out channeland then run the program with the command
./channel nodes6.txt triangles6.txt
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
FEM2D_NAVIER_STOKES_CHANNEL is available in a C++ version and a FORTRAN90 version and a MATLAB version.
FEM2D_NAVIER_STOKES, a FORTRAN90 program which solves the 2D incompressible Navier-Stokes equations in an arbitrary triangulated region. In order to run, it requires user-supplied routines that define problem data.
FEM2D_NAVIER_STOKES_CAVITY, a FORTRAN90 library which contains the user-supplied routines necessary to run fem2d_navier_stokes on the "cavity" problem.
FEM2D_NAVIER_STOKES_INOUT, a FORTRAN90 library which contains the user-supplied routines necessary to run fem2d_navier_stokes on the "inout" problem.
The geometry is defined by sets of nodes and triangles. The velocities use the full set of nodes, and quadratic (6 node) triangles.
The pressures are associated with a subset of the nodes called "pressure nodes", and linear (3 node) triangles. Note that, in the order 3 triangulation, the nodes are renumbered, and do NOT inherit the labels used in the order 6 triangulation.
The Stokes equations are solved first, providing the solution of a linear system that can be used as a good estimate of the solution, especially for high values of the viscosity.
The nonlinear Navier Stokes equations are solved, using the Stokes solution as a starting point.