finesse.thermal.hello_vinet.zeros_of_xjn_1_chi_jn

finesse.thermal.hello_vinet.zeros_of_xjn_1_chi_jn(double chi, int n_max, int s_max, double accuracy)

Compute the roots of the equation

\[x J_{n+1}(x) - \chi J_{n}(x) = 0 \]

which is used throughout the Hello-Vinet thermal equations.

Parameters
chifloat

Reduced radiation constant

n_maxint

Max bessel order to compute up to, must be > 0

s_maxint

Max number of zeros to compute, must be >= 2

accuracydouble

absolute error on zero finding brentq algorithm

Returns
eta_n_sarray_like

Array of s_max zeros for the n_max bessel functions

Notes

This is based on the calculations in [1]. The zeros of this function are used in multiple calculations throughout the text.

This algorithm finds the first two zeros of the 0th order bessel function then from there assumes the next zero is approximately the difference between the last two further away.

For higher order bessels, the zeros are always between the zeros of n-1 zeros which can be used as bounds for root finding.

1

Jean-Yves Vinet, “On Special Optical Modes and Thermal Issues in Advanced Gravitational Wave Interferometric Detectors” Living Review 2009