#include <box_system.h>
Public Member Functions | |
BoxSystem () | |
~BoxSystem () | |
int | create_box_system (box_item_struct *itemList, int noOfItems, ergo_real toplevelBoxSize) |
Creates the box system. | |
int | get_items_near_point (const box_item_struct *itemList, const ergo_real *coords, ergo_real distance, int *resultOrgIndexList) const |
Goes through existning box system to find all items within specified distance from given reference point. | |
Public Attributes | |
int | totNoOfBoxes |
int | noOfLevels |
box_level_struct | levelList [MAX_NO_OF_BOX_LEVELS] |
box_struct_basic * | boxList |
Private Member Functions | |
int | get_items_near_point_recursive (const box_item_struct *itemList, const ergo_real *coords, ergo_real distance, int *resultOrgIndexList, int level, int boxIndex) const |
BoxSystem::BoxSystem | ( | ) |
References boxList.
BoxSystem::~BoxSystem | ( | ) |
References boxList.
int BoxSystem::create_box_system | ( | box_item_struct * | itemList, | |
int | noOfItems, | |||
ergo_real | toplevelBoxSize | |||
) |
Creates the box system.
itemList | list of items to create the box structure for. | |
noOfItems | their number. | |
toplevelBoxSize |
References boxList, box_struct_basic::centerCoords, box_item_struct::centerCoords, do_output(), box_struct_basic::firstChildBoxIndex, box_struct_basic::firstItemIndex, levelList, LOG_AREA_INTEGRALS, LOG_CAT_ERROR, LOG_CAT_INFO, MAX_NO_OF_BOX_LEVELS, box_level_struct::noOfBoxes, box_struct_basic::noOfChildBoxes, box_struct_basic::noOfItems, noOfLevels, box_level_struct::startIndexInBoxList, totNoOfBoxes, and box_struct_basic::width.
Referenced by compute_K_by_boxes(), compute_operator_matrix_sparse(), create_box_system_and_reorder_distrs(), create_nuclei_mm_tree(), get_basis_func_pair_list_1el_for_V(), get_basis_func_pair_list_2el(), get_basis_func_pair_list_simple(), get_density(), get_list_of_labeled_distrs(), get_list_of_labeled_distrs_maxLimitingFactor(), and get_product_distrs().
int BoxSystem::get_items_near_point | ( | const box_item_struct * | itemList, | |
const ergo_real * | coords, | |||
ergo_real | distance, | |||
int * | resultOrgIndexList | |||
) | const |
Goes through existning box system to find all items within specified distance from given reference point.
itemList | the list of items for which the box system was created. | |
coords | list of 3 coordinates for reference point. | |
distance | the distance to find items within. | |
resultOrgIndexList | preallocated list of resulting org indexes. |
References boxList, compare_ints(), do_output(), get_items_near_point_recursive(), levelList, LOG_AREA_INTEGRALS, and LOG_CAT_ERROR.
Referenced by compute_operator_matrix_sparse(), get_basis_func_pair_list_1el_for_V(), get_basis_func_pair_list_2el(), get_basis_func_pair_list_simple(), get_density(), get_list_of_labeled_distrs(), get_list_of_labeled_distrs_maxLimitingFactor(), get_maxLimitingFactor(), and get_product_distrs().
int BoxSystem::get_items_near_point_recursive | ( | const box_item_struct * | itemList, | |
const ergo_real * | coords, | |||
ergo_real | distance, | |||
int * | resultOrgIndexList, | |||
int | level, | |||
int | boxIndex | |||
) | const [private] |
References boxList, box_item_struct::centerCoords, box_struct_basic::centerCoords, box_struct_basic::firstChildBoxIndex, box_struct_basic::firstItemIndex, get_min_distance_from_point_to_box(), box_struct_basic::noOfChildBoxes, box_struct_basic::noOfItems, noOfLevels, box_item_struct::originalIndex, template_blas_sqrt(), and box_struct_basic::width.
Referenced by get_items_near_point().
box_level_struct BoxSystem::levelList[MAX_NO_OF_BOX_LEVELS] |
Referenced by compute_J_by_boxes_linear(), compute_K_by_boxes(), create_box_system(), and create_nuclei_mm_tree().