#[unsafe(no_mangle)]pub extern "C" fn evaluate_helmholtz_kernel_f64(
source_ptr: *const f64,
target_ptr: *const f64,
charge_ptr: *const f64,
result_ptr: *mut f64,
wavenumber_real: f64,
wavenumber_imag: f64,
nsources: usize,
ntargets: usize,
ncharge_vecs: usize,
return_gradients: bool,
num_threads: usize,
)Expand description
Evaluate the Helmholtz potential sum (double precision version).
ยงArguments
source_ptr- Pointer to a(3, nsources)array of sources.target_ptr- Pointer to a(3, ntargets)array of targets.charge_ptr- Pointer to a(ncharge_vecs, nsources)array ofncharge_vecscharge vectors.result_ptr- Pointer to an existing(ncharge_vecs, ntargets, 2)array (ifreturn_gradients is false) or to an(ncharge_vecs, ntargets, 2 * 4) array (if `return_gradients is true) that stores the result using a complex number memory layout.wavenumber_real- Real part of the wavenumber parameter.wavenumber_imag- Imaginary part of the wavenumber parameter.nsources- Number of sources.ntargets- Number of targets.ncharge_vecs- Number of charge vectors.return_gradients- If true return also the gradients.num_threads- Number of threads to use