sarkas.potentials.force_pm.create_k_aliases#

sarkas.potentials.force_pm.create_k_aliases(aliases, mesh_sizes, non_zero_box_lengths)[source]#

Calculate the alias arrays of the reciprocal space arrays for anti-aliasing.

Parameters
  • aliases (numpy.ndarray, numba.int64) – Number of aliases per dimension.

  • mesh_sizes (numpy.ndarray, numba.int64) – Number of mesh points in x,y,z.

  • non_zero_box_lengths (numpy.ndarray, numba.float64) – Length of simulation’s box in each direction. Note that no element should be equal to 0.0. If the dimensionality of the problem is lower than 3, then use 1.0 as the box length for those dimensions. Example: 2D non_zero_box_lengths = [Lx, Ly, 1.0].

Returns

  • kx_M (numpy.ndarray) – Array of aliases for each kx value. Shape=( mesh_size[0], 2 * aliases[0] + 1)

  • ky_M (numpy.ndarray) – Array of aliases for each ky value. Shape=( mesh_size[1], 2 * aliases[1] + 1)

  • kz_M (numpy.ndarray) – Array of aliases for each kz value. Shape=( mesh_size[2], 2 * aliases[2] + 1)