Latest update: 2002-03-05
-------------------------

Dear reader,

in this directory you will find the following files and sub-directories:


readme   -> This file.

errata   -> File containing information about typing errors found so
            far in the book; the latest update is indicated at the beginning
            of the file.

The following directories contain computer codes that have been updated
to comply with the notation used in the book. They also include many
lines of comments to make them easier to understand.

1d       -> Sub-directory, containing codes for solving the one-dimensional
            steady and unsteady convection/diffusion equation, using
            Finite Difference method and different schemes for convective
            terms and time integration. Change to this directory and read
            the local 'readme' file for further information on files in
            that directory.

2dc      -> Sub-directory, containing codes for solving the two-dimensional
            convection/diffusion equation (scalar transport in a given
            velocity field, steady and unsteady) using Finite-Volume method
            and Cartesian grid, and for solving the steady and unsteady
            Navier-Stokes equations using Cartesian grids and a colocated
            arrangement of variables. It also contains a code for generating
            Cartesian grid (single or multigrid), and for plotting the
            results of computations. The latter code produces postscript
            files of each plot page: grid, velocity vectors, profiles
            of velocity or temperature, isobars, isotherms or streamlines,
            and color-fill plots of pressure, temperature or streamlines. 
            Change to this directory and read the local 'readme' file for 
            further information on files in that directory. The subdirectory
            'pipe' contains a version of the code that is set for pipe flow;
            it includes inlet and outlet boundary conditions, and the 
            global mass flux correction in the SIMPLE-algorithm.

solvers  -> Sub-directory, containing codes for solving the two-dimensional
            and three-dimensional Laplace equation using a variety of 
            linear equation solvers. The 2D code contains seven solvers
            to choose from, including ILU (SIP), ICCG, and two multigrid
            versions. The 3D code contains ILU (SIP), ICCG and CGSTAB.
            These solvers can easily be adapted and implemented in other
            codes solving different equations.  Change to this directory  
            and read the local 'readme' file for further information on 
            files in that directory.

stag     -> Sub-directory, containing a code for solving the two-dimensional,
            steady Navier-Stokes equations using Finite-Volume
            method and Cartesian structured grids with a staggered
            arrangement of variables. Change to this directory  
            and read the local 'readme' file for further information on 
            files in that directory.

2dgl     -> This subdirectory contains the codes for solving the
            laminar two-dimensional Navier-Stokes equations (steady or 
            unsteady) using Finite-Volume method and non-orthogonal 
            structured grids with a colocated arrangement of variables.
            H-, O- and C-grids can be used, with multiple grid levels.
            Three subdirectories exist:
 
            sg  -> This sub-directory contains two single-grid versions
                   of the code: in one, the grid-nonorthogonality and
                   non-smoothness are specially accounted for when
                   solving the pressure-correction equation and when
                   computing the gradients, and in the other version not.
                   The solution from one grid level serves to initialize
                   the iterations on the finer grid.

            mg  -> This sub-directory contains the version of the above
                   code with multigrid acceleration of outer iterations.

	    CaffaMove.tar.gz -> This sub-directory contains a single-grid version
	    	   of the above code extended to allow for moving grids
		   and boundary conditions with specified pressure
		   (packed with tar and gzip-ed; after
		   download do:

 		gunzip CaffaMove.tar.gz
		tar xvf CaffaMove.tar

		to recover directory 'CaffaMove')

            More information is available in the readme-files in these
            sub-directories.

2dgt     -> This subdirectory contains the codes for solving the
            RANS-equations using Finite-Volume method and non-orthogonal 
            structured grids with a colocated arrangement of variables.
            H-, O- and C-grids can be used, with multiple grid levels.
            Two subdirectories exist:
 
            keps  -> This sub-directory contains the version of the above
                     mentioned code with the k-epsilon model of turbulence
                     (for high Reynolds numbers) with wall functions.

            komega -> This sub-directory contains the version of the above
                     mentioned code with the k-omega model of turbulence
                     (for high Reynolds numbers) with wall functions.

            More information is available in the README file in this
            directory. 


The files in the following directories contain codes that have been written
and used in the past; they do not comply with the notation and algorithms
described in the book completely and will be edited in the future. See
readme-files in these sub-directories for information on latest updates.

3dc      -> Sub-directory, containing codes for solving the three-dimensional
            Navier-Stokes equations (steady) using Finite-Volume
            method and Cartesian grids with a colocated arrangement of
            variables. Change to this directory
            and read the local 'readme' file for further 
            information on files in that directory.

parallel -> Sub-directory, containing a parallelized version of the code
            for solving 2D steady Navier-Stokes equations on Cartesian
            grids with a colocated arrangement of variables using PVM
            message-passing software. Change to this directory  
            and read the local 'readme' file for further information on 
            files in that directory.

As already indicated above, each sub-directory contains a readme-file
with detailed information about files in that directory. Where indicated,
new versions of files will be included in the future.

The codes provided here are intended to demonstrate the implementation
of the algorithms described in the book. They can be useful to learn and
demonstrate the use of numerical solution techniques; students may be
given tasks to modify these codes by implementing different discretization
or solution methods, or different boundary conditions. The updated codes are
written so that the algorithm is implemented in a most straight-forward
way, and that it is easy to recognize the equations from the book; they
can be re-arranged to be more efficient or shorter. Also, these codes
might serve as starting point for developers of new solution methods,
or of solution methods for different problems. For example, although
written for a single-block structured grid, the codes in the directories
2dgl and 2dgt can easily be extended to block-structured or unstructured
grids, both two- and three-dimensional. This is not attempted here since
the codes needed to generate such grids are far more difficult to write
than the extension of the flow solver; if an appropriate grid generator 
is available, the extension of the flow solver is relatively easy (some
instructions are included as comments in one of the codes in directory
2dgl).

CometSoft.tar.gz -> This directory (packed with tar and gzip-ed; after
	download do:

	gunzip CometSoft.tar.gz
	tar xvf CometSoft.tar

	to recover directory 'CometSoft') contains commercial software package
	'Comet', provided by Computational Dynamics Ltd. It is a full-feature
	commercial code, which differs from the commercial version by the
	limit in the number of control volumes that can be used (20000) and
	by the fact that user coding is not possible. The code is compiled for
	use on Linux PCs; versions for other hardware platforms may become
	available in the future. Also included is the full documentation in
	pdf-format, and some sub-directories containing example test cases.
	The number of subdirectories including test cases
	will grow in time, as we intend to cover all types of flow (creeping,
	separated, unsteady, turbulent, compressible, free-surface etc.).
	This materail is subject to restrictions regarding its use (only
	for teaching and research); see readme-file in this directory for
	further details.


For more information on these and other codes, interested readers may
contact:

milovan@cd.co.uk
