aspcol.kernelinterpolation.get_kernel_weighting_filter

aspcol.kernelinterpolation.get_kernel_weighting_filter(kernel_func, reg_param, mic_pos, integral_domain, mc_samples, num_freq, samplerate, c, *args)

Calculates kernel weighting filter A(w) in frequency domain see ‘Spatial active noise control based on kernel interpolation of sound field’ by Koyama et al.

Parameters:
  • kernel_func (function) – with calling signature kernel_func(points1, points2, waveNum, *args)

  • reg_param (float)

  • mic_pos (ndarray of shape (num_mics, spatial_dim))

  • integral_domain (instance of any Region object found is aspsim package)

  • mc_samples (int) – how many monte carlo samples to be drawn for integration

  • num_freq (int)

  • samplerate (int)

  • c (float) – speed of sound

  • *args (arguments needed for kernel function except points1, points2, waveNum)

Returns:

  • ndarray of shape (num_freq, num_mics, num_mics)

  • For both diffuse and directional kernel P^H = P, so the hermitian tranpose should not do anything

  • It is left in place in case a kernel function in the future changes that identity.