FLOW3
A Finite Element Code for Fluid Flow


FLOW3 is a FORTRAN90 program, using double precision arithmetic, which uses the finite element method to solve for the steady state velocity and pressure of an incompressible fluid in a 2D flow region.

FLOW3 writes a graphics dump file that can be read in and plotted by DISPLAY3.

Usage:

       flow3 < input_file > output_file
     

Related Data and Programs:

BUMP is an executable FORTRAN90 program which solves a fluid flow problem in a channel including a bump which obstructs and redirects the flow.

CHANNEL is an executable FORTRAN90 program which solves a fluid flow problem in a channel.

DIRECTION_ARROWS is a MATLAB program that can be used to plot the vector direction field.

DIRECTION_ARROWS_GRID is a MATLAB program which reads files of node and velocity data, and, using interpolation, creates a velocity direction plot with arrows place on a uniform grid of the user's specification.

FEM is a data directory which contains a description of the data files that can be used to describe a finite element model.

FEM_50 is a MATLAB finite element program in just 50 lines of code.

FEM_50_HEAT is modified version of FEM_50 suitable for solving the heat equation.

FEM_50_HEAT is modified version of FEM_50 suitable for solving the heat equation.

FEM_BASIS_T3_DISPLAY is a MATLAB program which displays a basis function associated with a linear triangle ("T3") mesh.

FEM_BASIS_T6_DISPLAY is a MATLAB program which displays a basis function associated with a quadratic triangle ("T6") mesh.

FEM_IO is a set of MATLAB routines for reading or writing the node, element and data files that define a finite element model.

FEM_TO_TEC is a MATLAB program that can convert an FEM model into a TEC graphics file.

FEM2D_POISSON is an executable FORTRAN90 program for solving Poisson's equation on a square, using the finite element method.

FEMPACK is a FORTRAN90 library of routines for finite element calculations.

FLOW5 is a FORTRAN90 program which is a later version of the FLOW3 program.

FLOW7 is a FORTRAN90 program which is a later version of the FLOW3 program.

FREE_FEM_NAVIER_STOKES is a FORTRAN90 program for solving the steady incompressible Navier Stokes equations on an arbitrary triangulated region, using the finite element method.

FREE_FEM_STOKES is an executable FORTRAN90 program for the steady incompressible 2D Stokes equations on an arbitrary triangulated region.

HCELL is a FORTRAN77 program which computes the pressure and velocity for a Navier Stokes flow in an "H"-shaped region.

HOT_PIPE is a sample problem that can be run with FEM_50_HEAT.

HOT_POINT is a sample problem that can be run with FEM_50_HEAT.

INOUT is a FORTRAN77 program which computes the pressure and velocity for a Navier Stokes flow in a square region with an inlet and an outlet.

MHD_CONTROL is an executable FORTRAN90 program which tries to control the evolution of an MHD system so that a particular state is achieved.

MHD_FLOW is an executable FORTRAN90 program for the evolution of an MHD system.

NAST2D is a C++ program which computes the pressure and velocity for a Navier Stokes flow.

NAST2D_F90 is a FORTRAN90 program by Griebel, Dornseifer and Neunhoeffer, for the 2D Navier Stokes equations with heat.

NSASM is a C library of routines, intended to be used with a MATLAB calling program, and which set up the sparse matrix needed for a Newton iteration to solve a finite element formulation of the steady incompressible 2D Navier Stokes equations.

PLTMG_SINGLE is a FORTRAN77 library of routines for solving elliptic partial differential equations using the finite element method with piecewise linear triangles and the multigrid approach.

PLOT_POINTS is an executable FORTRAN90 program that can make a plot of the nodes that define the region.

TABLE is a format used to store the input and output files used by the program.

TABLE_IO is a FORTRAN90 library which supplied the routines needed to read the data files.

TCELL is a FORTRAN77 program which computes the pressure and velocity for a Navier Stokes flow in a "T"-shaped region.

TRIANGULATION_ORDER3 is a data directory which describes the format for an order 3 triangulation.

TRIANGULATION_ORDER3_CONTOUR is a MATLAB script which can be used to make contour plots of the pressure field from these files.

TRIANGULATION_ORDER6 is a data directory which describes the format for an order 6 triangulation.

TRIANGULATION_PLOT is a FORTRAN90 executable program which can be used to plot the elements that triangulate the region.

VECTOR_PLOT is a FORTRAN90 program which can be used to create vector plots of the velocity and velocity direction fields.

VECTOR_STREAM_GRID is a MATLAB program which reads node and vector data from a file, computes an interpolatory function, evaluates on a uniform grid of points specified by the user, and displays a streamline plot of the vector field.

VELOCITY_ARROWS is a MATLAB program which plots a velocity vector field.

VELOCITY_ARROWS_GRID is a MATLAB program which reads files of node and velocity data, and, using interpolation, creates a vector plot with arrows place on a uniform grid of the user's specification.

Reference:

  1. Max Gunzburger,
    Finite Element Methods for Viscous Incompressible Flows,
    A Guide to Theory, Practice, and Algorithms,
    Academic Press, 1989,
    ISBN: 0-12-307350-2,
    LC: TA357.G86.

Source Code:

Examples and Tests:

List of Routines:

You can go up one level to the FORTRAN90 source codes.


Last revised on 18 January 2007.