1. Samuel Sinayoko
  2. Trailing Edge Noise for Rotating Blades



This program allows to estimate trailing edge noise for an isolated airfoil or a rotating airfoil. It accompanies the paper "Trailing Edge Noise for Rotating Blades" by Sinayoko, Kingan and Agarwal in 2013 (published in Proceedings of the Royal Society A).

Contact: Sam Sinayoko <s.sinayoko AT soton.ac.uk>

The code is written in Python. It has been run using the free Anaconda Python Distribution from ContinuumIO.

Mercurial repository.


Cloud computing

The code is pre-installed in the cloud as an IPython notebook.

It can be run and modified on Wakari. This requires setting up a free account which should take two minutes maximum.

Desktop computer

The paper was produced using Anaconda 1.5.0 (64-bit) with Python 2.7 from ContinuumIO, which includes:

  • Numpy 1.7.1
  • Scipy 0.12.0
  • Matplotlib 1.2.1

Other depdencies for producing the figures used in the paper:

  • Asymptote 2.1.5
  • Docopt 0.6.1 (python command line package)
  • Scons v1.2.0 (a modern make)

The code for generating the results is in the IPython notebook figs_proceedings.ipynb. The actual figures in the paper have been produced using version 2.15 of Asymptote. Once asymptote has been installed, it can be activated in the notebook by setting ASYPLOT to True.


The IPython notebook figs_proceedigns.ipynb can be used for generating and exploring the figures of the paper. The notebook is convenient for interactive work.

$ ipython notebook --pylab=inline --script

Alternatively the scripts directivity.py and aclift.py can be used from the command line for generating figures 5, 8 and 9 of the paper. This is the approach that was used for the producing the published figures.

$ python directivity.py --help
$ python aclift.py --help


The paper source and figures are in the folder paper. The paper can be reproduced as follows:

$ cd ~/tmp/
$ clone ssh://hg@bitbucket.org/sinayoko/trailing-edge-noise-for-rotating-blades && cd trailing-edge-noise-for-rotating-blades
$ easy_install docopt
$ easy_install scons
$ scons

Code organisation

  • The main library is in fdanoise.
  • The library contains two submodules fdanoise.isolated and fdanoise.rotating, that implement the formulations for a fixed airfoil and a rotating airfoil respectively.

Isolated airfoil

  • Amiet's formulation for an isolated airfoil lives in fdanoise.isolated.amiet
  • The source (incoming pressure fluctuations near the trailin edge) is modelled in fdanoise.isolated.force_spectrum
  • The transfer function from source to observer is modelled in fdanoise.isolated.acoustic_lift.
  • The notebook that validates the implementation of these formulations is isolated_scripts.ipynb. Some of its results requires to run the model of Brooks, Pope and Marcolini which can be installed by running "make" in folder fdanoise/isolated/brooks.

Rotating airfoil

  • The formulation of Schlinker and Amiet for a rotating airfoil is implemented in fdanoise.rotating.schlamiet.
  • The formulation of Sinayoko, Kingan and Agarwal is implemented in fdanoise.rotating.singawal.


A new object oriented version of the code called RBBNoise has been developed at the Institute of Sound and Vibration Research in Southampton by Sam Sinayoko. The new version is currently closed source and implements:

  • Amiet's trailing edge and leading edge models for isolated aerofoils
  • Amiet's trailing edge and leading edge models for rotating aerofoils
  • Howe's model for isolated aerofoils with a straight edge
  • Howe's models for isolated aerofoils with serrated edges
  • Howe's models combined with Amiet's rotating model, for predicting noise for rotating blades with serrations.
  • Sinayoko et al's "exact" model for rotating aerofoils.

Contact Sam Sinayoko <s.sinayoko AT soton.ac.uk> for any questions regarding RBBNoise.