Does CFD Match Theory? A NACA 0012 Lift Curve
Every aerospace student meets the same magic number in their first aerodynamics course: a thin airfoil makes lift at a rate of 2π per radian of angle of attack. It's clean, it's famous, and it falls out of a page of math nobody believes the first time they see it. So we ran the obvious experiment — build a NACA 0012, run it through Ansys Fluent, sweep the angle, and ask the only question that matters: does the CFD actually land on the textbook?
The physics: where does lift come from?
A wing makes lift by turning air. Tip the section into the oncoming flow and the streamlines bend around it — faster and lower-pressure over the top, slower and higher-pressure underneath — and the net of all that pressure is a force perpendicular to the flow. You can tell that story with Bernoulli's principle or with Newton's third law; they're two views of the same circulation. The beautiful part is the bookkeeping: for a thin, symmetric section, classical thin-airfoil theory predicts that the lift coefficient grows linearly with angle of attack at a slope of exactly 2π per radian, and passes through zero lift at zero incidence. That's the prediction we set out to hit.
2π per radian is one of the most quietly confident numbers in all of engineering. The whole point of a validation run is to find out whether nature agrees.
Inside the model
Geometry and mesh
The star is the NACA 0012 — a symmetric section, 12% thick, the unofficial mascot of every CFD validation study ever written. We generated the profile from the analytic NACA equation, wrapped it in a large rectangular far-field domain so the boundaries don't pollute the answer, and meshed the whole thing with gmsh into an all-triangle grid of 18,406 cells. Compact, fast, and more than enough to resolve the pressure field of an attached, inviscid flow.
Setup, solver, and one big decision
This is where we made the call that defines the whole study: we ran it inviscid — the steady, incompressible Euler equations, no viscosity, no turbulence model. That's a deliberate scoping choice, not a shortcut. Lift comes from circulation and pressure, and the inviscid equations capture both beautifully, so an Euler solve is exactly the right tool to isolate and test the lift-curve slope without the cost and meshing fuss of a boundary layer.
The other neat trick is how we swept angle of attack. Rather than re-mesh a rotated airfoil six times, we kept one fixed mesh and rotated the freestream instead — setting the inlet, top, and bottom velocity components (and the force-projection vectors) to the desired angle. We marched through α = 0, 2, 4, 6, 8, and 10°, each one a fresh steady solve in Fluent 2026 R1, run serial, converged clean on the first try.
One bookkeeping note that saves a table of run conditions: the steady incompressible Euler equations carry no Reynolds number and no Mach number. With the force reported as a coefficient, the solution depends only on the section shape and the angle of attack — the freestream speed and the chord scale out of Cl entirely. What does not scale out is the numerics: the mesh density and the distance to the far-field box, which is exactly where the honest caveats below live.
The result
Is it right?
Three checks, stated carefully. First, the zero-lift point: a symmetric airfoil must make exactly zero lift at zero angle of attack, and the solver returns Cl ≈ 0.0007 — essentially machine noise around zero. Pass.
Second, the slope — and here the first version of this page graded itself against the wrong line. Bare 2π is the limit for a vanishingly thin section. The reference is still the standard one, Anderson's Fundamentals of Aerodynamics, but the same theory that hands you 2π also hands you the thickness correction, Cl,α ≈ 2π(1 + 0.77·t/c) — about 6.9 per radian for the 12%-thick 0012. An ideal-flow solve of this section should come in above 2π, not below it. Ours reads 6.03: 4% under 2π, roughly 12% under the benchmark it actually owes. The most likely explanation — and we state it as a hypothesis, not a finding — is numerical dissipation: an all-triangle 18k-cell grid smears gradients enough to bleed circulation, and grid refinement should move the slope up toward 6.9. That refinement study has not been run yet; until it is, “within 4% of 2π” should not be read as agreement with theory.
Third, a coincidence worth naming so nobody banks on it: 6.03/rad happens to sit near measured lift-curve slopes for this section at flight Reynolds numbers, where the boundary layer trims the slope below the inviscid value. An inviscid solve matching viscous experiment is two errors shaking hands — dissipation pulling the number down in the solver the way viscosity pulls it down in the wind tunnel — and it validates neither.
The real-world connection
If you've ever felt a 737 tilt its nose skyward on the takeoff roll, you've watched this curve in action. "Rotation" is the pilot deliberately increasing the angle of attack to walk up the lift curve until the wing makes enough force to leave the ground. Our little NACA 0012 is doing the same thing in miniature: more angle, more lift, in a straight line — right up until the real world's viscosity decides to end the party (more on that below).
For the clearest, most myth-busting explainer of why wings actually make lift — angle of attack, Bernoulli, Newton, and why a wing can fly inverted — this one is excellent:
NASA's own Beginner's Guide to Aeronautics covers the same ground if you'd rather read it.
Betting a wing section, a fan blade, or a control surface on lift numbers nobody has checked against theory? Ansys Fluent sweeping a NACA 0012 from 0 to 10° on one fixed 18,406-cell mesh — held to the symmetric section’s zero-lift check (Cl ≈ 0.0007), with the 6.03/rad slope graded against the benchmark it actually owes (the thickness-corrected ~6.9/rad), the ~12% gap named as a dissipation hypothesis, and the refinement study that would close it named as the next step — is how simulation earns trust on the physics you can look up before you stake hardware on the physics you can’t. That's innovation through insight.



