FLOW6 - A Finite Element Code for Fluid Flow
FLOW6 uses the finite element method to solve for the steady state
velocity and pressure in a two dimensional fluid flow region.
The fluid is presumed to be incompressible. The governing equations
are the Navier Stokes equations with the continuity equation.
FLOW6 was derived from the FLOW5 code.
Alterations and new features include:
-
Both 3 and 7 point quadrature rules;
-
The no penetration wall condition has been extended to walls that
are not along a coordinate direction;
-
The elements are now in "standard" form;
-
A new free slip boundary condition is being added;
-
Boundary conditions handled by BOUNDARY routine.
Files you may copy include:
-
flow6.f90, the source code;
-
flow6.tec, solution data suitable
for input to the graphics program TECPLOT;
-
channel.out, output from a channel run.
-
elements.txt, element information
suitable for input to the graphics program DISPLAY5.
-
uvp.txt, solution information
suitable for input to the graphics program DISPLAY5.
The list of routines includes:
-
MAIN solves a 2D steady incompressible flow using finite elements.
-
BANDWIDTH computes the lower band width of the Jacobian matrix.
-
BOUNDARY_INTEGRAL sets data useful for boundary integrals.
-
BOUNDARY_INTEGRAL_FREESLIP sets boundary integral data for the freeslip.
-
BOUNDARY_INTEGRAL_STEP sets boundary integral data for the step.
-
BOUNDARY_INTEGRAL_PRINT prints data useful for boundary integrals.
-
BOUNDARY_SHAPE returns the tangent and normal vectors along the boundary.
-
BOUNDARY_SHAPE_CAVITY returns the boundary of the cavity problem.
-
BOUNDARY_SHAPE_CHANNEL returns the boundary of the channel problem.
-
BOUNDARY_SHAPE_FREESLIP returns the boundary of the freeslip problem.
-
BOUNDARY_SHAPE_STEP returns the boundary of the step problem.
-
BOUNDARY_VALUE evaluates boundary condition functions.
-
COEF_READ reads the coefficient data from a file.
-
COEF_WRITE writes the coefficient data to a file for possible restart.
-
DGB_CHECK checks the dimensions of a general band matrix.
-
DGB_FA factors a matrix stored in LINPACK general band storage.
-
DGB_PRINT prints nonzero entries of a banded matrix.
-
DGB_SL solves a system factored by DGB_FA.
-
DVEC_AMAX returns the maximum absolute value in a real vector.
-
ELEMENT_PRINT prints out the elements.
-
ELEMENT_WRITE writes element information to a file.
-
EQUATION_PRINT prints the equation types.
-
FP computes the jacobian matrix A of the Navier Stokes residual.
-
FP_PRINT prints information about the jacobian.
-
FP_DIF estimates the jacobian matrix by finite differences.
-
FX computes the residual RES of the Navier Stokes equations.
-
GEOMETRY sets up the geometry for any problem.
-
GEOMETRY_CAVITY sets up the geometry for the cavity problem.
-
GEOMETRY_CHANNEL sets up the geometry for the channel problem.
-
GEOMETRY_FREESLIP sets up the geometry for the freeslip problem.
-
GEOMETRY_STEP sets up the geometry for the step problem.
-
GET_UNIT returns a free FORTRAN unit number.
-
HELLO says hello, prints the program name, date and limits.
-
INIT zeroes out data used by the program.
-
NEWTON applies Newton iteration, seeking a solution of FX(G) = 0.
-
NODE_WRITE writes solution information to a file.
-
PRESS_INTERP interpolates pressure values at non-pressure nodes.
-
REF_BF_L3 evaluates a reference element linear basis function.
-
REF_BF_Q6 evaluates shape functions for a 6 node triangle.
-
REF_MAP_Q6 returns the interpolation map for data on a 6 node triangle.
-
REF_QUAD1 sets abscissas and wquad1s for 1D Gauss-Legendre quadrature.
-
REF_QUAD2 sets up the 2D reference triangle quadrature rule.
-
SETBAS evaluates the basis functions at each quadrature point.
-
STOKES solves the Stokes equations.
-
TECPLOT_WRITE writes out solution information for use with TECPLOT.
-
TRANS_Q6 calculates the biquadratic reference element transformation.
-
UVP_NORM_H1 returns the H1 norm of the solution.
-
UVP_NORM_L2 returns the L2 norms of velocity magnitude, and pressure.
-
UVP_NORM_LMAX returns the infinity norms of velocity magnitude, and pressure.
-
UVP_PRINT prints out the solution.
-
UVP_QUAD_VALUE evaluates U, V and P at a quadrature point in a given element.
-
UVP_VALUE evaluates U, V and P at any point in a given element.
-
X_OF_XSI computes X and Y given XSI and ETA coordinates.
-
XY_PRINT prints the X and Y coordinates of the nodes.
Back to the FORTRAN software page.
Last revised on 17 February 2002.