CAtxt App A
CAtxt App A
Preface
Objectives
These notes are intended to fill a significant gap in the literature available to students. There is a huge disparity
between the aerodynamics covered in typical aerodynamics courses and the application of aerodynamic theory to
design and analysis problems using computational methods. As an elective course for seniors, Applied
Computational Aerodynamics provides an opportunity for students to gain insight into the methods and means by
which aerodynamics is currently practiced. The specific threefold objective is: i) physical insight into
aerodynamics that can arise only with the actual calculation and subsequent analysis of flowfields, ii)
development of engineering judgment to answer the question �how do you know the answer is right?� and
iii) establishment of a foundation for future study in computational aerodynamics; exposure to a variety of
methods, terminology, and jargon.
Two features are unique. First, when derivations are given, all the steps in the analysis are included. Second,
virtually all the examples used to illustrate applied aerodynamics ideas were computed by the author, and were
made using the codes available to the students. The exercises are an extremely important component of the
course, where parts of the course are possibly best presented as a workshop, rather than as a series of formal
lectures. To meet the objectives, many �old fashioned� methods are included. Using these methods a
student can learn much more about aerodynamic design than by performing a few large modern calculations. For
example (articulated to the author by Prof. Ilan Kroo), the vortex lattice method allows the student to develop an
excellent mental picture of the flowfield. Thus these methods provide a context within which to understand Euler
or Navier-Stokes calculations.
Audience
We presume that the reader has had standard undergraduate courses in fluid mechanics and aerodynamics. In
some cases the material is repeated to illustrate issues important to computational aerodynamics. Access to a
computer and the ability to program is assumed for the exercises.
Warnings
Computational aerodynamics is still in an evolutionary phase. Although most of the material in the early chapters
is essentially well established, the viewpoint adopted in the latter chapters is necessarily a �snapshot� of the
field at this time. Students that enter the field can expect to use this material as a starting point in understanding
the continuing evolution of computational aerodynamics.
These notes are not independent of other texts. At this point several of the codes used in the instruction are based
on source codes copyrighted in other sources. Use of these codes without owning the text may be a violation of
the copyright law.
The traditional printed page is inadequate and obsolete for the presentation of computational aerodynamics
information. The reader should be alert to advances in information presentation, and take every opportunity to
make use of advanced color displays, interactive flowfield visualization and virtual environment technology.
Acknowledgements
Many friends and colleagues have influenced the contents of these notes. Specifically, they reflect many years
developing and applying computational aerodynamics at Grumman, which had more than its share of top flight
aerodynamicists. Initially at Grumman and now at VPI, Bernard Grossman provided access to his as yet
unpublished CFD course notes. At NASA, many friends have contributed help, insight and computer programs.
Nathan Kirschbaum read the notes and made numerous contributions to the content and clarity. Several classes of
students have provided valuable feedback, found typographical and actual errors. They have also insisted that the
notes and codes be completed. I would like to acknowledge these contributions.
W.H. Mason
An electronic version of the class notes for AOE 4114, Applied Computational Aerodynamics. Portions are also
used for AOE 4984, Configuration Aerodynamics. Comments are welcome, and in fact encouraged.
This is a work in progress (for over 6 years!). Starting in 1997, the material is being made available electronically
using a hybrid html/acrobat approach. It appears most practical to provide a top page in html, while allowing
students to download individual sections as Adobe Acrobat files. The emphasis is on subject mater, and not the
multimedia framework. I have not yet been able to devote the time required to produce a modern electronic
document. Also, some equations and figures may not print perfectly. Much of the material was created before the
current methods and standards existed. The entire outline is provided, although not all sections are available for
download yet. In some cases copyright permission has not been obtained for figures, and thus, some figures are
not yet available. Chapters and Appendices will be added as they are available.
The documents are provided in an even/odd page format so they can be copied to both sides of the paper in the
hardcopy version. This allows them to fit in a notebook.
Some codes are available in FORTRAN. They have very crude user interfaces, the manuals even refer to card
input! In most cases, much more modern versions are available.
Preface (html)
A library of airfoils for use with the codes is available, either as a Zip file or as a Stuffit file. See
Appendix A for the airfoil names associated with each filename.
These notes were produced exclusively with Macintosh technology. They were written on Macintosh computers.
Word processing was done with FullWrite Professional and WriteNow. Sketches and drawings were done with
Canvas. Equations were composed using MathType. Plots and Graphs were made using Kaleidagraph.
Computing for examples was carried out using Language Systems FORTRAN running in the Apple Macintosh
MPW shell.
7/12/01 B-1
B-2 Applied Computational Aerodynamics
7/12/01
Appendix B: Data Sources B-3
Kelly, John A., and Hayter, N-L, F., “Lift and Pitching Moment at Low Speeds of the NACA
64A010 Airfoil Section Equipped with Various Combinations of Leading Edge Slat, Leading
Edge Flap, Split Flap and Double-Slotter Flap,” NACA TN 3007, Sep. 1953. (no drag or
pressure distributions)
Other data sources:
Bertin and Smith, 1st edition , page 102-102, NACA 4412, pressure distribution, 2nd edition:
pg 201-202, 3rd edition: pg 221-222 (from Pinkerton, NACA R 563, 1936, but WATCH
OUT! This data is not what you might think. See NACA R-646 for true 2-D data!)
Hurley, F.X., Spaid, F.W., Roos, F.W., Stivers, L.S., Jr., and Bandettini, A., “Supercritical
Airfoil Flowfield Measurements,” AIAA Paper No. 75-880, June 1975.
Three-Dimensional Data Sources
Elementary body geometries: There were many tests conducted by the NACA using geometries
that are simple to model. Similar tests were also done in the early days of NASA. The NACA
reports were classified at the time, but have been declassified. A sample of cases I’ve used are
included here:
Williams, C.V., “An Investigation of the Effects of a Geometric Twist on the Aerodynamic
Loading Characteristics of a 45° Sweptback Wing-Body Configuration at Transonic Speeds,”
NACA RM L54H18, 1954.
Runckel, J.F., and Lee, E.E., Jr., “Investigation of Transonic Speeds of the Loading Over a
45° Sweptback Wing Having an Aspect Ratio of 3, Taper Ratio of 0.2, and NACA 65A004
Airfoil Sections,” NASA TN D-712, 1961.
Loving, D.L., and Estabrooks, B.B., “Transonic Wing Investigation in the Langley Eight
Foot High Speed Tunnel at High Subsonic Mach Numbers and at a Mach number of 1.2,”
NACA RM L51F07, 1951.
McDevitt, J.B., “An Experimental Investigation of Two Methods for Reducing Transonic
Drag of Swept Wing and Body Combinations,” NACA RMA55B21, April 1955.
Keener, E.R., “Pressure Measurements Obtained in Flight at Transonic Speeds for a
Conically Cambered Delta Wing,” NASA TM X-48, October 1959.
The standard transonic test case: the ONERA M6 wing has been used in practically every
transonic code validation calculation ever published. The data is contained in AGARD AR-
138 cited below.
Supercritical Wings:
Harris, C.D., and Bartlett, D.W., “Tabulated Pressure Measurements on a NASA
Supercritical-Wing Research Airplane Model With and Without Fuselage Area-Rule
Additions at Mach 0.25 to 1.00,” NASA TM X-2634, 1972.
Harris, C.D., “Wind-Tunnel Measurements of Aerodynamic Load Distribution on a NASA
Supercritical-WIng Research Airplane Configuration,” NASA TM X-2469, 1972.
Montoya, L.C., and Banner, R.D., “F-8 Supercritical Wing Flight Pressure, Boundary Layer
and Wake Measurements and Comparisons with Wind Tunnel Data,” NASA TM X-3544,
March 1977.
Hinson, B.L., and Burdges, K.P., “Acquisition and Application of Transonic Wing and Far-
Field Test Data for Three-Dimensional Computational Method Evaluation,” AFOSR-TR-80-
0421, March 1980, available from DTIC as AD A085 258. These are the Lockheed Wings A,
B, and C.
Keener, E.R., “Pressure Distribution Measurements on a Transonic Low-Aspect Ratio
Wing,” NASA TM 86683, 1985. (this is the so-called Lockheed Wing C)
7/12/01
B-4 Applied Computational Aerodynamics
7/12/01
Appendix B: Data Sources B-5
7/12/01
B-6 Applied Computational Aerodynamics
AGARD AR-303, “A Selection of Experimental Test Cases for the Validation of CFD
Codes,” Aug. 1994. (in two volumes)
By now the data is much more elaborate, and there are many more cases.
A - Airfoil cases (13)
B - Wing-fuselage (6)
C - Bodies (6)
D - Delta wing class (5)
E - Aero-Propulsion/Pylon/Store (9)
The data is available on floppy disks. The Virginia Tech Library has this data in the media
center. According to the report the data is available from the NASA Center for Aerospace
Information, 800 Elkridge Landing Road, Linthicum Heights, MD 21090-2934. Contact:
NASA Access Help Desk, (301) 621-0390, fax: (301) 621-0134. However, I’m not sure
that this procedure actually worked when we tried it.
7/12/01
Appendix C Preparation of Written Material
Effective engineering requires good communication skills. Documentation and presentation of
results are two important aspects of computational aerodynamics. This requires good use of both
text and graphics. This appendix provides guidelines for student aerodynamicists. The first
impression you make on the job is extremely important. Learn and practice good written
communication. That is the way bosses “up-the-line” will see your work. You cannot do good
written work without practice. This is especially true in aerodynamics, where good plots are
crucial. You can’t play in the band or on the basketball team without developing skills through
practice. It is even more important to a career to develop good graphics skills while you are in
school.
Text: Analysis and calculations must be documented with enough detail to settle any question
that arises long after the calculations are made. This includes defining the precise version of the
code used, the configuration geometric description, grid details, program input and output. Often
questions arise (sometimes years later) where the documentation is insufficient to figure out with
certainty exactly what happened. Few of us can remember specific details even after a few
months, and particularly when being grilled because something doesn’t “look right” (this is the
situation when the flight test data arrives). Two personal examples from wind tunnel testing
include inadequate documentation of the exact details of transition fixing and the sign
convention for deflection of surfaces (at high angle-of-attack it may not be at all obvious what
effect a “plus” or “minus” deflection would produce on the aerodynamic results). Good
documentation is also crucial since a typical set of computations might cost many hundreds of
thousands of dollars, and the results might be examined for effects that weren’t of specific
interest when the initial calculations were made. An unfortunate, but frequent, occurrence in
practice is that the time and budget expire before the reporting is completed. Since the report is
done last, budget overruns frequently result in poor final documentation. It is best if the
documentation can be put together while the computations are being conducted. Computational
aerodynamics work should copy wind tunnel test procedures and maintain a test notebook. This
approach can minimize the problem.
When writing a memo describing the results be accurate, neat and precise. In a page or two,
outline the problem, what you did to resolve it, and your conclusion. What do the results mean?
What are the implications for your organization? Provide key figures together with the
description of how you arrived at your conclusion. Additional details should be included in an
appendix, possibly with limited distribution. When writing your memo or report provide
specifics, not generalities, i.e., rather than “greater than,” say “12% greater than.” What do the
results mean? When writing the analysis, do not simply provide tables of numbers and demand
10/27/97 C-1
C-2 Applied Computational Aerodynamics Spring 1998
that the reader do the interpretation. You must tell the reader exactly what you think the results
mean. The conclusion to be drawn from the each figure must be precisely stated. Providing
computer program output and expecting someone else (your boss or your teacher) to examine
and interpret the results is totally unacceptable. This is the difference between an engineer and
an engineering aide.
Plots and Graphs: To make good plots using the computer, you must understand how a plot
is supposed to be made. Hand plotting defines the standards. When plotting by hand use real
graph paper. For A size (8 1/2 x 11) plots this means K&E* Cat. No. 46 1327 for 10x10 to the
half inch, and an equivalent type for 10x10 to the centimeter. There is an equivalent catalog
number for B size paper.** This is Albanene tracing paper. It is the paper that was actually used
in engineering work, and it’s expensive. The University Bookstore will stock this graph paper
until it’s no longer available (I think they keep it separated, stored under my name). You should
use it carefully, and not waste it. With high quality tracing paper, where the grid is readily visible
on the back side, you plot on the back. This allows you to make erasures and produces a better
looking plot. Orange graph paper is standard, and generally works better with copy machines,
especially when you plot on the back. Before computer data bases were used, tracing paper
allowed you to keep reference data on a set of plots and easily overlay other results for
comparison (remembering to allow for overlay comparisons by using the same scale for your
graphs).
Always draw the axis well inside the border, leaving room for labels inside the border of the
paper. Labels should be well inside the page margins. In reports, figure titles go on the bottom.
For overhead presentations, the figure titles go on the top. Data plots should contain at least:
*
This paper is very high quality paper. With computers replacing hand plotting, this paper is being
discontinued by K&E. Most art supplies stores (sometimes erroneously also claiming to be engineering
supply stores) don’t stock good graph paper. Cheap paper will not be transparent, preventing easy tracing
from one plot to another.
**
Wind tunnel data, especially drag polars, are often plotted on B size paper (11 x 17).
10/27/97
report typos and errors to W.H. Mason Appendix C: Preparation of Material C-3
increment that is an even multiple of 1, 2 or 5. For example, 10, 0.2, 50 and 0.001 are all good
increments between major ticks because it makes interpolation between ticks easy. Increments of
40, 25, 0.125 and 60 are poor choices of increments, and don’t obey the 1,2, or 5 rule. The
Boeing Scale Selection Rules chart illustrates the rule, and our version of it* is included as Fig.
C-1. Label plots neatly and fully. Use good line work. In putting lines on the page, use straight
edges and ship’s curves to connect points, no freehand lines. Ship’s curves and not French
curves are used by aeronautical engineers when working with force and moment data. Some
engineering supply catalogs call them aeronautical engineering curves. Today, pressure
distributions are usually plotted directly by computer software because of the density of data.
The University Bookstore stocks at least the most common size ship’s curve. As a young
engineer, I was told that if the wind tunnel data didn’t fit the ship’s curve, the data were wrong.
More often than not this has indeed turned out to be the case!
Drag polars are traditionally plotted with C D on the abscissa or X-axis, and CL on the
ordinate or Y-axis. Moment curves are frequently included with the CL -α curve. Figure C-2
provides an example of typical force and moment data plots. The moment axis is plotted from
positive to negative, also shown in the figure. This allows the engineer to rotate the graph and
examine Cm-Cl in a “normal” way to see the slope. Study the scales on the plot. Also, the drag,
moment, and lift results typically require the use of different scales.
The traditional way to plot data and results of calculations was to use symbols for data, and a
solid line for calculated results. Recently, and very unfortunately, this style has been reversed
when comparing force and moment data. Experimental data may be much more detailed than the
computations, which may have been computed at only one or two angles of attack. Nevertheless,
I object to using lines for data, and believe that the actual data points should be shown. When
comparing pressure distributions, calculations should always be represented by lines, and the
experimental data shown as symbols. Also, recall that in aeronautics Cp is plotted with the
negative scale upward. Figure C-3 provides a typical example of a Cp plot. When connecting
data with curves, they must pass through the data points. Connect complicated data with straight
lines, as shown in Fig. C-4. If the data points are dense, or a theory is used to compare with data,
you don’t need to draw lines between points (curves that don’t go through data points are
assumed to be theoretical results).
More comments on proper plots and graphs are contained in the engineering graphics text, by
Giesecke, eat al. (Ref. C-1). The engineer traditionally puts his initials and date in the lower right
hand corner of the plot. One problem frequently arises with plot labeling. In reports, the figure
titles go on the bottom. On view graphs and slides the figure titles go on the top. Many graphics
*
This “improvement” was conceived by Joel Grassmeyer. It still requires some study.
10/27/97
C-4 Applied Computational Aerodynamics Spring 1998
packages are oriented toward placing the titles on the top. This is unacceptable in engineering
reports. Finally, tables are labeled on the top for both reports and presentations.
Engineering plots made using your computer must be of engineering quality. To do this you
have to understand the requirements given above for hand plots, and should have made enough
graphs by hand to be able to identify problems in the computer generated graphs. For force and
moment data it is often easier to make plots by hand than to figure out how to get your plotting
package to do a good job. Typical problems include poor scale selection, poor quality printout,
not being to invert the axis direction, and inability to print the experimental data as symbols and
the theory as lines. Another problem that arises is the use of color. While color is important, it
presents a major problem if the report is going to be copied for distribution. Most engineering
reports don’t make routine use of color— yet (electronic reports will make color much easier to
distribute).
Reference
C-1 Giesecke, F.E., Mitchell, A., Spencer, H.C., Hill, I.L., Loving, R.O., and Dygdon, J.T.,
Principles of Engineering Graphics, Macmillan Publishing Cop., 1990, pap. 591-613.
0 1
This is a "5"
0 1 2
This is a "2"
0 1 2 3 4 5
This is a "1" Acceptable
This is a "4"
Unacceptable
0 1
10/27/97
report typos and errors to W.H. Mason Appendix C: Preparation of Material C-5
from Grumman Aero Report No. 393-82-02, April, 1982, “Experimental Pressure Distributions and
Aerodynamic Characteristics of a Demonstration Wing for a Wing Concept for Supersonic Maneuvering,”
by W.H. Mason
-0.04
-0.02
CM
0
0.02
14°
12°
10°
Run 23
8°
6°
α
4°
0.4 Sref = 342.11 in 2
Re/ft = 2 x 10 6
cbar = 14.747 in
fixed
2°
0.3 Baseline LE
transistion
M = 1.62
mom ref
0°
X
-2°
0
0.5
0.2
0.1
-0.1
-0.2
CL
10/27/97
C-6 Applied Computational Aerodynamics Spring 1998
from Grumman Aero Report No. 393-82-02, April, 1982, “Experimental Pressure Distributions and
Aerodynamic Characteristics of a Demonstration Wing for a Wing Concept for Supersonic Maneuvering,”
by W.H. Mason
Linear Theory
0.6 Optimum
Baseline Leading Edge
CD0 est = 0.0122
0.5 Test data, Run 23
0.4 CLdes
0.3
CL 550 632 764
0.2 (goal) (WT data)
21% reduction in drag due to lift
0.1
Uncambered Wing, [CLtan(α - α 0)]
0.0
M = 1.62, Re/ft = 2 x 106
cbar = 14.747 in, Sref = 342.11 in2
-0.1 Xmom ref = 16.701 in from wing apex
transistion fixed
-0.2
0.00 0.02 0.04 0.06 0.08 0.10
CD
b) drag polar
10/27/97
report typos and errors to W.H. Mason Appendix C: Preparation of Material C-7
-1.2
NACA 4412 airfoil
α = 1.875°
-0.8 M = .191
Re = 720,000
transition free
-0.4
Cp
0.0
0.4
0.8
Calculated, Pgm PANEL
Test data, NACA R-646
1.2
0.0 0.2 0.4 0.6 0.8 1.0 1.2
x/c
10/27/97
C-8 Applied Computational Aerodynamics Spring 1998
0.010
Math Model
0.008 Canard = 0°
Canard = 20°
0.006
0.004
Cl
β
(per dg.) 0.002
0.000
-0.002
0.0° 30.0° 60.0° 90.0°
-0.004 α
0.004
0.002
0.000
Cn
β -0.002
(per dg.)
-0.004 Math Model
Canard = 0°
-0.006 Canard = 20°
-0.008
10/27/97
Appendix D Computational Aerodynamics
Programs
Several programs are used to provide insight into aerodynamics. This appendix provides the
input instructions.
D.1 PANEL*
D.3 LIDRAG
Computation of the induced drag of a single planar surface given the spanload
distribution. The coefficients of the assumed Fourier Series are computed using a
Fast Fourier Transform. The program was written by Dave Ives, and used in nu-
merous programs developed for the government by Grumman.
D.4 LAMDES
John Lamar’s design program, modified to find the span e for multiple and non-
planar lifting surfaces given the spanload on each surface. This is a more capable
version of LIDRAG. This code also finds the wing camber and twist required to
obtain this spanload at subsonic speeds. The code will also do an optimization
analysis, finding the minimum trimmed drag and spanload required to achieve it.
D.5 FRICTION
Computation of skin friction and form drag using turbulent flat plate skin friction
estimates, and empirical form factors. Provides a basis for zero lift drag estimates.
Includes compressibility effects and the 1977 standard atmosphere.
D.6 VLMpc
John Lamar’s two surface vortex lattice program, developed at NASA Langley.
The program treats two lifting surfaces using up to 200 panels. Vortex flows are
estimated using the leading edge suction analogy.
D.7 DESCAM
The camber line required to produce a specified chord load distribution is comput-
ed using the quasi-vortex lattice method. The method is valid for two dimensional
incompressible flow, and is an original program.
These codes are subject to significant revision, with the objective of becoming entirely indepen-
dent of codes obtained from copyrighted sources, so the students won’t have to own the books to
be able to use them.
D.1 PANEL
This is an interactive program directly from Moran, with modifications to improve computa-
tional speed for multiple angle of attack cases. A sample output that can be used to verify that the
program is working properly is given below.
MORAN: PROGRAM PANEL
INPUT NLOWER,NUPPER
30,30
4412
BODY SHAPE
I X Y
1 1.00000 0.00000
2 0.99721 -0.00002
3 0.98887 -0.00009
4 0.97509 -0.00022
5 0.95603 -0.00041
6 0.93193 -0.00069
7 0.90307 -0.00108
8 0.86980 -0.00162
9 0.83250 -0.00233
10 0.79162 -0.00325
11 0.74760 -0.00441
12 0.70097 -0.00583
13 0.65223 -0.00751
14 0.60193 -0.00942
15 0.55061 -0.01152
16 0.49883 -0.01372
17 0.44715 -0.01592
18 0.39616 -0.01798
19 0.34711 -0.02015
20 0.29972 -0.02250
21 0.25444 -0.02479
22 0.21167 -0.02679
23 0.17183 -0.02825
24 0.13529 -0.02895
25 0.10242 -0.02869
26 0.07358 -0.02732
27 0.04909 -0.02469
28 0.02925 -0.02070
29 0.01432 -0.01529
30 0.00451 -0.00839
31 0.00000 0.00000
32 0.00096 0.00949
33 0.00753 0.01960
34 0.01969 0.03019
35 0.03736 0.04105
2.
PRESSURE DISTRIBUTION
I X Y CP
1 0.9986 0.0000 0.38467
2 0.9930 -0.0001 0.30343
3 0.9820 -0.0002 0.25675
4 0.9656 -0.0003 0.22763
5 0.9440 -0.0006 0.20840
6 0.9175 -0.0009 0.19523
7 0.8864 -0.0014 0.18587
8 0.8512 -0.0020 0.17886
9 0.8121 -0.0028 0.17317
10 0.7696 -0.0038 0.16801
11 0.7243 -0.0051 0.16280
12 0.6766 -0.0067 0.15713
13 0.6271 -0.0085 0.15077
14 0.5763 -0.0105 0.14373
15 0.5247 -0.0126 0.13638
16 0.4730 -0.0148 0.12985
17 0.4217 -0.0170 0.12807
18 0.3716 -0.0191 0.12602
19 0.3234 -0.0213 0.11687
20 0.2771 -0.0236 0.10199
21 0.2331 -0.0258 0.08422
22 0.1917 -0.0275 0.06568
23 0.1536 -0.0286 0.04878
24 0.1189 -0.0288 0.03693
25 0.0880 -0.0280 0.03573
AT ALPHA = 2.000
STOP
INPUT NLOWER,NUPPER
(nupper and nlower MUST be equal, and nupper + nlower MUST be less than 100)
40,40
NU = 38 NL = 38
I X Y dY/dX
+ adds to thickness
- subtracts from thickness
.03
Airfoil modification
I X Y CP U/Ue
1 0.9992 -0.0611 0.41670 -0.7637
2 0.9962 -0.0596 0.51302 -0.6978
3 0.9900 -0.0569 0.60839 -0.6258
4 0.9809 -0.0532 0.63092 -0.6075
5 0.9687 -0.0487 0.60386 -0.6294
6 0.9537 -0.0439 0.57453 -0.6523
7 0.9359 -0.0389 0.57245 -0.6539
8 0.9154 -0.0338 0.57498 -0.6519
AT ALPHA = 2.000
enter file title: GAW 1 airfoil with upper surface mod and trailing edge deflected
STOP
The output disk file generated from the above is given here (for a 44,44 panel case):
GAW 1 airfoil with upper surface mod and trailing edge deflected
Alpha CL cmc4 CD
2.0000 1.8253 -0.3139 -0.0034
90.0000000
X/C Y/C Cp U/UE
1.0000000 -0.0614198 0.4218349 -0.7603717
0.9987261 -0.0608210 0.4894220 -0.7145474
0.9949107 -0.0590636 0.5828183 -0.6458961
0.9885734 -0.0562688 0.6198552 -0.6165588
0.9797465 -0.0526529 0.6121694 -0.6227604
0.9684749 -0.0485395 0.5824285 -0.6461977
0.9548160 -0.0441873 0.5709316 -0.6550332
0.9388395 -0.0396023 0.5742147 -0.6525223
0.9206268 -0.0348995 0.5779232 -0.6496744
0.9002706 -0.0303699 0.5814999 -0.6469159
0.8778748 -0.0262270 0.5949170 -0.6364613
0.8535534 -0.0224278 0.6267794 -0.6109178
0.8274304 -0.0189073 0.7059953 -0.5422220
0.7996389 -0.0159320 0.6026480 -0.6303586
0.7703204 -0.0211078 0.5561817 -0.6661969
0.7396245 -0.0265297 0.4989320 -0.7078615
0.7077075 -0.0324513 0.4452444 -0.7448192
0.6747321 -0.0383475 0.3940417 -0.7784333
0.6408663 -0.0441870 0.3435679 -0.8102050
0.6062826 -0.0496877 0.2998845 -0.8367290
0.5711573 -0.0544341 0.2689947 -0.8549885
0.5356696 -0.0582109 0.2556977 -0.8627295
0.5000000 -0.0609100 0.2539230 -0.8637575
0.4643304 -0.0628407 0.2562625 -0.8624022
0.4288425 -0.0641589 0.2613289 -0.8594598
0.3937173 -0.0649298 0.2692938 -0.8548135
0.3591337 -0.0651852 0.2802141 -0.8484020
0.3252679 -0.0649567 0.2932411 -0.8406895
0.2922925 -0.0642823 0.3083775 -0.8316385
0.2603754 -0.0631488 0.3301547 -0.8184408
Sample input: (from the output of the VLMpc sample case for the B-2, and in the file
B2LDG.INP on the disk))
20.
0.0 0.58435
0.01805 0.58435
0.06388 0.57919
0.11943 0.56800
0.17664 0.55739
0.23385 0.54709
0.30271 0.52459
0.37158 0.48623
0.42713 0.44590
0.48269 0.40097
0.53925 0.36490
0.59581 0.34718
0.65137 0.33280
0.70693 0.31865
0.76248 0.30225
0.81804 0.27971
0.86735 0.24229
0.91667 0.18494
0.97222 0.09480
1.000 0.000
Sample output:
Program LIDRAG
INPUT SPANLOAD
N Y/(B/2) CCLCA
1 0.00000 0.58435
2 0.01805 0.58435
3 0.06388 0.57919
4 0.11943 0.56800
5 0.17664 0.55739
6 0.23385 0.54709
7 0.30271 0.52459
8 0.37158 0.48623
9 0.42713 0.44590
10 0.48269 0.40097
11 0.53925 0.36490
12 0.59581 0.34718
13 0.65137 0.33280
14 0.70693 0.31865
15 0.76248 0.30225
16 0.81804 0.27971
17 0.86735 0.24229
18 0.91667 0.18494
19 0.97222 0.09480
20 1.00000 0.00000
STOP
This is the Lamar design program, LamDes2.f. It can be used as a non-planar LIDRAG to get
span e for multiple lifting surface cases when user supplies spanload. It has also been called the
Lamar/Mason optimization code. It finds the spanload to minimize the sum of the induced and
pressure drag, including canards or winglets. It also provides the associated camber distribution
for subsonic flow. Since two surfaces are included, it can find the minimum trimmed drag while
satisfying a pitching moment constraint.
The program will prompt you for the input file name. A sample input file called lamdes.inp is on
the disk, and the output obtained from this case is included here.
References:
J.E. Lamar, “A Vortex Latice Method for the Mean Camber Shapes of Trimmed Non-Coplanar
Planforms with Minimum Vortex Drag,” NASA TN D-8090, June, 1976.
Input Instructions:
The program assumes the load distribution is constant chordwise until a designated chordwise lo-
cation (XCFW on the first surface and XCFT on the second surface). The loading then decreases
linearly to the trailing edge. This corresponds to a 6 & 6A series camber distribution (the value
for the 6A series is usually 0.8). If airfoil polars are used to model the effects of viscosity, the po-
lars are input in a streamwise coordinate system. The user is responsible for adjusting them from
2D to 3D.
This program uses an input file that is very similar to, but not the same as, the VLMpcv2 code. It
is based on the same geometry and coordinate system ideas. Section D.6 should be consulted for
a discussion of the geometry system.
CONFIGURATION NO. 1.
delta ord shift for moment = -8.0000
qcl qcd
0.0000 0.0000
0.1000 0.0000
0.2500 0.0002
0.3000 0.0008
0.4000 0.0018
0.5000 0.0032
0.5500 0.0040
0.6000 0.0054
0.6500 0.0069
0.7000 0.0088
0.7500 0.0113
0.8000 0.0148
0.8500 0.0198
0.8800 0.0240
0.9150 0.0360
1.0000 0.0880
1.2000 0.2680
1.8000 0.9880
drag polar
qcl qcd
0.0000 0.0003
0.2000 0.0003
0.3000 0.0005
0.4000 0.0008
0.5000 0.0012
0.6000 0.0018
0.7000 0.0024
0.8000 0.0032
0.9000 0.0044
0.9500 0.0053
0.9700 0.0057
0.9900 0.0062
1.0000 0.0065
1.0200 0.0073
1.0400 0.0082
Y CL*C/CAVE C/CAVE CL CD
-61.2000 0.21189 0.33178 0.63862 0.00651
-53.0000 0.33566 0.40510 0.82857 0.01765
-44.8000 0.41311 0.47842 0.86348 0.02166
-37.3500 0.46740 0.54503 0.85757 0.02082
-29.9000 0.49499 0.57498 0.86088 0.02129
-22.9000 0.50260 0.57498 0.87411 0.02317
-15.9000 0.50504 0.57498 0.87835 0.02377
-5.9000 0.50631 0.57498 0.88056 0.02419
second planform
Note this output is repeated for each span station. Most other stations are omitted
FRICTION provides an estimate of laminar and turbulent skin friction suitable for use in aircraft
preliminary design. It is an entirely new program, but has its roots in a program by Ron Hen-
drickson at Grumman. It runs on any computer. The input requires geometric information and ei-
ther the Mach and altitude combination, or the Mach and Reynolds number at which the results
are desired. The skin friction is found using the Eckert Reference Temperature method for lami-
nar flow and the van Driest II formula for turbulent flow. The basic formulas are valid from sub-
sonic to hypersonic speeds, but the implementation makes assumptions that limit the validity to
moderate supersonic speeds (about Mach 3). The key assumption is that the vehicle surface is at
the adiabatic wall temperature (the user can easily modify this assumption). Form factors are
used to estimate the effect of thickness on drag, and a composite formula is used to include the
effect of a partial run of laminar flow. Because the methods aren’t described in detail in the text,
details are provided here.
Laminar flow
The approach used is known as the Eckert Reference Temperature Method, and this particu-
lar version is the one given by F.M. White in Viscous Fluid Flow, McGraw-Hill, New York,
1974, pp. 589-590. In this method the incompressible skin friction formula is used, with the fluid
properties chosen at a specified reference temperature, which includes both Mach number and
wall temperature effects.
First, assumptions are made for the fluid properties:* Prandtl number, Pr = 0.72, Recovery
factor, r = Pr1/2, specific heat ratio, γ = 1.4, and edge temperature, Te = 390 (°R). Then, for a
given edge Mach number, Me , and ratio of wall temperature to adiabatic wall temperature
TW/TAW; compute:
γ −1 2
1 + r
TW T
= W Me
Te TAW 2 .
Remember that
γ −1 2
TAW = Te 1+ r Me
2
and then compute the reference temperature:
T* T
≅ .5 + .039Me2 + 0.5 w
Te Te
CF = 2C f
which comes from
x ′= x
F 1
CF = =
qx x ∫ C f ( x ′ )dx ′
x ′ =0
Recall that CF accounts for one side of the plate only, so that if both sides are required for a drag
estimate, then the skin friction coeficient, CD, is twice CF because the reference area is based on
one side only, i.e., Sref ≈ 1/2 Swet.
Note that the results are not sensitive to the value of edge temperature for low Mach numbers,
and therefore, an exact specification of Te is not required. This method is implemented in sub-
routine lamcf.
Turbulent flow
For turbulent flow the so-called van Driest II Method is employed. This method was selected
based on the recommendation of E.J. Hopkins and M. Inouye, contained in “An Evaluation of
Theories for Predicting Turbulent Skin Friction and Heat Transfer on Flat Plates at Supersonic
and Hypersonic Mach Numbers,” AIAA J., Vol. 9, No. 6, June 1971, pp. 993-1003. The particu-
lar algorithm is taken from NASA TN D-6945, “Charts for Predicting Turbulent Skin Friction
From the Van Driest Method (II),” also by E.J. Hopkins, and dated October 1972.
Again, assumptions are made for the fluid properties: turbulent flow recovery factor, r = .88,
specific heat ratio, γ = 1.4, and edge temperature, Te = 222 (°K). Then, for a given edge Mach
number, Me, and ratio of wall temperature to adiabatic wall temperature TW/TAW the calculation
is started by computing the following constants:
T T T
F = w = w ⋅ AW
Te TAW Te
where
TAW
= 1 + rm
Te
Tw = F ⋅ Te
rm 1/ 2
A=
F
1+ rm − F
B=
F
2A − B
2
α=
( )
1/ 2
4A2 + B2
B
β=
(4 A2 + B2 )
1/ 2
rm
Fc = Me > 0.1
( )
2
sin −1 α + sin −1 β
1 + F 2
= Me ≤ 0.1
2
and
122
1+ ×10−5/ Tw
µ 1 Tw
Fθ = e =
µw F 1+ 122 ×10 −5/ Te
Te
which is the Keyes viscosity law.
Finally,
F
Fx = θ
Fc
The analysis proceeds using barred quantities to denote “incompressible” variables, which are in-
termediate variables not used except to obtain the final results. Given the Reynolds number, Rex ,
Re x = Fx Re x
now solve
= log (Re x CF )
.242
CF
for CF .
Use as an initial guess
.074
CF0 =
Re .20
x .
Then, Newton’s method is applied to the problem:
i+1 i
{ (
.242 − CFi log Re x CFi )}
{ }
CF = CF 1 +
.121 + CFi / ln10
CF
CF =
Fc
Note that this value applies to one side of a plate only, so it must be doubled if the friction on
both sides is desired to account for the proper reference areas. Here again, the results are not sen-
sitive to the value of edge temperature for low Mach numbers, and the default value should be
adequate for most cases. This formula is implemented in routine turbcf.
Composite formula
When the flow is laminar and then transitions to turbulent, an estimate of the skin friction is
available from a composite of the laminar and turbulent skin friction formulas using Schlicting’s
formula (see T. Cebeci and P. Bradshaw, Momentum Transfer in Boundary Layers, McGraw-
Hill, New York, 1977, pp. 187). Given the transition position, xc /L and ReL, compute
x
Re c = c Re L
L
and compute the laminar skin friction based on Rec and the turbulent skin friction twice, based
on both Reynolds numbers and then find the value that includes both laminar and turbulent flow
from:
x
[
CF = CFTURB (ReL ) − c CFTURB (Rec ) − CFLAM (Rec )
L ]
Several formulas are available, are all roughly equivalent, and have been evaluated extensively
for incompressible flow. They are only approximate for compressible flow.
Form factors
To include the effects of thickness, it has been found that the skin friction formulas should be
adjusted through the use of form factors. Two different factors are used in this code. For wing-
like shapes,
t t 4
FF = 1.0 +1.8 + 50
c c
where t/c is the thickness ratio of of particular component. For bodies,
d 1.5 d 3
FF = 1.0 +1.5 + 50
l l
where d/l is the ratio of diameter to length. This is the reciprocal of the fineness ratio.
Program Operation:
Running the program, you will be prompted for the name of an input data set, the maximum
length is 15 characters. The output is sent to the screen, but can be sent to a file by changing the
value of IWRIT to something other than 6 in the main program. The sample data case on the disk
is F15.FRICTION.
INPUT
Card Field Columns Variable Description
1 1 1-60 Title Card
2 11-20 XINPUT if FINMD = 0.0, this is the Altitude (in 1000 feet)
if FINMD = 1.0, this is the Reynolds no. per unit length
in millions
Note: Card 4 is repeated for each value of Mach and altitude desired. The program stops when
either the end of the data is reached or a Mach number of zero is read.
Output: The input is echoed to allow for easy check of data and to keep all information together.
Then the drag calaculation for each M,h or M,Re/L is made. First, the reference areas, lengths,
thicknesses, form factors and the transition position are output. These values are fixed for each
combination of Mach and Reynolds number. Next, for each case the Reynolds number of each
component and the basic skin friction are found. Then the skin friction times the wetted area and
the skin friction times the wetted area and form factor are found. Finally, the latter is divided by
the reference area and the contribution to the total drag in terms of a drag coefficient for the par-
ticular component, CDCOMP, is then found. These columns are summed, and the bottom value
under the CDCOMP column is the total skin friction and form drag coefficient. After all the con-
ditions are computed, a summary of results is presented as a table at the end of the output.
Sample input for program FRICTION:
F - 15 AIRCRAFT
608. 1. 7. 0.0
FUSELAGE 550.00 54.65 .05500 1.0 0.0
CANOPY 75.00 15.0 .12000 1.0 0.0
NACELLE 600.00 35.0 .04000 1.0 0.0
GLV/SPONSON 305.00 35.5 .117 1.0 0.0
OUTB'D WING 698.00 12.7 .05000 0.0 0.0
HORIZ. TAIL 222.00 8.3 .05000 0.0 0.0
TWIN V. T. 250.00 6.7 .0450 0.0 0.0
0.200 35.000
1.200 35.000
2.000 35.000
0.000 0.000
SUMMARY
END OF CASE
STOP
D.6 VLMpc
This manual describes the input for the pc version of John Lamar’s vortex lattice program.
This program is identical to the program given in reference 2. An advanced version described in
reference 4 is also available. The input data sets differ slightly between the two versions.
The code is called VLMpcv2.f on the disk, and has been modified for WATFOR. This
means that the output field length is limited to eighty columns. In WATFOR you may also need
to invoke the NOCHECK option to prevent the program from halting because of undefined vari-
ables. The code is provided with two OPEN statements near the beginning of the main program:
OPEN(5,file=infile, status=old)
OPEN(6,file=outfil, status=new)
such that the input data is defined on the file infile, and the output is placed in file outfil. The
user is prompted for the names of these files at the start of execution. Users should customize the
code to fit their preferences. The disk also contains a sample input file, YF23.IN, and a sample
output file, YF23.OUT.
The theory is described in references 1, 2 and 3, and the user’s manual provided here is basi-
cally the instructions from references 1 and 2, with minor corrections and clarifications. Refer-
ence 4 describes the advanced version, VLM4.997.
References:
1. Margason, R.J., and Lamar, J.E., “Vortex-Lattice FORTRAN Program for Estimating Subson-
ic Aerodynamic Characteristics of Complex Planforms,” NASA TN D-6142, Feb., 1971.
2. Lamar, J.E., and Gloss, B. B. “Subsonic Aerodynamic Characteristics of Interacting Lifting
Surfaces with Separated Flow around Sharp Edges Predicted by a Vortex-Lattice Method,”
NASA TN D-7921, Sept., 1975.
3. Lamar, J.E., and Frink, N.T., “Experimental and Analytic Study of the Longitudinal Aerody-
namic Characteristics of Analytically and Empirically Designed Strake-Wing Configurations
at Subcritical Speeds, “ NASA TP-1803, June 1981.
4. Lamar, J.E., and Herbert, H.E., “Production Version of the Extended NASA-Langley Vortex
Lattice FORTRAN Computer Code,” - Vol. I - User’s Guide, NASA TM 83303, April 1982.
VLMpc User’s Guide- (from references 1, 2, and 4)
This manual contains the output details for the pc version of the NASA-Langley Vortex
Lattice Computer Program described in reference 2. The NASA - Langley Vortex Lattice
FORTRAN Program (VLMpc) is designed to estimate the subsonic aerodynamic characteristics
of up to two complex planforms. The concepts embodied in this program are mostly detailed in
references 1 and 2.
MODELING THE CONFIGURATION
The configuration can be modeled with up to two planforms, all of which must extend to the
plane of symmetry (Y = 0.0). The fuselage is represented by its planar projection; experience to
date indicates that this produces acceptable global forces and moments for most wing-body-tail
configurations.
Winglets can be modeled, but the dihedral angle must be less than 90.0 degrees and greater
than -90.0 degrees. Both upper (positive dihedral) and lower (negative dihedral) winglets can be
accounted for in this code. The program uses as its solution surface the chord plane which may
be inclined due to dihedral. Moreover, the only out of "X-Y plane" displacement specifically
allowed for is dihedral. Local camber and twist is assumed to be small and can be represented
by its slope projection to the local solution surface. The wind and body axes are assumed to be
coincidental in the code.
RUNNING THE PROGRAM
INPUT DATA SETUP
The input data to VLM is organized into two distinct groups - group 1 defines the reference
planform(s), and group 2 defines the details for the particular solution. An example input fol-
lows the description of the input and output. The individual details of the items in the deck layout
are given in the following sections.
GROUP 1 DATA
This group of data defines the planform(s) projected into the X-Y plane, with all the
coordinates being given for the left half of the configuration (negative y values!). The axis
system is shown in Figure 1. The Y = 0 intercept coincides with the plane of symmetry and is
positive to the right of this plane. The X = 0 intercept is taken to occur along the symmetry
plane of the configuration; X is positive pointing into the wind.
Important tips for modeling configurations:
Good results require that a few common rules of thumb be used in selecting the planform
break points. The number of line segments should be minimized. Breakpoints should line up
streamwise on front and rear portions of each planform, and should line up between plan-
forms. Streamwise tips should be used, and small spanwise distances should be avoided by
making edges streamwise if they are actually very highly swept.
X
Note: X opposite standard
aerodynamic convention
Y
1
2 Planform 1
3
4
6
5 2 1
5 Planform 2
6 7
Figure 1. Definition of axis system for VLMpc.
It is important to note that each planform can only go out to a maximum y value once, and
then return to the centerline. The program assumes that each planform is actuually a wing.
Most numerical input for the group 1 data uses an 8F10.6 format . The input is as follows:
0. (Cols. 1-80) Title Card
1. (Cols. 1-10) PLAN - Number of planforms for this configuration; PLAN can assume
values of 1.0, or 2.0.
2. (Cols.11-20) TOTAL - Number of sets of group 2 data specified for this configuration.
3. (Cols.21-30) CREF - Reference chord of the configuration. This chord is used only to
nondimensionalize the pitching-moment terms and must be greater than zero.
4. (Cols.31-40) SREF - Reference area; this is used only to nondimensionalize the comput-
ed output data such as lift and pitching moment and must always be greater than zero.
5. (Col. 41-50) CG - Center of gravity location with respect to the origin of the coordinate
system. All moment computations are referenced to this location.
The data required to define the planform(s) is provided in the next set of group 1 cards as
follows (the number of line segments is equal to the number of points minus one):
1. (Cols.1-10) AAN - Number of line segments used to define the left half of the planform
(does not include the innermost streamwise). A maximum of 24 line segments may be
used per planform, and each planform must extend to the plane of symmetry. ANN is the
number of defining point minus one.
2. (Cols.11-20) XS - X location of the pivot; use 0.0 for a fixed planform.
3. (Cols.21-30) YS - Y location of the pivot; use 0.0 for a fixed planform.
4. (Cols.31-40) RTCDHT - Vertical distance of the particular planform being read in with
respect to the reference planform root chord height; use 0. for the reference planform.
The rest of this set of data describes the breakpoints used to define the AAN line segments on
this planform. The format is 4F9.4. There are (AAN+1) breakpoints and all data subsequently
described are required on all except the last card of this set; the last card uses only the first two
variables in the following list:
1. (Cols.1-9) XREG(I) - X location of the ith breakpoint. The first breakpoint is located at
the most inboard location of the leading edge for the left-hand side of this planform. The
other breakpoints are numbered around the planform perimeter in increasing order for
each intersection of lines in a counterclockwise direction.
2. (Cols.10-18) YREG(I) - Y location of the ith breakpoint. Once the absolute value of Y
starts to decrease, it cannot be increased.
3. (Cols.19-27) DIH(I) - Dihedral angle (degrees) in the Y-Z plane of the line from
breakpoint of i to i+1, positive upward. Note that along a streamwise line, the dihedral
angle is not defined, so use 0.0. for these lines. Note the sign of the dihedral angle is the
same along the leading and trailing edges.
4. (Cols.28-36) AMCD - The move code; this number indicates whether the line s is on the
movable panel of a variable-sweep wing. Use 1.0 for a fixed line (defaults to 1.0 if not
set), or 2.0 for a movable line.
GROUP 2 DATA
There are four sections of group 2 data. Each section may be required or optional, depending
on the previous input, and each may have one or more input cards (lines of input). Each section
is described individually. Care must be taken to make sure the data is in the proper column.
Section one data (always required).
[1 Card - Format (8F5.2, F10.4,F5.1,F10.4,F5.1)]
1. (Cols.1-5) CONFIG - An arbitrary configuration designation of up to 4 digits.
2. (Cols.6-10) SCW - The number of chordwise horseshoe vortices to be used at a
spanwise station for each planform. The maximum value for this variable is 20. If
varying values of chordwise horseshoe vortices are desired due to either multiple
planforms or large discontinuities in chord across the span, the user can input a value of
0. that will cause the program to expect user-supplied data at this point in the input
stream. The data are in the form of a table that contains the number of chordwise
horseshoe vortices from the tip to root, and is called TBLSCW(I). This SCW=0. option
can only be used for planforms without dihedral and for coplanar configurations.
3. (Cols.11-15) VIC - The nominal number of spanwise stations at which chordwise
horseshoe vortices will be located. This variable must not cause more than 50 spanwise
stations to be used by the program in describing the left half of the configuration. In
addition, the product of the stations spanwise and SCW cannot exceed 200. If SCW is
0., then the sum of the values in TBLSCW(I) cannot exceed 200. The use of variable
VIC is discussed in references 1 and 2. VIC should always be greater than, or equal to,
10. so that the near-field drag or vortex flow forces on cambered configurations can be
properly computed.
4. (Cols.16-20) MACH - Mach number; use a value other than 0.0 only if the Prandtl-
Glauert compressibility correction factor is to be applied. The value used should be
less than that of the critical Mach number.
5. (Cols.21-25) CLDES - Desired lift coefficient, CL,d. The number specified here is
used to obtain the span load distribution at a particular lift coefficient. If the drag polar
is required over a CL range from -0.1 to 1.0, use CLDES = 11.
6. (Cols.26-30) PTEST - Cl p indicator; if the damping-in-roll parameter is desired, use 1.0
for this quantity. Except for the Delta Cp and Clp, all other aerodynamic data will be
omitted. Use a 0. if Clp is not required. The definition is the standard one, as in Etkin,
with units of radians per second:
∂Cl
Cl p =
pb
∂
2U∞
7. (Cols.31-35) QTEST -CL q and Cmq indicator; if these stability derivatives are desired,
use a 1.0 for this quantity. Except for Delta Cp, CL q, and Cmq, all other aerodynamic
data will be omitted. It should be noted that both PTEST and QTEST cannot be set
equal to 1. simultaneously for a particular configuration. Use 0. if CLq and Cmq are not
required. The definition is the standard one, as in Etkin:
∂Cm ∂CL
Cmq = CLq =
qc qc
∂ ref ∂ ref
2U∞ , 2U∞ .
8. (Cols. 36-40) TWIST(1) - Twist code for the first planform. If this planform has no
twist and/or camber, use a value of 0.; otherwise, specify a value of 1.
9. (Cols.41-50) SA(1) - Variable sweep angle for the first planform. Specify the leading
edge sweep-angle (in degrees) for the first movable line adjacent to the fixed portion of
the planform. For a fixed planform, this quantity may be omitted.
10. (Cols.51-55) TWIST(2) - same, for the second planform.
11. (Cols.56-65) SA(2) - same, for the second planform.
12. (Cols.66-70) ATPCOD - Set to 0., it will cause only linear aerodynamic results to be
printed out. Set to 1., this will cause the program to print out the contributions to the
lift, drag and moment from the separated flow around the leading/side edges.
Section two data is required when ATPCOD=1.* This section sets up the limits of integration
used in the computations of the wing leading-edge and side-edge suction values. Normally these
limits would be the wing root and the wing tip. However, other values could be used. Note: if
section four data is used, this data may come after section four data - experiment if you try to use
this combination.
[1 Card - Format (4F10.6)]
Card 1:
1. (Cols.1-10) YINNER(1) - Represents the Y inner for the first planform.
2. (Cols.11-20) YOUTER(1) - Represents the Y outer for the first planform.
3. (Cols.21-30) YINNER(2) - Represents the Y inner for the second planform.
4 (Cols. 31-40), YOUTER(2) - Represents the Y outer for the second planform.
Section three data is required when SCW=0. This section determines the number of span
stations for each planform, and the number of chordwise control points along each span station.
This option is rarely used.
[Multiple card sets per planform - Format (F5.1,n(/16F5.1))]
Card 1:
(Cols.1-5) STA - Number of spanwise stations of horseshoe vortices on the left half
of the planform. This variable sets the number of TBLSCW values read in for that
planform.
* Watch out about the order of input if both twist and vortex lift are used. Some students have
reported problems with this. Actually, this is a somewhat rare calculation. Both twist and
vortex lift should be run separately to the user’s satisfaction before they are run together.
Cards 2-n:
(Cols. 1-5,6-10,etc) TBLSCW(I) - Number of horseshoe vortices at each spanwise
station beginning at the station nearest the tip of the planform and proceeding
toward the station nearest the root.
These sets of STA and TBLSCW(I) cards are repeated for each planform. The sum of all the
STA values cannot exceed 100.
Section four data is required for any planform having a nonzero value for TWIST(I). This
section determines the mean camber line slopes or angles of attack across the planform. Be care-
ful here. Experience has shown that students find the proper input of this data to be very tricky.
[Multiple cards per planform - Format (8F10.6,n(8F10.6))]
(Cols.1-10,11-20,etc.) ALP - Local streamwise angles of attack, eg. camber or flap
deflection, in radians. These are the values at the control point for each horseshoe vortex
on the planform when the innermost streamwise edge of the reference planform has an
angle of attack of 0. degrees. The volume of this data will usually require several input
cards. For the first value on the first card, use the local angle of attack for the horseshoe
vortex nearest the first planform leading edge at the tip; for the second value, use the
angle of attack for the horseshoe vortex immediately behind in the chordwise direction.
Continue in the same manner for the rest of the horseshoe vortices at the tip. Begin a new
card for the next inboard station and input the data in the same chordwise manner.
Repeat for all successive inboard spanwise stations on that planform. For each planform
with twist/camber, start the data on a new card and specify the data from the tip and
proceed chordwise and then inboard, as detailed above.
OUTPUT DATA
The printed results of this computer program appear in two parts: geometry data and
aerodynamic data.
GEOMETRY DATA
The geometry data are described in the order that they are found on the printout.
The first group of the data describes the basic configuration: it states the numbers of lines
used to describe each planform, the root chord height, pivot position, and then lists the
breakpoints, sweep and dihedral angles, and move codes. These data are basically a listing of
input data except that the sweep angle is computed from the input.
The second group of data describes the particular configuration for which the aerodynamic
data are being computed. Included are the configuration designation, sweep position, a listing of
the breakpoints of the planform (X,Y, and Z), the sweep and dihedral angles, and the move
codes. The data are listed primarily for variable-sweep wings to provide a definition of the
planform where the outer panel sweep is different from that of the reference planform. The num-
ber of horseshoe vortices are then described. In this code a maximum of 200 vortices can be
used.
The third group of data presents a detailed description of the horseshoe vortices used to
represent the configuration. These data are listed in two sets of five columns each describing one
elemental panel of the configuration (see Figure 2) in the same order that the twist and/or camber
angles of attack are to be provided.
b/2
y Y
xc/4 x 3c/4
ψ •
Line of symmetry
• Y
φ z
2s
The following items of data are presented for each elemental panel.
For set one:
1. X C/4 - X location of quarter-chord at the horseshoe vortex midspan.
Set two:
1. X C/4 - X location of quarter-chord at the horseshoe vortex midspan. (same as set one)
2. C/4 SWEEP ANGLE - Sweep angle of the quarter-chord of the elemental panel and
horseshoe vortex.
AERODYNAMIC DATA
If PTEST = 1. or QTEST = 1. on the configuration card, then either Clp or CL q and Cmq are
computed and printed, followed by program termination. Otherwise, the aerodynamic data are
described by at least two groups of results. The first is always present, but the second depends
on what is requested on the configuration card. The following items of the first group of data are
given in the order that they are found on the printout. Note that CL ALPHA, CL(TWIST),
CM/CL, CMO, CDI/CL**2 are based on the specified reference dimensions. Many of the items
that follow are for the complete configuration.
1. DESIRED CL - Desired lift coefficient, CL, d, specified in Input Data for
complete configuration.
2. COMPUTED ALPHA - Angle of attack at which the desired lift is developed:
CL, d/(CL ALPHA) + ALPHA at CL=O.
3. CL(WB) - That portion of desired lift coefficient developed by the planform with
the maximum span when multiple planforms are specified. When one planform is
specified, this is the desired lift coefficient. (If two planforms have the same
span, and this value is equal to the maximum, the planform used here is the latter
one read in).
4. CDI AT CL(WB) - Induced drag coefficient for lift coefficient in the previous
item. When two or more planforms are specified, this is the induced drag
coefficient of only the planform with the maximum span. This result is based on
the far-field solution.
5. CDI/(CL(WB)**2) - Induced drag parameter computed from the two previous
items.
6. 1/(PI*AR REF) - Induced drag parameter for an elliptic load distribution based on
reference aspect ratio.
7. CL ALPHA - Lift-curve slope per radian, and per degree.
8. CL(TWIST) - Lift coefficient due to twist and/or camber at zero angle of attack
(CL,tc).
9. ALPHA AT CL=O - Angle of attack at zero lift in degrees; nonzero only when
twist and/or camber is specified.
10. Y CP - Spanwise distance in fraction of semispan from root chord to center of
pressure on the left wing panel.
11. CM/CL - Longitudinal stability parameter based on a moment center about the
reference point. This is the negative of the static margin:
∂Cm
CM / CLLamar =
∂CL
∂C ∂C
and the value of Cmα can be found from Cmα = m L .
∂CL ∂α
12. CMO - Pitching-moment coefficient at CL=O.
For each spanwise station, the following data are presented; from the left tip towards the
root:
1. 2Y/B - Location of midpoint of each spanwise station in fraction of wing
semispan.
The next two columns of data describe the additional (or angle of attack) wing loading at a lift
coefficient of 1. (based on the total lift achieved and the true configuration area). The third
column is the chord ratio result, and the other columns detail specific kinds of span loadings and
local centers of pressure for the configuration.
2. SL COEF - span-load coefficient, clc/CL cav .
3. CL RATIO - Ratio of local lift to total lift, cl/CL .
4. C RATIO - Ratio of local chord to average chord, c/cav .
5. LOAD DUE TO TWIST - Distribution of span-load coefficient due to twist and
camber at 0° angle of attack for the configuration.
6. ADD. LOAD AT CL= - Distribution of additional span-load coefficient re-
quired to produce zero lift when combined with lift due to twist and camber.
This distribution is computed at CL,tc.
7. BASIC LOAD AT CL=0 - Basic span-load-coefficient distribution at zero lift
coefficient. These data are the difference of the previous two columns of data.
8. SPAN LOAD AT DESIRED CL - Distribution of the combination of the basic
span-load and additional span-load coefficients at the desired CL.
9. AT CL DES - X LOCATION OF LOCAL CENT PR - The X location of the
local center of pressure for the resulting span load at CL,d as a function of 2Y/b.
The other options available as group two aerodynamic data are accessed based on the values of
CLDES and ATPCOD. For instance, with CLDES=11., and ATPCOD=0.0, the program will
produce a drag polar, CDI at CL(WB) versus CL(WB), based on the linear aerodynamics in the
middle of the first part of group one aerodynamic data. This, and other combinations, are given
in the table below, along with their purposes:
Next, the induced drag, leading-edge thrust, and suction coefficient characteristics at each
spanwise station are computed from a near-field solution for the total loading at CL,d and
presented.
1. 2y/b - the spanwise location for these results
2. L.E. SWEEP ANGLE - Leading-edge sweep angle in degrees.
3. CDII C/2B - Nondimensional section induced-drag-coefficient term.
4. CT C/2B - Nondimensional section leading-edge thrust-coefficient term.
5. CS C/2B - Nondimensional section leading-edge suction in coefficient term.
Next, the total coefficients are given:
CDII/CL**2 - Total drag coefficient over (CL,d)**2.
CT - Total leading-edge thrust coefficient.
CS - Total leading-edge suction coefficient.
Additional printout is produced for vortex flows. In particular, Kp and Kv values, and
respective centroids in both chordwise and spanwise directions, and the associated limits of
integration for the leading- edge and side-edge values of Kv. (The item entitled "Sum of the
positive side edge contributions" which appears here on the printout is indicative of the
contribution to the side-edge forces for that particular planform which were oppositely-signed to
those that contributed in a manner to increase Kv,se. The value of Kv,se does contain these posi-
tive contributions provided the sweep angle is positive. They should not be, and therefore are
not added in for the planform with a swept forward leading edge). Furthermore, aerodynamic
performance values for each planform and for the entire configuration will be listed over an
angle of attack range by the use of the Polhamus Suction Analogy. The headings are explained
below: See the references for detailed explanations of these terms.
KP Kp
KVLE Kv,le
KV SE Kv,se
ALPHA α
CN CN,tot
CLP CL,p
CLVLE CL,vle
CLVSE Kv,se |sinα| |sinα| cos α
CMP pitching-moment coefficient due to CL,p
CMVLE pitching-moment coefficient due to CL,vle
CMVSE pitching-moment coefficient due to CL,vse
CM total pitching moment
CD CL,tot x tanα
CL**2/(PI*AR) (CL,tot)2 /(Pi*(Aspect Ratio))
SAMPLE OUTPUT: The output is lengthy, but included here to help students check their codes.
STOP
geometry data
1 90 15
2 78 13
panel x x y z s
no. c/4 3c/4
complete configuration
lift induced drag(far field solution)
cl computed alpha cl(wb) cdi at cl(wb) cdi/(cl(wb)**2)
additional loading
with cl based on s(true) -at cl des-
section coefficients
l.e. sweep
station 2y/b angle cdii c/2b ct c/2b cs c/2b
1 -0.96154 39.96069 0.00412 0.00085 0.00111
2 -0.88462 39.96069 0.00182 0.00507 0.00661
3 -0.81158 39.96069 0.00042 0.00821 0.01071
4 -0.73855 39.96069 0.00101 0.00912 0.01190
5 -0.66163 39.96069 0.00187 0.00962 0.01255
6 -0.58470 39.96069 0.00286 0.00985 0.01285
7 -0.51933 39.96069 0.00392 0.00978 0.01276
8 -0.45395 39.96069 0.00499 0.00967 0.01261
9 -0.38844 39.96069 0.00581 0.00975 0.01272
10 -0.33839 39.96069 0.00675 0.00940 0.01226
11 -0.27694 39.96069 0.00795 0.00872 0.01138
12 -0.21924 39.96069 0.00884 0.00813 0.01389
13 -0.18851 73.89906 0.00974 0.00733 0.02002
14 -0.13855 73.89906 0.01161 0.00557 0.02009
15 -0.05004 73.89906 0.02071 -0.00342 -0.01233
total coefficients
Sample output:
enter name of input data file
descam.inp
n x/c Delta Cp
1 0.00000 1.4286
2 0.40000 1.4286
3 1.00000 0.0000
CL = 1.0000 Cm = 0.0357
30.
STOP
Note: The data in the z/c column is the surface shape including both angle of attack and camber.
This means that the surface starts at positive (normally) value of z. To obtain a traditional camber
line distribution that starts and stops at z = 0, the shape is rotated “down” by the value of the de-
sign angle of attack. The result is given in the column listed as (z-z0)/c, which is now a pure
camber surface, with the camber at both the leading and trailing edges equal to zero. The equa-
tions are given in Section 6.11 of the text. In particular, see Eq. (6-109) for the details of the “ro-
tation”.
Several utility programs are useful. This appendix provides the input instructions.
E.1 FOILGEN
Airfoil geometry generation. For airfoils with analytically defined ordinates, this
program produces airfoil definition data sets in the format required for PANELv2.
This includes NACA 4-digit, 4-digit modified and 5-digit airfoils. In addition, the
NACA 6 and 6A camber lines are available. The user can combine any combina-
tion of thickness and camber lines available within these shapes. This provides a
wide range of airfoil definitions.
E.2 LADSON
E.3 CONCAM
E.4 WNGLFT
This program provides detailed wing geometry definition for a straight line wrap
lofted wing.
E.5 BUMP
This code provides a means of making smooth changes to airfoil shapes. This rou-
tine is included in PANELv2.
E.6 POSTp
E.7 STDATM
This is a subroutine that provides the 1976 standard atmosphere used in program
FRICTION.
E.1 FOILGEN
This program is used for airfoil geometry generation. For airfoils with analytically defined ordi-
nates, this program produces airfoil definition data sets in the format required for PANELv2.
This includes NACA 4-digit, 4-digit modified and 5-digit airfoils. In addition, the NACA 6 and
6A camber lines are available. The user can combine any combination of thickness and camber
lines available within these shapes. This provides a wide range of airfoil definitions. The pro-
gram runs interactively, and a sample terminal session is provided here to illustrate its use.
Select 1 or 2 :2
Select 1,2 or 3: 3
1 - Point by point
2 - Distribution
Select 1 or 2:2
1 - Even Spacing
2 - Full Cosine
(Concentrated at both LE & TE)
3 - Half Cosine
(Concentrated at LE)
Choose 1, 2, or 3 :1
Another case?
n
STOP
The disk file generated from the session shown above is:
NACA 18% thick, xt=.4, I=7, 6A series cam, CLI = .2
21.000000 21.000000
Upper Surface
0.000000 0.000000
0.047133 0.056407
0.097259 0.072420
E.2 LADSON
This is the NASA program that provides a reasonable approximation to the NACA 6 and 6A se-
ries airfoils. It was written by Charles Ladson and Cuyler Brooks (Ref E.2-1). Originally it ran
on the NASA CDC computer. It has been ported to run on a personal computer (Macintosh).
Only minor modifications were made to produce a program to generate a set of ordinates in the
form required as standard input by the programs described in App. D.
The program is only an approximation to the ordinates because there is no simple algebraic for-
mula available to describe the thickness distribution. I spoke briefly to Charles Ladson some
years ago, and he said that he thought it would be impossible to generate a more accurate pro-
gram. When he was doing this work he investigated the availability of more detailed notes on
these airfoils and discovered that all the records have been destroyed. The only information
available is that contained in the actual NACA reports. However, this program is much more ac-
curate than attempts to simulate the 6 and 6A series thickness envelope by using a modified
NACA 4-digit airfoil formula. The program was developed to handles thicknesses from 6 to 15
percent.
Figure E.2-1 compares the program predictions with the official ordinates - which are given in
Ref E.2-2, for 64-series airfoils. If the thickness distribution could be obtained by scaling a refer-
ence airfoil, each curve would be a straight flat line. Note especially that below thickness of
around six percent the program deviates significantly from the tabulated values.
One other possible problem is the value at the trailing edge. Originally further processing was re-
quired to find the value. The program was modified to linearly extrapolate the values near the
trailing edge to get the final values. This was the approach recommended by Ladson. This is
done in the new routine added to generate the file of points, stdout. The user should check this
approximation if the results appear to be in error at the trailing edge.
References
E.2-1. Ladson, C.L., and Brooks, C.W., Jr., “Development of a Computer Program to Obtain
Ordinates for NACA 6- and 6A-Series Airfoils,” NASA TM X-3069, Sept., 1974.
E.2-2. Patterson, E.W., and Braslow, A.L., “Ordinates and Theoretical Pressure Distribution
Data for NACA 6- and 6A- Series Airfoil Sections with Thicknesses from 2 to 21 and
from 2 to 15 Percent Chord Respectively,” NASA R-84, 1961.
a. x/c = 0.10
Fig. E.2-1 Comparison of tabulated and computed airfoil ordinate values.
b. x/c = 0.075
c. x/c = 0.050
d. x/c = 0.025
0.120
0 5 10 15
Max t/c, %
e. x/c = 0.0125
Fig. E.2-1 Comparison of tabulated and computed airfoil ordinate values. (continued)
0.100
y/t
0.095
y/t, at x/c = 0.0075 (Tabulated)
y/t, at x/c = 0.0075 (Pgm value)
0.090
0 5 10 15
Max t/c, %
f. x/c = 0.0075
0.070
0 5 10 15
Max t/c, %
g. x/c = 0.0050
Fig. E.2-1 Comparison of tabulated and computed airfoil ordinate values. (concluded)
Input Description
The user first creates a data file as described below. Then, the program runs interactively. It que-
ries the user for the name of the input data file. After the airfoil ordinates are found, the user is
asked for the name of the output file containing the ordinates in standard format. The file names
can be up to twenty characters long. Because the program was developed in the era of cards, it is
critically important that the input be placed in the specified column.
Sample input:
NACA 65(1)213 A=0.5,CL=0.2
65 65
0.130 0.00 1.0 0.2 0.5 1.0
Output
The program files also contain the sample output of the program. Because the program was writ-
ten many years ago, it uses 133 column output, and doesn’t fit on a normal page. The output file
corresponds to the input data set given above and also available in the program files. This case
should be verified before further use of the program.
Eighty values of the upper and lower surface are contained in the disk file. The following is the
file generated from the sample input listed above. All numbers are output in 2F10.6 format.
NACA 65(1)213 A=0.5,CL=0.2
80.000000 80.000000
UPPER SURFACE
0.000000 0.000000
0.000294 0.004049
0.000862 0.005724
0.001472 0.007026
0.002106 0.008120
0.002756 0.009078
0.003416 0.009940
0.004095 0.010729
0.004801 0.011465
0.005750 0.012363
0.006706 0.013187
0.007668 0.013957
0.008635 0.014674
0.009605 0.015351
0.010578 0.015999
0.013509 0.017790
0.018419 0.020432
0.023349 0.022801
0.028292 0.024990
0.033243 0.027041
0.038202 0.028978
0.043167 0.030816
0.048138 0.032564
0.053113 0.034230
0.058093 0.035824
0.063077 0.037355
0.068064 0.038829
0.073053 0.040252
0.078045 0.041628
E.5 BUMP
This subroutine illustrates a means of making smooth changes to airfoil shapes. It is included
in PANELv2. It is designed to place a “bump” on the airfoil contour. The shape change
starts gradually with zero curvature at point xb1 . The bump is setup to be asymmetric about
the bump midpoint, xb2 , and to blend back into the baseline shape with zero curvature at
point xb3 . However, if an asymmetric bump is used, the curvature will be discontinuous at
the bump maximum. The following plot defines the nomenclature, as well as plotting the
output of the sample main program presented below.
1.00
dtc = 0.50
0.80 x b1 x b2 x b3
0.60
y mod 0.40
0.20
0.00
-0.20
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7
x/c
The related slope and curvature are given in the next graph.
t
ymod = −64 ∆ x 3d ( x d −1)
3
c
d ymod t
= −64 ∆ 3x 2d ( x d −1) (2x d −1)
2
dxd c
d 2 y mod
dxd2
t
( )
= −64 ∆ 6x d ( x d −1) 5x 2d − 5x d +1
c
where
( x − x1)
xd = x1 < x < x2
2(x 2 − x1)
or
( x + x3 − 2x2 )
xd = x2 < x < x3
2(x 3 − x2 )
This function is often called a “cubic bump” although it is clearly a sixth order polynomial.
The user should examine the subroutine to understand the transformation between the local
variable xd and the global variable xin.
subroutine bump(xb1,xb2,xb3,dtc,xmax,xin,ymod,ymodp,ymodpp)
c
c so-called cubic bump function
c
c used to make mods to aero surfaces
c
c W.H. Mason, December 1989
c
c xb1 - start of bump (dimensional)
c xb2 - location of maximum bump height (dimensional)
c xb3 - end of bump (dimensional)
c
c dtc - magnitude of bump
c xmax - reference length of geometry
c
c xin - input location to get bump value
c ymod - bump height
c ymodp - first derivative of bump wrt xin
c ymodpp - second derivative of bump wrt xin
x = xin/xmax
x1 = xb1/xmax
x2 = xb2/xmax
x3 = xb3/xmax
xd = (x - x1)/2.0/(x2 - x1)
dxddx = 1./2./(x2 - x1)
endif
xd = (x + x3 - 2.0*x2)/2.0/(x3 - x2)
dxddx = 1./2./(x3 - x2)
endif
ymodp = -64.*dtc*3.0*dxddx*xd**2*
1 (xd - 1.0)**2*(2.0*xd - 1.0)
ymodpp = -64.*dtc*6.0*dxddx**2*xd*(xd - 1.0)*
1 (5.0*xd**2 - 5.0*xd + 1.0)
return
end
This is a sample main program that can be used to check subroutine bump.
c
c example of use of bump function
c this is one way to modify an airfoil
c w.h. mason, Feb. 12, 1994
xb1 = 0.1
xb2 = 0.4
xb3 = 0.6
dtc = 0.50
xmax = 1.0
do 10 i = 1,101
xc = 0.01*(i-1)
call bump(xb1,xb2,xb3,dtc,xmax,xc,ymod,ymodp,ymodpp)
10 write(6,100) i,xc,ymod,ymodp, ymodpp
100 format(i5,4f12.5)
stop
end
sample output from the sample main program and subroutine bump.f
bump example
E.6 POSTp
This program reads the data set generated by PANELv2, and generates a data file containing the
tables needed to make a boundary layer analysis. Although these tables are designed to be used
by the boundary layer program CBLv2, it does not make the complete data set for CBLv2. The
user has to construct the initial data input. The program is provided to automate the most tedious
aspects of the input preparation.
The program reads the PANELv2 output data file. Recall that the solution is given continu-
ously starting at the lower surface trailing edge, moving forward around the leading edge, and
then moving aft on the upper surface to the trailing edge. Using this data the arc length is calcu-
lated and the stagnation point found. If the stagnation point does not occur at an input point, the
stagnation point value of the arc length is estimated, and a point is added. The user is then asked
to name the output file. The output file is generated as a table of arc length and pressure coeffi-
cient values for the lower surface, followed by a table of arc length and pressure coefficient val-
ues for the upper surface.
As an example, and to verify the code, we give a sample input, the screen output and a listing
of the disk data file. Note that the disk file contains an additional column, set to zero. This is the
value of the surface heat flux for use in the boundary layer calculation. We assume that the wall
is adiabatic, and the heat flux is zero. The arc length is normalized by the chord length, assumed
to be unity. The output format of the tables is 3F10.6.
Sample input:
NACA 2412 with 5 deg flap at .75
Alpha CL cmc4 CD
5.0000 1.2116 -0.1172 -0.0015
98.0000000
X/C Y/C Cp U/UE
1.0000000 -0.0218722 0.4457454 -0.7444828
0.9989193 -0.0218588 0.3699587 -0.7937514
0.9956822 -0.0218183 0.3248610 -0.8216684
0.9903033 -0.0217497 0.2959175 -0.8390962
0.9828073 -0.0216514 0.2764678 -0.8506070
0.9732280 -0.0215215 0.2633044 -0.8583097
0.9616088 -0.0213579 0.2546606 -0.8633304
0.9480022 -0.0211583 0.2494899 -0.8663198
0.9324694 -0.0209209 0.2471926 -0.8676447
0.9150801 -0.0206440 0.2474237 -0.8675116
0.8959120 -0.0203265 0.2500552 -0.8659936
0.8750503 -0.0199681 0.2552201 -0.8630063
0.8525876 -0.0195686 0.2634676 -0.8582147
0.8286229 -0.0191286 0.2764418 -0.8506222
0.8032618 -0.0186488 0.3003036 -0.8364786
0.7766151 -0.0181297 0.3571291 -0.8017923
0.7487994 -0.0176765 0.3026126 -0.8350973
0.7199356 -0.0196039 0.2852925 -0.8454037
Output to screen:
PGM POSTP - POST PROCESS DATA FROM PGM. PANELv2
Input data:
NACA 2412 with 5 deg flap at .75
Alpha CL cmc4 CD
5.00000 1.21160 -0.11720 -0.00150
98.0000000
X/C Y/C Cp U/UE
1 1.0000000 -0.0218722 0.4457454 -0.7444828
2 0.9989193 -0.0218588 0.3699587 -0.7937514
3 0.9956822 -0.0218183 0.3248610 -0.8216684
4 0.9903033 -0.0217497 0.2959175 -0.8390962
5 0.9828073 -0.0216514 0.2764678 -0.8506070
6 0.9732280 -0.0215215 0.2633044 -0.8583097
7 0.9616088 -0.0213579 0.2546606 -0.8633304
8 0.9480022 -0.0211583 0.2494899 -0.8663198
9 0.9324694 -0.0209209 0.2471926 -0.8676447
10 0.9150801 -0.0206440 0.2474237 -0.8675116
11 0.8959120 -0.0203265 0.2500552 -0.8659936
12 0.8750503 -0.0199681 0.2552201 -0.8630063
13 0.8525876 -0.0195686 0.2634676 -0.8582147
14 0.8286229 -0.0191286 0.2764418 -0.8506222
15 0.8032618 -0.0186488 0.3003036 -0.8364786
16 0.7766151 -0.0181297 0.3571291 -0.8017923
17 0.7487994 -0.0176765 0.3026126 -0.8350973
18 0.7199356 -0.0196039 0.2852925 -0.8454037
19 0.6901487 -0.0215702 0.2705841 -0.8540585
20 0.6595672 -0.0235606 0.2596269 -0.8604494
21 0.6283228 -0.0255578 0.2511996 -0.8653325
22 0.5965492 -0.0275420 0.2446724 -0.8690959
23 0.5643821 -0.0294907 0.2397471 -0.8719248
24 0.5319584 -0.0313784 0.2363357 -0.8738789
25 0.4994153 -0.0331776 0.2345359 -0.8749080
26 0.4668901 -0.0348579 0.2347106 -0.8748082
27 0.4345195 -0.0363877 0.2381573 -0.8728360
28 0.4024391 -0.0377340 0.2431501 -0.8699712
29 0.3710229 -0.0389221 0.2475556 -0.8674355
30 0.3401839 -0.0399931 0.2525682 -0.8645414
31 0.3100253 -0.0409071 0.2589526 -0.8608411
32 0.2806665 -0.0416239 0.2673756 -0.8559348
33 0.2522234 -0.0421045 0.2785123 -0.8494043
34 0.2248088 -0.0423124 0.2930953 -0.8407763
E1 = 0.0032163 E2 = 0.0058546
ISTAGP = 1
ALPHA = 5.00000
MACH NO. = 0.10000
CL = 1.21160
CMC4 = -0.11720
CD = -0.00150
No. of upper surface values in x/c, Cp table = 52
No. of lower surface values in x/c, Cp table = 46
lower surface
upper surface
lower surface
s/c Cp dT/dy
0.000000 1.000000 0.000000
0.003216 0.987739 0.000000
0.013925 0.896436 0.000000
0.026347 0.782337 0.000000
0.040505 0.676653 0.000000
0.056386 0.586925 0.000000
0.073956 0.513173 0.000000
0.093164 0.453379 0.000000
0.113946 0.405257 0.000000
0.136232 0.366749 0.000000
0.159938 0.336130 0.000000
0.184977 0.311972 0.000000
0.211255 0.293095 0.000000
0.238671 0.278512 0.000000
0.267118 0.267376 0.000000
0.296486 0.258953 0.000000
0.326658 0.252568 0.000000
0.357516 0.247556 0.000000
0.388954 0.243150 0.000000
0.421063 0.238157 0.000000
0.453470 0.234711 0.000000
0.486039 0.234536 0.000000
0.518631 0.236336 0.000000
0.551110 0.239747 0.000000
0.583336 0.244672 0.000000
0.615171 0.251200 0.000000
0.646480 0.259627 0.000000
0.677126 0.270584 0.000000
0.706978 0.285293 0.000000
0.735910 0.302613 0.000000
0.763733 0.357129 0.000000
0.790385 0.300304 0.000000
0.815751 0.276442 0.000000
0.839719 0.263468 0.000000
0.862186 0.255220 0.000000
0.883050 0.250055 0.000000
0.902221 0.247424 0.000000
0.919613 0.247193 0.000000
0.935147 0.249490 0.000000
0.948755 0.254661 0.000000
0.960376 0.263304 0.000000
0.969956 0.276468 0.000000
upper surface
s/c Cp dT/dy
0.000000 1.000000 0.000000
0.005855 0.959377 0.000000
0.013457 0.582493 0.000000
0.019919 -0.404001 0.000000
0.025795 -1.744902 0.000000
0.031672 -2.674523 0.000000
0.038141 -2.904977 0.000000
0.045770 -2.771738 0.000000
0.054900 -2.544502 0.000000
0.065711 -2.323974 0.000000
0.078289 -2.134710 0.000000
0.092662 -1.977156 0.000000
0.108826 -1.845835 0.000000
0.126748 -1.734800 0.000000
0.146382 -1.639018 0.000000
0.167665 -1.554531 0.000000
0.190523 -1.478334 0.000000
0.214871 -1.408164 0.000000
0.240618 -1.342326 0.000000
0.267661 -1.279552 0.000000
0.295894 -1.218885 0.000000
0.325200 -1.159550 0.000000
0.355459 -1.100824 0.000000
0.386546 -1.041764 0.000000
0.418330 -0.979546 0.000000
0.450657 -0.918597 0.000000
0.483175 -0.864346 0.000000
0.515983 -0.815410 0.000000
0.548940 -0.770513 0.000000
0.581907 -0.729215 0.000000
0.614740 -0.691513 0.000000
0.647300 -0.657777 0.000000
0.679446 -0.629124 0.000000
0.711040 -0.608571 0.000000
0.741946 -0.607379 0.000000
0.772030 -0.672127 0.000000
0.801185 -0.521355 0.000000
0.829706 -0.420307 0.000000
0.857022 -0.344007 0.000000
0.883018 -0.278801 0.000000
0.907579 -0.219646 0.000000
0.930598 -0.164219 0.000000
0.951975 -0.111109 0.000000
0.971613 -0.059366 0.000000
0.989427 -0.008225 0.000000
1.005338 0.042992 0.000000
1.019274 0.095049 0.000000
1.031175 0.148913 0.000000
1.040985 0.206114 0.000000
1.048661 0.269396 0.000000
1.054170 0.344846 0.000000
1.057485 0.445744 0.000000
E.7 STDATM
This subroutine computes the 1976 standard atmosphere. It is used in program FRICTION. It
covers an altitude range from sea level to 86 kilometers (282,152 ft.). The results are found in ei-
ther English or metric units depending on the value of one of the input flags. The 1976 and 1962
standard atmospheres are identical for the first 51 kilometers above sea level.
Method of Computation
Given the geometric altitude Zin (in dimensions of either meters or feet), convert to kilom-
eters. The geopotential altitude H is then found from:
Z
H= Z
1+
r0
where r0 = 6356.766 kilometers (the radius of the Earth in kilometers) and Z = C1 Zin, where C1
= 0.001 if Zin is in meters, and C1 = 0.0003048 if Zin is in feet. The 1962 standard atmosphere
used a much more complicated and slightly more accurate relationship.
Once the geopotential altitude is found, the temperature is computed. The standard day tem-
perature profile is defined by seven layers, where within each layer the temperature is found by
the linear relation (T is given in degrees Kelvin):
(
T = Tbi + Lmi H − H bi )
and Tb , Lm and Hb are the values at the base of the particular layer. The following table de-
i i i
fines these constants, as well as the ratio of pressure to sea level pressure, which is also needed.
Once the temperature is determined, the pressure is computed using the hydrostatics equation
and the perfect gas law. The resulting formulas are:
K
P P Tb Lm
= b Lm ≠ 0
Psl Psl T
P Pb −K ( H−Hb )
= e Tb Lm = 0
Psl Psl
where K = go M * = 34.163195
0 in consistent units. The remaining fundamental property is the
R
density, which is found using the equation of state as:
ρ P Psl
=
ρsl T Tsl .
β ⋅ T3 /2
µ=
T +S
where S = 110.4°K and β depends on the system of units and is defined below.
Re ρa
=
M⋅ L µ
T
T = Tsl
Tsl
P
P = Psl
Psl
ρ
ρ = ρsl
ρsl
and v) the dynamic pressure normalized by the Mach number:
q γ
2 = 2 P = .7P
M .
The sea level properties and other required constants are defined in the following table.
Metric English
Tsl 288.15 °K 518.67° R
Psl 1.01325x105 N/m2 2116.22 lb/ft2
ρ sl 1.2250 Kg/m3 0.0023769 slugs/ft3
asl 340.294 m/sec 1116.45 ft/sec
µsl 1.7894x10-5 Kg/m/sec 0.37373x10-6 slugs/ft/sec
β 1.458x10-6 Kg/m/sec/K 1/2 3.0450963x10-8 slugs/ft/sec/K1/2
User instructions: the comments in the subroutine define the input and output argument list. If
the maximum altitude is exceeded, the program returns a non zero value of the validity flag.
subroutine stdatm(z,t,p,r,a,mu,ts,rr,pp,rm,qm,kd,kk)
c
c *********** 1976 STANDARD ATMOSPHERE SUBROUTINE **********
c
c Mason's BASIC program, converted to FORTRAN - Sept. 1, 1989
c
c kd - = 0 - metric units
c <> 0 - English units
c
c kk - 0 - good return
c 1 - error: altitude out of table,
c do not use output
c
c z - input altitude, in feet or meters (depending on kd)
c
c output:
c units: metric English
c t - temp. deg K deg R
c p - pressure N/m^2 lb/ft^2
c r - density Kg/m^3 slugs/ft^3
c a - speed of sound m/sec ft/sec
c mu - viscosity Kg/m/sec slug/ft/sec
c
c ts - t/t at sea level
c rr - rho/rho at sea level
c pp - p/p at sea level
c
c rm - Reynolds number per Re/M/m Re/M/ft
c Mach per unit of length
c qm - dynamic pressure/Mach^2 N/m^2 lb/ft^2
1240 TL = 288.15
PL = 101325
RL = 1.225
C1 = .001
AL = 340.294
ML = 1.7894E-05
BT = 1.458E-06
1260 H = C1 * Z / (1 + C1 * Z / 6356.766)
IF (H .gt. 11.0) go to 1290
T = 288.15 - 6.5 * H
PP = (288.15 / T) ** ( - K / 6.5)
GO TO 1420
T = 214.65 - 2 * (H - 71)
PP = 3.9046E-05 * (214.65 / T) ** ( - K / 2)
1420 RR = PP / (T / 288.15)
MU = BT * T**1.5 / (T + 110.4)
TS = T / 288.15
A = AL * SQRT (TS)
T = TL * TS
R = RL * RR
P = PL * PP
RM = R * A / MU
QM = .7 * P
return
end
The following sample program and output can be used to validate your subroutine:
c main program to check stdatm
real mu
kd = 1
write(6,90)
do 10 i = 1,21
z = 5000.*(i-1)
call stdatm(z,t,p,r,a,mu,ts,rr,pp,rm,qm,kd,kk)
write(6,100) z,t,p,r,a,mu
10 continue
write(6,110)
do 20 i = 1,21
z = 5000.*(i-1)
call stdatm(z,t,p,r,a,mu,ts,rr,pp,rm,qm,kd,kk)
write(6,120) z,ts,rr,pp,rm,qm
20 continue
Sample output:
1976 Standard Atmosphere
alt T P Rho a Mu
(ft) (deg R) (psf) (s/ft^3) (f/s) (slugs/ft/sec)
0.0 518.67 2116.22 0.2377E-02 1116.45 0.3737E-06
5000.0 500.84 1760.88 0.2048E-02 1097.10 0.3637E-06
10000.0 483.03 1455.60 0.1756E-02 1077.40 0.3534E-06
15000.0 465.22 1194.79 0.1496E-02 1057.36 0.3430E-06
20000.0 447.42 973.28 0.1267E-02 1036.93 0.3324E-06
25000.0 429.62 786.34 0.1066E-02 1016.10 0.3217E-06
30000.0 411.84 629.67 0.8907E-03 994.85 0.3107E-06
35000.0 394.06 499.35 0.7382E-03 973.14 0.2995E-06
40000.0 389.97 393.13 0.5873E-03 968.08 0.2969E-06
45000.0 389.97 309.45 0.4623E-03 968.08 0.2969E-06
50000.0 389.97 243.61 0.3639E-03 968.08 0.2969E-06
55000.0 389.97 191.80 0.2865E-03 968.08 0.2969E-06
60000.0 389.97 151.03 0.2256E-03 968.08 0.2969E-06
65000.0 389.97 118.93 0.1777E-03 968.08 0.2969E-06
70000.0 392.25 93.73 0.1392E-03 970.90 0.2984E-06
75000.0 394.97 73.99 0.1091E-03 974.26 0.3001E-06
80000.0 397.69 58.51 0.8571E-04 977.62 0.3018E-06
85000.0 400.42 46.35 0.6743E-04 980.95 0.3035E-06
90000.0 403.14 36.78 0.5315E-04 984.28 0.3052E-06
95000.0 405.85 29.23 0.4196E-04 987.59 0.3070E-06
100000.0 408.57 23.27 0.3318E-04 990.90 0.3087E-06
STOP
The standard source for numerical algorithms is netlib. The following information should help you get started
using this resource:
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
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."
• You can get the same information from the web page at http://netlib.bell-labs.com/netlib/master/readme.html
The SLATEC library, a comprehensive collection of over 1400 mathematical and statistical routines, may be of
particular interest.t
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
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.
F.2.1 Textbooks
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:
o 1. mixing length model,
o 2. eddy viscosity model,
o 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.
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.
Joseph Katz and Allen Plotkin, Low-Speed Aerodynamics: From Wing Theory to Panel Methods, McGraw-Hill,
Inc., 1991 Fourteen programs are in an appendix:
• 1. Grid Generator for van de Vooren airfoil shapes, includes velocity and pressure distributions
Three-dimensional programs
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
Joe F. Thompson, Z.U.A. Warsi, and C. Wayne Mastin, Numerical Grid Generation: Foundations and
Applications, Elsevier Science Publishing Co., New York, 1985.
• 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.
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.
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.
• 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.
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:
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.
• 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
o This book is available through at ftp://watt.berkeley.edu/e266/. The .ps files are standard
postscript
THINFOIL solves Laplace’s Equation by finite differences using a variety of iteration meth-
ods. It was written by Valery Razgonyaev. The iteration options include SOR, SLOR, AF1 and
AF2 to solve the algebraic equations. An unevenly spaced grid is used to concentrate grid points
near the airfoil surface, and near the leading and trailing edges of the airfoil. Notes describing the
detailed procedures and program terminology are provided after the sample terminal session.
The definitions of the input values are given in the following figure. Make sure that the value
of Xmin is negative, and that the order of input requested by the program is followed. Note that
the grid dimensions are real numbers and the number of grid points are integers. Some compilers
are very strict about this. These errors are the source of most problems encountered running the
code. Note that the airfoil is defined from x = 0 to x = 1 on y = 0. At the farfield boundaries, the
potential is set to zero, while on the plane of symmetry, y = 0, the normal velocity is set to zero
or to the value given by the thin airfoil theory boundary conditions. Running the program, maxit
is the number of iterations requested, and RELAX is the value of the over-relaxation factor, ω.
Y
Ymax
NABOVE
Xmin 0 1 Xmax X
The maximum number of x grid points is 90, however, the program automatically adds points
around the boundary, so the user is prevented from exceeding 86. Similarly, the maximum num-
ber of y points is 40, but the user is limited to requesting 36. The grid is output, together with the
difference between grid points. This is done to see how the grid spacing is changing. The conver-
gence criteria is set internally. In addition, the iteration history is output every three iterations.
Study the code to find out how to change this value.
The program creates a copy of the results sent to the screen on a disk file, THINAIR.OUT.
This file can then be used to make plots of the results or the convergence history.
Y GRID
j y(j) y(j)-y(j-1)
1 -0.55668E-02
2 0.00000E+00 0.55668E-02
3 0.55668E-02 0.55668E-02
4 0.22243E-01 0.16677E-01
5 0.49958E-01 0.27715E-01
6 0.88593E-01 0.38635E-01
7 0.13798E+00 0.49389E-01
8 0.19791E+00 0.59932E-01
9 0.26813E+00 0.70218E-01
10 0.34833E+00 0.80203E-01
11 0.43818E+00 0.89845E-01
12 0.53728E+00 0.99102E-01
13 0.64522E+00 0.10794E+00
14 0.76152E+00 0.11631E+00
15 0.88570E+00 0.12418E+00
16 0.10172E+01 0.13152E+00
17 0.11555E+01 0.13830E+00
18 0.13000E+01 0.14448E+00
19 0.14500E+01 0.15005E+00
20 0.16050E+01 0.15497E+00
21 0.17643E+01 0.15923E+00
22 0.19271E+01 0.16281E+00
23 0.20928E+01 0.16569E+00
24 0.22606E+01 0.16787E+00
25 0.24300E+01 0.16932E+00
26 0.26000E+01 0.17005E+00
1 - SOR
2 - SLOR
3 - AF-1
4 - AF-2
Select option:3
Convergence History
Residual Correction
------------------------------- -------------------------------
ITER IMAX JMAX MAX AVRG IMAX JMAX MAX AVRG
1 20 2 0.3593E+02 0.3711E+01 2 2 0.0000E+00 0.0000E+00
2 22 2 0.1337E+02 0.1484E+01 22 2 0.3769E-03 0.3945E-04
3 54 3 0.5960E+01 0.7183E+00 23 2 0.4242E-03 0.5228E-04
4 53 2 0.4705E+01 0.5773E+00 24 3 0.7004E-03 0.1018E-03
5 26 3 0.1822E+01 0.2557E+00 52 2 0.1256E-02 0.2001E-03
6 50 2 0.1881E+01 0.2363E+00 27 3 0.1949E-02 0.3720E-03
7 48 2 0.5231E+00 0.1102E+00 28 2 0.2974E-02 0.6784E-03
8 50 2 0.6676E+00 0.9420E-01 29 3 0.3860E-02 0.1109E-02
9 58 2 0.2509E+00 0.3698E-01 50 2 0.3971E-02 0.1458E-02
10 65 2 0.1228E+00 0.1216E-01 17 4 0.3054E-02 0.1308E-02
11 69 2 0.4270E-01 0.4370E-02 12 2 0.1963E-02 0.8412E-03
12 2 2 0.2911E-01 0.2657E-02 7 4 0.1477E-02 0.7429E-03
13 2 2 0.8172E-02 0.7845E-03 2 2 0.2889E-06 0.2579E-07
14 2 3 0.2018E-02 0.3537E-03 2 2 0.1939E-06 0.2348E-07
15 2 2 0.2251E-02 0.3438E-03 2 5 0.2281E-06 0.5201E-07
16 2 8 0.9842E-03 0.2974E-03 2 8 0.5469E-06 0.1551E-06
17 2 2 0.2147E-02 0.3181E-03 2 8 0.1539E-05 0.4865E-06
18 2 3 0.9461E-03 0.2754E-03 2 26 0.4705E-05 0.1523E-05
19 76 2 0.2082E-02 0.2908E-03 2 26 0.1504E-04 0.4714E-05
20 2 3 0.8731E-03 0.2511E-03 2 26 0.4639E-04 0.1455E-04
I x/c U Cp
21 0.00085 -0.10158 0.20316
22 0.00426 -0.08440 0.16880
23 0.01106 -0.06486 0.12972
24 0.02120 -0.04688 0.09376
25 0.03460 -0.03086 0.06171
26 0.05119 -0.01676 0.03352
27 0.07084 -0.00431 0.00861
28 0.09342 0.00679 -0.01357
29 0.11878 0.01670 -0.03340
30 0.14675 0.02556 -0.05111
31 0.17713 0.03344 -0.06687
32 0.20971 0.04039 -0.08078
33 0.24428 0.04644 -0.09289
STOP
Basic notation: The standard or delta form of the iterative scheme is:
Ci,nj = φi,n+1 n
j −φ i,j
Finite difference representation of the Laplace’s operator and residual is given by:
n n
Lφi, j = δ xxφi,j + δ yyφi,j =0
δ xxφi,n j = Ax i, j φi−1,
n n n
where j + Bx i,jφi, j + Cxi, jφ i+1,j
2
Cxi,j =
[(x i+1, j − xi−1, j )(xi+1, j − x i, j )]
(
Bxi,j = − Axi,j + Cxi,j )
and Ayi,j, Byi,j, Cyi,j are defined in similar manner. Other definitions:
E x±1φi,j
n n
= φi±1, j
E y±1φi,j
n n
= φ i,j±1
1
δ x+φi,n j = E x+1φi,j
n
( xi+1,j − xi,j )
1
δ x−φi,n j = E x−1φi,j
n
( xi, j − x i−1,j )
and δ y± is defined in similar manner.
n n
and φ nNX+1,j = φ NX−1,
n
φ1,j = φ3,j j for 2< j <NY
Since we use the standard or delta form for the iterative scheme expressions we need to have our
B.C. expressed in terms of Ci,nj . The simplest way to accomplish this is to define:
t
φ1i,1 = − (yi,3 − yi,1) (1 − 2xi,2 ) for NLE < i < NTE
c
1
φi,j = 0 elsewhere
Then B.C. for Ci,nj can be written as:
n n n n
Ci,1 = Ci,3 and Ci,NY +1 = Ci, NY−1 for 2 < i < NX
n n n n
C1,j = C3, j and CNX+1, j = C NX−1, j for 2 < j < NY
n n+1 n
Note that Ci,1 = φi,1 − φi,1 =
n+1 t n t
φ i,1 − (yi,3 − yi,1 ) (1 − 2xi,2 ) − φ i,3 − ( yi,3 − yi,1 ) (1− 2xi,2 ) =
c c
n+1 n n
= φ i,3 − φi,3 = Ci,3
n+1
φˆi,j ( n+1
= − Axi,jφ i−1,j n
+ Cxi, jφi+1,j n+1
+ Ayi, jφ i,j−1 )(
/ Bx i,j + Byi,j )
n+1
φi,j n
= φi,j (
+ ω φˆi,n+1 n
j −φ i, j )
or
( Bxi,j + Byi, j )Ci,n j = −ω ( Lφi,j + Axi,jCi−1,j
n n
+ Ayi,j Ci,j−1 )
n
Values Ci−1,j and Ci,n j−1 are already known at the time Ci,nj is computed. Note, that at the
n n
beginning of each iteration, when i = j = 2, values C1,2 and C2,1 are undefined yet and, thus,
should be set to 0.
Operator N is defined by:
( ) (
N = Bxi,j + Byi,j I + ω Axi, j E x−1 + Ayi,j E y−1 )
n+1
φi,j n
= φi,j (
+ ω φˆi,n+1 n
j −φ i, j )
or
Value Cni-1,j is already known at the time Ci,nj is computed and, thus, update in i-th column is
found by inverting tridiagonal matrix. At the beginning of each iteration, when i=2, value Cn1 ,j is
undefined yet and, thus, should be set to 0, but at the end, when i=NX, from the B.C.
CnNX+1,j=CnNX-1 ,j. Exploitation of the B.C. for j=2 and j=NY defines Cni, 1=Cni,3 and
Cni,NY+1=Cni,NY- 1.
Operator N is defined by:
N=(Bxi,j+Byi,j)I+Ay i,j*Ey-1 +Cyi,j*Ey+ 1+ωAxi,j*Ex- 1
(δxx-α)(δyy-α)Cni,j=ωαLφ i,j
where α is a parameter.
Operator N is defined by:
1
N = L − αI − δ δ
α xx yy
1) Invertion of the outer operator Nout=δxx -αI or sweep along i direction by letting Fni,j=(δyy-
α)Cni,j and solving directly for Fni,j the tridiagonal matrix equation:
It can be shown that B.C. for function Fni,j are the same as for Cni,j, thus, Fn1 ,j=Fn3 ,j and
2) Invertion of the inner operator Nin=δyy -αI or sweep along j direction by solving directly for
α h=4/ ∆y 2 k=1,...,M instead of one parameter α. In the code M=11 and ∆y =Y(3)-Y(2).
1) Invertion of the outer operator Nout=αI-δ+x or sweep along i direction by letting Fni,j=(δyy-
αδ-x)Cni,j and solving directly for Fni,j the bidiagonal matrix equation:
It can be shown that B.C. for function Fni,j are the same as for Cni,j, thus, FnNX+ 1,j=F nNX-1 ,j.
2) Invertion of the inner operator Nin=δyy -αδ -x or sweep along j direction by solving directly
Value Cni-1,j becomes available before Cni,j is computed, except for the case i=2, when it should
be set to 0.
Suggested value of ω is 4/3. Similarly to AF-1 scheme a sequence of parameters
α k=α l(αh)(M-k)/(M-1) , αl=1, αh=2/ ∆y k=1,...,M recommended by Ballhaus is used with M=11
and ∆y =Y(3)-Y(2).
CBLv2 is the Cebeci Boundary Layer Program. The program computes the two-dimensional
compressible laminar and/or turbulent boundary layer. This code is described (with a listing) in
the reference. Dr. Tuncer Cebeci (Dept. of Aerospace Engineering, California State University -
Long Beach) makes it available for $50. The current version has been modified slightly, and the
output has been redesigned for WATFOR to limit output to 80 columns.
The code uses the Keller Box Scheme to obtain efficient solutions to the compressible boundary
layer equations. It uses the Cebeci-Smith turbulence model, an algebraic eddy viscosity model,
and can handle heat transfer cases. Some compilers will require the use of SAVE statements in
each routine.
The program will prompt you for the name of the input file. The output is written to the screen in
the version provided. This is not an interactive code and the output can be redirected to a file
once the input file is defined. Note that the boundary layer is computed at each input x station,
and no others. Make sure your input is closely spaced where details are important.
The boundary layer computation should start at the stagnation point, and follow the flow along
the upper or lower surface toward the trailing edge. This requires identifying the stagnation point
in the inviscid solution and using the geometry points x,y at each solution station to compute the
arc length along the surface from the stagnation point, which is the surface length X in the
boundary layer calculation. The utility program POSTp can be used to convert the output file
generated by PANELv2 to a form easily modified to use as input to CBLv2.
Reference
Tuncer Cebeci and Peter Bradshaw, Physical and Computational Aspects of Convective Heat
Transfer, Springer-Verlag, Berlin, 1984.
Note: This program is representative of standard programs used in industry. Experience by stu-
dents indicates that successful use of this program requires more patience than some students are
willing to use. It is very important to put the data in the proper column. When the program is
near separation the numerical iteration sometimes breaks down and the program stops with an
error message. This does not necessarily mean that the solution is invalid at previous steps.
When the pressure is specified, the boundary layer equations are singular at separation, and any
numerical iteration will diverge. The program attempts to identify this situation and stop with a
message suggesting that separation has been encountered. Sometimes the solution blows up be-
fore the code message is printed. One of the most important input parameters is the initial dimen-
sionaless pressure gradient. The values of the pressure gradient should be examined to make sure
that the distribution is smooth. The code interpolates the user specified pressures to get the pres-
sure gradient using a second order polynomial which can poor estimates of the gradient if the
input data is not smooth.
INPUT FORMAT
Card 3: 7F10.5
RMI - freestream Mach number
T0 - freestream stagnation temperature (deg. K)
XLL - reference length, L
RELM - Reynolds number per unit length, in millions
PR - Prandtl number (.72 for air)
Description of Output
The output corresponding to the sample input is in the file cblv2ref.out on the disk. First, the
input is echoed, [P2(1) is given with the distribution of values with X(I)]. After the Mach num-
ber is repeated, the computed reference temperature, static pressure, velocity, density, total en-
thalpy and pressure in atmospheres are output.
The edge velocity distribution, converted using the input pressure coefficient distribution, is out-
put together with other computed values in two sets to meet the 80 column output limitation. The
first set is:
X(I) - distance along surface, in physical units
UE(I) - edge velocity in meters/sec.
WW(I) - dimensionless temperature or temperature gradient input
TE(I) - edge static temperature
RHOE(I) - edge density
The second output set is:
X(I) - distance along surface, in physical units
RMUE - edge viscosity
P1 - edge parameter
1 x d (ρeµ e)
1+ P2 +
2 ρeµ e dx
P2 - edge parameter
x dUe
Ue dx
The computations are then output one station at a time, first giving the station number, the X
value of the station, and the convergence history (IT is the iteration count, and is reset if an extra
grid point is added during the calculation).
After convergence, the profiles at each station are given at every third grid point in two sets. The
first set is:
J - grid line index
ETA - computational normal coordinate
Y - physical coordinate
F - transformed streamfunction
U - U/Ue = F'
V - U' the gradient of the velocity distribution
The second set is:
J - grid line index
ETA - computational normal coordinate
Y - physical coordinate
G - H/He
O - G' the gradient of the enthalpy distribution
B - effective viscosity distribution, C[1 + ε m+ ]
At the finish of the calculation the distributions of the computed quantities given above are re-
peated in two sets in summary form.
It is likely that separation will occur. When this happens the programs halts. When possible, sep-
aration is flagged in the output, and the summary of results up to separation are printed out in the
summary.
G.4 TRANFOIL/TSFOIL2
These programs solve the transonic small disturbance equation. The disk contains the source
codes, sample input, and sample output.
TSDE is from Moran’s book. This program uses SLOR to solve the algebraic equations
using an evenly spaced grid for flow over a biconvex airfoil at zero angle of attack at a specified
Mach number and thickness ratio.
The input values are essentially the same as those used in program THINAIR, and are de-
fined in the following figure. Make sure that the value of XW is negative, and that the order of
input requested by the program is followed. Unlike THINAIR, where this was the source of most
problems encountered running the code, TSDE may diverge if the value of the relaxation factor
is too high, or the Mach number is too close to one. The user also specifies the Mach number,
thickness ratio, number of iterations, MAXTRY, and the relaxation factors for locally subsonic
flow (RLXSUB > 1), and supersonic flow (RLXSUP < 1).
The airfoil is defined from x = 0 to x = 1 on y = 0. At the farfield boundaries the potential is
set to zero. On the plane of symmetry, y = 0, the normal velocity is set to zero.
Y
YN
NABOVE
XW 0 1 XE X
The maximum number of x grid points is 80. However, the program automatically adds
points around the boundary, so the user is prevented from exceeding 77. Similarly, the maximum
number of y points is 38. The convergence criteria is set internally. The iteration history is output
every ten iterations, and includes the number of supersonic points in the flowfield, NUMSUP.
Sample execution:
MORAN: PROGRAM TSDE
TRIAL RMS CHANGE CHANGE RATIO XMAX YMAX MAX CHANGE NUMSUP
10 0.330E-02 0.9638 -0.2500 0.1000 0.227E-01 9
20 0.152E-02 0.9497 -0.5500 0.1000 0.657E-02 16
30 0.828E-03 0.9530 0.7500 0.0500 0.220E-02 19
40 0.647E-03 0.9849 0.7500 0.0500 0.167E-02 21
50 0.582E-03 0.9936 0.7500 0.0500 0.143E-02 22
60 0.544E-03 0.9942 0.7500 0.0500 0.114E-02 22
70 0.515E-03 0.9950 0.7500 0.0500 0.998E-03 23
80 0.490E-03 0.9949 0.7500 0.0500 0.891E-03 23
90 0.466E-03 0.9948 0.7500 0.0500 0.813E-03 23
100 0.442E-03 0.9947 0.7500 0.0500 0.753E-03 24
.
.
.
900 0.539E-05 0.9945 0.8000 0.0500 0.953E-05 34
910 0.510E-05 0.9943 0.8000 0.0500 0.893E-05 34
920 0.483E-05 0.9944 0.8000 0.0500 0.845E-05 34
930 0.457E-05 0.9943 0.8000 0.0500 0.807E-05 34
940 0.433E-05 0.9943 0.8000 0.0500 0.762E-05 34
950 0.410E-05 0.9944 0.8000 0.0500 0.716E-05 34
960 0.388E-05 0.9947 0.8000 0.0500 0.679E-05 34
970 0.367E-05 0.9941 0.8000 0.0500 0.660E-05 34
980 0.348E-05 0.9950 0.8000 0.0500 0.613E-05 34
990 0.329E-05 0.9945 0.8000 0.0500 0.582E-05 34
1000 0.311E-05 0.9945 0.8000 0.0500 0.553E-05 34
I X CP
23 0.02500 0.23445
24 0.07500 0.05530
25 0.12500 -0.07965
26 0.17500 -0.18781
27 0.22500 -0.27958
28 0.27500 -0.36014
29 0.32500 -0.45224
30 0.37500 -0.52386
31 0.42500 -0.58545
32 0.47500 -0.64134
33 0.52500 -0.69270
34 0.57500 -0.73978
35 0.62500 -0.78178
36 0.67500 -0.81499
37 0.72500 -0.80487
38 0.77500 -0.27178
39 0.82500 -0.07417
40 0.87500 -0.02823
41 0.92500 0.08152
42 0.97500 0.24863
STOP
TSFOIL2 is also a solution of the transonic small disturbance theory. It was written by Earll
Murman, Frank Bailey and Margaret Johnson.1 However, it has significantly more capability
than TSDE. It is also bigger. It may not run on all personal computers. For comparison, consider:
TSDE TSFOIL2
• 80 col. output • 133 col. output
• non-lifting biconvex sections • arbitrary airfoils
• evenly spaced grid points • unevenly spaced grid points
• interactive input and execution • input file using NAMELIST
The input to the program is descrbed in subroutine READIN, which asks the user for the
name of the input file. The following description is from READIN. Note the default values. Two
input data sets are included to illustrate the procedure. TSFOIL was documented in NASA CR
3064, by Stephen S. Stahara, “Operational Manual for Two-Dimensional Transonic Code
TSFOIL, Decf. 1978.
1. Murman, E.M., Bailey, F.R., and Johnson, M.L., “TSFOIL — A Computer Code for Two-
Dimensional Transonic Calculations, Including Wind-Tunnel Wall Effects and Wave Drag
Evaluation,” NASA SP-347, March 1975.
INPUT EXPLANATION
DEFAULT
VALUE
PSAVE (L) OPTION FOR SAVING RESTART BLOCK OF .F.
VALUES ON UNIT 3.
=.TRUE. SAVE FOR RESTART.
=.FALSE. DO NOT SAVE.
FCR (L) FULLY CONSERVATIVE RELAXATION OPTION .T.
=.TRUE. DIFFERENCE EQUATIONS ARE
FULLY CONSERVATIVE FORM.
=.FALSE. DIFFERENCE EQUATIONS NOT
CONSERVATIVE AT SHOCK WAVES.
KUTTA (L) KUTTA CONDITION OPTION. .T.
=.TRUE. KUTTA CONDITION IS ENFORCED
=.FALSE. LIFT COEFFICIENT SPECIFIED BY USER.
CLSET (F) LIFT COEFFICIENT, USED IF KUTTA .0
IS FALSE.
BCFOIL (I) OPTION FOR FOIL OR BODY GEOMETRY. 3
=1 NACA00XX
=2 PARABOLIC ARC.
=3 ORDINATES (READ LATER IN NAMELIST
IF DIFFERENT FROM DEFAULT VALUES WHICH
ARE FOR THE KORN AIRFOIL).
=4 JAMESON'S AIRFOIL INPUT FORMAT
BCTYPE (I) DESCRIBES THE TYPE OF FLOW TO BE COMPUTED. 1
=1 FREE AIR.
=2 SOLID WALL.
=3 FREE JET.
=4 SLOTTED WALL.
=5 POROUS WALL.
F (F) TUNNEL SLOT PARAMETER. 0.
H (F) TUNNEL HALF HEIGHT/CHORD RATIO. 0.
POR (F) WALL POROSITY FACTOR. .0
PHYS (L) TYPE OF SCALING TO USE FOR I/O. .T.
=.TRUE. PHYSICALLY SCALED VALUES.
=.FALSE. TRANSONICALLY SCALED VALUES
FOR PHYS = .F., ALSO INPUT VALUE FOR AK.
IMAXI (I) NUMBER OF X-MESH POINTS(.LE. 100) 77
JMAXI (I) NUMBER OF Y-MESH POINTS(.LE. 100) 56
IMIN (I) X MESH POINT WHERE CALC IS TO START 1
JMIN (I) Y MESH POINT WHERE CALC IS TO START 1
ICUT (I) CONTROL FOR MESH CUT AND REFINEMENT. 2
= 0 INPUT MESH IS USED TO CONVERGENCE.
= 1 INPUT MESH MAY BE CUT ONCE.
= 2 INPUT MESH MAY BE CUT TWICE.
WE (F) 3 VALUES FOR RELAXATION FACTOR FOR 1.8
ELIPTIC PTS. 1-ST FOR COARSE MESH, 1.9
2-ND FOR MED. MESH AND 3-RD FOR 1.95
FINE MESH. DEFAULT VALUES ARE SUGGESTED
VALUES, IN ORDER. IF SPECIFIED IN INPUT
ALL THREE VALUES MUST BE GIVEN.
WCIRC (F) RELAXATION FACTOR FOR CIRCULATION. 1.0
MAXIT (I) MAXIMUM NUMBER OF ITERATION CYCLE ALLOWED. 500
DEFAULT
VALUE
This dataset provides the solution to the biconvex airfoil (BCFOIL=2) that corresponds to the so-
lution provided by TSDE:
TEST OF TSFOIL2, 10% thick biconvex airfoil
$INP
ALPHA=0.0,DELTA=0.10,EMACH=0.82
BCFOIL=2,MAXIT=1500
$END
This dataset is used to obtain the solution for the flow over an NACA 2412 airfoil at zero alpha
and a Mach number of .75.
These files are contained on the disk as bicon.inp and N2412.inp. The corresponding output is
contained in the files bicon.out and n2412.out.
The Thomas Algorithm is a special form of Gauss elimination that can be used to solve tridiago-
nal systems of equations. When the matrix is tridiagonal, the solution can be obtained in O(n) op-
erations, instead of O(n3/3). The form of the equation is:
where a1 and cn are zero. The solution algorithm (Ref. E.7-1) starts with k = 2,....,n:
ak
m=
bk −1
bk′ = bk − mck −1
dk′ = dk − mdk−1 .
Then:
d′
xn = n
bn
and finally, for k = n - 1,...,1:
d′ − c x
xk = k k k+1
bk .
In CFD methods this algorithm is usually coded directly into the solution procedure, unless
machine optimized subroutines are employed on a specific computer. A sample FORTRAN pro-
gram to implement this algorithm is given here as:
subroutine tridag(a,b,c,d,nn)
d(nn) = d(nn)/b(nn)
k = nn
do 20 i = 2,nn
k = nn + 1 - i
d(k) = (d(k) - c(k)*d(k+1))/b(k)
20 continue
return
100 format(/3x,'diagonal element .eq. 0 in tridag at k = ',i2/)
end
A check can be made using the following main program and resulting output:
Reference
H.1-1 Conte, S.D., and deBoor, C., Elementary Numerical Analysis, McGraw-Hill, New York,
1972.