Nearest NACA Airfoil finder​
​by Saulo da Paz Almeida
To achieve a satisfatory wing design can be a time-consuming task, due to the inumerous airfoil shapes an engineer need to compute before reaching desirable aerodynamical parameters. This project intends to develop an optimal solution, through machine learning methods, that finds a list of NACA airfoils which matches the physical characteristics, or the closest possible results within the Dataset.
NACA AIRFOILS NACA airfoils are commonly a first approach in Aerodynamics. They were wing section formats reported and largely studied by the National Advisory Committee for Aeronautics (NACA) research and development, predecessor of the currently National Aeronautics and Space Administration (NASA). Their designation (with 4 digits or 5 digits series being approached in this project) are very specific coefficients which describe their coordinates, allowing an aerodynamicist to easily model and simulate them with the panel method (an approach of Computational Fluid Dynamics).​
​As the public texts of the NACA Technical Reports no. 460 and no. 537 display summaries of the main performance characteristics for two-dimensional aerodynamics of a large number of this Airfoils, gathering the experimental (and very reliable) data became the first step to implement the function. It is important to state that experimental procedures are more precise than simulations, therefore more close to reality.The whole historical development of the NACA airfoils, as well as its mathematical foundations, are precisely reviewed in the NACA Technical report no. 824.
FOUR DIGIT SERIES The first series of these airfoil were largely tested on wind tunnels, and have a very clear and useful designation:
FIVE DIGIT SERIES The main difference between this designation and the previous one relies on the possibility of reflexed camber lines. The first digit now displays a theoretical lifting coefficient. Also, the third digit states if it has a reflexed or simple camber:​
And their main characteristics were extracted from NACA’s reports, written in .csv archives and displayed as in the following dataset:
Returns the DataSet built throughout the project
naca4DigitsDataset=Import["/home/saulo/data4digits.m"]​​naca5DigitsDataset=Import["/home/saulo/data5digits.m"]
Out[]=
Airfoil
Clmax
AoA at Clmax (deg.)
AoA at Cl=0 (deg.)
dCl/dalpha (per deg.)
0006
0.88
13
-0.1
0.102
0009
1.27
14
0.0
0.101
0012
1.53
17
0.0
0.101
0015
1.53
17
0.0
0.1
0018
1.49
17
0.0
0.098
0021
1.38
17
-0.1
0.094
0025
1.2
16
0.0
0.089
2212
1.6
16
-1.8
0.103
2306
1.04
11
-1.8
0.104
2309
1.51
15
-2.0
0.103
2312
1.61
16
-1.9
0.101
2313
1.54
15
-1.7
0.102
2406
1.01
13
-1.7
0.103
2409
1.51
14
-1.7
0.103
2412
1.62
17
-1.8
0.101
2415
1.55
16
-1.7
0.101
2418
1.43
15
-1.9
0.098
2421
1.35
16
-1.7
0.097
2506
1.03
15
-2.0
0.103
2509
1.38
13
-2.0
0.102
showing 1–20 of 68
Out[]=
Airfoil
Clmax
AoA at Clmax (deg.)
AoA at Cl=0 (deg.)
dCl/dalpha (per deg.)
21012
1.67
15
-0.6
0.99
22012
1.66
16
-0.9
0.1
23012
1.67
16
-1.2
0.1
24012
1.65
16
-1.5
0.1
25012
1.61
15
-1.6
0.1
22112
1.58
15
-0.8
0.1
23112
1.67
16
-0.8
0.1
24112
1.61
16
-0.9
0.1
25112
1.56
15
-1.2
0.1
PROCEDURAL To identify a general airfoil, the following function was built to measure it’s main physical characteristics. Some other functions were built throughout the projet, making use of some machine learning functions such as Classify and Predict, to determine the reflexed nature of the airfoil, and Nearest, to provide the closest known airfoils within the training Dataset. It is important to state that the coordinates of the unknown arfoil need to be evaluated from the trailing edge, counterclockwise.
In[]:=
nearestAirfoil[coordinates_?ListQ]:=Module[{upper,lower,camber,maxCamber,posMaxCamber,maxThickness,nearest4,nearest5},​​upper=Sort@Take[coordinates,UpTo[Position[coordinates,{0.,0.}]〚1,1〛]];(*theuppersurface*)​​lower=Drop[coordinates,Position[coordinates,{0.,0.}]〚1,1〛-1];(*thelowersurface*)​​camber=((upper+lower)/2)[[All,2]];maxCamber=Max@camber;(*evaluatesthemaximumcamber*)​​posMaxCamber=((upper+lower)/2)〚Part[Flatten@Position[camber,maxCamber],1],1〛;(*returnsthepositionofthemaximumcamber*)​​maxThickness=Max@(upper-lower)〚All,2〛;(*returnsthepositionofmaximumthickness*)​​nearest4=find4@fourDigitSeries[{{100000*Round[maxCamber,0.01]},{1000*Round[posMaxCamber,0.1]},{100*Round[maxThickness,0.01]}}];​​nearest5=First@find5@fiveDigitSeries[posMaxCamber,maxCamber,100*Round[maxThickness,0.01]];​​Return[{nearest4,nearest5}]​​]
The outputs are a fast and resourceful way to first identify an airfoil’s characteristics, as follows in the example of an random airfoil analysed with the function. Although the values are probably less accurate than a simulation approach, and besides being a lot easier and faster to implement, they are a good comparing point, mainly for airfoils with less complex shapes, which can easily fit in the Dataset.
display=Graphics@Line@coordinates​​d4=naca4DigitsDataset[Select[#AirfoilToString@nearestAirfoil[coordinates][[1,1]]&],All]​​d5=naca5DigitsDataset[Select[#AirfoilToString@nearestAirfoil[coordinates][[2,1]]&],All]
Out[]=
Out[]=
Airfoil
Clmax
AoA at Clmax (deg.)
AoA at Cl=0 (deg.)
dCl/dalpha (per deg.)
6409
1.68
15
-5.9
0.101
Out[]=
Airfoil
Clmax
AoA at Clmax (deg.)
AoA at Cl=0 (deg.)
dCl/dalpha (per deg.)
25112
1.56
15
-1.2
0.1
POSSIBILITIES Gathering data was clearly the main difficult about this project, but it happened to show great results. A larger amount of data, a well trained Neural Network and large amount of coordinates seem to be a promising feature to generate very accurate results, but it would not have been possible for a 3 week project.

Keywords

◼
  • Airfoil
  • ◼
  • Aerodynamics
  • Acknowledgment

    Mentor: Daavid Väänänen
    Jesse Galef

    References

    ◼
  • [1] Source: https://simple.wikipedia.org/wiki/Airfoil#/media/File:Wing_profile _nomenclature.svg
  • ◼
  • Gudmundsson, Snorri. General aviation aircraft design: Applied Methods and Procedures. Butterworth-Heinemann, 2013.
  • ◼
  • Abbott, Ira H., Albert E. Von Doenhoff, and Louis Stivers Jr. “Summary of airfoil data.” (1945).
  • ◼
  • Abbott, Ira H., and Albert E. Von Doenhoff. Theory of wing sections: including a summary of airfoil data. Courier Corporation, 2012.