ergo
organize_distrs.cc File Reference
#include <stdlib.h>
#include <memory.h>
#include <algorithm>
#include "organize_distrs.h"
#include "pi.h"
#include <cstdio>

Macros

#define NO_OF_SORT_BUCKETS   30
 
#define MAX_NO_OF_GROUPS_PER_CLUSTER   10
 

Functions

static void do_sort_int_list (int *list, int n)
 
static void get_conversion_matrix_for_group (const IntegralInfo &integralInfo, const distr_group_struct &group, int n1max, const minimal_distr_struct *minimalDistrList_1, int noOfBasisFuncPairs_1, const i_j_val_struct *convMat1_sp, int convMat1_nnz, i_j_val_struct *BB1_x_Ai1_x_convMat1_sp_result, int &BB1_x_Ai1_x_convMat1_nnz_result)
 
int organize_distributions (const IntegralInfo &integralInfo, DistributionSpecStructLabeled *distrList_in, int distrCount, distr_org_struct *result, const ergo_real *boxCenterCoords, ergo_real boxWidth)
 

Macro Definition Documentation

◆ MAX_NO_OF_GROUPS_PER_CLUSTER

#define MAX_NO_OF_GROUPS_PER_CLUSTER   10

Referenced by organize_distributions().

◆ NO_OF_SORT_BUCKETS

#define NO_OF_SORT_BUCKETS   30

Referenced by organize_distributions().

Function Documentation

◆ do_sort_int_list()

static void do_sort_int_list ( int *  list,
int  n 
)
static

Referenced by organize_distributions().

◆ get_conversion_matrix_for_group()

static void get_conversion_matrix_for_group ( const IntegralInfo integralInfo,
const distr_group_struct group,
int  n1max,
const minimal_distr_struct minimalDistrList_1,
int  noOfBasisFuncPairs_1,
const i_j_val_struct convMat1_sp,
int  convMat1_nnz,
i_j_val_struct BB1_x_Ai1_x_convMat1_sp_result,
int &  BB1_x_Ai1_x_convMat1_nnz_result 
)
static

◆ organize_distributions()

int organize_distributions ( const IntegralInfo integralInfo,
DistributionSpecStructLabeled distrList_in,
int  distrCount,
distr_org_struct result,
const ergo_real boxCenterCoords,
ergo_real  boxWidth 
)

References distr_org_struct::basisFuncForChunksCount, distr_org_struct::basisFuncList, distr_org_struct::basisFuncListCount, distr_org_struct::basisFuncListForChunks, distr_org_struct::basisFuncListForChunks_map, distr_org_struct::basisFuncPairCount, minimal_distr_struct::basisFuncPairIndex, distr_org_struct::basisFuncPairList, chunk_struct::basisFuncPairListIndex, distr_group_struct::centerCoords, DistributionSpecStruct_::centerCoords, distr_org_struct::chunkCount, distr_org_struct::chunkList, distr_org_struct::clusterCount, distr_org_struct::clusterList, chunk_struct::clusterStartIndex, minimal_distr_struct::coeff, DistributionSpecStructLabeled::distr, distr_group_struct::distrCount, do_output(), do_sort_int_list(), distr_group_struct::exponent, DistributionSpecStruct_::exponent, get_conversion_matrix_for_group(), IntegralInfo::get_hermite_conversion_matrix_right_sparse(), distr_org_struct::groupCount, distr_org_struct::groupList, LOG_AREA_INTEGRALS, LOG_CAT_ERROR, MAX_NO_OF_BASIS_FUNC_PAIRS_PER_CHUNK, MAX_NO_OF_GROUPS_PER_CLUSTER, distr_group_struct::maxAbsDmatElementGroup, distr_org_struct::maxDistanceOutsideBox, distr_org_struct::maxExtent, distr_group_struct::maxExtentGroup, distr_group_struct::maxLimitingFactorGroup, distr_group_struct::maxSizeGroup, distr_org_struct::minimalDistrCount, distr_org_struct::minimalDistrList, monomial_info_struct::monomial_index_list, IntegralInfo::monomial_info, minimal_distr_struct::monomialIndex, DistributionSpecStruct_::monomialInts, distr_group_struct::nmax, monomial_info_struct::no_of_monomials_list, NO_OF_SORT_BUCKETS, chunk_struct::noOfBasisFuncPairs, chunk_struct::noOfClusters, pi, spmat_sort_elements(), distr_org_struct::spMatCountList, distr_org_struct::spMatElementList, distr_org_struct::spMatIdxList, and distr_group_struct::startIndex.

Referenced by compute_J_by_boxes_linear(), compute_JK_single_box(), compute_K_by_boxes(), and distr_org_struct::distr_org_struct().