.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "api/gallery/aerodynamics/airfoils/plot_01_naca_four_digit_sections.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code or to run this example in your browser via JupyterLite. .. rst-class:: sphx-glr-example-title .. _sphx_glr_api_gallery_aerodynamics_airfoils_plot_01_naca_four_digit_sections.py: The NACA four-digit airfoil family ================================== In NACA Report 460 (1933) Eastman Jacobs and colleagues tested 78 related sections in the variable-density tunnel. Each is defined by a single thickness polynomial wrapped around a two-parabola camber line, so four digits specify the whole shape: ``2412`` has 2% camber at 40% chord and is 12% thick. :func:`~engineeringkit.aerodynamics.naca4_airfoil` builds the coordinates; :meth:`~engineeringkit.aerodynamics.Airfoil.summary` recovers the digits from the geometry. .. GENERATED FROM PYTHON SOURCE LINES 15-20 .. code-block:: Python import matplotlib.pyplot as plt from engineeringkit.aerodynamics import naca4_airfoil from engineeringkit.aerodynamics.visualizers import plot_airfoil .. GENERATED FROM PYTHON SOURCE LINES 21-23 Four members of the family -------------------------- .. GENERATED FROM PYTHON SOURCE LINES 23-39 .. code-block:: Python fig, axes = plt.subplots(4, 1, figsize=(7, 7.5), sharex=True) for ax, designation in zip(axes, ["0012", "2412", "4412", "6409"], strict=True): foil = naca4_airfoil(designation, n=201) plot_airfoil(foil, ax=ax) s = foil.summary() print( f"{s['name']}: max thickness {s['max_thickness']:.3f} at x/c = {s['max_thickness_at']:.2f}, " f"max camber {s['max_camber']:.3f} at x/c = {s['max_camber_at']:.2f}" ) assert abs(s["max_thickness"] - int(designation[2:]) / 100) < 1e-3 ax.set_xlabel("") axes[-1].set_xlabel("x / c") fig.tight_layout() plt.show() .. image-sg:: /api/gallery/aerodynamics/airfoils/images/sphx_glr_plot_01_naca_four_digit_sections_001.png :alt: NACA 0012, NACA 2412, NACA 4412, NACA 6409 :srcset: /api/gallery/aerodynamics/airfoils/images/sphx_glr_plot_01_naca_four_digit_sections_001.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-script-out .. code-block:: none NACA 0012: max thickness 0.120 at x/c = 0.30, max camber 0.000 at x/c = 0.00 NACA 2412: max thickness 0.120 at x/c = 0.30, max camber 0.020 at x/c = 0.40 NACA 4412: max thickness 0.120 at x/c = 0.30, max camber 0.040 at x/c = 0.40 NACA 6409: max thickness 0.090 at x/c = 0.30, max camber 0.060 at x/c = 0.40 .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.303 seconds) .. _sphx_glr_download_api_gallery_aerodynamics_airfoils_plot_01_naca_four_digit_sections.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: lite-badge .. image:: images/jupyterlite_badge_logo.svg :target: ../../../../lite/lab/index.html?path=api/gallery/aerodynamics/airfoils/plot_01_naca_four_digit_sections.ipynb :alt: Launch JupyterLite :width: 150 px .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_01_naca_four_digit_sections.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_01_naca_four_digit_sections.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_01_naca_four_digit_sections.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_