HCELL
Fluid Flow in an H-shaped Region


HCELL is a FORTRAN77 program, using double precision arithmetic, which solves the time-dependent Navier Stokes equations in a two-dimensional region called the "H Cell".

As time increases, other flow parameters may be varied as well. For this code, the flow parameter that can vary is the magnitude of the inflow specified at the left boundary. The program stores the results of each timestep in a file. Each solution may be thought of as a "snapshot" of the gradual evolution of the flow field over time. In a typical run, 500 such files might be created. One set of such data is stored as the TCELL flow dataset.

A collection of snapshot files may be analyzed to seek a small underlying basis of fundamental flows. This basis may be used to approximate the entire set, or indeed to generate a reduced basis program that can quickly and cheaply compute new flow solutions whose flow parameters vary in small ways from those of the original set. Programs that can be used for such an analysis include CVT_BASIS and POD_BASIS.

The "H-Cell" region is an H-shaped region.


          +----------------------------+
          |              :     :       |
    row 3 |   (3,1)      :(3,2): (3,3) |
          |              :     :       |
          +--------------+.....+-------+
                         |     |        
    row 2     empty      |(2,2)|  empty
                         |     |  
          +--------------+.....+-------+
          |              :     :       |
    row 1 |   (1,1)      :(1,2): (1,3) |
          |              :     :       |
          +----------------------------+

              col 1       col 2  col 3
      

Usage:

hcell
runs the program, reading the file "up000.txt" for the initial values of the horizontal and vertical velocities, and the pressure, at each node. Output files include the series "up001.txt", "up002.txt" and so on, containing flow quantities at successive time steps.

Author:

Hyun-Chun Lee,
Ajou University, Korea,
in collaboration with Max Gunzburger, Janet Peterson, and John Burkardt.

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 a program which computes the pressure and velocity for a Navier Stokes flow in a channel. It is available in a FORTRAN77 version and a FORTRAN90 version.

CVT_BASIS_FLOW extracts dominant solution modes from a set of flow solutions using CVT methods.

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.

FEM1D, is an executable FORTRAN77 program which applies the finite element method, with piecewise linear basis functions, to a two point boundary value problem;

FFNS_SPARSE is a MATLAB program for solving the steady incompressible Navier Stokes equations on an arbitrary triangulated region, using the finite element method and MATLAB's sparse facility.

FFS_SPARSE is a MATLAB program for solving the steady incompressible Stokes equations on an arbitrary triangulated region, using the finite element method and MATLAB's sparse facility.

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

FREE_FEM_STOKES is a MATLAB program which computes the pressure and velocity for a Stokes flow.

HCELL_FLOW_DISPLAY is a MATLAB program which can plot the data produced by HCELL.

HCELL_STEADY is an executable FORTRAN77 program that solves the time-independent or "steady" Navier Stokes equations in an H-cell region.

INOUT is an executable FORTRAN77 program which solves the Navier Stokes equations in the "In-Out" region.

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 which computes the pressure and velocity for a Navier Stokes flow.

TCELL is an executable FORTRAN77 program which solves the Navier Stokes equations in the T-Cell region.

POD_BASIS_FLOW extracts dominant solution modes from a set of flow solutions using POD methods.

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_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:

There are six sets of inflow and outflow vents in the flow region. A basis flow profile is specified for each set of vents. However, for each vent group I, there is also a multiplier BETA(I) which can be used to modulate the flow strength. To perform parameter studies, it was decided to consider datasets, each of which contained seven different settings for all the BETA's. (Thus, such a dataset contains 42 numbers.) Datasets were generated in a variety of ways:

List of Routines:

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


Last revised on 13 November 2006.