sarkas.potentials.force_pm.sum_over_aliases
sarkas.potentials.force_pm.sum_over_aliases#
- sarkas.potentials.force_pm.sum_over_aliases(kx, ky, kz, kx_M, ky_M, kz_M, h_array, p, four_pi, alpha_sq, kappa_sq)[source]#
Perform the sum over aliases in each direction.
- Parameters
kx (float) – Value of the k_x wavenumber.
ky (float) – Value of the k_y wavenumber.
kz (float) – Value of the k_z wavenumber.
kx_M (numpy.ndarray) – Array of aliases for each kx value. Shape=( 2 * aliases[0] + 1)
ky_M (numpy.ndarray) – Array of aliases for each ky value. Shape=(2 * aliases[1] + 1)
kz_M (numpy.ndarray) – Array of aliases for each kz value. Shape=(2 * aliases[2] + 1)
h_array (numpy.ndarray) – Mesh spacings.
p (numpy.ndarray) – Charge assignment order for each direction. i.e. cao_x, cao_y, cao_z
four_pi (float) – Multiplier constant. \(4 \pi\) if cgs units or \(4 \pi \eplison_0\) if mks units.
alpha_sq (float) – Ewald parameter squared, \(\alpha^2\).
kappa_sq (float) – Screening parameter squared. It is equal to 0 (zero) in case of Coulomb interaction.
- Returns
U_G_k (float) – Product of the Green’s function and the FFT of the B-splines squared. i.e. The numerator of eq.(31) in [Dharuman et al., 2017].
U_k_sq (float) – Sqared sum of the FFT of the B-spline. i.e. The denominator (without the \(|k_n|^2\):) in cite:Dharuman2017.