22 #ifndef FCS_FMM_P_INCLUDED 23 #define FCS_FMM_P_INCLUDED 25 #include "fcs_definitions.h" 41 #define FCS_FMM_COULOMB 64 42 #define FCS_FMM_CUSP 65 43 #define FCS_FMM_NO_DIPOLE_CORRECTION -1 44 #define FCS_FMM_STANDARD_DIPOLE_CORRECTION 0 47 #define FCS_FMM_ACTIVE_DIPOLE_CORRECTION 1 48 #define FCS_FMM_STANDARD_ERROR 0 49 #define FCS_FMM_CUSTOM_ABSOLUTE 1 50 #define FCS_FMM_CUSTOM_RELATIVE 2 52 #define FCS_FMM_INHOMOGENOUS_SYSTEM 1LL 53 #define FCS_FMM_HOMOGENOUS_SYSTEM 0LL 241 FCSResult fcs_fmm_setup(
FCS handle, fcs_int absrel, fcs_float tolerance_energy, fcs_int dipole_correction, fcs_int system, fcs_int maxdepth, fcs_int unroll_limit, fcs_int load);
243 void fcs_fmm_setup_f(
void *handle, fcs_int absrel, fcs_float tolerance_energy, fcs_int dipole_correction, fcs_int *return_value);
FCSResult fcs_fmm_set_internal_tuning(FCS handle, fcs_int system)
function to set the fmm internal tuning parameter
FCSResult fcs_fmm_get_tolerance_energy(FCS handle, fcs_float *tolerance_energy)
function to get the optional fmm energy tolerance (deltaE) parameter
FCSResult fcs_fmm_get_maxdepth(FCS handle, fcs_int *depth)
function to get the optional fmm absrel parameter
FCSResult fcs_fmm_get_define_loadvector(FCS handle, fcs_int *define_loadvector)
FCSResult fcs_fmm_set_tolerance_energy(FCS handle, fcs_float tolerance_energy)
function to set the optional fmm deltaE parameter, which gives the energy tolerance for the FMM ...
FCSResult fcs_fmm_set_absrel(FCS handle, fcs_int choice)
function to set the optional fmm absrel parameter
FCSResult fcs_fmm_get_cusp_radius(FCS handle, fcs_float *cusp_radius)
function to get the fmm cusp radius parameter
FCSResult fcs_fmm_set_maxdepth(FCS handle, fcs_int depth)
function to set the optional fmm absrel parameter
FCSResult fcs_fmm_set_balanceload(FCS handle, fcs_int load)
function to set the optional fmm absrel parameter
struct fcs_fmm_parameters_t * fcs_fmm_parameters
FCSResult fcs_fmm_set_potential(FCS handle, fcs_int coulomb)
function to set the fmm parameter parameter
FCSResult fcs_fmm_get_unroll_limit(FCS handle, fcs_int *limit)
function to get the optional fmm absrel parameter
void fcs_fmm_setup_f(void *handle, fcs_int absrel, fcs_float tolerance_energy, fcs_int dipole_correction, fcs_int *return_value)
public interface definitions for the FCSResult-object that is used for handling the return state of t...
FCSResult fcs_fmm_get_internal_tuning(FCS handle, fcs_int *system)
function to get the fmm internal tuning parameter
FCSResult fcs_fmm_set_dipole_correction(FCS handle, fcs_int dipole_correction)
function to set the optional fmm energy tolerance (deltaE) parameter
FCSResult fcs_fmm_get_potential(FCS handle, fcs_int *coulomb)
function to get the fmm coulomb parameter
FCSResult fcs_fmm_get_dipole_correction(FCS handle, fcs_int *dipole_correction)
function to get the optional fmm dipole correction parameter
struct FCSResult_t * FCSResult
FCSResult-object that is used for handling the return state of the ScaFaCoS library functions...
FCSResult fcs_fmm_get_absrel(FCS handle, fcs_int *absrel)
function to get the optional fmm absrel parameter
public interface definitions for the main solver-independent functionality of the ScaFaCoS library ...
FCSResult fcs_fmm_set_unroll_limit(FCS handle, fcs_int limit)
function to set the optional fmm absrel parameter
FCSResult fcs_fmm_set_cusp_radius(FCS handle, fcs_float radius)
function to set the fmm cusp radius parameter
FCSResult fcs_fmm_get_balanceload(FCS handle, fcs_int *load)
function to get the optional fmm absrel parameter
FCSResult fcs_fmm_set_define_loadvector(FCS handle, fcs_int define_loadvector)
function to set the optional fmm loadvector parameter
struct _FCS_t * FCS
FCS-object representing an FCS solver.
FCSResult fcs_fmm_setup(FCS handle, fcs_int absrel, fcs_float tolerance_energy, fcs_int dipole_correction, fcs_int system, fcs_int maxdepth, fcs_int unroll_limit, fcs_int load)