This appendix collects a few useful sources of information. Special thanks to Philippe-Andre Tetrault for adding the actual links to the information sources. We include general numerical analysis programs, sources of aerodynamics codes, and places to look on the net for additional information.

A number of sources of numerical analysis subroutines are available at reasonable prices. Some are even free. Other numerical methods subroutines are expensive.

The standard source for numerical algorithms is netlib. The following information should help you get started using this resource:

*Finding Numerical Analysis Software on the Web* (from Tony Giunta)

The Netlib software repository is maintained by the Department of Energy's Oak Ride National Lab and the University of Tennessee at Knoxville. The software libraries in Netlib, provide computational tools, in the form of subroutines, to perform various mathematical and numerical analysis operations. Some of the packages of particular interest to engineers are LAPACK (linear algebra) and EISPACK (eigenvalue, eigenvector analysis). The software libraries come in a variety of languages. For example, LAPACK and CLAPACK libraries contain the same linear algebra routines in FORTRAN and C, respectively. Also, there are a number of libraries for C++, High-Performance FORTRAN (HPF), and FORTRAN90 subroutines, as well as parallel processing routines such as PVM and MPI.

The web site for Netlib provides a useful search tool which is the second item listed on the Netlib homepage. The directions on this home page indicate how to search for items of interest.

Note: Often, a particular subroutine uses a number of other Netlib routines in its calculations. Netlib gives the user the choice of downloading only the single subroutine or the subroutine and its dependencies. Usually it is a good idea to download all of the files unless the user is sure that only the single routine is needed.

*Numerical Methods and Software*, by David Kahaner, Cleve Moler and
Stephen Nash,
Prentice Hall, Englewood Cliffs, 1989.

This book comes with a disk containing a good collection of subroutines. These are actually comprehensive commercial grade subroutines that come from the standard public domain libraries. They are much larger routines than those in the Numerical Recipes book. Because they are much more comprehensive, I've found them to be slightly harder to use because they rely on numerous other subroutines, and collecting them sometimes takes more time. However, they also work very well. Because they are based on public domain programs, as far as I can tell, they can be distributed with your own programs without getting permission.

*Numerical Recipes in FORTRAN, The Art of Scientific Computing,* Second Edition
by William H. Press, Saul A Teukolsky, William T. Vetterling, and Brian P. Flannery,
Cambridge University Press, Cambridge, 1992.

This is the book most students use. It is available online in PostScript or Adobe Acrobat format. It contains listings of subroutines implementing the methods (recipes). The routines are brief, intended to illustrate the methods, and are not necessarily meant to be general purpose subroutines. However, my experience with them is good. Professional numerical analysts don't approve of using these routines, so be careful. Also, you cannot use them in codes you distribute. This is probably because the authors know the routines are not really a professional programming product. A disk with the programs is available for an additional cost, as is a small paperback book containing examples of the use of the programs. An edition of the book with the routines in the C language is also available, as well as an example book and disk. I have found these sources to be easy to use.

*Elementary Numerical Analysis,* by S.D. Conte and Carl de Boor,
McGraw-Hill, New York, 2nd Ed., 1972.

This book has a number of good computer routines, including root finding, solution of equations, systems of linear algebraic equations, ordinary differential equations, quadrature and interpolation (splines).

*SLATEC*

This is a library of programs available electronically that are public domain. The authors of Numerical Recipes recommend the use of these routines for distribution. Once again, all the public domain libraries are closely related. However, there are not directly interchangeable, and you must be careful to not get them mixed up. SLATEC is very large.

>From the Numerical Recipes people: "If you are looking for public domain numerical software that can be redistributed freely (as Numerical Recipes *cannot*), you should look at the collections that can be obtained from NETLIB. We also recommend SLATEC as a good alternative to the commercial, and therefore restrictively licensed IMSL and NAG libraries."

The SLATEC library, a comprehensive collection of over 1400 mathematical and statistical routines, may be of particular interest.t

Also from the Numerical Recipes gopher site, by W. Press:

The SLATEC Common Mathematical Library is an extensive public-domain FORTRAN source code library consisting of 1400 routines and 300,000 lines of code and documentation. It is developed and maintained by a consortium of Department of Energy and Department of Defense national laboratories. Version 4.0 of the library was released in December, 1992. It incorporates within itself several other public domain packages, including EISPACK, FFTPACK, QUADPACK, FNLIB, BSPLINE, SLAP, and others. It is distributed by

National Energy Software Center

9700 Cass Ave

Argonne, Illinois 60439

All questions about the library should be directed there.

SLATEC's size is a problem. The routines are interconnected. To use a single routine, between 6 and 20 subsidiary routines may be required. As a public service, Numerical Recipes has put together a multiply cross-linked gopher tree. The tree allows the routines and their documentation to be located using gopher, either by subject or name. Most importantly, it allows a routine and its required subsidiary routines to be efficiently downloaded in source code form.

Once in SLATEC, there are several things to remember: (1) Almost all the routines require at least several of the subroutines that have been collected in the file on the top level of the SLATEC directory called "slatec-util.f". Be sure to download this file, compile and link it with any other routines. (2) Documentation for each file (each .f file) is in a similarly-named .hdr file, in the same subject classified subdirectory of the tree. In the SLATEC library as released, the documentation is embedded in each FORTRAN file. (3) When a routine requires additional subsidiary routines, there are links to these routines in a dependencies directory, visible at the same level as the .f file. Example: to use the routine CBESJ (Bessel function of complex argument), you must download the files slatec-util.f (from the top directory), cbesj.f and cbesj.hdr (from the subject directory C10A4), and all the routines in "cbesj_dependencies" (also in C10A4).

See a software review for general codes useful in aerodynamics.

I also have a small set of codes available online.

Many text books contain listings illustrating the methods. They can be a valuable learning tool, although many of the codes were not written by computer scientists, and do not reflect good programming practice (remember they are included with the cost of the book, and thus are essentially free - remember you get what you pay for). In some cases graduate or even undergraduates wrote the programs. Textbooks with code listings:

Joseph A. Schetz, *Boundary Layer Analysis*,
Prentice Hall, Englewood Cliffs, 1993.

- WALZ: The Thwaites-Walz integral method for laminar boundary layer flows
- ILBLE: Explicit 2D Incompressible Laminar Boundary Layer Flows
- ILBLI: Implicit 2D Incompressible Laminar Boundary Layer Flows
- CLBL: Implicit numerical method, 2D Compressible Laminar Boundary Layer Flows
- MOSES: The Moses integral method for 2D incompressible turbulent flows
- ITBL: Incompressible Turbulent Boundary Layer, three turbulence models available:
- 1. mixing length model,
- 2. eddy viscosity model,
- 3. TKE model.

- ITBLS: Incompressible Turbulent Boundary Layers with stretched normal
grid spacing. The Reichardt-Clauser eddy viscosity combination is used for
the turbulence model.

- JETWAKE: Implicit numerical method for turbulent jets and wakes. Either
a mixing length or TKE model are available for modeling turbulence.

Tuncer Cebeci and Peter Bradshaw, *Momentum Transfer in Boundary Layers, *
Hemisphere Publishing Corp, New York,
McGraw-Hill Book Company, 1977.

This book contains FORTRAN programs for:

- solution of Falkner-Skan equations
- Thwaites' method
- Head's method
- block elimination meth. to solve 3rd order ODEs (linear or nonlinear) or parabolic PDE
- thin shear layer equation solution for 2D lam. and turb. incompressible boundary layers

Tuncer Cebeci and Peter Bradshaw, *Physical and Computational
Aspects of Convective Heat Transfer*,
Springer-Verlag, New York, 1984

- laminar and turbulent flows with fully developed velocity profile
- solution of mass, momentum and energy equations for boundary layer flows
- coupled boundary layer flows
- free convection between two vertical parallel plates
- wall jet and film heating
- turbulent free jet
- Head's method

There is also a paperback book which provides supplemental comments on these programs, as well as solutions obtained using them:

Tuncer Cebeci, *Solutions Manual and Computer Programs for Physical and
Computational Aspects of Convective Heat Transfer* by Tuncer Cebeci
and Peter Bradshaw, Springer-Verlag, New York, 1989

Jack Moran, *An Introduction to Theoretical and Computational Aerodynamics, *
John Wiley & Sons, New York, 1984.

- RANKIN Rankine oval
- DUBLET symmetric airfoil at zero angle of attack by doublet distribution JOUKOWQ shape & pressure distribution on symmetric Joukowski airfoil at zero a
- PANEL Hess-Smith panel method solution for incompressible inviscid airfoil flow
- VORLAT vortex lattice method for flat unswept wing
- INTGRL integral boundary layer calculation
- Thwaites' method for laminar flow
- Michel's method for transition estimation
- Head's method for turbulent boundary layer

- LINBVP finite difference method solution of the Sturm-Liouville problem
- THINAIR finite difference solution via SOR of Laplace's Eqn. over a biconvex airfoil
- HEATX explicit solution of 1-D heat equation
- CRAKN Crank-Nicolson solution of 1-D heat equation
- FALKSK finite difference solution of similarity solution of Falkner-Skan equation
- FSKBOX Keller box method solution of the Falkner-Skan equation
- BDYLAY laminar boundary layer equations for arbitrary pressure gradient.
- TSDE finite difference solution of the transonic small disturbance equation

Joseph Katz and Allen Plotkin, *Low-Speed Aerodynamics: From Wing Theory to Panel
Methods,*
McGraw-Hill, Inc., 1991 Fourteen programs are in an appendix:

Two-dimensional panel methods

- 1. Grid Generator for van de Vooren airfoil shapes, includes velocity and pressure distributions

Two-dimensional panel methods based on Neumann BC

- 2. constant strength source method
- 3. constant strength doublet method
- 4. constant strength vortex method
- 5. linear strength source method
- 6. linear strength vortex method

Two-dimensional panel methods based on Dirichlet BC

- 7. constant strength doublet method
- 8. constant strength source/doublet method
- 9. linear strength doublet method
- 10. quadratic strength doublet method

Three-dimensional programs

- 11. Influence of a 3D constant strength source/doublet element
- 12. 3D vortex lattice method for rectilinear lifting surfaces (with ground effect)

Time Dependent Programs:

- 13. sudden acceleration of a flat plate at angle of attack
- 14. unsteady motion of a thin rectangular lifting surface (extension to program 12)

C.B. Stribling, *BASIC aerodynamics*, Butterworths, London, 1984.

This book has listings of programs in BASIC, from the days way when BASIC was the primary language available on personal computers.

- ATMOS:atmospheric calculations
- AIRSPEED: calculation of true airspeed and other related parameters
- SPHDRAG: drag of a sphere
- BALCAL: calibration of a three component wind tunnel balance
- STRFUNC: evaluation of a streamfunction
- STRCOORDS: streamlines of a source in a uniform stream
- CYLCIRC: cylinder with circulation in a uniform stream
- TRANSTRIP: positioning of wind tunnel transition strip
- BOUNCALC: the reduction of experimental measurements of a boundary layer velocity profile
- PLATEDRAG: the investigation of conditions in a flat plate boundary layer which is partly laminar and partly turbulent
- POHLHAUSEN: use of a Pohlhausen velocity profile to calculate conditions in a laminar boundary layer with a specified external velocity gradient
- TUNRESULT: the reduction of wind tunnel lift, pitching moment and incidence results
- JOUVELPRE: the calculation of fluid speeds and pressure coefficients on the surface of a Joukowski aerofoil with circulation at zero incidence
- SOURPANL: the representation of a cylinder by a regular polygon of source panels.
- THINAERO: the use of thin aerofoil theory to determine the aerodynamic properties of aerofoil sections with prescribed camber lines
- BIRDDRAG: calculation of the induced drag of birds flying in formation
- DOWNWASH: investigation of the downwash field behind an aircraft wing in the wing's plane of symmetry
- MONOPLEQN: calculation of the lift and induced drag coefficients, and the spanwise loading distribution of a specified wing, using the monoplane equation
- VORLAT: application of the vortex lattice method to the calculation of lifting properties of a swept wing
- DELTAWING: an investigation of the lift and drag characteristics of a slender delta wing at low Mach number
- FLOWDUCT: calculation of gas properties in compressible isentropic flow duct
- MACHMETER: tabulation of corresponding values of Mach number and pressure ratio in the calibration equation of the Machmeter
- DOUBLEWED: a comparison of supersonic aerofoil theories
- TIPEFFECT: calculations on the pressure distribution within the tip Mach triangle of a rectangular wing at supersonic speeds

Joe F. Thompson, Z.U.A. Warsi, and C. Wayne Mastin,
*Numerical Grid Generation: Foundations and Applications, *
Elsevier Science Publishing Co., New York, 1985.

Model programs are included for:

- vertical interpolation
- horizontal interpolation
- tensor product interpolation
- transfinite interpolation
- hermite cubic interpolation
- hyperbolic tangent interpolation
- elliptic grid generation
- attraction to coordinates

Patrick Knupp and Stanly Steinberg, *Fundamentals of Grid Generation*,
CRC Press, Boca Raton, 1993.

This book comes with a disk containing examples of the methods covered in the book.

C.A.J. Fletcher, *Computational Techniques for Fluid Dynamics*,
Springer-Verlag, Berlin, 1988.

Volume I, *Fundamental and General Techniques*

- DIFF: transient heat conduction (diffusion) problem
- FIVOL: finite volume method applied to Laplace's equation
- STURM: computation of the Sturm-Liouville equation
- DUCT: viscous flow in a rectangular duct
- NEWTON: flat-plate collector temperature analysis
- NEWTBU: two-dimensional steady Burgers' equation
- FACT/SOLVE solution of dense systems
- BANFAC/BANSOL narrowly banded Gauss elimination
- DIFEX numerical results for explicit schemes
- DIFIM: numerical results for implicit schemes
- TWDIF: generalized finite difference/finite element implementation
- TRAN: convection of a temperature front
- THERM: thermal entry problem
- BURG numerical comparison
- TWBURG: numerical solution

Volume II, *Specific Techniques for Different Flow Categories*

- LAGEN: generalized coordinate Laplace's equation
- ALGEM: grid generation for a streamlined body
- PANEL: numerical implementation of a panel method
- SHOCK: propagating shock wave computation
- FCT: propagating shockwave by an FCT algorithm
- LAMBL: laminar boundary layer flow
- DOROD: turbulent boundary layer flow
- THRED: thermal entry problem

Arnold M. Kuethe and Chuen-Yen Chow, *Foundations of Aerodynamics*,
John Wiley & Sons, New York,
Fourth Edition, 1986. The fourth edition
of this book has two listings of programs, in FORTRAN.

- AIRFOIL: a linearly varying vortex panel code method
- FNTWING: solution of the monoplane equation of lifting line theory

R.I. Lewis, *Vortex Element Methods for Fluid Dynamic Analysis of Engineering
Systems*,
Cambridge University Press, Cambridge. These routines are in Pascal:

- 1.1 flow Past a circular cylinder including surface velocity, comparison with exact solution
- 1.2 flow past a circular cylinder by the Douglas-Neumann source panel method
- 1.3 flow past an ellipse, including surface velocity comparison with exact solution and streamline pattern
- 2.1 calculation of flow past a cylinder with bound circulation
- 2.2 flow past an ellipse with prescribed bound circulation
- 2.3 potential flow past an airfoil
- 2.4 potential flow through a turbomachine cascade
- 4.1 calculation of complete elliptic integrals of the first and second kinds
- 4.2 flow past a body of revolution
- 4.3 flow past an axisymmetric cowl or duct
- 4.4 flow through a contraction or diffuser
- 4.5 flow past a body of revolution in a uniform stream
- 5.1 potential flow through an engine intake sucked from downstream by a cylindrical duct and located in a uniform stream (pipe flow test rig).
- 5.2 potential flow through a free-vortex ducted propeller in a uniform stream
- 8.1 program for experimentation with convection of vortex clouds.
- 9.1 program to generate a set of random numbers and sort them.
- 9.2 diffusion of a point vortex

This is a short list of vendors. Future versions of this appendix will contain more listings. Students should realize that some of these codes are not student programs and are (very) expensive by student standards.

AeroSoft, Inc.

1872 Pratt Drive, Suite 1275

Blacksburg, VA 24060-6363

Phone (540) 231-6125, FAX (540) 231-6137

AeroSoft sells GASP (General Aerodynamic Simulation Program), a general purpose flow solver. Primarily developed for hypersonic analysis, a particular strength is the capability to handle finite rate chemistry. However, the code can treat steady and unsteady flows across the Mach range.

Analytical Methods, Inc.

2133 - 152nd Avenue N.E.

Redmond, WA, 98052

Phone (206) 643-9090, FAX (206) 746-1299

AMI sells a number of codes. They include

- VSAERO, a panel method that has been developed over many years
- USAERO, an extension of VSAERO, computes unsteady aero for arbitrary motion
- ICE, calculates particle trajectories near aircraft for use in icing and sand-ingestion
- HOVER and ROTAIR, helicopter rotor hover and climb aerodynamic performance
- MGAERO, a 3D Euler method for arbitrary configurations
- OMNIPLOT, OMNI3D, post processing programs for use with AMI codes
- RANSTERN, 3D Reynolds Averaged Navier Stokes code, incompressible (Iowa)
- XFOIL and ISES, Mark Drela's airfoil design and analysis codes. (MIT)
- ZAP2D, potential flow/Navier-Stokes code for 2D airfoil analysis (uses ARC2D)

Desktop Aeronautics

P.O. Box 9937

Stanford, CA 94305

Phone (415) 424-8588

These are the codes by Ilan Kroo. Currently they run on Macintosh computers, but some are available for IBM PCs. Programs currently available include:

- LinAir 1.4 - Multiple Lifting Surface Analysis Program ($200), LinAir Pro ($950). These codes treat complete configurations in subsonic flow, using a discrete Weissinger method. They include profile drag integration and Trefftz-plane induced drag calculation. They handle wing canard, aft tail, and winglet configurations. The Pro version includes asymmetric aircraft or sideslip, roll, pitch, and yaw rates, and nearfield drag calculations.
- PANDA: Program for Analysis and Design of Airfoils ($175). Subsonic, including compressibility effects via Karman-Tsien rule. Includes an integral boundary layer calculation for laminar and turbulent flow. A design option permits interactive change of airfoil geometry and display of the new pressure distribution.
- Wing Design ($50), for quick computation and plotting of lift and Cl distributions on swept, tapered, twisted wings. Wing geometry changes effects on lift, drag, moment, and load distribution are found rapidly.
- SAND-Simulation of Aircraft Nonlinear Dynamics($200). Six degree of freedom time history computation. Interactive specification of control deflections, time and position dependent wind, and built in plotting are included. User supplied subroutines for computation of nonlinear aerodynamics and/or control laws can be included (requires Absoft FORTRAN). Linear dynamics analysis displays root-locus plots.
- Aircraft Design Workshop ($295). Developed as an interactive museum exhibit, using a simple expert system to help the user meet field length, climb, range, and thrust constraints. University site licenses are available.

Public Domain Aeronautical Software

300 Potrero St.

Santa Cruz, CA 95060

(408) 454-9754

e-mail: ralph@pdas.com

Ralph Carmichael, who was there at the beginning as a NASA Engineer, is selling a number of programs developed under NASA funding on a CD rom. They are ready to run under MS-DOS or Windows, and come with complete source codes, descriptions, and sample cases (both input and output. The latest release is version 2.0, and sells for $150. I have used version 1.0, and had no problem running the codes on a Mac. This is a very good deal. The Applied Computational Aerodynamics Text discusses the basic theory used in these programs. Version 2.0 contains:

- Low order panel code aerodynamics (Woodward)
- High order panel code aerodynamics (PanAir)
- Supersonic wave drag by the area rule (Harris)
- Fluid mechanis programs for Education (Benson)
- Induced drag from sparse span loading (Lundry)
- Wing shape for minimum induced drag (VLMD, Lamar)
- Characterisitcs of the standard atmosphere (U.S. Std. 1976)
- Turbulent skin friction (Sommer & Short)
- Coordinates of NACA Airfoils (Ladson & Brooks)
- Perspective views with hidden line removal (Hedgley)

AeroLogic

1613 Altivo Way

Los Angeles, CA 90026

(213) 665-1397

(213) 953-8378 fax

AeroLogic sells the Personal Skunk Works system of codes. There are three principal components, Loftsman/P, Cmarc, and Postmarc. Loftsman is the lofting program used to develop the geometry. Cmarc is a low order panel method. It is based on the NASA Ames program PMARK, but re-written in C and setup for use on PCs. Postmark is the graphics postprocessor for Cmarc (or PMARC). This system is designed for professional use, but educational rates are available.

DARcorporation

120 East 9th Street, Suite 2

Lawrence, KS 66044

1-800-327-7144

(913) 832-0524

(913) 832-0524 fax

Although Professor Roskam's company is mainly known for aircraft design and stability and control materials, they are now selling a number of aerodynamics oriented programs, including stability and control derivative estimation software, and drag estination software. These codes are available for the Windows operating system. I have not run these codes personally, but I have seen their aircraft design code, AAA, demonstrated on unix systems, and it suggests that these codes would be good.

CFD Research Corporation

3325 Triana Blvd

Huntsville, AL 35805

Phone (205) 536-6576, FAX (205) 536-6590

*Several books are available online: *

*Numerical methods for 1D compressible flows*, an interactive book, by M. Manzini, CRS4, Cagliari, Italy.*Modern Numerical Methods for Fluid Flow*, by Phillip Colella UC Berkeley, and Elbridge Gerry Puckett, UC Davis- This book is available through at ftp://watt.berkeley.edu/e266/. The .ps files are standard postscript.