Exemple #1
0
/* f(r) = 1/r 
 * grad f(r) = 1/r * (x,y,z)^T * f'(r) 
 * Do not include the factor 1/r * (x,y,z)^T, it will be calculated later. */
fcs_float ifcs_p2nfft_compute_near_field(
    const void* param, fcs_float dist
    )
{
  ifcs_p2nfft_data_struct* d = (ifcs_p2nfft_data_struct*) param;

  if (d->reg_kernel == FCS_P2NFFT_REG_KERNEL_EWALD)
    return compute_near_field_periodic(param, dist);
  else /* d->reg_kernel == FCS_P2NFFT_REG_KERNEL_OTHER */
    return compute_near_field_nonperiodic(param, dist);
}
Exemple #2
0
/* f(r) = 1/r 
 * grad f(r) = 1/r * (x,y,z)^T * f'(r) 
 * Do not include the factor 1/r * (x,y,z)^T, it will be calculated later. */
fcs_float ifcs_p2nfft_compute_near_field(
    const void* param, fcs_float dist
    )
{
  ifcs_p2nfft_data_struct* d = (ifcs_p2nfft_data_struct*) param;

  if(d->num_periodic_dims == 0)
    return compute_near_field_nonperiodic(param, dist);
  else
    return compute_near_field_periodic(param, dist);
}