aspcol.kernelinterpolation.multifreq_directional_kernel_vonmises

aspcol.kernelinterpolation.multifreq_directional_kernel_vonmises(pos1, pos2, wave_num, direction, beta, diag_mat=True)

Multiple frequency directional sound field kernel.

Defined for each position pair as diag{}_{i=0}^{L//2} j_0 (k_i lVert r - r’ rVert_2^2) where L is the (even) length of the real DFT, and hence L//2 + 1 is the number of real frequencies.

Parameters:
  • pos1 (np.ndarray of shape (num_points1, 3)) – Position of the first point.

  • pos2 (np.ndarray of shape (num_points2, 3)) – Position of the second point.

  • wave_num (np.ndarray of shape (num_real_freqs,)) – Wave number, defined as 2*pi*f/c, where f is the frequency and c is the speed of sound.

  • direction (np.ndarray of shape (3,1)) – The direction of the directional weighting.

  • beta (float) – The strength of the directional weighting. A larger value will give more regularization.

Returns:

The kernel matrix.

Return type:

np.ndarray of shape (num_points1, num_points2, num_real_freqs, num_real_freqs)

Notes

Clearly this is space-inefficient implementation as a diagonal matrix is stored as a full matrix. But it is provided to easy combine with other functions and check correctness.

References

[uenoDirectionally2021] [brunnströmTime2025]