Skip to main content

Airfoils (aerofoils)

Project description

.. image:: https://img.shields.io/pypi/v/airfoils.svg?style=flat
:target: https://pypi.org/project/airfoils/
:alt: Latest PyPI version

.. image:: https://img.shields.io/badge/license-Apache%202-blue.svg
:target: https://github.com/airinnova/framat/blob/master/LICENSE.txt
:alt: License

.. image:: https://readthedocs.org/projects/airfoils/badge/?version=latest
:target: https://airfoils.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status

.. image:: https://travis-ci.org/airinnova/airfoils.svg?branch=master
:target: https://travis-ci.org/airinnova/airfoils
:alt: Build Status

.. image:: https://codecov.io/gh/airinnova/airfoils/branch/master/graph/badge.svg
:target: https://codecov.io/gh/airinnova/airfoils
:alt: Coverage

|

.. image:: https://raw.githubusercontent.com/airinnova/airfoils/master/docs/source/_static/images/logo.png
:alt: Airfoils
:width: 100 px
:scale: 100 %

*Airfoils* is a small *Python* library for object-oriented airfoil modelling. The library provides tools to easily instantiate airfoil objects and to query geometric information. An airfoil object is defined by upper and a lower surface coordinates.

.. figure:: https://raw.githubusercontent.com/airinnova/airfoils/master/docs/source/_static/images/airfoil_nomenclature.svg?sanitize=true
:width: 700 px
:align: center
:target: https://github.com/airinnova/airfoils
:alt: Example

Airfoil nomenclature. Image in the public domain, via `Wikimedia Commons <https://commons.wikimedia.org/wiki/File:Wing_profile_nomenclature.svg>`_.

Features
--------

* Airfoil generation with a *NACA-4* series definition

* Import from files

* Full support for airfoils from the `UIUC Airfoil Coordinates Database <https://m-selig.ae.illinois.edu/ads/coord_database.html>`_

* Interpolation or computation of airfoil geometry parameters

* Upper and lower surface coordinates
* Camber line coordinates
* Chord line coordinates (TODO)
* Thickness distribution (TODO)
* Maximum thickness (TODO)

* Linear interpolation between two different airfoils (*MorphAirfoil*)

* Plotting of airfoils

Example
-------

.. code:: python

>>> from airfoils import Airfoil
>>> foil = Airfoil.NACA4('4812')
>>> foil.plot()

.. image:: https://raw.githubusercontent.com/airinnova/airfoils/master/docs/source/_static/images/example.png
:width: 600 px
:target: https://github.com/airinnova/airfoils
:alt: Example

.. code:: python

>>> foil.y_upper(x=0.5)
array(0.13085448)
>>> foil.y_lower(x=[0.2, 0.6, 0.85])
array([0.00217557, 0.02562315, 0.01451318])
>>> foil.camber_line(x=0.5)
0.07789290253609385


Installation
------------

.. code::

pip install airfoils

Documentation
-------------

* https://airfoils.readthedocs.io/

License
-------

**License:** Apache-2.0


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

airfoils-0.2.2.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

airfoils-0.2.2-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file airfoils-0.2.2.tar.gz.

File metadata

  • Download URL: airfoils-0.2.2.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.2

File hashes

Hashes for airfoils-0.2.2.tar.gz
Algorithm Hash digest
SHA256 fe22434253ee3ecaeca216e51b6a228d1649d5524bd6d632f2b76b75304d4498
MD5 766bb15928de78d317b898b116ccd041
BLAKE2b-256 2fb28162f3b7d4ac78e18ae58b15f129b38a2f1af5b9e8658e340e66e4378ea2

See more details on using hashes here.

File details

Details for the file airfoils-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: airfoils-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.2

File hashes

Hashes for airfoils-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b46c8665b3fe9b6e482e98a541c896aeeb091b235e960a304d2c9b12b0b690ea
MD5 03c602d8c2ffa69af33e73ce426aff5b
BLAKE2b-256 0937bfd8ff2e9a14624f846432469d565e86f1e0733c96302a4888882717c67a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page