Airfoil refinement - Cubic spline

The studied airfoil consists of a list of points (defined with their abscissas and ordinates), that can be split into two parts : the upper surface of the wing (called the extrados in French) and its lower surface (called intrados). This part can be done by using the provided load_foil.py file.

In order to interpolate the points of the airfoil into a sufficiently smooth curve, we will use cubic splines. Points of the curve are then joined by a piecewise-polynomial curve, such that each polynomial has a degree at most $3$, and such that the joins between two consecutive polynomials preserve the continuity of the curve, its derivative and its second derivative.

The chapter 3.3 of the Numerical Recipes describes the cubic spline algorithm that computes this sequence of polynomials. Here is an example of spline interpolating the points of the function $x \rightarrow x^3$ :

Test des splines cubiques

  • Questions :
    1. Select an airfoil in the database of the UIUC Applied Aerodynamics Group, and validate that the load_foil.py can read the selected file (otherwise select another one). Note that you can also create your own airfoil if you wish

    2. Implement the cubic spline algorithm with the help of the Numerical Recipes. The algorithm must be validated on known polynomial functions of different orders. It can be done visually, but you should also find a way to validate your algorithm numerically.

    3. What derivatives should be used for the first and last point ? What is the impact of their value ?

    4. Apply your algorithm to the airfoil to see if you have a continous function.