A nonlinear aeroelastic simulation analysis package for very flexible aircraft and wind turbines.

View the Project on GitHub ImperialCollegeLondon/sharpy

Version badge Build Status Documentation Status codecov License status DOI

Simulation of High Aspect Ratio airplanes in Python

SHARPy is an aeroelastic analysis package developed at the Department of Aeronautics, Imperial College London. It can be used for the structural, aerodynamic and aeroelastic analysis of flexible aircraft, flying wings and wind turbines.



For more information on the research team developing SHARPy or to get in touch, visit our homepage.

Physical Models

SHARPy is an aeroelastic solver that uses two specific models for the structural and aerodynamic response of the system.

For the structural model, SHARPy employs a nonlinear, geometrically-exact displacement and rotation-based beam formulation. This model has the advantage of providing the solution directly in the physical problem’s degrees of freedom, making the coupling with the aerodynamic solver simple and not requiring any post-processing. The 1D beam formulation used limits the analyses that can be done by SHARPy to slender structures, such as high aspect ratio wings.

The aerodynamic model utilises the Unsteady Vortex Lattice Method (UVLM). The aerodynamic surfaces are modelled as a thin vortex ring lattice with the boundary conditions enforced at the collocation points in the middle of the vortex rings. The Kutta condition is also enforced at the trailing edge. The wake can be simulated by either additional vortex rings or by infinitely long horseshoe vortices, which ideally suited for steady simulations only.

The input problems can be structural, aerodynamic or coupled, yielding an aeroelastic system.


SHARPy offers (amongst others) the following solutions to the user:


The documentation for SHARPy can be found here.

Installing SHARPy

For the latest documentation, see the installation docs

As of version v1.0.1, SHARPy can also be obtained from Docker Hub to avoid compilation and platform-dependant issues. If you are interested, make sure you check the SHARPy Docker distribution docs.


If you think you can add some useful feature to SHARPy, by all means, check out the collaboration guide.

Citing SHARPy

The current version of SHARPy is archived in Zenodo. If you need to cite it, use this:


SHARPy has also a concept DOI which represents all the versions of the given software package, i.e. the concept of the software package and the ensemble of versions.


For more information on citing and Zenodo, read more

Continuous Integration Status

SHARPy uses Continuous Integration to control the integrity of its code. The status in the release and develop branches is:

Master Build Status

Develop Build Status