aspcol.kernelinterpolation.time_domain_directional_kernel

aspcol.kernelinterpolation.time_domain_directional_kernel(pos1, pos2, wave_num, dir_function)

The time domain directional kernel for a general directional function.

The dir_function supplied to this function is W^H(d) W(d) in [brunnströmTime2025], as there is little reason to use a rectangular W in general. That means that the dir_function has to be positive semi-definite.

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

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

  • 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.

  • dir_function (callable) – A function that takes a set of direction unit vectors of shape (num_dirs, 3) and returns a positive semi-definite matrix for each direction, a ndarray of shape (num_dirs, num_real_freqs, num_real_freqs).

Returns:

The time domain kernel matrix. The dft_len is assumed to be even, and the number of real frequencies is dft_len//2 + 1.

Return type:

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

References

[brunnströmTime2025]