SLAB
Contour plots of optimization data
SLAB
is a FORTRAN90 program which
makes contour plots of the an optimization function.
The optimization function was defined as follows. Given the
value of a flow field along some sampling line, it was desired
to determine the shape of an interior obstacle (a bump) which
would result in a flow that would match the original data
along the sampling line. The shape of the bump could be described
in terms of a few parameters (spline coefficients, really).
The optimization function was the square root of the integral
of the difference between the measured and computed flows along
the sampling line. It was desired to make plots of the
behavior of the optimization function as the shape parameters
were varied.
This data came from runs of the FLOW3 and FLOW4 programs.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
SLAB is available in
a FORTRAN90 version.
Related Data and Programs:
DRAWCGM
is a graphics library which
is needed by SLAB.
FLOW3
is a FORTRAN90 program which
solves the 2D steady (time independent) incompressible Navier Stokes equations
using the finite element method.
FLOW4
is a FORTRAN90 program which
solves the 2D steady (time independent) incompressible Navier Stokes equations
using the finite element method.
SLICE,
a FORTRAN90 program which
analyzes the optimization of a scalar function of multidimensional data
by examining contour lines in a selected plane.
Source Code:
-
slab.f90, the source code.
-
slab.csh,
commands to compile, link and load the source code.
Examples and Tests:
List of Routines:
-
SLAB presents a 2D contour plot of the cost functional, based on data
-
ARROW can be used to draw an arrow at any point on a graph.
-
BOX draws a rectangle whose corners are specified by the user.
-
BUZZ is a kludge routine. For some reason, the last few graphical
-
CAPCHR accepts a STRING of characters and replaces any lowercase
-
CBAR draws a color bar in the rectangle whose corners are (X1,Y1) and (X2,Y2).
-
CBOX draws a 16 by 16 box, filling each entry with a color
-
CHRCTI accepts a STRING of characters and reads an integer
-
CHRCTR accepts a string of characters, and tries to extract a
-
CHRDB1 accepts a string of characters and removes all
-
CHRDB2 accepts a string of characters. It replaces all nulls
-
CHRREL accepts a real number in RVAL and returns in CHRREL a
-
DELETE is used to dispose of old copies of files before opening
-
DODAT processes data that has been read from a file.
-
DOOFUS3 is used by STREAM3, to compute SINC, the stream function
-
GETDAT reads the information from a file.
-
GETIT reads X and Y coordinates of the iterates.
-
GRAPH produces the graph.
-
HELLO prints a brief welcoming message.
-
HELP prints the list of legal commands.
-
INIT sets initial values for the program variables.
-
INSIDE reports whether XMID is between X1 and X2.
-
LENCHR returns the length of STRING up to the last nonblank
-
LEQI is a case insensitive comparison of two strings for
-
LINCON draws a contour plot of a scalar quantity associated with the
-
LNEI is a case-insensitive comparison of two strings for
-
NORVEC draws a normalized vector direction field.
-
PRCON prints the value of the contour levels.
-
PREDAT opens a data file, gets the first line, containing
-
PRELM prints the element data.
-
PREPLT should be called before doing each plot.
-
PRCOST prints X, Y and the COST.
-
PRNODE prints the values of certain quantities at a node.
-
PRSET prints the value of some of the settings.
-
QUIT terminates the program.
-
REFBSP evaluates one of the three linear basis functions,
-
RRANGE computes the range of an array.
-
S_PLOT plots a character string onto a graphics image.
-
SETELM sets up the element data.
-
SETTAB replaces SETCTB, the DRAWCGM routine for setting up
-
SETXY sets up the X and Y coordinates for the nodes.
-
SQUARE draws a square.
-
STREAM3 assigns the value of the stream function to each node
-
TRANS3 calculates the linear transformation which maps the
-
TRICOL uses color to indicate all the points which have a
-
TRILHK is given a (non-isoperimetric) triangle, formed by nodes I1,
-
CROSS finds the two places where the value S = SVAL occurs on a
-
UEVAL3 evaluates the velocities at an arbitrary point in a
-
VECTOR draws a vector field.
-
VRANGE computes the maximum absolute value in a pair of vectors,
You can go up one level to
the FORTRAN90 source codes.
Last revised on 02 October 2008.