ergo
|
Code for computing multipole moments, and multipole interaction and translation matrices. More...
#include <memory.h>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include "multipole.h"
#include "output.h"
#include "integrals_general.h"
Functions | |
int | compute_multipole_moments (const IntegralInfo &integralInfo, const DistributionSpecStruct *distr, multipole_struct_small *result) |
int | setup_multipole_maxAbsMomentList (multipole_struct_large *multipole) |
Code for computing multipole moments, and multipole interaction and translation matrices.
int compute_multipole_moments | ( | const IntegralInfo & | integralInfo, |
const DistributionSpecStruct * | distr, | ||
multipole_struct_small * | result | ||
) |
References IntegralInfo::basis_func_poly_list, DistributionSpecStruct::centerCoords, multipole_struct_small::centerCoords, DistributionSpecStruct::coeff, basis_func_term_struct::coeff, compute_integral_of_simple_prim(), multipole_struct_small::degree, do_output(), LOG_AREA_INTEGRALS, LOG_CAT_ERROR, MAX_MULTIPOLE_DEGREE_BASIC, MAX_NO_OF_MOMENTS_PER_MULTIPOLE_BASIC, multipole_struct_small::momentList, DistributionSpecStruct::monomialInts, basis_func_term_struct::monomialInts, IntegralInfo::no_of_basis_func_polys, multipole_struct_small::noOfMoments, basis_func_poly_struct::noOfTerms, basis_func_poly_struct::scaledSolidHarmonicPrefactor, template_blas_fabs(), and basis_func_poly_struct::termList.
Referenced by compute_K_by_boxes(), compute_V_and_gradient_linear(), create_list_of_multipoles_for_box(), generate_multipoles_for_groups(), organize_distributions(), and organize_distrs_for_V().
int setup_multipole_maxAbsMomentList | ( | multipole_struct_large * | multipole | ) |
References multipole_struct_large::euclideanNormList, MAX_MULTIPOLE_DEGREE, multipole_struct_large::maxAbsMomentList, multipole_struct_large::momentList, template_blas_fabs(), and template_blas_sqrt().
Referenced by combine_mm_info_for_child_boxes(), create_nuclei_mm_tree(), execute_joblist_J_fmm_shared(), and translate_multipoles_for_box().