ergo
|
Utility functions related to multipole method, used in construction of the Coulomb matrix J. More...
Functions | |
int | check_if_multipoles_can_be_used (const IntegralInfo &integralInfo, ergo_real threshold, const ergo_real *boxCenterCoords_1, const ergo_real *boxCenterCoords_2, ergo_real boxWidth, const distr_org_struct &org_1, const distr_org_mm_struct &org_mm_1, const distr_org_struct &org_2, const distr_org_mm_struct &org_mm_2) |
int | create_list_of_multipoles_for_box (const IntegralInfo &integralInfo, const distr_org_struct &org, multipole_struct_small *result_multipoleList) |
Utility functions related to multipole method, used in construction of the Coulomb matrix J.
int check_if_multipoles_can_be_used | ( | const IntegralInfo & | integralInfo, |
ergo_real | threshold, | ||
const ergo_real * | boxCenterCoords_1, | ||
const ergo_real * | boxCenterCoords_2, | ||
ergo_real | boxWidth, | ||
const distr_org_struct & | org_1, | ||
const distr_org_mm_struct & | org_mm_1, | ||
const distr_org_struct & | org_2, | ||
const distr_org_mm_struct & | org_mm_2 | ||
) |
References multipole_struct_large::centerCoords, distr_org_mm_struct::data, distr_org_struct::data, distance(), get_min_distance_from_point_to_box(), MMLimitTable::get_minimum_multipole_degree_needed(), IntegralInfo::GetMMLimitTable(), MAX_MULTIPOLE_DEGREE, MAX_MULTIPOLE_DEGREE_BASIC, distr_org_struct::Data::maxDistanceOutsideBox, distr_org_mm_struct::Data::maxMomentVectorNormForDistrsList, distr_org_mm_struct::Data::multipole, template_blas_fabs(), and template_blas_sqrt().
Referenced by get_joblists_J_for_two_boxes_recursive().
int create_list_of_multipoles_for_box | ( | const IntegralInfo & | integralInfo, |
const distr_org_struct & | org, | ||
multipole_struct_small * | result_multipoleList | ||
) |
References distr_org_struct::batchList, DistributionSpecStruct::centerCoords, distr_group_struct::centerCoords, distr_org_struct::clusterList, batch_struct::clusterStartIndex, DistributionSpecStruct::coeff, minimal_distr_struct::coeff, compute_multipole_moments(), distr_group_struct::distrCount, do_output(), DistributionSpecStruct::exponent, distr_group_struct::exponent, distr_org_struct::groupList, cluster_struct::groupStartIndex, monomial_struct::ix, monomial_struct::iy, monomial_struct::iz, LOG_AREA_INTEGRALS, LOG_CAT_ERROR, distr_org_struct::minimalDistrList, IntegralInfo::monomial_info, monomial_info_struct::monomial_list, minimal_distr_struct::monomialIndex, DistributionSpecStruct::monomialInts, batch_struct::noOfClusters, cluster_struct::noOfGroups, and distr_group_struct::startIndex.
Referenced by execute_joblist_J_fmm_shared().