# Can I compute the lift coefficient based on the NACA airfoil?

I would like to know whether it is possible to compute the lift coefficient $C_l$ based on the NACA airfoil? Usually I look up the values on airfoiltools.com.

Eg: If I have a 2412NACA airfoil and would like to know the lift coefficient for an angle of attack $\alpha$ = 3°. What would be the corresponding lift coefficient?

Thanks

• Be more specific, and an answer is possible: What is the Reynolds number and the Mach number? Do you need a 2D value or one for a specific wing? Commented Feb 25, 2018 at 21:50

Yes it is possible. Here is what I did, maybe it answers your question.

1) I went to airfoiltools.com into the comparison section.
2) Looked up the NACA-airfoil 2412
3) scroll down to choose the speed (Reynoldsnumber). I took the minimum and maximum to get an idea of the spread.
4) scrolled further for the polars, at sketched the $\alpha = 3^\circ$ into it

But somehow I do wonder if this is really your question.

Or are you asking for xfoil and the commands to compute it?

In case you want to compute the values without visiting airfoiltools (which most-likely use xfoil themselves) you need a tools to numerically solve the governing equations.
You can do this in many ways. Those ways differ in the way the flow is approximated. So you could go with XFoil (very simple approximation of the aerodynamics) or maybe OPENFOAM (more complex description of aerodynamics).

There is however no way to calculate these coefficients in an easy way.

The thin airfoil theory approach (code in @Jacob Ivanov's answer) is detailed in this answer to a similar question.

However, in the link, the integrals have been carried out analytically -- vs. the provided code solves the integrals numerically. The link works out the example for a 4412, but the equations can easily be re-evaluated for a 2412.

I was given this exact airfoil (NACA 2412) as part of an assignment for my graduate level Aerodynamics coursework, and since I already solved it, I figured I'd post it for the benefit of all future students who found this page.

My solution technique comes from pages 358 and surrounding of Anderson's "Fundamentals of Aerodynamics".

import numpy as np
import scipy.integrate as integrate

alpha = np.linspace(-10, 10, 100) # deg
NACA = '2412'
c = 1.2 # m

def z_prime(x, naca, c):
m = float(naca[0]) / 100
p = float(naca[1]) * c / 10

if 0 <= x / c <= p:
return (2 * m) * (p - x) / (p ** 2)
if p < x / c <= 1:
return (2 * m) * (p - x) / ((1 - p) ** 2)

def integrand_0(x, naca, c):
return 2 * z_prime(x, naca, c)/ c / np.sqrt(1 - (2 * x / c - 1) ** 2)

def integrand_1(x, naca, c):
return 2 * z_prime(x, naca, c) * (1 - 2 * x / c) / c / np.sqrt(1 - (2 * x / c - 1) ** 2)

def integrand_2(x, naca, c):
return 4 * z_prime(x, naca, c) * (1 - 2 * x / c) / c / np.sqrt(1 - (2 * x / c - 1) ** 2)

A0 = np.zeros(len(alpha))
A1 = np.zeros(len(alpha))
A2 = np.zeros(len(alpha))

c_L = np.zeros(len(alpha))

for i in range(len(alpha)):
A0[i] = np.deg2rad(alpha[i]) - integrate.quad(integrand_0, 0, c, args = (NACA, c))[0] / np.pi
A1[i] = 2 * integrate.quad(integrand_1, 0, c, args = (NACA, c))[0] / np.pi
A2[i] = 2 * integrate.quad(integrand_2, 0, c, args = (NACA, c))[0] / np.pi

c_L[i] = np.pi * (2 * A0[i] + A1[i])

import matplotlib.pyplot as plt
plt.plot(alpha, c_L, label = "NACA {0}".format(NACA))
plt.axhline(0, linestyle = 'dashed')
plt.title("Coefficient of Lift over Angle of Attack")
plt.xlabel(r"$$\alpha$$ (deg)")
plt.ylabel(r"$$c_L$$")
plt.legend()
plt.show()