Duct modes

antares.utils.DuctUtils.compute_duct_modes(r_duct, nb_mode_max)

Compute eigenvalues of a duct.

Solve the eigensystem of the convected wave equation. The location of the zeros for the function associated with the eigensystem correspond to the eigenvalues for the convected wave equation. The solution to the Bessel equation with boundary conditions applied yields a system of two linear equations.

\[\frac{d^2 \psi_m}{dr^2} + \frac{1}{r}\frac{d \psi_m}{dr} + \left( \alpha^2 - \frac{m^2}{r^2} \right) \psi_m = 0\]

with \(\alpha^2 = (\omega+Mk)^2 - k^2\)

with the boundary condition at hub and tip radii: \(\left.\frac{d\psi}{dr}\right|_{R_h, R_t} = 0\), for \(R_h \leq r \leq R_t\)

The general solution of this o.d.e. is:

\[\psi ( r ) = A J _ { m } ( \alpha r ) + B Y _ { m } ( \alpha r )\]

with \(J_m\) and \(Y_m\) first and second species Bessel function.

Applying BC leads to:

\[\begin{split}G x = \begin{bmatrix} J'_m(\alpha R_h) & Y'_m(\alpha R_h) \\ J'_m(\alpha R_t) & Y'_m(\alpha R_t) \end{bmatrix} \begin{bmatrix} A \\ B \end{bmatrix} = 0\end{split}\]

which has non-trivial solutions as long as the determinant is zero.

\[\begin{split}det(G) = f(x) = J_m(\alpha R_h)Y_m(\alpha R_t) - J_m(\alpha R_h)Y_m(\alpha R_h) = 0\\\end{split}\]

This function is solved using chord method.

Once the eigenvalues :math:`alpha has been computed, contants A and B are assigned one of the following two sets of values:

\[\begin{split}\left\{ \begin{array} { l } { A = 1 } \\ { B = - \frac { J _ { m } ^ { \prime } \left( \kappa _ { m n } r _ { D } \right) } { Y _ { m } ^ { \prime } \left( \kappa _ { m n } r _ { D } \right) } } \end{array} \right. \quad \text { or } \quad \left\{ \begin{array} { l } { A = - \frac { Y _ { m } ^ { \prime } \left( \kappa _ { m n } r _ { D } \right) } { J _ { m } ^ { \prime } \left( \kappa _ { m n } r _ { D } \right) } } \\ { B = 1 } \end{array} \right.\end{split}\]

Of these two sets of values, the one for which \(\left( A ^ { 2 } + B ^ { 2 } \right)\) is the smaller value is chosen. If \(\left( A ^ { 2 } + B ^ { 2 } \right)\) is the same for both, then the second set is picked.

with:

x (float): coordinate

m (int): azimuthal wave number

R_h (float): inner (hub) radius of a circular annulus

R_t (float): outer (tip) radius of a circular annulus

Parameters
  • r_duct ([float, float]) – the hub radius and the tip radius

  • nb_mode_max ([int, int]) – the maximum azimuthal mode order and the maximum radial mode order to compute

Daroukh, M. “Effect of distortion on modern turbofan tonal noise”, PhD thesis, Toulouse University, 2017

Daviller, G. “AITEC2: Theoretical & Technical Report on Dedicated Acoustic Treatment in Antares”, 2018

Moinier and Giles, “Eigenmode Analysis for Turbomachinery Applications”, Journal of Propulsion and Power, Vol. 21, No. 6, 2005.