Article 12766 of alt.sources:
Path: nntpd.lkg.dec.com!crl.dec.com!crl.dec.com!caen!spool.mu.edu!howland.reston.ans.net!newsfeed.internetmci.com!news.mathworks.com!zombie.ncsc.mil!simtel!harbinger.cc.monash.edu.au!news.cs.su.oz.au!metro!unsw.edu.au!norris
From: norris@usage.csd.unsw.oz.au (Stuart Norris)
Newsgroups: alt.sources
Subject: naca.shar -- a NACA airfoil coordinate generation utility
Date: 30 Aug 1995 11:40:52 GMT
Organization: University of New South Wales
Lines: 4993
Message-ID: <421io4$s3h@mirv.unsw.edu.au>
NNTP-Posting-Host: cfd.mech.unsw.edu.au
X-Newsreader: TIN [version 1.2 PL1]

naca is a small program to generate NACA airfoil sections. It is written
in Fortran 77 for UNIX boxes, and has been ported to IRIX, AIX, Unicos,
OSF, HP-UX, SunOS, SunOS/CM and Linux.

Give it a NACA 4 or 5 digit, 1- or 6- series foil number, and it will
print the foil ordinates to stdout.

The guts of the code is compiled as a library, making it easy to link to
your own code.

It can also be found at

ftp://cfd.mech.unsw.edu.au/pub/cfd/naca-1.0.shar.Z

--
----------------------------------------------------------------------------
 Stuart Norris                        |
 Email:  norris@cfd.mech.unsw.edu.au  | School of Mechanical Engineering
 Work:   Tel: (+61 2) 385 5738        | University of New South Wales
         Fax: (+61 2) 663 1222        | Sydney 2052
 Home:   Tel: (+61 2) 313 0662        | Australia
----------------------------------------------------------------------------


#!/bin/sh
# This is a shell archive (produced by GNU shar 4.0).
# To extract the files from this archive, save it to some FILE, remove
# everything before the `!/bin/sh' line above, then type `sh FILE'.
#
# Made on 1995-08-30 21:17 D   by <norris@cfd>.
# Source directory was `/home/phd/norris/fortran'.
#
# Existing files will *not* be overwritten unless `-c' is specified.
#
# This shar contains:
# length mode       name
# ------ ---------- ------------------------------------------
#     25 -r-x------ naca-1.0/install
#    391 -r-------- naca-1.0/Makefile.conf
#    499 -r-------- naca-1.0/Makehead.aix
#    505 -r-------- naca-1.0/Makehead.alpha
#    495 -r-------- naca-1.0/Makehead.cm5
#    555 -r-------- naca-1.0/Makehead.hp
#    307 -rw------- naca-1.0/data/16-015
#    440 -rw------- naca-1.0/data/63-006
#    444 -rw------- naca-1.0/data/63-009
#    442 -rw------- naca-1.0/data/63-010
#    440 -rw------- naca-1.0/data/63-012
#    445 -rw------- naca-1.0/data/63-015
#    444 -rw------- naca-1.0/data/63-018
#    449 -rw------- naca-1.0/data/63-021
#    456 -rw------- naca-1.0/data/63A006
#    456 -rw------- naca-1.0/data/63A008
#    455 -rw------- naca-1.0/data/63A010
#    461 -rw------- naca-1.0/data/63A012
#    462 -rw------- naca-1.0/data/63A015
#    445 -rw------- naca-1.0/data/64-006
#    447 -rw------- naca-1.0/data/64-008
#    447 -rw------- naca-1.0/data/64-009
#    444 -rw------- naca-1.0/data/64-010
#    445 -rw------- naca-1.0/data/64-012
#    446 -rw------- naca-1.0/data/64-015
#    448 -rw------- naca-1.0/data/64-018
#    456 -rw------- naca-1.0/data/64-021
#    458 -rw------- naca-1.0/data/64A006
#    457 -rw------- naca-1.0/data/64A008
#    461 -rw------- naca-1.0/data/64A010
#    459 -rw------- naca-1.0/data/64A012
#    461 -rw------- naca-1.0/data/64A015
#    441 -rw------- naca-1.0/data/65-006
#    448 -rw------- naca-1.0/data/65-008
#    443 -rw------- naca-1.0/data/65-009
#    445 -rw------- naca-1.0/data/65-010
#    446 -rw------- naca-1.0/data/65-012
#    450 -rw------- naca-1.0/data/65-015
#    451 -rw------- naca-1.0/data/65-018
#    448 -rw------- naca-1.0/data/65-021
#    457 -rw------- naca-1.0/data/65A006
#    454 -rw------- naca-1.0/data/65A008
#    459 -rw------- naca-1.0/data/65A010
#    462 -rw------- naca-1.0/data/65A012
#    463 -rw------- naca-1.0/data/65A015
#    443 -rw------- naca-1.0/data/66-006
#    441 -rw------- naca-1.0/data/66-008
#    446 -rw------- naca-1.0/data/66-009
#    445 -rw------- naca-1.0/data/66-010
#    447 -rw------- naca-1.0/data/66-012
#    447 -rw------- naca-1.0/data/66-015
#    450 -rw------- naca-1.0/data/66-018
#    453 -rw------- naca-1.0/data/66-021
#    449 -rw------- naca-1.0/data/67-015
#    500 -r-------- naca-1.0/Makehead.cray
#    573 -r-------- naca-1.0/Makehead.linux
#    490 -r-------- naca-1.0/Makehead.sgi
#    503 -r-------- naca-1.0/Makehead.std
#    497 -r-------- naca-1.0/Makehead.sun
#   6377 -r-------- naca-1.0/ReadMe
#    257 -r-x------ naca-1.0/mkdirect
#   1327 -r-x------ naca-1.0/mkmake
#   1330 -r-------- naca-1.0/Installation
#    489 -r-------- naca-1.0/exit.f
#   3104 -r-------- naca-1.0/naca.f
#   8962 -r-------- naca-1.0/naca4.f
#  10081 -r-------- naca-1.0/naca6.f
#  10139 -r-------- naca-1.0/nacafoil.f
#   9541 -r-------- naca-1.0/util.f
#
touch -am 1231235999 $$.touch >/dev/null 2>&1
if test ! -f 1231235999 && test -f $$.touch; then
  shar_touch=touch
else
  shar_touch=:
  echo 'WARNING: not restoring timestamps'
fi
rm -f 1231235999 $$.touch
#
# ============= naca-1.0/install ==============
if test ! -d 'naca-1.0'; then
  echo 'x - creating directory naca-1.0'
  mkdir 'naca-1.0'
fi
if test -f 'naca-1.0/install' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/install (File already exists)'
else
  echo 'x - extracting naca-1.0/install (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/install' &&
mkmake
mkdirect
make all
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/install' &&
  chmod 0500 'naca-1.0/install' ||
  echo 'restore of naca-1.0/install failed'
  shar_count="`wc -c < 'naca-1.0/install'`"
  test 25 -eq "$shar_count" ||
    echo "naca-1.0/install: original size 25, current size $shar_count"
fi
# ============= naca-1.0/Makefile.conf ==============
if test -f 'naca-1.0/Makefile.conf' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makefile.conf (File already exists)'
else
  echo 'x - extracting naca-1.0/Makefile.conf (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makefile.conf' &&
#
#  Makefile configuration file
#
X
EXE = naca
LIB = libnaca.a
X
OBJ =\
X nacafoil.o\
X naca4.o\
X naca6.o\
X util.o
X 
#
#  Make the library and the executable
#
all: $(LIB) $(EXE)
X
#
#  Link the library and exe
#
$(LIB): $(OBJ) $(EXT)
X	$(AR) $(ARFLAGS) $(LIB) $(OBJ) $(EXT)
X	$(RANLIB) $(LIB)
X
$(EXE): naca.o $(LIB)
X	$(FC) -o $(EXE) $(FFLAGS) naca.o $(LDFLAGS) 
X
clean:
X	rm -f core a.out *.o *~
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makefile.conf' &&
  chmod 0400 'naca-1.0/Makefile.conf' ||
  echo 'restore of naca-1.0/Makefile.conf failed'
  shar_count="`wc -c < 'naca-1.0/Makefile.conf'`"
  test 391 -eq "$shar_count" ||
    echo "naca-1.0/Makefile.conf: original size 391, current size $shar_count"
fi
# ============= naca-1.0/Makehead.aix ==============
if test -f 'naca-1.0/Makehead.aix' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makehead.aix (File already exists)'
else
  echo 'x - extracting naca-1.0/Makehead.aix (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makehead.aix' &&
#-----------------------------------------------------------------------------
#
#  Makefile made with makemake
#
#  IBM RS6000 Version
#
#-----------------------------------------------------------------------------
#
X.SUFFIXES: .o .f .c
X
#
# Compiler names
#
CC      = cc
FC      = f77
AR      = ar
RANLIB  = ranlib
X
#
# Compiler flags
#
CFLAGS = -O
FFLAGS = -O
ARFLAGS = ovr
LDFLAGS = -L. -lnaca
X
#
#  Compile individual source files
#
X.f.o:
X	$(FC) $(FFLAGS) -c $<
X
X.c.o:
X	$(CC) $(CFLAGS) -c $<
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makehead.aix' &&
  chmod 0400 'naca-1.0/Makehead.aix' ||
  echo 'restore of naca-1.0/Makehead.aix failed'
  shar_count="`wc -c < 'naca-1.0/Makehead.aix'`"
  test 499 -eq "$shar_count" ||
    echo "naca-1.0/Makehead.aix: original size 499, current size $shar_count"
fi
# ============= naca-1.0/Makehead.alpha ==============
if test -f 'naca-1.0/Makehead.alpha' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makehead.alpha (File already exists)'
else
  echo 'x - extracting naca-1.0/Makehead.alpha (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makehead.alpha' &&
#-----------------------------------------------------------------------------
#
#  Makefile made with makemake
#
#  DEC OSF AXP Version
#
#-----------------------------------------------------------------------------
#
X.SUFFIXES: .o .f .c
X
#
# Compiler names
#
CC      = cc
FC      = f77
AR      = ar
RANLIB  = ranlib
X
#
# Compiler flags
#
CFLAGS = -O
FFLAGS = -O -fpe3
ARFLAGS = vr
LDFLAGS = -L. -lnaca
X
#
#  Compile individual source files
#
X.f.o:
X	$(FC) $(FFLAGS) -c $<
X
X.c.o:
X	$(CC) $(CFLAGS) -c $<
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makehead.alpha' &&
  chmod 0400 'naca-1.0/Makehead.alpha' ||
  echo 'restore of naca-1.0/Makehead.alpha failed'
  shar_count="`wc -c < 'naca-1.0/Makehead.alpha'`"
  test 505 -eq "$shar_count" ||
    echo "naca-1.0/Makehead.alpha: original size 505, current size $shar_count"
fi
# ============= naca-1.0/Makehead.cm5 ==============
if test -f 'naca-1.0/Makehead.cm5' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makehead.cm5 (File already exists)'
else
  echo 'x - extracting naca-1.0/Makehead.cm5 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makehead.cm5' &&
#-----------------------------------------------------------------------------
#
#  Makefile made with makemake
#
#  Sun/CM Version
#
#-----------------------------------------------------------------------------
#
X.SUFFIXES: .o .f .c
X
#
# Compiler names
#
CC      = cc
FC      = f77
AR      = ar
RANLIB  = ranlib
X
#
# Compiler flags
#
CFLAGS = -O
FFLAGS = -O
ARFLAGS = ovr
LDFLAGS = -L. -lnaca
X
#
#  Compile individual source files
#
X.f.o:
X	$(FC) $(FFLAGS) -c $<
X
X.c.o:
X	$(CC) $(CFLAGS) -c $<
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makehead.cm5' &&
  chmod 0400 'naca-1.0/Makehead.cm5' ||
  echo 'restore of naca-1.0/Makehead.cm5 failed'
  shar_count="`wc -c < 'naca-1.0/Makehead.cm5'`"
  test 495 -eq "$shar_count" ||
    echo "naca-1.0/Makehead.cm5: original size 495, current size $shar_count"
fi
# ============= naca-1.0/Makehead.hp ==============
if test -f 'naca-1.0/Makehead.hp' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makehead.hp (File already exists)'
else
  echo 'x - extracting naca-1.0/Makehead.hp (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makehead.hp' &&
#-----------------------------------------------------------------------------
#
#  Makefile made with makemake
#
#  HP HP-UX Version
#
#-----------------------------------------------------------------------------
#
X.SUFFIXES: .o .f .c
X
#
# Compiler names
#
CC      = cc
FC      = fort77
AR      = ar
RANLIB  = true
X
#
# Compiler flags
#
CFLAGS = -O
FFLAGS = -O +ppu
ARFLAGS = vr
LDFLAGS = +U77 -L. -lnaca
X
#
#  Compile individual source files
#
X.f.o:
X	$(FC) $(FFLAGS) -c $<
X
X.c.o:
X	$(CC) $(CFLAGS) -c $<
X
#
#  Workaround for a HP fuck up
#
EXT = exit.o
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makehead.hp' &&
  chmod 0400 'naca-1.0/Makehead.hp' ||
  echo 'restore of naca-1.0/Makehead.hp failed'
  shar_count="`wc -c < 'naca-1.0/Makehead.hp'`"
  test 555 -eq "$shar_count" ||
    echo "naca-1.0/Makehead.hp: original size 555, current size $shar_count"
fi
# ============= naca-1.0/data/16-015 ==============
if test ! -d 'naca-1.0/data'; then
  echo 'x - creating directory naca-1.0/data'
  mkdir 'naca-1.0/data'
fi
if test -f 'naca-1.0/data/16-015' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/16-015 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/16-015 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/16-015' &&
*
x	y
X 0e+0	 0e+0
X 1.25e+0 1.615e+0
X 2.5e+0  2.257e+0
X 5e+0    3.137e+0
X 7.5e+0  3.79e+0
X 1e+1    4.322e+0
X 1.5e+1  5.168e+0
X 2e+1    5.83e+0
X 3e+1    6.772e+0
X 4e+1    7.318e+0
X 5e+1    7.50e+0
X 6e+1    7.293e+0
X 7e+1    6.587e+0
X 8e+1    5.248e+0
X 9e+1    3.147e+0
X 9.5e+1  1.768e+0
X 1e+2	 0e+0
X 1.1e+0
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/16-015' &&
  chmod 0600 'naca-1.0/data/16-015' ||
  echo 'restore of naca-1.0/data/16-015 failed'
  shar_count="`wc -c < 'naca-1.0/data/16-015'`"
  test 307 -eq "$shar_count" ||
    echo "naca-1.0/data/16-015: original size 307, current size $shar_count"
fi
# ============= naca-1.0/data/63-006 ==============
if test -f 'naca-1.0/data/63-006' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63-006 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63-006 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63-006' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 5.03e-1
X 7.5e-1	 6.09e-1
X 1.25e+0 7.71e-1
X 2.5e+0	 1.057e+0
X 5e+0	 1.462e+0
X 7.5e+0	 1.766e+0
X 1e+1	 2.01e+0
X 1.5e+1	 2.386e+0
X 2e+1	 2.656e+0
X 2.5e+1	 2.841e+0
X 3e+1	 2.954e+0
X 3.5e+1	 3e+0
X 4e+1	 2.971e+0
X 4.5e+1	 2.877e+0
X 5e+1	 2.723e+0
X 5.5e+1	 2.517e+0
X 6e+1	 2.267e+0
X 6.5e+1	 1.982e+0
X 7e+1	 1.67e+0
X 7.5e+1	 1.342e+0
X 8e+1	 1.008e+0
X 8.5e+1	 6.83e-1
X 9e+1	 3.83e-1
X 9.5e+1	 1.38e-1
X 1e+2	 0e+0
X 2.97e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63-006' &&
  chmod 0600 'naca-1.0/data/63-006' ||
  echo 'restore of naca-1.0/data/63-006 failed'
  shar_count="`wc -c < 'naca-1.0/data/63-006'`"
  test 440 -eq "$shar_count" ||
    echo "naca-1.0/data/63-006: original size 440, current size $shar_count"
fi
# ============= naca-1.0/data/63-009 ==============
if test -f 'naca-1.0/data/63-009' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63-009 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63-009 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63-009' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 7.49e-1
X 7.5e-1	 9.06e-1
X 1.25e+0	 1.151e+0
X 2.5e+0	 1.582e+0
X 5e+0	 2.196e+0
X 7.5e+0	 2.655e+0
X 1e+1	 3.024e+0
X 1.5e+1	 3.591e+0
X 2e+1	 3.997e+0
X 2.5e+1	 4.275e+0
X 3e+1	 4.442e+0
X 3.5e+1	 4.5e+0
X 4e+1	 4.447e+0
X 4.5e+1	 4.296e+0
X 5e+1	 4.056e+0
X 5.5e+1	 3.739e+0
X 6e+1	 3.358e+0
X 6.5e+1	 2.928e+0
X 7e+1	 2.458e+0
X 7.5e+1	 1.966e+0
X 8e+1	 1.471e+0
X 8.5e+1	 9.9e-1
X 9e+1	 5.5e-1
X 9.5e+1	 1.96e-1
X 1e+2	 0e+0
X 6.31e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63-009' &&
  chmod 0600 'naca-1.0/data/63-009' ||
  echo 'restore of naca-1.0/data/63-009 failed'
  shar_count="`wc -c < 'naca-1.0/data/63-009'`"
  test 444 -eq "$shar_count" ||
    echo "naca-1.0/data/63-009: original size 444, current size $shar_count"
fi
# ============= naca-1.0/data/63-010 ==============
if test -f 'naca-1.0/data/63-010' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63-010 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63-010 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63-010' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 8.29e-1
X 7.5e-1	 1.004e+0
X 1.25e+0	 1.275e+0
X 2.5e+0	 1.756e+0
X 5e+0	 2.44e+0
X 7.5e+0	 2.95e+0
X 1e+1	 3.362e+0
X 1.5e+1	 3.994e+0
X 2e+1	 4.445e+0
X 2.5e+1	 4.753e+0
X 3e+1	 4.938e+0
X 3.5e+1	 5e+0
X 4e+1	 4.938e+0
X 4.5e+1	 4.766e+0
X 5e+1	 4.496e+0
X 5.5e+1	 4.14e+0
X 6e+1	 3.715e+0
X 6.5e+1	 3.234e+0
X 7e+1	 2.712e+0
X 7.5e+1	 2.166e+0
X 8e+1	 1.618e+0
X 8.5e+1	 1.088e+0
X 9e+1	 6.04e-1
X 9.5e+1	 2.14e-1
X 1e+2	 0e+0
X 7.7e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63-010' &&
  chmod 0600 'naca-1.0/data/63-010' ||
  echo 'restore of naca-1.0/data/63-010 failed'
  shar_count="`wc -c < 'naca-1.0/data/63-010'`"
  test 442 -eq "$shar_count" ||
    echo "naca-1.0/data/63-010: original size 442, current size $shar_count"
fi
# ============= naca-1.0/data/63-012 ==============
if test -f 'naca-1.0/data/63-012' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63-012 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63-012 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63-012' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 9.85e-1
X 7.5e-1	 1.194e+0
X 1.25e+0	 1.519e+0
X 2.5e+0	 2.102e+0
X 5e+0	 2.925e+0
X 7.5e+0	 3.542e+0
X 1e+1	 4.039e+0
X 1.5e+1	 4.799e+0
X 2e+1	 5.342e+0
X 2.5e+1	 5.712e+0
X 3e+1	 5.93e+0
X 3.5e+1	 6e+0
X 4e+1	 5.92e+0
X 4.5e+1	 5.704e+0
X 5e+1	 5.37e+0
X 5.5e+1	 4.935e+0
X 6e+1	 4.42e+0
X 6.5e+1	 3.84e+0
X 7e+1	 3.21e+0
X 7.5e+1	 2.556e+0
X 8e+1	 1.902e+0
X 8.5e+1	 1.274e+0
X 9e+1	 7.07e-1
X 9.5e+1	 2.5e-1
X 1e+2	 0e+0
X 1.087e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63-012' &&
  chmod 0600 'naca-1.0/data/63-012' ||
  echo 'restore of naca-1.0/data/63-012 failed'
  shar_count="`wc -c < 'naca-1.0/data/63-012'`"
  test 440 -eq "$shar_count" ||
    echo "naca-1.0/data/63-012: original size 440, current size $shar_count"
fi
# ============= naca-1.0/data/63-015 ==============
if test -f 'naca-1.0/data/63-015' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63-015 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63-015 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63-015' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.204e+0
X 7.5e-1	 1.462e+0
X 1.25e+0	 1.878e+0
X 2.5e+0	 2.61e+0
X 5e+0	 3.648e+0
X 7.5e+0	 4.427e+0
X 1e+1	 5.055e+0
X 1.5e+1	 6.011e+0
X 2e+1	 6.693e+0
X 2.5e+1	 7.155e+0
X 3e+1	 7.421e+0
X 3.5e+1	 7.5e+0
X 4e+1	 7.386e+0
X 4.5e+1	 7.099e+0
X 5e+1	 6.665e+0
X 5.5e+1	 6.108e+0
X 6e+1	 5.453e+0
X 6.5e+1	 4.721e+0
X 7e+1	 3.934e+0
X 7.5e+1	 3.119e+0
X 8e+1	 2.31e+0
X 8.5e+1	 1.541e+0
X 9e+1	 8.52e-1
X 9.5e+1	 3e-1
X 1e+2	 0e+0
X 1.594e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63-015' &&
  chmod 0600 'naca-1.0/data/63-015' ||
  echo 'restore of naca-1.0/data/63-015 failed'
  shar_count="`wc -c < 'naca-1.0/data/63-015'`"
  test 445 -eq "$shar_count" ||
    echo "naca-1.0/data/63-015: original size 445, current size $shar_count"
fi
# ============= naca-1.0/data/63-018 ==============
if test -f 'naca-1.0/data/63-018' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63-018 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63-018 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63-018' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.404e+0
X 7.5e-1	 1.713e+0
X 1.25e+0	 2.217e+0
X 2.5e+0	 3.104e+0
X 5e+0	 4.362e+0
X 7.5e+0	 5.308e+0
X 1e+1	 6.068e+0
X 1.5e+1	 7.225e+0
X 2e+1	 8.048e+0
X 2.5e+1	 8.6e+0
X 3e+1	 8.913e+0
X 3.5e+1	 9e+0
X 4e+1	 8.845e+0
X 4.5e+1	 8.482e+0
X 5e+1	 7.942e+0
X 5.5e+1	 7.256e+0
X 6e+1	 6.455e+0
X 6.5e+1	 5.567e+0
X 7e+1	 4.622e+0
X 7.5e+1	 3.65e+0
X 8e+1	 2.691e+0
X 8.5e+1	 1.787e+0
X 9e+1	 9.85e-1
X 9.5e+1	 3.48e-1
X 1e+2	 0e+0
X 2.12e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63-018' &&
  chmod 0600 'naca-1.0/data/63-018' ||
  echo 'restore of naca-1.0/data/63-018 failed'
  shar_count="`wc -c < 'naca-1.0/data/63-018'`"
  test 444 -eq "$shar_count" ||
    echo "naca-1.0/data/63-018: original size 444, current size $shar_count"
fi
# ============= naca-1.0/data/63-021 ==============
if test -f 'naca-1.0/data/63-021' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63-021 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63-021 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63-021' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.583e+0
X 7.5e-1	 1.937e+0
X 1.25e+0	 2.527e+0
X 2.5e+0	 3.577e+0
X 5e+0	 5.065e+0
X 7.5e+0	 6.182e+0
X 1e+1	 7.08e+0
X 1.5e+1	 8.441e+0
X 2e+1	 9.41e+0
X 2.5e+1	 1.0053e+1
X 3e+1	 1.0412e+1
X 3.5e+1	 1.05e+1
X 4e+1	 1.0298e+1
X 4.5e+1	 9.854e+0
X 5e+1	 9.206e+0
X 5.5e+1	 8.39e+0
X 6e+1	 7.441e+0
X 6.5e+1	 6.396e+0
X 7e+1	 5.29e+0
X 7.5e+1	 4.16e+0
X 8e+1	 3.054e+0
X 8.5e+1	 2.021e+0
X 9e+1	 1.113e+0
X 9.5e+1	 3.92e-1
X 1e+2	 0e+0
X 2.65e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63-021' &&
  chmod 0600 'naca-1.0/data/63-021' ||
  echo 'restore of naca-1.0/data/63-021 failed'
  shar_count="`wc -c < 'naca-1.0/data/63-021'`"
  test 449 -eq "$shar_count" ||
    echo "naca-1.0/data/63-021: original size 449, current size $shar_count"
fi
# ============= naca-1.0/data/63A006 ==============
if test -f 'naca-1.0/data/63A006' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63A006 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63A006 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63A006' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 4.95e-1
X 7.5e-1	 5.95e-1
X 1.25e+0	 7.54e-1
X 2.5e+0	 1.045e+0
X 5e+0	 1.447e+0
X 7.5e+0	 1.747e+0
X 1e+1	 1.989e+0
X 1.5e+1	 2.362e+0
X 2e+1	 2.631e+0
X 2.5e+1	 2.82e+0
X 3e+1	 2.942e+0
X 3.5e+1	 2.996e+0
X 4e+1	 2.985e+0
X 4.5e+1	 2.914e+0
X 5e+1	 2.788e+0
X 5.5e+1	 2.613e+0
X 6e+1	 2.396e+0
X 6.5e+1	 2.143e+0
X 7e+1	 1.859e+0
X 7.5e+1	 1.556e+0
X 8e+1	 1.248e+0
X 8.5e+1	 9.39e-1
X 9e+1	 6.3e-1
X 9.5e+1	 3.22e-1
X 1e+2	 1.3e-2
X 2.65e-1	
X 1.4e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63A006' &&
  chmod 0600 'naca-1.0/data/63A006' ||
  echo 'restore of naca-1.0/data/63A006 failed'
  shar_count="`wc -c < 'naca-1.0/data/63A006'`"
  test 456 -eq "$shar_count" ||
    echo "naca-1.0/data/63A006: original size 456, current size $shar_count"
fi
# ============= naca-1.0/data/63A008 ==============
if test -f 'naca-1.0/data/63A008' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63A008 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63A008 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63A008' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 6.58e-1
X 7.5e-1	 7.91e-1
X 1.25e+0	 1.003e+0
X 2.5e+0	 1.391e+0
X 5e+0	 1.93e+0
X 7.5e+0	 2.332e+0
X 1e+1	 2.656e+0
X 1.5e+1	 3.155e+0
X 2e+1	 3.515e+0
X 2.5e+1	 3.766e+0
X 3e+1	 3.926e+0
X 3.5e+1	 3.995e+0
X 4e+1	 3.978e+0
X 4.5e+1	 3.878e+0
X 5e+1	 3.705e+0
X 5.5e+1	 3.468e+0
X 6e+1	 3.176e+0
X 6.5e+1	 2.837e+0
X 7e+1	 2.457e+0
X 7.5e+1	 2.055e+0
X 8e+1	 1.647e+0
X 8.5e+1	 1.24e+0
X 9e+1	 8.33e-1
X 9.5e+1	 4.25e-1
X 1e+2	 1.8e-2
X 4.73e-1	
X 2e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63A008' &&
  chmod 0600 'naca-1.0/data/63A008' ||
  echo 'restore of naca-1.0/data/63A008 failed'
  shar_count="`wc -c < 'naca-1.0/data/63A008'`"
  test 456 -eq "$shar_count" ||
    echo "naca-1.0/data/63A008: original size 456, current size $shar_count"
fi
# ============= naca-1.0/data/63A010 ==============
if test -f 'naca-1.0/data/63A010' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63A010 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63A010 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63A010' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 8.16e-1
X 7.5e-1	 9.83e-1
X 1.25e+0	 1.25e+0
X 2.5e+0	 1.737e+0
X 5e+0	 2.412e+0
X 7.5e+0	 2.917e+0
X 1e+1	 3.324e+0
X 1.5e+1	 3.95e+0
X 2e+1	 4.4e+0
X 2.5e+1	 4.714e+0
X 3e+1	 4.913e+0
X 3.5e+1	 4.995e+0
X 4e+1	 4.968e+0
X 4.5e+1	 4.837e+0
X 5e+1	 4.613e+0
X 5.5e+1	 4.311e+0
X 6e+1	 3.943e+0
X 6.5e+1	 3.517e+0
X 7e+1	 3.044e+0
X 7.5e+1	 2.545e+0
X 8e+1	 2.04e+0
X 8.5e+1	 1.535e+0
X 9e+1	 1.03e+0
X 9.5e+1	 5.25e-1
X 1e+2	 2.1e-2
X 7.42e-1	
X 2.3e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63A010' &&
  chmod 0600 'naca-1.0/data/63A010' ||
  echo 'restore of naca-1.0/data/63A010 failed'
  shar_count="`wc -c < 'naca-1.0/data/63A010'`"
  test 455 -eq "$shar_count" ||
    echo "naca-1.0/data/63A010: original size 455, current size $shar_count"
fi
# ============= naca-1.0/data/63A012 ==============
if test -f 'naca-1.0/data/63A012' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63A012 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63A012 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63A012' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 9.73e-1
X 7.5e-1	 1.173e+0
X 1.25e+0	 1.492e+0
X 2.5e+0	 2.078e+0
X 5e+0	 2.895e+0
X 7.5e+0	 3.504e+0
X 1e+1	 3.994e+0
X 1.5e+1	 4.747e+0
X 2e+1	 5.287e+0
X 2.5e+1	 5.664e+0
X 3e+1	 5.901e+0
X 3.5e+1	 5.995e+0
X 4e+1	 5.957e+0
X 4.5e+1	 5.792e+0
X 5e+1	 5.517e+0
X 5.5e+1	 5.148e+0
X 6e+1	 4.7e+0
X 6.5e+1	 4.186e+0
X 7e+1	 3.621e+0
X 7.5e+1	 3.026e+0
X 8e+1	 2.426e+0
X 8.5e+1	 1.826e+0
X 9e+1	 1.225e+0
X 9.5e+1	 6.25e-1
X 1e+2	 2.5e-2
X 1.071e+0	
X 2.8e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63A012' &&
  chmod 0600 'naca-1.0/data/63A012' ||
  echo 'restore of naca-1.0/data/63A012 failed'
  shar_count="`wc -c < 'naca-1.0/data/63A012'`"
  test 461 -eq "$shar_count" ||
    echo "naca-1.0/data/63A012: original size 461, current size $shar_count"
fi
# ============= naca-1.0/data/63A015 ==============
if test -f 'naca-1.0/data/63A015' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/63A015 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/63A015 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/63A015' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.203e+0
X 7.5e-1	 1.448e+0
X 1.25e+0	 1.844e+0
X 2.5e+0	 2.579e+0
X 5e+0	 3.618e+0
X 7.5e+0	 4.382e+0
X 1e+1	 4.997e+0
X 1.5e+1	 5.942e+0
X 2e+1	 6.619e+0
X 2.5e+1	 7.091e+0
X 3e+1	 7.384e+0
X 3.5e+1	 7.496e+0
X 4e+1	 7.435e+0
X 4.5e+1	 7.215e+0
X 5e+1	 6.858e+0
X 5.5e+1	 6.387e+0
X 6e+1	 5.82e+0
X 6.5e+1	 5.173e+0
X 7e+1	 4.468e+0
X 7.5e+1	 3.731e+0
X 8e+1	 2.991e+0
X 8.5e+1	 2.252e+0
X 9e+1	 1.512e+0
X 9.5e+1	 7.72e-1
X 1e+2	 3.2e-2
X 1.63e+0	
X 3.7e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/63A015' &&
  chmod 0600 'naca-1.0/data/63A015' ||
  echo 'restore of naca-1.0/data/63A015 failed'
  shar_count="`wc -c < 'naca-1.0/data/63A015'`"
  test 462 -eq "$shar_count" ||
    echo "naca-1.0/data/63A015: original size 462, current size $shar_count"
fi
# ============= naca-1.0/data/64-006 ==============
if test -f 'naca-1.0/data/64-006' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64-006 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64-006 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64-006' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 4.94e-1
X 7.5e-1	 5.96e-1
X 1.25e+0	 7.54e-1
X 2.5e+0	 1.024e+0
X 5e+0	 1.405e+0
X 7.5e+0	 1.692e+0
X 1e+1	 1.928e+0
X 1.5e+1	 2.298e+0
X 2e+1	 2.572e+0
X 2.5e+1	 2.772e+0
X 3e+1	 2.907e+0
X 3.5e+1	 2.981e+0
X 4e+1	 2.995e+0
X 4.5e+1	 2.919e+0
X 5e+1	 2.775e+0
X 5.5e+1	 2.575e+0
X 6e+1	 2.331e+0
X 6.5e+1	 2.05e+0
X 7e+1	 1.74e+0
X 7.5e+1	 1.412e+0
X 8e+1	 1.072e+0
X 8.5e+1	 7.37e-1
X 9e+1	 4.23e-1
X 9.5e+1	 1.57e-1
X 1e+2	 0e+0
X 2.56e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64-006' &&
  chmod 0600 'naca-1.0/data/64-006' ||
  echo 'restore of naca-1.0/data/64-006 failed'
  shar_count="`wc -c < 'naca-1.0/data/64-006'`"
  test 445 -eq "$shar_count" ||
    echo "naca-1.0/data/64-006: original size 445, current size $shar_count"
fi
# ============= naca-1.0/data/64-008 ==============
if test -f 'naca-1.0/data/64-008' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64-008 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64-008 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64-008' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 6.58e-1
X 7.5e-1	 7.94e-1
X 1.25e+0	 1.005e+0
X 2.5e+0	 1.365e+0
X 5e+0	 1.875e+0
X 7.5e+0	 2.259e+0
X 1e+1	 2.574e+0
X 1.5e+1	 3.069e+0
X 2e+1	 3.437e+0
X 2.5e+1	 3.704e+0
X 3e+1	 3.884e+0
X 3.5e+1	 3.979e+0
X 4e+1	 3.992e+0
X 4.5e+1	 3.883e+0
X 5e+1	 3.684e+0
X 5.5e+1	 3.411e+0
X 6e+1	 3.081e+0
X 6.5e+1	 2.704e+0
X 7e+1	 2.291e+0
X 7.5e+1	 1.854e+0
X 8e+1	 1.404e+0
X 8.5e+1	 9.61e-1
X 9e+1	 5.5e-1
X 9.5e+1	 2.06e-1
X 1e+2	 0e+0
X 4.55e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64-008' &&
  chmod 0600 'naca-1.0/data/64-008' ||
  echo 'restore of naca-1.0/data/64-008 failed'
  shar_count="`wc -c < 'naca-1.0/data/64-008'`"
  test 447 -eq "$shar_count" ||
    echo "naca-1.0/data/64-008: original size 447, current size $shar_count"
fi
# ============= naca-1.0/data/64-009 ==============
if test -f 'naca-1.0/data/64-009' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64-009 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64-009 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64-009' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 7.39e-1
X 7.5e-1	 8.92e-1
X 1.25e+0	 1.128e+0
X 2.5e+0	 1.533e+0
X 5e+0	 2.109e+0
X 7.5e+0	 2.543e+0
X 1e+1	 2.898e+0
X 1.5e+1	 3.455e+0
X 2e+1	 3.868e+0
X 2.5e+1	 4.17e+0
X 3e+1	 4.373e+0
X 3.5e+1	 4.479e+0
X 4e+1	 4.49e+0
X 4.5e+1	 4.364e+0
X 5e+1	 4.136e+0
X 5.5e+1	 3.826e+0
X 6e+1	 3.452e+0
X 6.5e+1	 3.026e+0
X 7e+1	 2.561e+0
X 7.5e+1	 2.069e+0
X 8e+1	 1.564e+0
X 8.5e+1	 1.069e+0
X 9e+1	 6.11e-1
X 9.5e+1	 2.27e-1
X 1e+2	 0e+0
X 5.79e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64-009' &&
  chmod 0600 'naca-1.0/data/64-009' ||
  echo 'restore of naca-1.0/data/64-009 failed'
  shar_count="`wc -c < 'naca-1.0/data/64-009'`"
  test 447 -eq "$shar_count" ||
    echo "naca-1.0/data/64-009: original size 447, current size $shar_count"
fi
# ============= naca-1.0/data/64-010 ==============
if test -f 'naca-1.0/data/64-010' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64-010 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64-010 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64-010' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 8.2e-1
X 7.5e-1	 9.89e-1
X 1.25e+0	 1.25e+0
X 2.5e+0	 1.701e+0
X 5e+0	 2.343e+0
X 7.5e+0	 2.826e+0
X 1e+1	 3.221e+0
X 1.5e+1	 3.842e+0
X 2e+1	 4.302e+0
X 2.5e+1	 4.639e+0
X 3e+1	 4.864e+0
X 3.5e+1	 4.98e+0
X 4e+1	 4.988e+0
X 4.5e+1	 4.843e+0
X 5e+1	 4.586e+0
X 5.5e+1	 4.238e+0
X 6e+1	 3.82e+0
X 6.5e+1	 3.345e+0
X 7e+1	 2.827e+0
X 7.5e+1	 2.281e+0
X 8e+1	 1.722e+0
X 8.5e+1	 1.176e+0
X 9e+1	 6.71e-1
X 9.5e+1	 2.48e-1
X 1e+2	 0e+0
X 7.2e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64-010' &&
  chmod 0600 'naca-1.0/data/64-010' ||
  echo 'restore of naca-1.0/data/64-010 failed'
  shar_count="`wc -c < 'naca-1.0/data/64-010'`"
  test 444 -eq "$shar_count" ||
    echo "naca-1.0/data/64-010: original size 444, current size $shar_count"
fi
# ============= naca-1.0/data/64-012 ==============
if test -f 'naca-1.0/data/64-012' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64-012 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64-012 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64-012' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 9.78e-1
X 7.5e-1	 1.179e+0
X 1.25e+0	 1.49e+0
X 2.5e+0	 2.035e+0
X 5e+0	 2.81e+0
X 7.5e+0	 3.394e+0
X 1e+1	 3.871e+0
X 1.5e+1	 4.62e+0
X 2e+1	 5.173e+0
X 2.5e+1	 5.576e+0
X 3e+1	 5.844e+0
X 3.5e+1	 5.978e+0
X 4e+1	 5.981e+0
X 4.5e+1	 5.798e+0
X 5e+1	 5.48e+0
X 5.5e+1	 5.056e+0
X 6e+1	 4.548e+0
X 6.5e+1	 3.974e+0
X 7e+1	 3.35e+0
X 7.5e+1	 2.695e+0
X 8e+1	 2.029e+0
X 8.5e+1	 1.382e+0
X 9e+1	 7.86e-1
X 9.5e+1	 2.88e-1
X 1e+2	 0e+0
X 1.04e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64-012' &&
  chmod 0600 'naca-1.0/data/64-012' ||
  echo 'restore of naca-1.0/data/64-012 failed'
  shar_count="`wc -c < 'naca-1.0/data/64-012'`"
  test 445 -eq "$shar_count" ||
    echo "naca-1.0/data/64-012: original size 445, current size $shar_count"
fi
# ============= naca-1.0/data/64-015 ==============
if test -f 'naca-1.0/data/64-015' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64-015 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64-015 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64-015' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.208e+0
X 7.5e-1	 1.456e+0
X 1.25e+0	 1.842e+0
X 2.5e+0	 2.528e+0
X 5e+0	 3.504e+0
X 7.5e+0	 4.24e+0
X 1e+1	 4.842e+0
X 1.5e+1	 5.785e+0
X 2e+1	 6.48e+0
X 2.5e+1	 6.985e+0
X 3e+1	 7.319e+0
X 3.5e+1	 7.482e+0
X 4e+1	 7.473e+0
X 4.5e+1	 7.224e+0
X 5e+1	 6.81e+0
X 5.5e+1	 6.266e+0
X 6e+1	 5.62e+0
X 6.5e+1	 4.895e+0
X 7e+1	 4.113e+0
X 7.5e+1	 3.296e+0
X 8e+1	 2.472e+0
X 8.5e+1	 1.677e+0
X 9e+1	 9.5e-1
X 9.5e+1	 3.46e-1
X 1e+2	 0e+0
X 1.59e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64-015' &&
  chmod 0600 'naca-1.0/data/64-015' ||
  echo 'restore of naca-1.0/data/64-015 failed'
  shar_count="`wc -c < 'naca-1.0/data/64-015'`"
  test 446 -eq "$shar_count" ||
    echo "naca-1.0/data/64-015: original size 446, current size $shar_count"
fi
# ============= naca-1.0/data/64-018 ==============
if test -f 'naca-1.0/data/64-018' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64-018 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64-018 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64-018' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.428e+0
X 7.5e-1	 1.72e+0
X 1.25e+0	 2.177e+0
X 2.5e+0	 3.005e+0
X 5e+0	 4.186e+0
X 7.5e+0	 5.076e+0
X 1e+1	 5.803e+0
X 1.5e+1	 6.942e+0
X 2e+1	 7.782e+0
X 2.5e+1	 8.391e+0
X 3e+1	 8.789e+0
X 3.5e+1	 8.979e+0
X 4e+1	 8.952e+0
X 4.5e+1	 8.63e+0
X 5e+1	 8.114e+0
X 5.5e+1	 7.445e+0
X 6e+1	 6.658e+0
X 6.5e+1	 5.782e+0
X 7e+1	 4.842e+0
X 7.5e+1	 3.866e+0
X 8e+1	 2.888e+0
X 8.5e+1	 1.951e+0
X 9e+1	 1.101e+0
X 9.5e+1	 4e-1
X 1e+2	 0e+0
X 2.208e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64-018' &&
  chmod 0600 'naca-1.0/data/64-018' ||
  echo 'restore of naca-1.0/data/64-018 failed'
  shar_count="`wc -c < 'naca-1.0/data/64-018'`"
  test 448 -eq "$shar_count" ||
    echo "naca-1.0/data/64-018: original size 448, current size $shar_count"
fi
# ============= naca-1.0/data/64-021 ==============
if test -f 'naca-1.0/data/64-021' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64-021 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64-021 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64-021' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.646e+0
X 7.5e-1	 1.985e+0
X 1.25e+0	 2.517e+0
X 2.5e+0	 3.485e+0
X 5e+0	 4.871e+0
X 7.5e+0	 5.915e+0
X 1e+1	 6.769e+0
X 1.5e+1	 8.108e+0
X 2e+1	 9.095e+0
X 2.5e+1	 9.807e+0
X 3e+1	 1.0269e+1
X 3.5e+1	 1.0481e+1
X 4e+1	 1.0431e+1
X 4.5e+1	 1.003e+1
X 5e+1	 9.404e+0
X 5.5e+1	 8.607e+0
X 6e+1	 7.678e+0
X 6.5e+1	 6.649e+0
X 7e+1	 5.549e+0
X 7.5e+1	 4.416e+0
X 8e+1	 3.287e+0
X 8.5e+1	 2.213e+0
X 9e+1	 1.245e+0
X 9.5e+1	 4.49e-1
X 1e+2	 0e+0
X 2.884e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64-021' &&
  chmod 0600 'naca-1.0/data/64-021' ||
  echo 'restore of naca-1.0/data/64-021 failed'
  shar_count="`wc -c < 'naca-1.0/data/64-021'`"
  test 456 -eq "$shar_count" ||
    echo "naca-1.0/data/64-021: original size 456, current size $shar_count"
fi
# ============= naca-1.0/data/64A006 ==============
if test -f 'naca-1.0/data/64A006' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64A006 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64A006 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64A006' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 4.85e-1
X 7.5e-1	 5.85e-1
X 1.25e+0	 7.39e-1
X 2.5e+0	 1.016e+0
X 5e+0	 1.399e+0
X 7.5e+0	 1.684e+0
X 1e+1	 1.919e+0
X 1.5e+1	 2.283e+0
X 2e+1	 2.557e+0
X 2.5e+1	 2.757e+0
X 3e+1	 2.896e+0
X 3.5e+1	 2.977e+0
X 4e+1	 2.999e+0
X 4.5e+1	 2.945e+0
X 5e+1	 2.825e+0
X 5.5e+1	 2.653e+0
X 6e+1	 2.438e+0
X 6.5e+1	 2.188e+0
X 7e+1	 1.907e+0
X 7.5e+1	 1.602e+0
X 8e+1	 1.285e+0
X 8.5e+1	 9.67e-1
X 9e+1	 6.49e-1
X 9.5e+1	 3.31e-1
X 1e+2	 1.3e-2
X 2.46e-1	
X 1.4e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64A006' &&
  chmod 0600 'naca-1.0/data/64A006' ||
  echo 'restore of naca-1.0/data/64A006 failed'
  shar_count="`wc -c < 'naca-1.0/data/64A006'`"
  test 458 -eq "$shar_count" ||
    echo "naca-1.0/data/64A006: original size 458, current size $shar_count"
fi
# ============= naca-1.0/data/64A008 ==============
if test -f 'naca-1.0/data/64A008' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64A008 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64A008 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64A008' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 6.46e-1
X 7.5e-1	 7.78e-1
X 1.25e+0	 9.83e-1
X 2.5e+0	 1.353e+0
X 5e+0	 1.863e+0
X 7.5e+0	 2.245e+0
X 1e+1	 2.559e+0
X 1.5e+1	 3.047e+0
X 2e+1	 3.414e+0
X 2.5e+1	 3.681e+0
X 3e+1	 3.866e+0
X 3.5e+1	 3.972e+0
X 4e+1	 3.998e+0
X 4.5e+1	 3.921e+0
X 5e+1	 3.757e+0
X 5.5e+1	 3.524e+0
X 6e+1	 3.234e+0
X 6.5e+1	 2.897e+0
X 7e+1	 2.521e+0
X 7.5e+1	 2.117e+0
X 8e+1	 1.698e+0
X 8.5e+1	 1.278e+0
X 9e+1	 8.58e-1
X 9.5e+1	 4.38e-1
X 1e+2	 1.8e-2
X 4.39e-1	
X 2e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64A008' &&
  chmod 0600 'naca-1.0/data/64A008' ||
  echo 'restore of naca-1.0/data/64A008 failed'
  shar_count="`wc -c < 'naca-1.0/data/64A008'`"
  test 457 -eq "$shar_count" ||
    echo "naca-1.0/data/64A008: original size 457, current size $shar_count"
fi
# ============= naca-1.0/data/64A010 ==============
if test -f 'naca-1.0/data/64A010' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64A010 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64A010 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64A010' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 8.04e-1
X 7.5e-1	 9.69e-1
X 1.25e+0	 1.225e+0
X 2.5e+0	 1.688e+0
X 5e+0	 2.327e+0
X 7.5e+0	 2.805e+0
X 1e+1	 3.199e+0
X 1.5e+1	 3.813e+0
X 2e+1	 4.272e+0
X 2.5e+1	 4.606e+0
X 3e+1	 4.837e+0
X 3.5e+1	 4.968e+0
X 4e+1	 4.995e+0
X 4.5e+1	 4.894e+0
X 5e+1	 4.684e+0
X 5.5e+1	 4.388e+0
X 6e+1	 4.021e+0
X 6.5e+1	 3.597e+0
X 7e+1	 3.127e+0
X 7.5e+1	 2.623e+0
X 8e+1	 2.103e+0
X 8.5e+1	 1.582e+0
X 9e+1	 1.062e+0
X 9.5e+1	 5.41e-1
X 1e+2	 2.1e-2
X 6.87e-1	
X 2.3e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64A010' &&
  chmod 0600 'naca-1.0/data/64A010' ||
  echo 'restore of naca-1.0/data/64A010 failed'
  shar_count="`wc -c < 'naca-1.0/data/64A010'`"
  test 461 -eq "$shar_count" ||
    echo "naca-1.0/data/64A010: original size 461, current size $shar_count"
fi
# ============= naca-1.0/data/64A012 ==============
if test -f 'naca-1.0/data/64A012' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64A012 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64A012 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64A012' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 9.61e-1
X 7.5e-1	 1.158e+0
X 1.25e+0	 1.464e+0
X 2.5e+0	 2.018e+0
X 5e+0	 2.788e+0
X 7.5e+0	 3.364e+0
X 1e+1	 3.839e+0
X 1.5e+1	 4.58e+0
X 2e+1	 5.132e+0
X 2.5e+1	 5.534e+0
X 3e+1	 5.809e+0
X 3.5e+1	 5.965e+0
X 4e+1	 5.993e+0
X 4.5e+1	 5.863e+0
X 5e+1	 5.605e+0
X 5.5e+1	 5.244e+0
X 6e+1	 4.801e+0
X 6.5e+1	 4.289e+0
X 7e+1	 3.721e+0
X 7.5e+1	 3.118e+0
X 8e+1	 2.5e+0
X 8.5e+1	 1.882e+0
X 9e+1	 1.263e+0
X 9.5e+1	 6.44e-1
X 1e+2	 2.5e-2
X 9.94e-1	
X 2.8e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64A012' &&
  chmod 0600 'naca-1.0/data/64A012' ||
  echo 'restore of naca-1.0/data/64A012 failed'
  shar_count="`wc -c < 'naca-1.0/data/64A012'`"
  test 459 -eq "$shar_count" ||
    echo "naca-1.0/data/64A012: original size 459, current size $shar_count"
fi
# ============= naca-1.0/data/64A015 ==============
if test -f 'naca-1.0/data/64A015' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/64A015 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/64A015 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/64A015' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.193e+0
X 7.5e-1	 1.436e+0
X 1.25e+0	 1.815e+0
X 2.5e+0	 2.508e+0
X 5e+0	 3.477e+0
X 7.5e+0	 4.202e+0
X 1e+1	 4.799e+0
X 1.5e+1	 5.732e+0
X 2e+1	 6.423e+0
X 2.5e+1	 6.926e+0
X 3e+1	 7.27e+0
X 3.5e+1	 7.463e+0
X 4e+1	 7.487e+0
X 4.5e+1	 7.313e+0
X 5e+1	 6.978e+0
X 5.5e+1	 6.517e+0
X 6e+1	 5.956e+0
X 6.5e+1	 5.311e+0
X 7e+1	 4.6e+0
X 7.5e+1	 3.847e+0
X 8e+1	 3.084e+0
X 8.5e+1	 2.321e+0
X 9e+1	 1.558e+0
X 9.5e+1	 7.95e-1
X 1e+2	 3.2e-2
X 1.561e+0	
X 3.7e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/64A015' &&
  chmod 0600 'naca-1.0/data/64A015' ||
  echo 'restore of naca-1.0/data/64A015 failed'
  shar_count="`wc -c < 'naca-1.0/data/64A015'`"
  test 461 -eq "$shar_count" ||
    echo "naca-1.0/data/64A015: original size 461, current size $shar_count"
fi
# ============= naca-1.0/data/65-006 ==============
if test -f 'naca-1.0/data/65-006' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65-006 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65-006 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65-006' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 4.76e-1
X 7.5e-1	 5.74e-1
X 1.25e+0	 7.17e-1
X 2.5e+0	 9.56e-1
X 5e+0	 1.31e+0
X 7.5e+0	 1.589e+0
X 1e+1	 1.824e+0
X 1.5e+1	 2.197e+0
X 2e+1	 2.482e+0
X 2.5e+1	 2.697e+0
X 3e+1	 2.852e+0
X 3.5e+1	 2.952e+0
X 4e+1	 2.998e+0
X 4.5e+1	 2.983e+0
X 5e+1	 2.9e+0
X 5.5e+1	 2.741e+0
X 6e+1	 2.518e+0
X 6.5e+1	 2.246e+0
X 7e+1	 1.935e+0
X 7.5e+1	 1.594e+0
X 8e+1	 1.233e+0
X 8.5e+1	 8.65e-1
X 9e+1	 5.1e-1
X 9.5e+1	 1.95e-1
X 1e+2	 0e+0
X 2.4e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65-006' &&
  chmod 0600 'naca-1.0/data/65-006' ||
  echo 'restore of naca-1.0/data/65-006 failed'
  shar_count="`wc -c < 'naca-1.0/data/65-006'`"
  test 441 -eq "$shar_count" ||
    echo "naca-1.0/data/65-006: original size 441, current size $shar_count"
fi
# ============= naca-1.0/data/65-008 ==============
if test -f 'naca-1.0/data/65-008' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65-008 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65-008 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65-008' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 6.27e-1
X 7.5e-1	 7.56e-1
X 1.25e+0	 9.45e-1
X 2.5e+0	 1.267e+0
X 5e+0	 1.745e+0
X 7.5e+0	 2.118e+0
X 1e+1	 2.432e+0
X 1.5e+1	 2.931e+0
X 2e+1	 3.312e+0
X 2.5e+1	 3.599e+0
X 3e+1	 3.805e+0
X 3.5e+1	 3.938e+0
X 4e+1	 3.998e+0
X 4.5e+1	 3.974e+0
X 5e+1	 3.857e+0
X 5.5e+1	 3.638e+0
X 6e+1	 3.337e+0
X 6.5e+1	 2.971e+0
X 7e+1	 2.553e+0
X 7.5e+1	 2.096e+0
X 8e+1	 1.617e+0
X 8.5e+1	 1.131e+0
X 9e+1	 6.64e-1
X 9.5e+1	 2.52e-1
X 1e+2	 0e+0
X 4.34e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65-008' &&
  chmod 0600 'naca-1.0/data/65-008' ||
  echo 'restore of naca-1.0/data/65-008 failed'
  shar_count="`wc -c < 'naca-1.0/data/65-008'`"
  test 448 -eq "$shar_count" ||
    echo "naca-1.0/data/65-008: original size 448, current size $shar_count"
fi
# ============= naca-1.0/data/65-009 ==============
if test -f 'naca-1.0/data/65-009' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65-009 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65-009 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65-009' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 7e-1
X 7.5e-1	 8.45e-1
X 1.25e+0	 1.058e+0
X 2.5e+0	 1.421e+0
X 5e+0	 1.961e+0
X 7.5e+0	 2.383e+0
X 1e+1	 2.736e+0
X 1.5e+1	 3.299e+0
X 2e+1	 3.727e+0
X 2.5e+1	 4.05e+0
X 3e+1	 4.282e+0
X 3.5e+1	 4.431e+0
X 4e+1	 4.496e+0
X 4.5e+1	 4.469e+0
X 5e+1	 4.336e+0
X 5.5e+1	 4.086e+0
X 6e+1	 3.743e+0
X 6.5e+1	 3.328e+0
X 7e+1	 2.856e+0
X 7.5e+1	 2.342e+0
X 8e+1	 1.805e+0
X 8.5e+1	 1.26e+0
X 9e+1	 7.38e-1
X 9.5e+1	 2.8e-1
X 1e+2	 0e+0
X 5.52e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65-009' &&
  chmod 0600 'naca-1.0/data/65-009' ||
  echo 'restore of naca-1.0/data/65-009 failed'
  shar_count="`wc -c < 'naca-1.0/data/65-009'`"
  test 443 -eq "$shar_count" ||
    echo "naca-1.0/data/65-009: original size 443, current size $shar_count"
fi
# ============= naca-1.0/data/65-010 ==============
if test -f 'naca-1.0/data/65-010' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65-010 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65-010 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65-010' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 7.72e-1
X 7.5e-1	 9.32e-1
X 1.25e+0	 1.169e+0
X 2.5e+0	 1.574e+0
X 5e+0	 2.177e+0
X 7.5e+0	 2.647e+0
X 1e+1	 3.04e+0
X 1.5e+1	 3.666e+0
X 2e+1	 4.143e+0
X 2.5e+1	 4.503e+0
X 3e+1	 4.76e+0
X 3.5e+1	 4.924e+0
X 4e+1	 4.996e+0
X 4.5e+1	 4.963e+0
X 5e+1	 4.812e+0
X 5.5e+1	 4.53e+0
X 6e+1	 4.146e+0
X 6.5e+1	 3.682e+0
X 7e+1	 3.156e+0
X 7.5e+1	 2.584e+0
X 8e+1	 1.987e+0
X 8.5e+1	 1.385e+0
X 9e+1	 8.1e-1
X 9.5e+1	 3.06e-1
X 1e+2	 0e+0
X 6.87e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65-010' &&
  chmod 0600 'naca-1.0/data/65-010' ||
  echo 'restore of naca-1.0/data/65-010 failed'
  shar_count="`wc -c < 'naca-1.0/data/65-010'`"
  test 445 -eq "$shar_count" ||
    echo "naca-1.0/data/65-010: original size 445, current size $shar_count"
fi
# ============= naca-1.0/data/65-012 ==============
if test -f 'naca-1.0/data/65-012' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65-012 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65-012 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65-012' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 9.23e-1
X 7.5e-1	 1.109e+0
X 1.25e+0	 1.387e+0
X 2.5e+0	 1.875e+0
X 5e+0	 2.606e+0
X 7.5e+0	 3.172e+0
X 1e+1	 3.647e+0
X 1.5e+1	 4.402e+0
X 2e+1	 4.975e+0
X 2.5e+1	 5.406e+0
X 3e+1	 5.716e+0
X 3.5e+1	 5.912e+0
X 4e+1	 5.997e+0
X 4.5e+1	 5.949e+0
X 5e+1	 5.757e+0
X 5.5e+1	 5.412e+0
X 6e+1	 4.943e+0
X 6.5e+1	 4.381e+0
X 7e+1	 3.743e+0
X 7.5e+1	 3.059e+0
X 8e+1	 2.345e+0
X 8.5e+1	 1.63e+0
X 9e+1	 9.47e-1
X 9.5e+1	 3.56e-1
X 1e+2	 0e+0
X 1e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65-012' &&
  chmod 0600 'naca-1.0/data/65-012' ||
  echo 'restore of naca-1.0/data/65-012 failed'
  shar_count="`wc -c < 'naca-1.0/data/65-012'`"
  test 446 -eq "$shar_count" ||
    echo "naca-1.0/data/65-012: original size 446, current size $shar_count"
fi
# ============= naca-1.0/data/65-015 ==============
if test -f 'naca-1.0/data/65-015' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65-015 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65-015 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65-015' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.124e+0
X 7.5e-1	 1.356e+0
X 1.25e+0	 1.702e+0
X 2.5e+0	 2.324e+0
X 5e+0	 3.245e+0
X 7.5e+0	 3.959e+0
X 1e+1	 4.555e+0
X 1.5e+1	 5.504e+0
X 2e+1	 6.223e+0
X 2.5e+1	 6.764e+0
X 3e+1	 7.152e+0
X 3.5e+1	 7.396e+0
X 4e+1	 7.498e+0
X 4.5e+1	 7.427e+0
X 5e+1	 7.168e+0
X 5.5e+1	 6.72e+0
X 6e+1	 6.118e+0
X 6.5e+1	 5.403e+0
X 7e+1	 4.6e+0
X 7.5e+1	 3.744e+0
X 8e+1	 2.858e+0
X 8.5e+1	 1.977e+0
X 9e+1	 1.144e+0
X 9.5e+1	 4.28e-1
X 1e+2	 0e+0
X 1.505e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65-015' &&
  chmod 0600 'naca-1.0/data/65-015' ||
  echo 'restore of naca-1.0/data/65-015 failed'
  shar_count="`wc -c < 'naca-1.0/data/65-015'`"
  test 450 -eq "$shar_count" ||
    echo "naca-1.0/data/65-015: original size 450, current size $shar_count"
fi
# ============= naca-1.0/data/65-018 ==============
if test -f 'naca-1.0/data/65-018' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65-018 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65-018 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65-018' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.337e+0
X 7.5e-1	 1.608e+0
X 1.25e+0	 2.014e+0
X 2.5e+0	 2.751e+0
X 5e+0	 3.866e+0
X 7.5e+0	 4.733e+0
X 1e+1	 5.457e+0
X 1.5e+1	 6.606e+0
X 2e+1	 7.476e+0
X 2.5e+1	 8.129e+0
X 3e+1	 8.595e+0
X 3.5e+1	 8.886e+0
X 4e+1	 8.999e+0
X 4.5e+1	 8.901e+0
X 5e+1	 8.568e+0
X 5.5e+1	 8.008e+0
X 6e+1	 7.267e+0
X 6.5e+1	 6.395e+0
X 7e+1	 5.426e+0
X 7.5e+1	 4.396e+0
X 8e+1	 3.338e+0
X 8.5e+1	 2.295e+0
X 9e+1	 1.319e+0
X 9.5e+1	 4.9e-1
X 1e+2	 0e+0
X 1.96e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65-018' &&
  chmod 0600 'naca-1.0/data/65-018' ||
  echo 'restore of naca-1.0/data/65-018 failed'
  shar_count="`wc -c < 'naca-1.0/data/65-018'`"
  test 451 -eq "$shar_count" ||
    echo "naca-1.0/data/65-018: original size 451, current size $shar_count"
fi
# ============= naca-1.0/data/65-021 ==============
if test -f 'naca-1.0/data/65-021' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65-021 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65-021 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65-021' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.522e+0
X 7.5e-1	 1.838e+0
X 1.25e+0	 2.301e+0
X 2.5e+0	 3.154e+0
X 5e+0	 4.472e+0
X 7.5e+0	 5.498e+0
X 1e+1	 6.352e+0
X 1.5e+1	 7.7e+0
X 2e+1	 8.72e+0
X 2.5e+1	 9.487e+0
X 3e+1	 1.0036e+1
X 3.5e+1	 1.0375e+1
X 4e+1	 1.0499e+1
X 4.5e+1	 1.0366e+1
X 5e+1	 9.952e+0
X 5.5e+1	 9.277e+0
X 6e+1	 8.39e+0
X 6.5e+1	 7.36e+0
X 7e+1	 6.224e+0
X 7.5e+1	 5.024e+0
X 8e+1	 3.8e+0
X 8.5e+1	 2.598e+0
X 9e+1	 1.484e+0
X 9.5e+1	 5.46e-1
X 1e+2	 0e+0
X 2.5e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65-021' &&
  chmod 0600 'naca-1.0/data/65-021' ||
  echo 'restore of naca-1.0/data/65-021 failed'
  shar_count="`wc -c < 'naca-1.0/data/65-021'`"
  test 448 -eq "$shar_count" ||
    echo "naca-1.0/data/65-021: original size 448, current size $shar_count"
fi
# ============= naca-1.0/data/65A006 ==============
if test -f 'naca-1.0/data/65A006' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65A006 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65A006 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65A006' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 4.64e-1
X 7.5e-1	 5.63e-1
X 1.25e+0	 7.18e-1
X 2.5e+0	 9.81e-1
X 5e+0	 1.313e+0
X 7.5e+0	 1.591e+0
X 1e+1	 1.824e+0
X 1.5e+1	 2.194e+0
X 2e+1	 2.474e+0
X 2.5e+1	 2.687e+0
X 3e+1	 2.842e+0
X 3.5e+1	 2.945e+0
X 4e+1	 2.996e+0
X 4.5e+1	 2.992e+0
X 5e+1	 2.925e+0
X 5.5e+1	 2.793e+0
X 6e+1	 2.602e+0
X 6.5e+1	 2.364e+0
X 7e+1	 2.087e+0
X 7.5e+1	 1.775e+0
X 8e+1	 1.437e+0
X 8.5e+1	 1.083e+0
X 9e+1	 7.27e-1
X 9.5e+1	 3.7e-1
X 1e+2	 1.3e-2
X 2.29e-1	
X 1.4e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65A006' &&
  chmod 0600 'naca-1.0/data/65A006' ||
  echo 'restore of naca-1.0/data/65A006 failed'
  shar_count="`wc -c < 'naca-1.0/data/65A006'`"
  test 457 -eq "$shar_count" ||
    echo "naca-1.0/data/65A006: original size 457, current size $shar_count"
fi
# ============= naca-1.0/data/65A008 ==============
if test -f 'naca-1.0/data/65A008' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65A008 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65A008 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65A008' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 6.15e-1
X 7.5e-1	 7.46e-1
X 1.25e+0	 9.51e-1
X 2.5e+0	 1.303e+0
X 5e+0	 1.749e+0
X 7.5e+0	 2.12e+0
X 1e+1	 2.432e+0
X 1.5e+1	 2.926e+0
X 2e+1	 3.301e+0
X 2.5e+1	 3.585e+0
X 3e+1	 3.791e+0
X 3.5e+1	 3.928e+0
X 4e+1	 3.995e+0
X 4.5e+1	 3.988e+0
X 5e+1	 3.895e+0
X 5.5e+1	 3.714e+0
X 6e+1	 3.456e+0
X 6.5e+1	 3.135e+0
X 7e+1	 2.763e+0
X 7.5e+1	 2.348e+0
X 8e+1	 1.898e+0
X 8.5e+1	 1.43e+0
X 9e+1	 9.6e-1
X 9.5e+1	 4.89e-1
X 1e+2	 1.8e-2
X 4.08e-1	
X 2e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65A008' &&
  chmod 0600 'naca-1.0/data/65A008' ||
  echo 'restore of naca-1.0/data/65A008 failed'
  shar_count="`wc -c < 'naca-1.0/data/65A008'`"
  test 454 -eq "$shar_count" ||
    echo "naca-1.0/data/65A008: original size 454, current size $shar_count"
fi
# ============= naca-1.0/data/65A010 ==============
if test -f 'naca-1.0/data/65A010' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65A010 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65A010 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65A010' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 7.65e-1
X 7.5e-1	 9.28e-1
X 1.25e+0	 1.183e+0
X 2.5e+0	 1.623e+0
X 5e+0	 2.182e+0
X 7.5e+0	 2.65e+0
X 1e+1	 3.04e+0
X 1.5e+1	 3.658e+0
X 2e+1	 4.127e+0
X 2.5e+1	 4.483e+0
X 3e+1	 4.742e+0
X 3.5e+1	 4.912e+0
X 4e+1	 4.995e+0
X 4.5e+1	 4.983e+0
X 5e+1	 4.863e+0
X 5.5e+1	 4.632e+0
X 6e+1	 4.304e+0
X 6.5e+1	 3.899e+0
X 7e+1	 3.432e+0
X 7.5e+1	 2.912e+0
X 8e+1	 2.352e+0
X 8.5e+1	 1.771e+0
X 9e+1	 1.188e+0
X 9.5e+1	 6.04e-1
X 1e+2	 2.1e-2
X 6.39e-1	
X 2.3e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65A010' &&
  chmod 0600 'naca-1.0/data/65A010' ||
  echo 'restore of naca-1.0/data/65A010 failed'
  shar_count="`wc -c < 'naca-1.0/data/65A010'`"
  test 459 -eq "$shar_count" ||
    echo "naca-1.0/data/65A010: original size 459, current size $shar_count"
fi
# ============= naca-1.0/data/65A012 ==============
if test -f 'naca-1.0/data/65A012' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65A012 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65A012 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65A012' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 9.13e-1
X 7.5e-1	 1.106e+0
X 1.25e+0	 1.414e+0
X 2.5e+0	 1.942e+0
X 5e+0	 2.614e+0
X 7.5e+0	 3.176e+0
X 1e+1	 3.647e+0
X 1.5e+1	 4.392e+0
X 2e+1	 4.956e+0
X 2.5e+1	 5.383e+0
X 3e+1	 5.693e+0
X 3.5e+1	 5.897e+0
X 4e+1	 5.995e+0
X 4.5e+1	 5.977e+0
X 5e+1	 5.828e+0
X 5.5e+1	 5.544e+0
X 6e+1	 5.143e+0
X 6.5e+1	 4.654e+0
X 7e+1	 4.091e+0
X 7.5e+1	 3.467e+0
X 8e+1	 2.798e+0
X 8.5e+1	 2.106e+0
X 9e+1	 1.413e+0
X 9.5e+1	 7.19e-1
X 1e+2	 2.5e-2
X 9.22e-1	
X 2.9e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65A012' &&
  chmod 0600 'naca-1.0/data/65A012' ||
  echo 'restore of naca-1.0/data/65A012 failed'
  shar_count="`wc -c < 'naca-1.0/data/65A012'`"
  test 462 -eq "$shar_count" ||
    echo "naca-1.0/data/65A012: original size 462, current size $shar_count"
fi
# ============= naca-1.0/data/65A015 ==============
if test -f 'naca-1.0/data/65A015' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/65A015 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/65A015 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/65A015' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.131e+0
X 7.5e-1	 1.371e+0
X 1.25e+0	 1.75e+0
X 2.5e+0	 2.412e+0
X 5e+0	 3.255e+0
X 7.5e+0	 3.962e+0
X 1e+1	 4.553e+0
X 1.5e+1	 5.488e+0
X 2e+1	 6.198e+0
X 2.5e+1	 6.734e+0
X 3e+1	 7.122e+0
X 3.5e+1	 7.376e+0
X 4e+1	 7.496e+0
X 4.5e+1	 7.467e+0
X 5e+1	 7.269e+0
X 5.5e+1	 6.903e+0
X 6e+1	 6.393e+0
X 6.5e+1	 5.772e+0
X 7e+1	 5.063e+0
X 7.5e+1	 4.282e+0
X 8e+1	 3.451e+0
X 8.5e+1	 2.598e+0
X 9e+1	 1.743e+0
X 9.5e+1	 8.87e-1
X 1e+2	 3.2e-2
X 1.446e+0	
X 3.8e-2	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/65A015' &&
  chmod 0600 'naca-1.0/data/65A015' ||
  echo 'restore of naca-1.0/data/65A015 failed'
  shar_count="`wc -c < 'naca-1.0/data/65A015'`"
  test 463 -eq "$shar_count" ||
    echo "naca-1.0/data/65A015: original size 463, current size $shar_count"
fi
# ============= naca-1.0/data/66-006 ==============
if test -f 'naca-1.0/data/66-006' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/66-006 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/66-006 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/66-006' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 4.61e-1
X 7.5e-1	 5.54e-1
X 1.25e+0	 6.93e-1
X 2.5e+0	 9.18e-1
X 5e+0	 1.257e+0
X 7.5e+0	 1.524e+0
X 1e+1	 1.752e+0
X 1.5e+1	 2.119e+0
X 2e+1	 2.401e+0
X 2.5e+1	 2.618e+0
X 3e+1	 2.782e+0
X 3.5e+1	 2.899e+0
X 4e+1	 2.971e+0
X 4.5e+1	 3e+0
X 5e+1	 2.985e+0
X 5.5e+1	 2.925e+0
X 6e+1	 2.815e+0
X 6.5e+1	 2.611e+0
X 7e+1	 2.316e+0
X 7.5e+1	 1.953e+0
X 8e+1	 1.543e+0
X 8.5e+1	 1.107e+0
X 9e+1	 6.65e-1
X 9.5e+1	 2.62e-1
X 1e+2	 0e+0
X 2.23e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/66-006' &&
  chmod 0600 'naca-1.0/data/66-006' ||
  echo 'restore of naca-1.0/data/66-006 failed'
  shar_count="`wc -c < 'naca-1.0/data/66-006'`"
  test 443 -eq "$shar_count" ||
    echo "naca-1.0/data/66-006: original size 443, current size $shar_count"
fi
# ============= naca-1.0/data/66-008 ==============
if test -f 'naca-1.0/data/66-008' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/66-008 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/66-008 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/66-008' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 6.1e-1
X 7.5e-1	 7.35e-1
X 1.25e+0	 9.19e-1
X 2.5e+0	 1.219e+0
X 5e+0	 1.673e+0
X 7.5e+0	 2.031e+0
X 1e+1	 2.335e+0
X 1.5e+1	 2.826e+0
X 2e+1	 3.201e+0
X 2.5e+1	 3.49e+0
X 3e+1	 3.709e+0
X 3.5e+1	 3.865e+0
X 4e+1	 3.962e+0
X 4.5e+1	 4e+0
X 5e+1	 3.978e+0
X 5.5e+1	 3.896e+0
X 6e+1	 3.74e+0
X 6.5e+1	 3.459e+0
X 7e+1	 3.062e+0
X 7.5e+1	 2.574e+0
X 8e+1	 2.027e+0
X 8.5e+1	 1.447e+0
X 9e+1	 8.64e-1
X 9.5e+1	 3.38e-1
X 1e+2	 0e+0
X 4.11e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/66-008' &&
  chmod 0600 'naca-1.0/data/66-008' ||
  echo 'restore of naca-1.0/data/66-008 failed'
  shar_count="`wc -c < 'naca-1.0/data/66-008'`"
  test 441 -eq "$shar_count" ||
    echo "naca-1.0/data/66-008: original size 441, current size $shar_count"
fi
# ============= naca-1.0/data/66-009 ==============
if test -f 'naca-1.0/data/66-009' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/66-009 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/66-009 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/66-009' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 6.87e-1
X 7.5e-1	 8.24e-1
X 1.25e+0	 1.03e+0
X 2.5e+0	 1.368e+0
X 5e+0	 1.88e+0
X 7.5e+0	 2.283e+0
X 1e+1	 2.626e+0
X 1.5e+1	 3.178e+0
X 2e+1	 3.601e+0
X 2.5e+1	 3.927e+0
X 3e+1	 4.173e+0
X 3.5e+1	 4.348e+0
X 4e+1	 4.457e+0
X 4.5e+1	 4.499e+0
X 5e+1	 4.475e+0
X 5.5e+1	 4.381e+0
X 6e+1	 4.204e+0
X 6.5e+1	 3.882e+0
X 7e+1	 3.428e+0
X 7.5e+1	 2.877e+0
X 8e+1	 2.263e+0
X 8.5e+1	 1.611e+0
X 9e+1	 9.61e-1
X 9.5e+1	 3.74e-1
X 1e+2	 0e+0
X 5.3e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/66-009' &&
  chmod 0600 'naca-1.0/data/66-009' ||
  echo 'restore of naca-1.0/data/66-009 failed'
  shar_count="`wc -c < 'naca-1.0/data/66-009'`"
  test 446 -eq "$shar_count" ||
    echo "naca-1.0/data/66-009: original size 446, current size $shar_count"
fi
# ============= naca-1.0/data/66-010 ==============
if test -f 'naca-1.0/data/66-010' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/66-010 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/66-010 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/66-010' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 7.59e-1
X 7.5e-1	 9.13e-1
X 1.25e+0	 1.141e+0
X 2.5e+0	 1.516e+0
X 5e+0	 2.087e+0
X 7.5e+0	 2.536e+0
X 1e+1	 2.917e+0
X 1.5e+1	 3.53e+0
X 2e+1	 4.001e+0
X 2.5e+1	 4.363e+0
X 3e+1	 4.636e+0
X 3.5e+1	 4.832e+0
X 4e+1	 4.953e+0
X 4.5e+1	 5e+0
X 5e+1	 4.971e+0
X 5.5e+1	 4.865e+0
X 6e+1	 4.665e+0
X 6.5e+1	 4.302e+0
X 7e+1	 3.787e+0
X 7.5e+1	 3.176e+0
X 8e+1	 2.494e+0
X 8.5e+1	 1.773e+0
X 9e+1	 1.054e+0
X 9.5e+1	 4.08e-1
X 1e+2	 0e+0
X 6.62e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/66-010' &&
  chmod 0600 'naca-1.0/data/66-010' ||
  echo 'restore of naca-1.0/data/66-010 failed'
  shar_count="`wc -c < 'naca-1.0/data/66-010'`"
  test 445 -eq "$shar_count" ||
    echo "naca-1.0/data/66-010: original size 445, current size $shar_count"
fi
# ============= naca-1.0/data/66-012 ==============
if test -f 'naca-1.0/data/66-012' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/66-012 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/66-012 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/66-012' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 9.06e-1
X 7.5e-1	 1.087e+0
X 1.25e+0	 1.358e+0
X 2.5e+0	 1.808e+0
X 5e+0	 2.496e+0
X 7.5e+0	 3.037e+0
X 1e+1	 3.496e+0
X 1.5e+1	 4.234e+0
X 2e+1	 4.801e+0
X 2.5e+1	 5.238e+0
X 3e+1	 5.568e+0
X 3.5e+1	 5.803e+0
X 4e+1	 5.947e+0
X 4.5e+1	 6e+0
X 5e+1	 5.965e+0
X 5.5e+1	 5.836e+0
X 6e+1	 5.588e+0
X 6.5e+1	 5.139e+0
X 7e+1	 4.515e+0
X 7.5e+1	 3.767e+0
X 8e+1	 2.944e+0
X 8.5e+1	 2.083e+0
X 9e+1	 1.234e+0
X 9.5e+1	 4.74e-1
X 1e+2	 0e+0
X 9.52e-1	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/66-012' &&
  chmod 0600 'naca-1.0/data/66-012' ||
  echo 'restore of naca-1.0/data/66-012 failed'
  shar_count="`wc -c < 'naca-1.0/data/66-012'`"
  test 447 -eq "$shar_count" ||
    echo "naca-1.0/data/66-012: original size 447, current size $shar_count"
fi
# ============= naca-1.0/data/66-015 ==============
if test -f 'naca-1.0/data/66-015' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/66-015 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/66-015 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/66-015' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.122e+0
X 7.5e-1	 1.343e+0
X 1.25e+0	 1.675e+0
X 2.5e+0	 2.235e+0
X 5e+0	 3.1e+0
X 7.5e+0	 3.781e+0
X 1e+1	 4.358e+0
X 1.5e+1	 5.286e+0
X 2e+1	 5.995e+0
X 2.5e+1	 6.543e+0
X 3e+1	 6.956e+0
X 3.5e+1	 7.25e+0
X 4e+1	 7.43e+0
X 4.5e+1	 7.495e+0
X 5e+1	 7.45e+0
X 5.5e+1	 7.283e+0
X 6e+1	 6.959e+0
X 6.5e+1	 6.372e+0
X 7e+1	 5.576e+0
X 7.5e+1	 4.632e+0
X 8e+1	 3.598e+0
X 8.5e+1	 2.53e+0
X 9e+1	 1.489e+0
X 9.5e+1	 5.66e-1
X 1e+2	 0e+0
X 1.435e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/66-015' &&
  chmod 0600 'naca-1.0/data/66-015' ||
  echo 'restore of naca-1.0/data/66-015 failed'
  shar_count="`wc -c < 'naca-1.0/data/66-015'`"
  test 447 -eq "$shar_count" ||
    echo "naca-1.0/data/66-015: original size 447, current size $shar_count"
fi
# ============= naca-1.0/data/66-018 ==============
if test -f 'naca-1.0/data/66-018' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/66-018 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/66-018 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/66-018' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.323e+0
X 7.5e-1	 1.571e+0
X 1.25e+0	 1.952e+0
X 2.5e+0	 2.646e+0
X 5e+0	 3.69e+0
X 7.5e+0	 4.513e+0
X 1e+1	 5.21e+0
X 1.5e+1	 6.333e+0
X 2e+1	 7.188e+0
X 2.5e+1	 7.848e+0
X 3e+1	 8.346e+0
X 3.5e+1	 8.701e+0
X 4e+1	 8.918e+0
X 4.5e+1	 8.998e+0
X 5e+1	 8.942e+0
X 5.5e+1	 8.733e+0
X 6e+1	 8.323e+0
X 6.5e+1	 7.58e+0
X 7e+1	 6.597e+0
X 7.5e+1	 5.451e+0
X 8e+1	 4.206e+0
X 8.5e+1	 2.934e+0
X 9e+1	 1.714e+0
X 9.5e+1	 6.46e-1
X 1e+2	 0e+0
X 1.955e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/66-018' &&
  chmod 0600 'naca-1.0/data/66-018' ||
  echo 'restore of naca-1.0/data/66-018 failed'
  shar_count="`wc -c < 'naca-1.0/data/66-018'`"
  test 450 -eq "$shar_count" ||
    echo "naca-1.0/data/66-018: original size 450, current size $shar_count"
fi
# ============= naca-1.0/data/66-021 ==============
if test -f 'naca-1.0/data/66-021' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/66-021 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/66-021 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/66-021' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.525e+0
X 7.5e-1	 1.804e+0
X 1.25e+0	 2.24e+0
X 2.5e+0	 3.045e+0
X 5e+0	 4.269e+0
X 7.5e+0	 5.233e+0
X 1e+1	 6.052e+0
X 1.5e+1	 7.369e+0
X 2e+1	 8.376e+0
X 2.5e+1	 9.153e+0
X 3e+1	 9.738e+0
X 3.5e+1	 1.0154e+1
X 4e+1	 1.0407e+1
X 4.5e+1	 1.05e+1
X 5e+1	 1.0434e+1
X 5.5e+1	 1.0186e+1
X 6e+1	 9.692e+0
X 6.5e+1	 8.793e+0
X 7e+1	 7.61e+0
X 7.5e+1	 6.251e+0
X 8e+1	 4.796e+0
X 8.5e+1	 3.324e+0
X 9e+1	 1.924e+0
X 9.5e+1	 7.17e-1
X 1e+2	 0e+0
X 2.55e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/66-021' &&
  chmod 0600 'naca-1.0/data/66-021' ||
  echo 'restore of naca-1.0/data/66-021 failed'
  shar_count="`wc -c < 'naca-1.0/data/66-021'`"
  test 453 -eq "$shar_count" ||
    echo "naca-1.0/data/66-021: original size 453, current size $shar_count"
fi
# ============= naca-1.0/data/67-015 ==============
if test -f 'naca-1.0/data/67-015' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/data/67-015 (File already exists)'
else
  echo 'x - extracting naca-1.0/data/67-015 (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/data/67-015' &&
*
x	y
X 0e+0	 0e+0
X 5e-1	 1.167e+0
X 7.5e-1	 1.394e+0
X 1.25e+0	 1.764e+0
X 2.5e+0	 2.395e+0
X 5e+0	 3.245e+0
X 7.5e+0	 3.9e+0
X 1e+1	 4.433e+0
X 1.5e+1	 5.283e+0
X 2e+1	 5.94e+0
X 2.5e+1	 6.454e+0
X 3e+1	 6.854e+0
X 3.5e+1	 7.155e+0
X 4e+1	 7.359e+0
X 4.5e+1	 7.475e+0
X 5e+1	 7.497e+0
X 5.5e+1	 7.421e+0
X 6e+1	 7.231e+0
X 6.5e+1	 6.905e+0
X 7e+1	 6.402e+0
X 7.5e+1	 5.621e+0
X 8e+1	 4.54e+0
X 8.5e+1	 3.327e+0
X 9e+1	 2.021e+0
X 9.5e+1	 7.88e-1
X 1e+2	 0e+0
X 1.523e+0	
X	
SHAR_EOF
  $shar_touch -am 0829171695 'naca-1.0/data/67-015' &&
  chmod 0600 'naca-1.0/data/67-015' ||
  echo 'restore of naca-1.0/data/67-015 failed'
  shar_count="`wc -c < 'naca-1.0/data/67-015'`"
  test 449 -eq "$shar_count" ||
    echo "naca-1.0/data/67-015: original size 449, current size $shar_count"
fi
# ============= naca-1.0/Makehead.cray ==============
if test -f 'naca-1.0/Makehead.cray' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makehead.cray (File already exists)'
else
  echo 'x - extracting naca-1.0/Makehead.cray (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makehead.cray' &&
#-----------------------------------------------------------------------------
#
#  Makefile made with makemake
#
#  Cray UNICOS Version
#
#-----------------------------------------------------------------------------
#
X.SUFFIXES: .o .f .c
X
#
# Compiler names
#
CC      = cc
FC      = cf77
AR      = ar
RANLIB  = true
X
#
# Compiler flags
#
CFLAGS = -O
FFLAGS = -Zc
ARFLAGS = ovr
LDFLAGS = -L. -lnaca
X
#
#  Compile individual source files
#
X.f.o:
X	$(FC) $(FFLAGS) -c $<
X
X.c.o:
X	$(CC) $(CFLAGS) -c $<
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makehead.cray' &&
  chmod 0400 'naca-1.0/Makehead.cray' ||
  echo 'restore of naca-1.0/Makehead.cray failed'
  shar_count="`wc -c < 'naca-1.0/Makehead.cray'`"
  test 500 -eq "$shar_count" ||
    echo "naca-1.0/Makehead.cray: original size 500, current size $shar_count"
fi
# ============= naca-1.0/Makehead.linux ==============
if test -f 'naca-1.0/Makehead.linux' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makehead.linux (File already exists)'
else
  echo 'x - extracting naca-1.0/Makehead.linux (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makehead.linux' &&
#-----------------------------------------------------------------------------
#
#  Makefile made with makemake
#
#  Linux Version
#
#-----------------------------------------------------------------------------
#
X.SUFFIXES:
X.SUFFIXES: .o .F .f .c
X
#
# Compiler names
#
CC      = cc
FC      = g77
AR      = ar
RANLIB  = ranlib
X
#
# Compiler flags
#
CFLAGS = -O
FFLAGS = -O
ARFLAGS = rv
LDFLAGS = -L. -lnaca
X
#
#  Compile individual source files
#
X.f.o:
X	$(FC) $(FFLAGS) -c $<
X
X.c.o:
X	$(CC) $(CFLAGS) -c $<
X
#
#  The f2c library seems to lack the exit() call
#
EXT = exit.o
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makehead.linux' &&
  chmod 0400 'naca-1.0/Makehead.linux' ||
  echo 'restore of naca-1.0/Makehead.linux failed'
  shar_count="`wc -c < 'naca-1.0/Makehead.linux'`"
  test 573 -eq "$shar_count" ||
    echo "naca-1.0/Makehead.linux: original size 573, current size $shar_count"
fi
# ============= naca-1.0/Makehead.sgi ==============
if test -f 'naca-1.0/Makehead.sgi' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makehead.sgi (File already exists)'
else
  echo 'x - extracting naca-1.0/Makehead.sgi (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makehead.sgi' &&
#-----------------------------------------------------------------------------
#
#  Makefile made with makemake
#
#  SGI Version
#
#-----------------------------------------------------------------------------
#
X.SUFFIXES: .o .f .c
X
#
# Compiler names
#
CC      = cc
FC      = f77
AR      = ar
RANLIB  = true
X
#
# Compiler flags
#
CFLAGS = -O
FFLAGS = -O
ARFLAGS = ovr
LDFLAGS = -L. -lnaca
X
#
#  Compile individual source files
#
X.f.o:
X	$(FC) $(FFLAGS) -c $<
X
X.c.o:
X	$(CC) $(CFLAGS) -c $<
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makehead.sgi' &&
  chmod 0400 'naca-1.0/Makehead.sgi' ||
  echo 'restore of naca-1.0/Makehead.sgi failed'
  shar_count="`wc -c < 'naca-1.0/Makehead.sgi'`"
  test 490 -eq "$shar_count" ||
    echo "naca-1.0/Makehead.sgi: original size 490, current size $shar_count"
fi
# ============= naca-1.0/Makehead.std ==============
if test -f 'naca-1.0/Makehead.std' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makehead.std (File already exists)'
else
  echo 'x - extracting naca-1.0/Makehead.std (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makehead.std' &&
#-----------------------------------------------------------------------------
#
#  Makefile made with makemake
#
#  Standard UNIX Version
#
#-----------------------------------------------------------------------------
#
X.SUFFIXES: .o .f .c
X
#
# Compiler names
#
CC      = cc
FC      = f77
AR      = ar
RANLIB  = ranlib
X
#
# Compiler flags
#
CFLAGS  = -O
FFLAGS  = -O
ARFLAGS = ov
LDFLAGS = -L. -lnaca
X
#
#  Compile individual source files
#
X.f.o:
X	$(FC) $(FFLAGS) -c $<
X
X.c.o:
X	$(CC) $(CFLAGS) -c $<
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makehead.std' &&
  chmod 0400 'naca-1.0/Makehead.std' ||
  echo 'restore of naca-1.0/Makehead.std failed'
  shar_count="`wc -c < 'naca-1.0/Makehead.std'`"
  test 503 -eq "$shar_count" ||
    echo "naca-1.0/Makehead.std: original size 503, current size $shar_count"
fi
# ============= naca-1.0/Makehead.sun ==============
if test -f 'naca-1.0/Makehead.sun' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Makehead.sun (File already exists)'
else
  echo 'x - extracting naca-1.0/Makehead.sun (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Makehead.sun' &&
#-----------------------------------------------------------------------------
#
#  Makefile made with makemake
#
#  Sun SPARC Version
#
#-----------------------------------------------------------------------------
#
X.SUFFIXES: .o .f .c
X
#
# Compiler names
#
CC      = cc
FC      = f77
AR      = ar
RANLIB  = ranlib
X
#
# Compiler flags
#
CFLAGS = -O
FFLAGS = -O
ARFLAGS = vr
LDFLAGS = -L. -lnaca
X
#
#  Compile individual source files
#
X.f.o:
X	$(FC) $(FFLAGS) -c $<
X
X.c.o:
X	$(CC) $(CFLAGS) -c $<
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Makehead.sun' &&
  chmod 0400 'naca-1.0/Makehead.sun' ||
  echo 'restore of naca-1.0/Makehead.sun failed'
  shar_count="`wc -c < 'naca-1.0/Makehead.sun'`"
  test 497 -eq "$shar_count" ||
    echo "naca-1.0/Makehead.sun: original size 497, current size $shar_count"
fi
# ============= naca-1.0/ReadMe ==============
if test -f 'naca-1.0/ReadMe' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/ReadMe (File already exists)'
else
  echo 'x - extracting naca-1.0/ReadMe (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/ReadMe' &&
X
NACA -- a program and library to generate NACA Airfoil Ordinates
X
X			By: S.E. Norris
X
X		   norris@cfd.mech.unsw.edu.au
X
X
Introduction:
X
In the 30's and 40's the NACA undertook a systematic investigation into
aerofoil design (or rather airfoil, since they were American). The airfoil
sections studied are widely used since a large body of experimental data 
for the sections has been published. Now, barely a week goes by without 
someone asking for the section coordinates in sci.aeronautics. Hopefully
these people might get some help from this code.
X
Naca is a utility to generate NACA section ordinates. Most of the foils
in Abbott and von Doenhoff[1] can be generated, with the exception of the
7-series foils. Thus it will produce 4 and 5 digit foils (original and
modified), the 1-series sections, and the 6-series sections (with uniform
and partial loading, and with the original and A series profiles). 
X
The code to generate the airfoil section is included as a library. Thus
it can be linked to your code, with only one call being neede to generate 
any section.
X
You should be able to find the code at
X
X	ftp://cfd.mech.unsw.edu.au/pub/src/naca-1.0.shar.Z
X
X
The Naca Utility:
X
The naca utility is run with the command line arguments
X
X	naca NACA_Number N
X
where N is the number of points defined around the foil. Actually N+1
points are spat out of the program since the trailing edge point is 
dumped out twice. Thus the command
X
X	naca 2412-64 100
X
would write 101 points from a modified 2412 section to stdout.
X
In general the foil numbers are identical with those found in 
Abbot and von Doenhoff. Examples are
X
X	 0012		Symmetric 4 digit foil, 12% thickness
X	23010		Cambered 5 digit foil, 12% thickness
X	 2402-64	Modified cambered 4 digit foil.
X	23011-32	Modified 5 digit foil.
X	16-012		Symmetric 1-series foil.
X
The naming convention for the 6-series foils is rather more complicated. 
The first two numbers are followed by a subscript giving the width of
the drag bucket in terms of lift coefficent in tenths. This information
is not needed to define a section and is thus ignored. Thus a
X
X	64 -018 
X          3
X
is generated by the command
X
X	naca 64-018 100
X
A later series of thickness distributions has a 'A' instead of the dash, 
and can be generated too
X
X	naca 64A018 100
X
If a foil thickness profile is generated by linearly increasing/decreasing 
one of the originally derived thickness distributions, then the thickness 
of the original section is given in the original NACA number system by a
bracketed subscript (with the width of the drag bucket leading the subscript).
Thus a 17% thick section can be generated from a published 18% thickness
distribution
X
X	64    -217
X	  (318)
X
These sections can be generated by naca; however the drag bucket number is
dropped when feeding in the number (and remember to put quotes around the
number when using brackets on the command line)
X
X	naca "64(18)-217" 100
X
Since there is no 17% thickness section, if the (18) is dropped from the
number the naca program will interpolate from the nearest section, and
will remind you of this interpolation in the output. Thus the first line
of the output from the 
X
X	naca 64-217 100
X
command is
X
# NACA 64(18)-217
X
telling you that the code had to interpolate from an 18% section.
X
Finally, the mean line can be modified from the original serction by use 
of the trailing a notation:
X
X	naca 64-217a=0.5
X
will generate a NACA 64(18)-217 a=0.5 section.
X
The points are distributed acording to a cosine rule (see[2] p132). This 
puts more points at the ends of the foil, thinning out the distribution
in the foil's midsection.
X
X
The NACA library:
X
The NACA foils can be generated via a subroutine call. The name of the
foil is passed in as a string, and the section data is returned. Look in
the naca.f file for an example of the call.
X
X
Yuck, what horrible code!
X
I wrote the library back in 1992/3 when I was still learning the ropes at 
the Uni of Auckland. The code is pretty horrid, yes, but it still works, 
so don't fix it. It orginal hung off the bottom of the GUI to my 2D aero 
program, so it is reasonably robust.
X
X
Porting:
X
I have tested the code on IBM RS6000's, SGI Indegos, Indego2's, and a 
personal Iris, a Cray YMP-EL, the frontend of a CM5, a Sun, some
HP 735's, DEC AXP's running OSF, and me braindead Linux box. Hopefully
after that the code is reasonably portable. The only system calls are
in naca.f: these are either getting command line args (iargc() and getarg()),
or the exit() call (prevents many compilers from throwing an ugly STOP at 
you). Apart from that it is pretty much plain DoD Fortran.
X
X
Instalation:
X
Read the Installation document.
X
X
To Do:
X
A man page should be made.
Other distributions of points apart from a cosine distribution should be
available.
The NACA 1- and 6-series profile data should be hard coded into the program,
rather than loaded from file.
X
X
Bugs/Problems:
X
The astute might notice that the NACA 64A010 foil isn't as written in 
Abbott and von Doenhoff -- the 7.5% station is 2.805 rather than the 
published 2.905. This was done to ensure fairness in the foil -- I 
assume that there is a misprint in the book at this point.
X
The U77 libraries on the HP's that I have access to are miscompiled it
seems. Whilst most functions in the library have a trailing underscore,
the exit() function doesn't, and so can't be linked with. Rather than
doing a whole lot of buggering around adding underscores to the calls to
the other functions in the library, I have included a dummy exit() routine
with the code. This is also used in the Linux port, since the f2c libraries 
don't seem to have this routine either.
X
X
References:
X
[1] Abbott, I. H. and von Doenhoff, A. E., "Theory of Wing Sections, 
X    Including a Summary of Airfoil Data", McGraw-Hill, 1949. 
X    Reprinted by Dover.
X
[2] Moran, J., "An Introduction to Theoretical and Computational 
X    Aerodynamics",Wiley, 1984.
X
X
----------------------------------------------------------------------------
X Stuart Norris                        |
X Email:  norris@cfd.mech.unsw.edu.au  | School of Mechanical Engineering
X Work:   Tel: (+61 2) 385 5738        | University of New South Wales
X         Fax: (+61 2) 663 1222        | Sydney 2052
X Home:   Tel: (+61 2) 313 0662        | Australia
----------------------------------------------------------------------------
SHAR_EOF
  $shar_touch -am 0830211595 'naca-1.0/ReadMe' &&
  chmod 0400 'naca-1.0/ReadMe' ||
  echo 'restore of naca-1.0/ReadMe failed'
  shar_count="`wc -c < 'naca-1.0/ReadMe'`"
  test 6377 -eq "$shar_count" ||
    echo "naca-1.0/ReadMe: original size 6377, current size $shar_count"
fi
# ============= naca-1.0/mkdirect ==============
if test -f 'naca-1.0/mkdirect' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/mkdirect (File already exists)'
else
  echo 'x - extracting naca-1.0/mkdirect (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/mkdirect' &&
#
#  mkdirect -- puts the pwd into the directory include file
#
rm -f directory.h
echo "      CHARACTER*(*) direct" >> directory.h
echo "      PARAMETER (direct =" >> directory.h
echo "     &'`pwd`/data/'" >> directory.h
echo "     &)"       >> directory.h
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/mkdirect' &&
  chmod 0500 'naca-1.0/mkdirect' ||
  echo 'restore of naca-1.0/mkdirect failed'
  shar_count="`wc -c < 'naca-1.0/mkdirect'`"
  test 257 -eq "$shar_count" ||
    echo "naca-1.0/mkdirect: original size 257, current size $shar_count"
fi
# ============= naca-1.0/mkmake ==============
if test -f 'naca-1.0/mkmake' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/mkmake (File already exists)'
else
  echo 'x - extracting naca-1.0/mkmake (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/mkmake' &&
#!/bin/sh
#
#  mkmake: Copys the OS dependant Makefile.os to be Makefile
#
X
#
# Find the machine and os
#
OS=`uname`
HOST=`uname -n`
X
case $OS in
X    AIX)
X	SYS='IBM RS6000 running AIX'
X	;;
X    HP-UX)
X	SYS='HP running HP-UX'
X	;;
X    IRIX)
X	SYS='SGI running IRIX'
X	;;
X    Linux)
X	SYS='PC running Linux'
X	;;
X    OSF1)
X	SYS='DEC Alpha running OSF'
X	;;
X    SunOS)
X	SYS='Sun SPARC running SunOS'
X	;;
X    SunOS/CM)
X	SYS='TMC CM5 running SunOS/CM'
X	;;
X    unicos)
X	SYS='CRAY running UNICOS'
X	;;
X    *)
X	SYS='Unknown operating system. Your on your own from here bud.'
X	;;   
esac
X
echo "$HOST is a $SYS"
X
if [ -f Makefile ]; then
X    echo Replacing Makefile
else
X    touch Makefile
fi
X
X
#
# Copy the system makefiles to be THE Makefile
#
for i in `find . -name Makefile -print`
do
X    if [ -f $i.conf ]; then
X	echo 'Making '$i
X	rm -f $i
X	case $OS in
X	    AIX)
X		cat Makehead.aix > $i
X	        ;;
X	    IRIX)
X		cat Makehead.sgi > $i
X		;;
X	    HP-UX)
X		cat Makehead.hp > $i
X	        ;;
X	    Linux)
X		cat Makehead.linux > $i
X		;;
X	    OSF1)
X		cat Makehead.alpha > $i
X	        ;;
X            SunOS)
X		cat Makehead.sun > $i
X		;;
X    	    SunOS/CM)
X	        cat Makehead.cm5 > $i
X		;;
X            unicos)
X	        cat Makehead.cray > $i
X		;;
X    	    *)
X	        cat Makehead.std > $i
X		;;   
X	esac
X        cat $i.conf >> $i
X    fi
done
X
X
X
X
X
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/mkmake' &&
  chmod 0500 'naca-1.0/mkmake' ||
  echo 'restore of naca-1.0/mkmake failed'
  shar_count="`wc -c < 'naca-1.0/mkmake'`"
  test 1327 -eq "$shar_count" ||
    echo "naca-1.0/mkmake: original size 1327, current size $shar_count"
fi
# ============= naca-1.0/Installation ==============
if test -f 'naca-1.0/Installation' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/Installation (File already exists)'
else
  echo 'x - extracting naca-1.0/Installation (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/Installation' &&
X
Run the install script to build the library and naca executable. Then
move the eecutable to wherever you like it. 
X
The directory.h header file is automatically generated by the mkdirect
script -- it contains a character string holding the name of the 
directory in which the NACA foil data can be found. The program needs
to see this data to generate 1- and 6-series foils, so if you are intending
to move the data directory to some place apart from where the program was
built, be sure to edit this file.
X
The mkmake script will hopefully identify the OS of your platform, and will
make a makefile for your machine. If you have to create your own Makefile
don't worry -- just check that the compiler names are OK, and that the
flags for ar are correct. Some machines don't have ranlib, so on these
platforms set RANLIB=true. If your machine barfs at the exit() routine, add
EXT=exit.o
X
X
----------------------------------------------------------------------------
X Stuart Norris                        |
X Email:  norris@cfd.mech.unsw.edu.au  | School of Mechanical Engineering
X Work:   Tel: (+61 2) 385 5738        | University of New South Wales
X         Fax: (+61 2) 663 1222        | Sydney 2052
X Home:   Tel: (+61 2) 313 0662        | Australia
----------------------------------------------------------------------------
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/Installation' &&
  chmod 0400 'naca-1.0/Installation' ||
  echo 'restore of naca-1.0/Installation failed'
  shar_count="`wc -c < 'naca-1.0/Installation'`"
  test 1330 -eq "$shar_count" ||
    echo "naca-1.0/Installation: original size 1330, current size $shar_count"
fi
# ============= naca-1.0/exit.f ==============
if test -f 'naca-1.0/exit.f' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/exit.f (File already exists)'
else
  echo 'x - extracting naca-1.0/exit.f (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/exit.f' &&
c
c------------------------------------------------------------------------------
c
X      SUBROUTINE Exit( i )
c
X      IMPLICIT none
X      INTEGER i
c
c  This routine is a replacement for the exit() system call, which is
c  lacking a trailing underscore on the HP's that I have access to. All
c  the other library functions have the underscore, as is customary
c  with UNIX Fortran compilers, so it looks like a stupid fuckup by
c  HP (is that really surprising?).
c
X      stop
X      END
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/exit.f' &&
  chmod 0400 'naca-1.0/exit.f' ||
  echo 'restore of naca-1.0/exit.f failed'
  shar_count="`wc -c < 'naca-1.0/exit.f'`"
  test 489 -eq "$shar_count" ||
    echo "naca-1.0/exit.f: original size 489, current size $shar_count"
fi
# ============= naca-1.0/naca.f ==============
if test -f 'naca-1.0/naca.f' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/naca.f (File already exists)'
else
  echo 'x - extracting naca-1.0/naca.f (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/naca.f' &&
c
c-----------------------------------------------------------------------------
c
c  Naca.f -- generates a NACA foil section, printing the foil coordinates
c            to stdout in a format usable by gnuplot.
c
c  Written By: S.E.Norris
c
c  norris@cfd.mech.unsw.edu.au
c
c  $RCSfile: naca.f,v $
c  $Author: norris $
c  $Revision: 1.7 $
c  $Date: 1995/08/31 11:05:52 $
c
c  $Log: naca.f,v $
c  Revision 1.7  1995/08/31  11:05:52  norris
c  *** empty log message ***
c
c  Revision 1.6  1995/08/31  07:30:19  norris
c  Cleaned up code.
c
c  Revision 1.5  1995/08/31  06:30:07  norris
c  Removed an unwanted variable, scle.
c
c  Revision 1.4  1995/08/31  04:43:30  norris
c  Modified internal reads for the Cray cf77 compiler.
c
c  Revision 1.3  1995/08/31  04:08:27  norris
c  Corrected a bug in the naca utility -- return statement instead of exit().
c
c  Revision 1.2  1995/08/31  02:20:00  norris
c  Check command line args to see that numbers are entred.
c
c  Revision 1.1  1995/08/31  02:03:05  norris
c  Initial revision
c
c-----------------------------------------------------------------------------
c
c
X      IMPLICIT none
X      INTEGER npl               ! Number of points on foil
X      INTEGER npmx              ! Size of points array
X      PARAMETER (npmx=500)
X      INTEGER inaca             ! Returns Foil thickness
X      INTEGER nmn               ! Returns increase in length of name
X      REAL x(3,npmx)            ! Returns Array of points on foil
X      REAL scle                 ! Length of foil
X      CHARACTER naca*(20)       ! String containing NACA number
X      LOGICAL t_n               ! Returns if foil created
X      INTEGER i
X      INTEGER ierr
X      CHARACTER buff*(10)
c
X      INTEGER Iargc,Lnblnk
X      LOGICAL Digit
X      EXTERNAL Iargc,Getarg     ! UNIX library functions
X      EXTERNAL Digit,Lnblnk
c
X      DATA scle / 1.0 /
c
c     Check for correct number of command line args
c
X      if (Iargc().ne.2 .or. naca(1:2).eq.'-h') call Error()
c
c     Get command line args
c
X      call Getarg(1,naca)
X      call Getarg(2,buff)
X      if (.not.Digit(buff,Lnblnk(buff))) call Error()
X      read(buff,'(i10)',iostat=ierr) npl
X      if (ierr.ne.0) call Error()
c
c     Check size of arrays
c
X      if (npl.ge.npmx) then
X         print '(a,i5)', 'naca: Maximum number of points is ',npmx
X         call exit(1)
X         stop
X      endif
c
c     Generate foil
c
X      call NacaFoil( x,npl,npmx,naca,scle,inaca,t_n,nmn )
c
c     Check that we could create the foil
c
X      if (.not. t_n) then
X         print '(3a)', 'naca: Could not create the ',
X     &                  naca(1:Lnblnk(naca)),' section'
X         call exit(1)
X         stop
X      endif
c
c     Print out the foil to stdout
c
X      print '(2a)', '# NACA ',naca(1:Lnblnk(naca))
X      do i = 1,npl+1
X         print '(g20.10,1x,g20.10)', x(1,i),x(2,i)
X      enddo
c
X      call exit(0)
X      stop
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Error()
c
X      print '(a)', 'Usage: naca NACA_Number Number_of_points'
X      call exit(1)
X      stop
X      END
X
X
X
X
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/naca.f' &&
  chmod 0400 'naca-1.0/naca.f' ||
  echo 'restore of naca-1.0/naca.f failed'
  shar_count="`wc -c < 'naca-1.0/naca.f'`"
  test 3104 -eq "$shar_count" ||
    echo "naca-1.0/naca.f: original size 3104, current size $shar_count"
fi
# ============= naca-1.0/naca4.f ==============
if test -f 'naca-1.0/naca4.f' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/naca4.f (File already exists)'
else
  echo 'x - extracting naca-1.0/naca4.f (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/naca4.f' &&
c
c-----------------------------------------------------------------------------
c
c  Naca4.f -- contains routines to generate the NACA four and five
c             digit series foils, both in their original form, and
c             with the modified thickness profiles.
c
c  Written By: S.E.Norris
c
c  norris@cfd.mech.unsw.edu.au
c
c  $RCSfile: naca4.f,v $
c  $Author: norris $
c  $Revision: 1.3 $
c  $Date: 1995/08/31 11:05:52 $
c
c  $Log: naca4.f,v $
c  Revision 1.3  1995/08/31  11:05:52  norris
c  *** empty log message ***
c
c  Revision 1.2  1995/08/31  06:11:57  norris
c  Fixed divide error that was stuffing up on the Cray.
c
c  Revision 1.1  1995/08/30  09:59:47  norris
c  Initial revision
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca4( x,npl,npmx,naca,inaca,scle,modified )
c
X      IMPLICIT none
X      INTEGER npl,npmx,inaca
X      REAL x(3,npmx),scle
X      CHARACTER naca*(*)
X      LOGICAL modified
c
c  This routine calculates the ordinates of a NACA four digit foil.
c
X      INTEGER i,j
X      INTEGER npt,npf
X      REAL ndata(5),cf(3),ca(3),ct(5),dcf(2),dca(2)
X      REAL a(5),d(4)
X      REAL dx,dy,dydx,t,y
X      REAL Poly
X      EXTERNAL Poly
c
X      DATA  ct / 0.0 ,-0.126 ,-0.3537 , 0.2843 ,-0.1015 /
c
c
X      npt  = npl+1
X      npf  = npl/2
c
c     Set the x values according to a cosine distribution.
c
X      call cosdn( x,npl,npmx )
c
c     Calculate the parameters describing the foil, from the given NACA
c     number. Then calculate the polynomial coeffs for the camber.
c
X      call Naca4b( naca,inaca,ndata,modified )
X      call Naca4c( cf,dcf,ndata(1),ndata(2) )
X      call Naca4c( ca,dca,ndata(1),(1.0 - ndata(2)) )
X      if (modified) then
X	 call Nacam( a,d,ndata(4) )
X      endif
c
c     Calculate 'y' values for each value of 'x'.
c
X      x(2,1)     = 0.0
X      x(2,npt)   = 0.0
X      x(2,npf+1) = 0.0
X      do i = 2,npf
X	 j = npt+1-i
c
c        Calculate the camber line.
c
X	 if (x(1,i).le.ndata(2)) then
X	    y    = Poly( x(1,i),2,cf  )
X	    dydx = Poly( x(1,i),1,dcf )
X	 else
X	    y    = Poly(( 1.0 - x(1,i) ),2,ca  )
X	    dydx = Poly(( 1.0 - x(1,i) ),1,dca )
X	 endif
c
c        Calculate thickness.
c
X	 if (modified) then
X	    if (x(1,i).le.ndata(5)) then
X	       a(1) = a(5)*sqrt( x(1,i) )
X	       t = ndata(3)*Poly( x(1,i),3,a )
X	    else
X	       t = ndata(3)*Poly( (1.0-x(1,i)),3,d )
X	    endif
X	 else
X	    ct(1) = 0.2969*sqrt( x(1,i) )
X	    t = 5.0*ndata(3)*Poly( x(1,i),4,ct )
X	 endif
c
c        Finally, calculate node positions upon the foil surface.
c
X	 dy = sqrt(( t**2 )/( 1.0+( dydx**2 )))
X	 dx = dy * dydx
c
X	 x(1,i) = x(1,i) + dx
X	 x(1,j) = x(1,i) - 2.0*dx
X	 x(2,i) = y - dy
X	 x(2,j) = y + dy
X      enddo
c
c     Rescale dimensions if nessisary.
c
X      call FoilScale( x,npt,scle )
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca4b( naca,inaca,ndata,modified )
c
X      IMPLICIT none
X      INTEGER inaca
X      REAL ndata(5)
X      LOGICAL modified
X      CHARACTER naca*(*)
c
c  This routine converts a NACA four didget number into the parameters 
c  describing a foil.
c
X      INTEGER ieps,ipmx,itau,iler,im
X      INTEGER Ist
X      EXTERNAL Ist
c
c     Convert first four digits into integers.
c
X      inaca = Ist( 2,naca(3:3),0 )
X      ieps  = Ist( 1,naca(1:1),0 )
X      ipmx  = Ist( 1,naca(2:2),0 )
X      itau  = Ist( 2,naca(3:4),0 )
X      ndata(1) = 0.01 * real(ieps)
X      ndata(2) =  0.1 * real(ipmx)
X      ndata(3) = 0.01 * real(itau)
c
c     Check if a modified section is used.
c
X      if (modified) then
X	 iler = Ist( 1,naca(6:6),6 )
X	 im   = Ist( 1,naca(7:7),3 )
X	 ndata(4) = real(iler)
X	 ndata(5) = 0.1 * real(im)
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca4c( coeff,dcoeff,camber,pmax )
c
X      IMPLICIT none
X      REAL coeff(3),dcoeff(2),camber,pmax
c
c  This routine calculates the coeff's for the NACA camber equation.
c
X      REAL tiny
X      PARAMETER( tiny=1.0e-20 )
X      REAL inpmax
c
c
X      if (pmax.lt.tiny) then
X         inpmax = 0.0
X      else
X         inpmax = 1.0/pmax
X      endif
c
c
c
X      coeff(1)  = 0.0
X      if (camber.lt.tiny) then
X	 coeff(2) = 0.0
X	 coeff(3) = 0.0
X      else
X	 coeff(2)  = 2.0*camber*inpmax
X	 coeff(3)  = (-camber)*(inpmax**2)
X      endif
X      dcoeff(1) = coeff(2)
X      dcoeff(2) = 2.0*coeff(3)
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca5( x,npl,npmx,naca,inaca,scle,modified )
c
X      IMPLICIT none
X      INTEGER npl,npmx,inaca
X      REAL x(3,npmx),scle
X      CHARACTER naca*(*)
X      LOGICAL modified
c
c  This routine calculates the ordinates of a NACA five digit foil.
c
X      INTEGER npt,npf
X      INTEGER i,j
X      REAL ndata(7)
X      REAL a(5),d(4),cl,k,m,xi,ct(5)
X      REAL dx,dy,dydx,t,y
X      REAL Poly
X      EXTERNAL Poly
c
X      DATA  ct / 0.0 ,-0.126 ,-0.3537 , 0.2843 ,-0.1015 /
c
c
X      npt  = npl+1
X      npf  = npl/2
c
c     Set the x values according to a cosine distribution.
c
X      call cosdn( x,npl,npmx )
c
c     Calculate the parameters describing the foil, from the given NACA
c     number. Then calculate the polynomial coeffs for the camber.
c
X      call Naca5b( naca,inaca,ndata,modified )
X      if (modified) then
X	 call Nacam( a,d,ndata(6) )
X      endif
X      cl = ndata(1)
X      k  = ndata(5)
X      m  = ndata(4)
c
c     Calculate 'y' values for each value of 'x'.
c
X      x(2,1)     = 0.0
X      x(2,npt)   = 0.0
X      x(2,npf+1) = 0.0
X      do i = 2,npf
X	 j = npt+1-i
c
c        Calculate the camber line.
c
X	 xi = x(1,i)
X	 if (xi.le.m) then
X	    y    =k*cl*(  xi*xi*xi - 3.0*m*xi*xi + m*m*(3.0-m)*xi )/1.8
X	    dydx =k*cl*( 3.0*xi*xi - 6.0*m*xi    + m*m*(3.0-m)    )/1.8
X	 else
X	    y    = k*cl*m*m*m*( 1.0-xi )/1.8
X	    dydx =-k*cl*m*m*m/1.8
X	 endif
c
c        Calculate thickness.
c
X	 if (modified) then
X	    if (x(1,i).le.ndata(7)) then
X	       a(1) = a(5)*sqrt( x(1,i) )
X	       t = ndata(3)*Poly( x(1,i),3,a )
X	    else
X	       t = ndata(3)*Poly( (1.0-x(1,i)),3,d )
X	    endif
X	 else
X	    ct(1) = 0.2969 * sqrt( x(1,i) )
X	    t = 5.0*ndata(3)*Poly( x(1,i),4,ct )
X	 endif
c
c        Finally, calculate node positions upon the foil surface.
c
X	 dy = sqrt(( t**2 )/( 1.0+( dydx**2 )))
X	 dx = dy * dydx
c
X	 x(1,i) = x(1,i) + dx
X	 x(1,j) = x(1,i) - 2.0*dx
X	 x(2,i) = y - dy
X	 x(2,j) = y + dy
X      enddo
c
c     Rescale dimensions if nessisary.
c
X      call FoilScale( x,npt,scle )
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca5b( naca,inaca,ndata,modified )
c
X      IMPLICIT none
X      INTEGER inaca
X      REAL ndata(7)
X      CHARACTER naca*(*)
X      LOGICAL modified
c
c  This routine converts a NACA five didgit number into the parameters 
c  describing a foil.
c
X      INTEGER icld,ipmt,itau,iler,im
X      REAL c1(4),c2(6)
X      INTEGER Ist
X      REAL Poly
X      EXTERNAL Poly,Ist
c
X      DATA c1 / 0.0000,   1.0988, 1.3984, 1.8519 /
X      DATA c2 / 0.0000,-.0069567, .47172, 16.062,-17.409, 101.24 /
c
c     Convert first four digits into integers.
c
X      inaca= Ist( 2,naca(4:5),0 )
X      icld = Ist( 1,naca(1:1),0 )
X      ipmt = Ist( 2,naca(2:3),0 )
X      itau = Ist( 2,naca(4:5),0 )
X      ndata(1) =  0.15*real(icld)
X      ndata(2) = 0.005*max( real(ipmt),1.0 )
X      ndata(3) =  0.01*real(itau)
X      ndata(4) = Poly( ndata(2),3,c1 )
X      ndata(5) = 1.0/( Poly( ndata(2),5,c2 ) )
c
c     Check if a modified section is used.
c
X      if (modified) then
X	 iler = Ist( 1,naca(7:7),6 )
X	 im   = Ist( 1,naca(8:8),3 )
X	 ndata(6) = real(iler)
X	 ndata(7) = 0.1*real(im)
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Nacam( a,d,ndata )
c
X      IMPLICIT none
X      REAL a(0:4),d(0:3),ndata(2)
c
c  This routine calculates the coefficients for the NACA 4/5 digit
c  modified thickness distributions.
c
X      REAL mat(3,3),vector(3)
X      REAL coeff(4),m,n
X      REAL Poly
X      EXTERNAL Poly,Crm3
c
X      DATA coeff / 1.0090,-0.24048,-2.1786, 15.833 /
c
X      m = ndata(2)
X      n = 1.0-m
c
c     Calculate coefficients for the aft thickness distribution.
c
X      d(0) = 0.0
cc    d(0) = 0.01
X      d(1) = Poly( m,3,coeff )
X      d(2) = ( 3.0*( 0.5 - d(0) ) - 2.0*d(1)*n )/( n*n )
X      d(3) = ( 2.0*( 0.5 - d(0) ) - 1.0*d(1)*n )/(-n*n*n )
c
c     Calculate coefficients for the fore thickness.
c
X      a(4) = 0.24742*ndata(1)
X      vector(1) = 0.5 - a(4)*sqrt(m)
X      vector(2) =-0.5*a(4)/sqrt(m)
X      vector(3) = 2.*d(2) + 6.*( 1.0-m )*d(3) + 0.25*a(4)/( m**1.5 )
X      mat(1,1) = m
X      mat(1,2) = m*m
X      mat(1,3) = m*m*m
X      mat(2,1) = 1.0
X      mat(2,2) = 2.0*m
X      mat(2,3) = 3.0*m*m
X      mat(3,1) = 0.0
X      mat(3,2) = 2.0
X      mat(3,3) = 6.0*m
X      call Crm3( mat,vector,a(1) )
c
X      return
X      END
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/naca4.f' &&
  chmod 0400 'naca-1.0/naca4.f' ||
  echo 'restore of naca-1.0/naca4.f failed'
  shar_count="`wc -c < 'naca-1.0/naca4.f'`"
  test 8962 -eq "$shar_count" ||
    echo "naca-1.0/naca4.f: original size 8962, current size $shar_count"
fi
# ============= naca-1.0/naca6.f ==============
if test -f 'naca-1.0/naca6.f' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/naca6.f (File already exists)'
else
  echo 'x - extracting naca-1.0/naca6.f (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/naca6.f' &&
c
c-----------------------------------------------------------------------------
c
c  Naca6.f -- contains routines to generate the NACA 1 and 6 series
c             foils.
c
c  Written By: S.E.Norris
c
c  norris@cfd.mech.unsw.edu.au
c
c  $RCSfile: naca6.f,v $
c  $Author: norris $
c  $Revision: 1.5 $
c  $Date: 1995/08/31 11:05:52 $
c
c  $Log: naca6.f,v $
c  Revision 1.5  1995/08/31  11:05:52  norris
c  *** empty log message ***
c
c  Revision 1.4  1995/08/31  07:30:19  norris
c  Cleaned up code.
c
c  Revision 1.3  1995/08/31  03:35:01  norris
c  Changed to use the directory.h header file that holds the directory name.
c
c  Revision 1.2  1995/08/31  02:03:05  norris
c  Added the use of the lnblnk function to generate pathnames.
c
c  Revision 1.1  1995/08/30  11:07:20  norris
c  Initial revision
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca1( x,npl,npmx,naca,inaca,scle,t_n )
c
X      IMPLICIT none
X      INTEGER npl,npmx,inaca
X      REAL x(3,npmx),scle
X      CHARACTER naca*(*)
X      LOGICAL t_n
c
c  This routine calculates the ordinates of a NACA 1 series foil.
c
X      INTEGER nbmx
X      PARAMETER (nbmx=30)
X      REAL pi
X      PARAMETER (pi=3.14159265358979)
c
X      INTEGER npt,npf,nb,nbm
X      INTEGER i,j
X      REAL ndata(3)
X      REAL ab,bb,rb,xb(nbmx),yb(nbmx),y2b(nbmx)
X      REAL xi,xm
X      REAL dx,dy,dydx,t,y
X      CHARACTER filnme*6
X      REAL Nacat
X      EXTERNAL Nacat
c
X      DATA  filnme / '16-015' /
c
X      npt  = npl+1
X      npf  = npl/2
c
c     Calculate the parameters describing the foil, from the given NACA
c     number. Then calculate the cubic spline for the camber.
c
X      call Naca1b( naca,inaca,ndata )
X      call GetSpl( xb,yb,y2b,nb,nbm,nbmx,ab,bb,rb,filnme,t_n,ndata(3) )
X      if (.not. t_n) return
c
c     Set the x values according to a cosine distribution.
c
X      call Cosdn( x,npl,npmx )
c
c     Calculate 'y' values for each value of 'x'.
c
X      x(2,1)     = 0.0
X      x(2,npt)   = 0.0
X      x(2,npf+1) = 0.0
X      do i = 2,npf
X	 j = npt+1-i
c
c        Calculate the camber line.
c
X	 xi = x(1,i)
X	 xm = 1.0 - x(1,i)
X	 if (xi.le.0.0 .or. xi.ge.1.0) then
X	    y    = 0.0
X	    dydx = 0.0
X	 else
X	    y    = (-ndata(1)/( 4.0*pi))*( xm*log(xm) + xi*log(xi) )
X	    dydx = ( ndata(1)/( 4.0*pi))*(    log(xm) -    log(xi) )
X	 endif
c
c        Calculate thickness.
c
X	 t = Nacat( xi,xb,yb,y2b,nbm,nb,ab,bb )
c
c        Finally, calculate node positions upon the foil surface.
c
X	 dy = sqrt(( t**2 )/( 1.0+( dydx**2 )))
X	 dx = dy * dydx
c
X	 x(1,i) = x(1,i) + dx
X	 x(1,j) = x(1,i) - 2.0*dx
X	 x(2,i) = y - dy
X	 x(2,j) = y + dy
X      enddo
c
c     Rescale dimensions if nessisary.
c
X      call FoilScale( x,npt,scle )
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca1b( naca,inaca,ndata )
c
X      IMPLICIT none
X      INTEGER inaca
X      REAL ndata(3)
X      CHARACTER naca*(*)
c
c  This routine converts a NACA number into the parameters describing
c  a foil.
c
X      INTEGER icld,itau
X      INTEGER Ist
X      EXTERNAL Ist
c
c     Convert first four digits into integers.
c
X      inaca= Ist( 2,naca(5:6),0 )
X      icld = Ist( 1,naca(4:4),0 )
X      itau = Ist( 2,naca(5:6),0 )
X      ndata(1) =   0.1*real(icld)
X      ndata(2) =  0.01*real(itau)
X      ndata(3) =  real(itau)/15.0
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca6( x,npl,npmx,naca,inaca,scle,a,type,t_n )
c
X      IMPLICIT none
X      INTEGER npl,npmx,inaca
X      REAL x(3,npmx),scle,a
X      CHARACTER naca*(*),type*3
X      LOGICAL t_n
c
c  This routine calculates the ordinates of a NACA 6 series foil.
c
X      INTEGER nbmx
X      PARAMETER (nbmx=30)
c
X      INTEGER npt,npf,nb,nbm
X      INTEGER i,j
X      REAL ndata(3),dx,dy,dydx,t,y
X      REAL ab,bb,rb,xb(nbmx),yb(nbmx),y2b(nbmx)
X      CHARACTER filnme*6
X      REAL Nacat
X      EXTERNAL Nacat
c
X      npt  = npl+1
X      npf  = npl/2
c
c     Calculate the parameters describing the foil, from the given NACA
c     number. Then calculate the cubic spline for the camber.
c
X      call Naca6b( naca,inaca,ndata,filnme,type )
X      if (ndata(2).ne.0.0) then
X	 call GetSpl(xb,yb,y2b,nb,nbm,nbmx,ab,bb,rb,filnme,t_n,ndata(3))
X      endif
X      if (.not. t_n) return
c
c     Set the x values according to a cosine distribution.
c
X      call Cosdn( x,npl,npmx )
c
c     Calculate 'y' values for each value of 'x'.
c
X      x(2,1)     = 0.0
X      x(2,npt)   = 0.0
X      x(2,npf+1) = 0.0
X      do i = 2,npf
X	 j = npt+1-i
c
c        Calculate the camber line.
c
X	 call Naca6c( y,dydx,x(1,i),a,ndata(1) )
c
c        Calculate thickness.
c
X	 if (ndata(2).eq.0.0) then
X	    t = 0.0
X	 else
X	    t = Nacat( x(1,i),xb,yb,y2b,nbm,nb,ab,bb )
X	 endif
c
c        Finally, calculate node positions upon the foil surface.
c
X	 dy = sqrt(( t**2 )/( 1.0+( dydx**2 )))
X	 dx = dy * dydx
c
X	 x(1,i) = x(1,i) + dx
X	 x(1,j) = x(1,i) - 2.0*dx
X	 x(2,i) = y - dy
X	 x(2,j) = y + dy
X      enddo
c
c     Rescale dimensions if nessisary.
c
X      call FoilScale( x,npt,scle )
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca6b( naca,inaca,ndata,filnme,type )
c
X      IMPLICIT none
X      INTEGER inaca
X      REAL ndata(3)
X      CHARACTER naca*(*),filnme*6,type*3
c
c  This routine converts a NACA number into the parameters describing
c  a foil.
c
X      INTEGER icld,itau,ibase,i
X      INTEGER Ist
X      EXTERNAL Ist
c
c
X      if (type(2:2).ne.'(') then
X	 filnme = naca(1:3)//'0'//naca(5:6)
X	 ibase  = Ist( 2,naca(5:6),0 )
X	 i = -3
X      else
X	 if (type(3:3).eq.'1') then
X	    i = 0
X	    filnme = naca(1:2)//type(1:1)//'00'//naca(4:4)
X	 else if (type(3:3).eq.'2') then
X	    i = 1
X	    filnme = naca(1:2)//type(1:1)//'0'//naca(4:5)
X	 endif
X	 ibase  = Ist( 2,naca(4:4+i),0 )
X      endif
c
X      inaca= Ist( 2,naca(8+i:9+i),0 )
X      icld = Ist( 1,naca(7+i:7+i),0 )
X      itau = Ist( 2,naca(8+i:9+i),0 )
X      ndata(1) =  0.1*real(icld)
X      ndata(2) = 0.01*real(itau)
X      ndata(3) = real(itau)/real(ibase)
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca6c( y,dydx,x,a,cl )
c
X      IMPLICIT none
X      REAL y,dydx,x,a,cl
c
c  Calculates the camber line for 6-series foils
c
X      REAL pi
X      PARAMETER (pi=3.14159265358979)
X      REAL xm,am,g,h
X      REAL ax,da,ya
c
X      xm = 1.0-x
X      am = 1.0-a
X      ax = a-x
X      if (x.le.0.0 .or. x.ge.1.0) then
X	 y    = 0.0
X	 dydx = 0.0
X      else
X	 if (a.eq.1.0) then
X	    y    = (-cl/( 4.0*pi))*( xm*log(xm) + x*log(x) )
X	    dydx = ( cl/( 4.0*pi))*(    log(xm) -   log(x) )
X	 else
X	    if (a.eq.0.0) then
X	       g = -0.25
X	    else
X	       g = (-1.0/am )*( a*a*( 0.5*log(a ) - 0.25 ) + 0.25 )
X	    endif
X	    h = ( 1.0/am )*( 0.5*am*am*log(am) - 0.25*am*am ) + g
X	    if (x.ne.a) then
X	       ya = ( 0.5*ax*ax*log(abs(ax)) - 0.5*xm*xm*log(xm)
X     &            +  0.25*xm*xm - 0.25*ax*ax )/am - x*log(x) + g - h*x
X	       da = (    log(xm)*( xm + 0.5*xm*xm ) + 0.5*xm*xm
X     &            - log(abs(ax))*( ax + 0.5*ax*ax ) - 0.5*ax*ax
X     &            - 0.5*xm + 0.5*ax )/am - log(x) - h - 1.0
X	    else
X	       ya = ( -0.5*xm*xm*log(xm) + 0.25*xm*xm )/am
X     &            - x*log(x) + g - h*x
X	       da = (    log(xm)*( xm + 0.5*xm*xm ) + 0.5*xm*xm
X     &            - 0.5*xm )/am - log(x) - h - 1.0
X	    endif
X	    y    = cl*ya/( 2.0*pi*( 1.0+a ) )
X	    dydx = cl*da/( 2.0*pi*( 1.0+a ) )
X	 endif
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE GetSpl( xb,yb,y2b,nb,nbm,nbmx,ab,bb,rb,filnme,t_n,scl )
c
X      IMPLICIT none
X      INTEGER nb,nbm,nbmx
X      REAL xb(nbmx),yb(nbmx),y2b(nbmx),ab,bb,rb,scl
X      CHARACTER filnme*(*)
X      LOGICAL t_n
c
c  Calculates the thickness spline for 1-series and 6-series foils
c
X      INTEGER i
X      REAL y1,y2,xb2,xb3
c
X      DATA  y2   / 3.0e35 /
c
c
X      call GetCor( xb,yb,nb,nbmx,rb,filnme,t_n )
X      if (t_n) then
X	 nbm = nb-1
X	 if (scl.ne.1.0) then
X	    do i = 1,nb
X	       yb(i) = yb(i)*scl
X	    enddo
X	 endif
X	 xb2 = sqrt( xb(2) )
X	 xb3 = sqrt( xb(3) )
X	 ab  = ( yb(2)*xb(3)-yb(3)*xb(2) )/( xb(3)*xb2 - xb(2)*xb3 )
X	 bb  = ( yb(2) - ab*xb2 )/xb(2)
X	 y1  = bb + 0.5*ab/xb2
X	 call Spln( xb(2),yb(2),nbm,y1,y2,y2b(2) )
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE GetCor( xb,yb,nb,nbmx,rb,filnme,t_n )
c
X      IMPLICIT none
X      INTEGER nbmx,nb
X      REAL xb(nbmx),yb(nbmx),rb
X      CHARACTER filnme*6
X      LOGICAL t_n
c
c  Reads in the coordinates of a NACA thickness distribution from file
c
X      INCLUDE 'directory.h'
X      INTEGER ierr,i
X      REAL x,y
X      CHARACTER fullpath*128
X      LOGICAL fex
X      INTEGER Lnblnk
X      EXTERNAl Lnblnk
c
X      fullpath = direct//filnme
X      inquire(file=fullpath,exist=fex)
X      if (.not.fex) then
X         print '(2a)', 'GetCor(): Cannot find file ',fullpath
X         t_n = .false.
X         return
X      endif
X      open( unit=10,file=fullpath,status='OLD',iostat=ierr )
X      if (ierr.ne.0) then
X         print '(2a)', 'GetCor(): Error opening file ',fullpath
X         t_n = .false.
X         return
X      endif
c
X      read(10,*)
X      read(10,*)
X      x = 0.0
X      i = 0
X      do while( x.lt.100.0 )
X	 read(10,*) x,y
X	 i = i+1
X	 xb(i) = 0.01*x
X	 yb(i) = 0.01*y
X      enddo
X      read(10,*) rb
X      rb = 0.01*rb
X      nb = i
c
X      close(unit=10)
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      FUNCTION Nacat( x,xb,yb,y2b,nbm,nb,ab,bb )
c
X      IMPLICIT none
X      INTEGER nb,nbm
X      REAL x,xb(nb),yb(nb),y2b(nb),ab,bb
X      REAL Nacat
c
c  Returns an interpolated thickness for naca 1- and 6-series foils
c
X      REAL y
c
X      if (x.lt.xb(2)) then
X	 y = ab*sqrt(x) + bb*x
X      else
X	 call Spin( xb(2),yb(2),y2b(2),nbm,x,y )
X      endif
X      Nacat = y
c
X      return
X      END
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/naca6.f' &&
  chmod 0400 'naca-1.0/naca6.f' ||
  echo 'restore of naca-1.0/naca6.f failed'
  shar_count="`wc -c < 'naca-1.0/naca6.f'`"
  test 10081 -eq "$shar_count" ||
    echo "naca-1.0/naca6.f: original size 10081, current size $shar_count"
fi
# ============= naca-1.0/nacafoil.f ==============
if test -f 'naca-1.0/nacafoil.f' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/nacafoil.f (File already exists)'
else
  echo 'x - extracting naca-1.0/nacafoil.f (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/nacafoil.f' &&
c
c-----------------------------------------------------------------------------
c
c  NacaFoil.f -- generates a NACA foil section. The foil type is selected
c                using the NACA foil descriptor.
c
c  Written By: S.E.Norris          
c
c  norris@cfd.mech.unsw.edu.au
c
c  $RCSfile: nacafoil.f,v $
c  $Author: norris $
c  $Revision: 1.5 $
c  $Date: 1995/08/31 11:05:52 $
c
c  $Log: nacafoil.f,v $
c  Revision 1.5  1995/08/31  11:05:52  norris
c  *** empty log message ***
c
c  Revision 1.4  1995/08/31  03:35:01  norris
c  Changed to use the directory.h header file that holds the directory name.
c
c  Revision 1.3  1995/08/31  02:03:05  norris
c  Added the use of the lnblnk function to generate pathnames.
c
c  Revision 1.2  1995/08/30  11:48:41  norris
c  Updated file so that it has alot of the non-standard F77 stuff removed.
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE NacaFoil( x,npl,npmx,naca,scle,inaca,t_n,nmn )
c
X      IMPLICIT none
X      INTEGER npl,npmx,inaca,nmn
X      REAL x(3,npmx),scle
X      CHARACTER naca*(*)
X      LOGICAL t_n
c
c  Converts a string into a NACA section.
c
c     x(i,j)   Contains the x,y coordinates of the foil
c     npl      Number of points in foil description
c     inaca    
c     nmn      
c     naca*(*) String containing the NACA foil number
c     scle     Length to scale the foil by
c     t_n      Returns weather we could generate the foil
c
c
X      t_n = .true.
c
X      if (naca(3:3).eq.'-') then
X	 if (naca(1:1).eq.'1') then
X	    call Naca_1( x,npl,npmx,naca,inaca,scle,t_n )
X	 else if (naca(1:1).eq.'6') then
X	    call Naca_6( x,npl,npmx,naca,inaca,scle,t_n,nmn )
X	 else
X	    t_n = .false.
X	 endif
X      else if (naca(3:3).eq.'A') then
X	 call Naca_6( x,npl,npmx,naca,inaca,scle,t_n,nmn )
X      else if (naca(3:3).eq.'(') then
X	 call Naca_6( x,npl,npmx,naca,inaca,scle,t_n,nmn )
X      else if (naca(5:5).eq.' ' .or. naca(5:5).eq.'-') then
X	 call Naca_4( x,npl,npmx,naca,inaca,scle,t_n )
X      else if (naca(6:6).eq.' ' .or. naca(6:6).eq.'-') then
X	 call Naca_5( x,npl,npmx,naca,inaca,scle,t_n )
X      else
X	 t_n = .false.
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca_4( x,npl,npmx,naca,inaca,scle,t_n )
c
X      IMPLICIT none
X      INTEGER npl,npmx,inaca
X      REAL x(3,npmx),scle
X      CHARACTER naca*(*)
X      LOGICAL t_n
c
c  Checks for correct 4-digit name, and checks for modified section
c
X      LOGICAL modified
X      LOGICAL Digit
X      EXTERNAL Digit
c
X      if (.not. Digit( naca(1:4),4 )) then
X	 t_n = .false.
X      else if (naca(5:5).eq.'-') then
X	 if (.not. Digit( naca(6:7),2 )) then
X	    t_n = .false.
X	 else
X	    modified = .true.
X	 endif
X      else
X	 modified = .false.
X      endif
c
X      if (t_n) then
X	 call Naca4( x,npl,npmx,naca,inaca,scle,modified )
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca_5( x,npl,npmx,naca,inaca,scle,t_n )
c
X      IMPLICIT none
X      INTEGER npl,npmx,inaca
X      REAL x(3,npmx),scle
X      CHARACTER naca*(*)
X      LOGICAL t_n
c
c  Checks for correct 5-digit name, and checks for modified section
c
X      LOGICAL modified
X      LOGICAL Digit
X      EXTERNAL Digit
c
X      if (.not. Digit( naca(1:5),5 )) then
X	 t_n = .false.
X      else if (naca(6:6).eq.'-') then
X	 if (.not. Digit( naca(7:8),2 )) then
X	    t_n = .false.
X	 else
X	    modified = .true.
X	 endif
X      else
X	 modified = .false.
X      endif
c
X      if (t_n) then
X	 call Naca5( x,npl,npmx,naca,inaca,scle,modified )
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca_1( x,npl,npmx,naca,inaca,scle,t_n )
c
X      IMPLICIT none
X      INTEGER npl,npmx,inaca
X      REAL x(3,npmx),scle
X      CHARACTER naca*(*)
X      LOGICAL t_n
c
c  Checks for correct 1-series name
c
X      LOGICAL Digit
X      EXTERNAL Digit
c
X      if (naca(2:2).ne.'6') then
X	 t_n = .false.
X      else if (.not. Digit( naca(4:6),3 )) then
X	 t_n = .false.
X      endif
c
X      if (t_n) then
X	 call Naca1( x,npl,npmx,naca,inaca,scle,t_n )
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca_6( x,npl,npmx,naca,inaca,scle,t_n,nmn )
c
X      IMPLICIT none
X      INTEGER npl,npmx,inaca,nmn
X      REAL x(3,npmx),scle
X      CHARACTER naca*(*)
X      LOGICAL t_n
c
c  Checks for correct 6-series name
c
X      INTEGER i
X      CHARACTER type*3
X      REAL a
X      REAL Rst
X      LOGICAL Digit
X      EXTERNAL Digit,Rst
c
X      a = 1.0
c
X      if (naca(1:1).ne.'6') then
X	 t_n = .false.
X      else if (.not. Digit( naca(2:2),1 )) then
X	 t_n = .false.
X      else if (naca(3:3).eq.'-') then
X	 if (.not. Digit( naca(4:6),3 )) then
X	    t_n = .false.
X	 else if (naca(7:8).eq.'a=') then
X	    a = Rst( 3,naca(9:11),1.0 )
X	 endif
X	 type = '-  '
X      else if (naca(3:3).eq.'A') then
X	 if (.not. Digit( naca(4:6),3 )) then
X	    t_n = .false.
X	 else if (naca(7:8).eq.'a=') then
X	    a = Rst( 3,naca(9:11),1.0 )
X	 endif
X	 type = 'A  '
c
X      else if (naca(3:3).eq.'(') then
X	 if (.not. Digit( naca(4:4),1 )) then
X	    t_n = .false.
X	 else if (.not.Digit( naca(5:5),1 )) then
X	    if (naca(5:5).eq.')') then
X	       i = 6
X	       type(2:3) = '(1'
X	    else
X	       t_n = .false.
X	    endif
X	 else if (naca(6:6).eq.')') then
X	    i = 7
X	    type(2:3) = '(2'
X	 else
X	    t_n = .false.
X	 endif
c
X	 if (t_n) then
X	    if (naca(i:i).eq.'-') then
X	       if (.not. Digit( naca(i+1:i+3),3 )) then
X		  t_n = .false.
X	       else if (naca(i+4:i+5).eq.'a=') then
X		  a = Rst( 3,naca(i+6:i+8),1.0 )
X	       endif
X	       type(1:1) = '-'
X	    else if (naca(i:i).eq.'A') then
X	       if (.not. Digit( naca(i+1:i+3),3 )) then
X		  t_n = .false.
X	       else if (naca(i+4:i+5).eq.'a=') then
X		  a = Rst( 3,naca(i+6:i+8),1.0 )
X	       endif
X	       type(1:1) = 'A'
X	    else
X	       t_n = .false.
X	    endif
X	 endif
X      else
X	 t_n = .false.
X      endif
c
X      call Naca6o( naca,inaca,type,t_n,nmn )
X      if (a.lt.0.0 .or. a.gt.1.0 )a = 1.0
X      if (t_n) then
X	 call Naca6( x,npl,npmx,naca,inaca,scle,a,type,t_n )
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca6o( naca,inaca,type,t_n,nmn )
c
X      IMPLICIT none
X      INTEGER inaca,nmn
X      CHARACTER naca*15,type*3
X      LOGICAL t_n
c
c  Checks that the NACA profile is valid. If it isnt, replaces it with
c  the closest available profile.
c
X      INCLUDE 'directory.h'
X      INTEGER ndata(3),ibase,im,i
c     INTEGER icl,itau
X      CHARACTER string*15,filnme*6,fullpath*128
X      LOGICAL fex
X      CHARACTER Sti*2
X      INTEGER Lnblnk
X      EXTERNAL Sti,Lnblnk
c
c     Get the foil profile name.
c
X      fex = .true.
X      string = ' '
X      call Naca6p( naca,inaca,ndata,filnme,type )
c     icl   = ndata(1)
c     itau  = ndata(2)
X      ibase = ndata(3)
c
c     Catch cases where a 6X(Y) is declared as a 6X(0Y).
c
X      if (type(2:3).eq.'(2' .and. ibase.lt.10) then
X	 do i = 5,15
X	    im = i-1
X	    naca(im:im) = naca(i:i)
X	 enddo
X	 naca(15:15) = ' '
X	 type(3:3) = '1'
X      endif
c
c     Check 'A' series foils.
c
X      if (type(1:1).eq.'A') then
c
c        Check that we havnt got a 61-XXX etc.
c
X	 if (naca(2:2).lt.'3' .or. naca(2:2).gt.'5') then
X	    t_n = .false.
X	    return
X	 endif
c
c        Check that profile is defined.
c
X         fullpath = direct//filnme
X	 inquire( file=fullpath,exist=fex )
X	 if (.not. fex) then
c
c           Find appropriate base profile.
c
X	    if (ibase.lt.6) then
X	       ibase = 6
X	    else if (ibase.gt.15) then
X	       ibase = 15
X	    else if (ibase.eq.11 .or. ibase.eq.13 .or. ibase.eq.9) then
X	       ibase = ibase-1
X	    else
X	       ibase = ibase+1
X	    endif
X	 endif
c
c     Check '-' series foils.
c
X      else
c
c        Check that we havnt got a 61-XXX etc.
c
X	 if (naca(2:2).lt.'3' .or. naca(2:2).gt.'7') then
X	    t_n = .false.
X	    return
X	 endif
X         fullpath = direct//filnme
X	 inquire( file=fullpath,exist=fex )
X	 if (.not. fex) then
c
c           Find appropriate base profile.
c
X	    if (naca(2:2).eq.'7') then
X	       ibase = 15
X	    else if (ibase.lt.6) then
X	       ibase = 6
X	    else if (ibase.gt.21) then
X	       ibase = 21
X	    else if (ibase.eq. 7 .or. ibase.eq.13
X     &          .or. ibase.eq.16 .or. ibase.eq.19)then
X	       ibase = ibase-1
X	    else
X	       ibase = ibase+1
X	    endif
X	 endif
X      endif
c
c
X      if (.not. fex) then
c
c        Construct new NACA foil name.
c
X	 if (type(2:3).eq.'(1') then
X	    naca(4:4) = Sti( ibase,'I1' )
X	 else if (type(2:3).eq.'(2') then
X	    naca(4:5) = Sti( ibase,'I2' )
X	 else
X	    if (ibase.lt.10) then
X	       string(1:14) = naca(1:2)//'( )'//naca(3:11)
X	       string(4:4)  = Sti( ibase,'I1' )
X	       type(2:3) = '(1'
X	       nmn = nmn+3
X	    else
X	       string(1:15) = naca(1:2)//'(  )'//naca(3:11)
X	       string(4:5)  = Sti( ibase,'I2' )
X	       type(2:3) = '(2'
X	       nmn = nmn+4
X	    endif
X	    naca = string
X	 endif
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Naca6p( naca,inaca,ndata,filnme,type )
c
X      IMPLICIT none
X      INTEGER inaca
X      INTEGER ndata(3)
X      CHARACTER naca*(*),filnme*6,type*3
c
c  This routine converts a NACA number into the parameters describing
c  a foil.
c
X      INTEGER i
X      INTEGER icld,itau,ibase
X      INTEGER Ist
X      EXTERNAL Ist
c
c
X      if (type(2:2).ne.'(') then
X	 filnme = naca(1:3)//'0'//naca(5:6)
X	 ibase  = Ist( 2,naca(5:6),0 )
X	 i = -3
X      else
X	 if (type(3:3).eq.'1') then
X	    i = 0
X	    filnme = naca(1:2)//type(1:1)//'00'//naca(4:4)
X	 else if (type(3:3).eq.'2') then
X	    i = 1
X	    filnme = naca(1:2)//type(1:1)//'0'//naca(4:5)
X	 endif
X	 ibase  = Ist( 2,naca(4:4+i),0 )
X      endif
c
X      inaca= Ist( 2,naca(8+i:9+i),0 )
X      icld = Ist( 1,naca(7+i:7+i),0 )
X      itau = Ist( 2,naca(8+i:9+i),0 )
X      ndata(1) = icld
X      ndata(2) = itau
X      ndata(3) = ibase
c
X      return
X      END
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/nacafoil.f' &&
  chmod 0400 'naca-1.0/nacafoil.f' ||
  echo 'restore of naca-1.0/nacafoil.f failed'
  shar_count="`wc -c < 'naca-1.0/nacafoil.f'`"
  test 10139 -eq "$shar_count" ||
    echo "naca-1.0/nacafoil.f: original size 10139, current size $shar_count"
fi
# ============= naca-1.0/util.f ==============
if test -f 'naca-1.0/util.f' && test X"$1" != X"-c"; then
  echo 'x - skipping naca-1.0/util.f (File already exists)'
else
  echo 'x - extracting naca-1.0/util.f (text)'
  sed 's/^X//' << 'SHAR_EOF' > 'naca-1.0/util.f' &&
c
c-----------------------------------------------------------------------------
c
c  Util.f -- utility functions used in the NACA foil library.
c
c  Written By: S.E.Norris
c
c  norris@cfd.mech.unsw.edu.au
c
c  $RCSfile: util.f,v $
c  $Author: norris $
c  $Revision: 1.9 $
c  $Date: 1995/08/31 11:05:52 $
c
c  $Log: util.f,v $
c  Revision 1.9  1995/08/31  11:05:52  norris
c  *** empty log message ***
c
c  Revision 1.8  1995/08/31  09:34:23  norris
c  Removed problem with g77 compiler
c
c  Revision 1.7  1995/08/31  06:11:57  norris
c  Fixed the internal read/writes so that the Cray likes them
c
c  Revision 1.6  1995/08/31  04:43:30  norris
c  Modified internal reads for the Cray cf77 compiler.
c
c  Revision 1.5  1995/08/31  02:12:00  norris
c  Changed the digit recognition if statement to be portable.
c
c  Revision 1.4  1995/08/30  23:46:36  norris
c  Added the Lnblnk() function.
c
c  Revision 1.3  1995/08/30  11:59:34  norris
c  Fixed small bug in Sti().
c
c  Revision 1.2  1995/08/30  11:48:41  norris
c  Added the Sti and Rst functions.
c
c  Revision 1.1  1995/08/30  11:07:01  norris
c  Initial revision
c
c-----------------------------------------------------------------------------
c
X      FUNCTION Ist( nleter,string,defalt )
c
X      IMPLICIT none
X      INTEGER Ist
X      INTEGER nleter,defalt
X      CHARACTER string*(*)
c
c  This routine returns an integer read from a string. If a character
c  that isnt a digit is read in, then the default value is returned.
c
X      INTEGER i
X      INTEGER flagn,flagl
X      CHARACTER dstrng*70
c
c     Set blanks in string to ' '
c
X      dstrng = string(1:nleter)
X      do i = nleter+1,70
X	 dstrng(i:i) = ' '
X      enddo
c
c     Check that only numbers or spaces have been entered.
c
X      flagn = 0
X      flagl = 0
X      do i = 1,nleter
X	 if (lle(dstrng(i:i),'9') .and. lge(dstrng(i:i),'0')) then
X	    flagn = 1
X	 else
X	    if (dstrng(i:i).ne.' ') then
X	       flagl = 1
X	       if (i.eq.1 .and. dstrng(1:1).eq.'-') then
X		  flagl = 0
X	       endif
X	    endif
X	 endif
X      enddo
c
c     If string is a valid integer then read it; else return DEFALT.
c
X      if ((flagn.eq.1) .and. (flagl.eq.0)) then
X	 read(dstrng,'(i10)')  Ist
X      else
X	 Ist = defalt
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      FUNCTION Rst( nleter,string,defalt )
c
X      IMPLICIT none
X      INTEGER nleter
X      REAL defalt
X      CHARACTER string*(*)
X      REAl Rst
c
c  This routine returns a real value read from a string. If a character
c  that isnt a digit is read in then the default value is returned.
c
X      INTEGER flagn,flagl,i
X      CHARACTER dstrng*70
c
c     Set blanks in string to ' '
c
X      dstrng = string(1:nleter)
X      do i = nleter+1,70
X	 dstrng(i:i) = ' '
X      enddo
c
c     Check that only numbers, spaces or points have been entered.
c
X      flagn = 0
X      flagl = 0
X      do i = 1,nleter
X	 if (lle(dstrng(i:i),'9') .and. lge(dstrng(i:i),'0')) then
X	    flagn = 1
X	 else
X	    if ((dstrng(i:i).ne.' ') .and. (dstrng(i:i).ne.'.')) then
X	       flagl = 1
X	       if (i.eq.1 .and. dstrng(1:1).eq.'-') then
X		  flagl = 0
X	       endif
X	    endif
X	 endif
X      enddo
c
c     If string is a valid number then read it. Else set Rst to defalt.
c
X      if ((flagn.eq.1) .and. (flagl.eq.0)) then
X	 read(dstrng,'(i10)')  Rst
X      else
X	 Rst = defalt
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      FUNCTION Sti( ival,format )
c
X      IMPLICIT none
X      INTEGER ival
X      CHARACTER Sti*(*),format*(*)
c
c  This routine packages an integer as a string, to the supplied format.
c
X      INTEGER i
X      CHARACTER word*(80),form*(80)
X      INTEGER Lnblnk
X      EXTERNAL Lnblnk
c
X      i = Lnblnk(format) + 1
X      form(1:1) = '('
X      form(2:i) = format
X      form(i:i) = ')'
X      write( unit=word,fmt=form ) ival
X      Sti = word
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Crm3( a,r,x )
c
X      IMPLICIT none
X      REAL a(3,3),r(3),x(3)
c
c  Solves a set of 3 linear equations using Cramers method.
c
X      REAL indet
X      REAL Det3
X      EXTERNAL Det3
c
X      indet  = 1.0/det3( a(1,1),a(1,2),a(1,3) )
X      x(1) = indet*det3(    r  ,a(1,2),a(1,3) )
X      x(2) = indet*det3( a(1,1),   r  ,a(1,3) )
X      x(3) = indet*det3( a(1,1),a(1,2),   r   )
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      FUNCTION Det3( a,b,c )
c
X      IMPLICIT none
X      REAL a(3),b(3),c(3)
X      REAL Det3
c
c  Returns the determinant of a 3x3 matrix, with columns A,B and C.
c
X      Det3 = a(1)*b(2)*c(3) + a(3)*b(1)*c(2) + a(2)*b(3)*c(1)
X     &     - a(1)*b(3)*c(2) - a(2)*b(1)*c(3) - a(3)*b(2)*c(1)
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      FUNCTION Poly( x,n,c )
c
X      IMPLICIT none
X      INTEGER n
X      REAL x,c(0:n)
X      REAL Poly
c
c  This function evaluates a polynomial of X, of order N, whose coeff's
c  are passed in the vector C.
c
c     F(X) = C(N)*X**N + .... + C(1)*X + C(0)
c
X      INTEGER i
X      REAL sum
c
X      sum = c(n)
X      do i = n,1,-1
X	 sum = sum*x + c(i-1)
X      enddo
X      Poly = sum
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Cosdn( x,npl,npmx )
c
X      IMPLICIT none
X      INTEGER npl,npmx
X      REAL x(3,npmx)
c
c  This routine distributes points along the x axis of a foil
c  according to a cosine distrabution.
c
X      INTEGER i
X      REAL pi
X      PARAMETER (pi=3.14159265358979)
c
c
X      x(1,1) = 1.0
X      do i = 2,npl+1
X	 x(1,i) = 0.5*(1.0 + cos( 2.0*(pi*(real(i)-1))/real(npl) ))
X      enddo
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE FoilScale( x,npt,scale )
c
X      IMPLICIT none
X      INTEGER npt
X      REAL x(3,npt),scale
c
c  This routine scales a foils coordinates.
c
X      INTEGER i,j
c
X      if (scale.ne.1.0) then
X	 do i = 1,2
X	    do j = 1,npt
X	       x(i,j)  =  x(i,j)*scale
X	    enddo
X	 enddo
X      endif
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Spln( x,y,n,yp1,ypn,y2 )
c
X      IMPLICIT none
X      INTEGER n
X      REAL x(n),y(n),yp1,ypn,y2(n)
c
c  This routine is given tabulated values of X and Y ( Y = f(X) )
c  X1 < X2 <...< XN, and given YP1 and YPN, derivatives DY/DX at X1
c  and XN respectfully ( or if YP1 or YPN are => 1.0E30, the routine uses
c  boundary conditions of zero second derivative at X1 or XN ).
c  The routine returns Y2, a table of the second derivatives of the
c  interpolated function at the tabulated points.
c
X      INTEGER nmax
X      PARAMETER (nmax=100)
c
X      INTEGER i,k
X      REAL u(nmax),p,qn,sig,un
c
X      if (yp1.gt.0.99e30) then
X	 y2(1) = 0.0
X	 u(1)  = 0.0
X      else
X	 y2(1) = -0.5
X	 u(1)  = ( 3.0/( x(2)-x(1) ))*(( y(2)-y(1) )/( x(2)-x(1) )-yp1 )
X      endif
X      do i = 2,n-1
X	 sig = ( x(i)-x(i-1) )/( x(i+1)-x(i-1) )
X	 p   = sig*y2(i-1) + 2.0
X	 y2(i) = ( sig-1.0 )/p
X	 u(i) = ( 6.0*(( y(i+1)-y(i) )/( x(i+1)-x(i) ) - ( y(i)-y(i-1) )
X     &           /( x(i)-x(i-1) ))/( x(i+1)-x(i-1) ) - sig*u(i-1) )/p
X      enddo
X      if (ypn.gt.0.99e30) then
X	 qn = 0.0
X	 un = 0.0
X      else
X	 qn = 0.5
X	 un = ( 3.0*(x(n)-x(n-1)))*(ypn-( y(n)-y(n-1) )/( x(n)-x(n-1) ))
X      endif
X      y2(n) = ( un - qn*u(n-1) )/( qn*y2(n-1) + 1.0 )
X      do k = n-1,1,-1
X	 y2(k) = y2(k)*y2(k+1) + u(k)
X      enddo
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      SUBROUTINE Spin( xa,ya,y2a,n,x,y )
c
c     IMPLICIT none
X      INTEGER n
X      REAL xa(n),ya(n),y2a(n),x,y
c
c  This routine, given tabulated values of X and Y ( Y = f(X) )
c  X1 < X2 <...< XN, and given Y2, a table of second derivatives of
c  the interpolated function at the tabulated points ( returned
c  from Spln ), returns a cubic spline for a provided X value.
c
X      INTEGER klo,khi,k
X      REAL h,a,b
c
X      klo = 1
X      khi = n
X      do while (khi-klo.gt.1)
X	 k = ( khi+klo )/2
X	 if (xa(k).gt.x) then
X	    khi = k
X	 else
X	    klo = k
X	 endif
X      enddo
X      h = xa(khi) - xa(klo)
X      if (h.eq.0.0) then
X         print '(a)', 'Spin: bad XA input'
X         read *
X      endif
X      a = ( xa(khi)-x )/h
X      b = ( x-xa(klo) )/h
X      y = a*ya(klo) + b*ya(khi) +
X     &       ( ( a*a*a-a )*y2a(klo)+( b*b*b-b )*y2a(khi) )*(h*h)/6.0
c
X      return
X      END
c
c-----------------------------------------------------------------------------
c
X      FUNCTION Digit( string,n )
c
X      IMPLICIT none
X      INTEGER n
X      CHARACTER string*(*)
X      LOGICAL Digit
c
c  Tests a string to see if all characters are digits
c
X      INTEGER i
c
X      Digit = .true.
X      do i = 1,n
X	 if (lgt(string(i:i),'9') .or. llt(string(i:i),'0')) then
X	    digit = .false.
X	 endif
X      enddo
c
X      return
X      END
c
c------------------------------------------------------------------------------
c
X      FUNCTION Lnblnk(string)
c
X      IMPLICIT none
X      INTEGER Lnblnk
X      CHARACTER*(*) string
c
c  A replacement for the UNIX function lnblnk() -- returns the index of
c  the last non-blank character in a string.
c
X      do Lnblnk = len(string),1,-1
X         if (string(Lnblnk:Lnblnk).ne.' ') then
X            return
X         endif
X      enddo
X      Lnblnk = 0
c
X      return
X      END
SHAR_EOF
  $shar_touch -am 0830210795 'naca-1.0/util.f' &&
  chmod 0400 'naca-1.0/util.f' ||
  echo 'restore of naca-1.0/util.f failed'
  shar_count="`wc -c < 'naca-1.0/util.f'`"
  test 9541 -eq "$shar_count" ||
    echo "naca-1.0/util.f: original size 9541, current size $shar_count"
fi
exit 0



