Private Member Functions |
| void | add_local_expansion (QuadTreeNodeNM *ptr_1, QuadTreeNodeNM *ptr_2) |
| void | add_local_expansion_of_leaf (NodeArray< NodeAttributes > &A, QuadTreeNodeNM *leaf_ptr, QuadTreeNodeNM *act_ptr) |
| void | add_rep_forces (const Graph &G, NodeArray< DPoint > &F_direct, NodeArray< DPoint > &F_multipole_exp, NodeArray< DPoint > &F_local_exp, NodeArray< DPoint > &F_rep) |
| void | add_shifted_expansion_to_father_expansion (QuadTreeNodeNM *act_ptr) |
| void | add_shifted_local_exp_of_parent (QuadTreeNodeNM *node_ptr) |
| double | binko (int n, int k) |
| bool | bordering (QuadTreeNodeNM *ptr_1, QuadTreeNodeNM *ptr_2) |
| void | build_up_red_quad_tree_path_by_path (const Graph &G, NodeArray< NodeAttributes > &A, QuadTreeNM &T) |
| void | build_up_red_quad_tree_subtree_by_subtree (const Graph &G, NodeArray< NodeAttributes > &A, QuadTreeNM &T) |
| void | build_up_root_node (const Graph &G, NodeArray< NodeAttributes > &A, QuadTreeNM &T) |
| void | build_up_root_vertex (const Graph &G, QuadTreeNM &T) |
| void | build_up_sorted_subLists (List< ParticleInfo > &L_x_copy, List< ParticleInfo > &act_y_List_copy) |
| void | calculate_boundaries_of_act_node (QuadTreeNodeNM *act_ptr, double &x_min, double &x_max, double &y_min, double &y_max) |
| void | calculate_local_expansions_and_WSPRLS (NodeArray< NodeAttributes > &A, QuadTreeNodeNM *act_node_ptr) |
| void | calculate_neighbourcell_forces (NodeArray< NodeAttributes > &A, List< QuadTreeNodeNM * > &quad_tree_leaves, NodeArray< DPoint > &F_direct) |
| void | calculate_repulsive_forces_by_exact_method (const Graph &G, NodeArray< NodeAttributes > &A, NodeArray< DPoint > &F_rep) |
| void | calculate_repulsive_forces_by_NMM (const Graph &G, NodeArray< NodeAttributes > &A, NodeArray< DPoint > &F_rep) |
| bool | check_and_delete_degenerated_node (QuadTreeNM &T) |
| void | collect_contained_nodes (QuadTreeNM &T, QuadTreeNodeNM *new_leaf_ptr) |
| void | construct_complete_subtree (QuadTreeNM &T, int subtree_depth, Array2D< QuadTreeNodeNM * > &leaf_ptr, int act_depth, int act_x_index, int act_y_index) |
| void | construct_reduced_subtree (NodeArray< NodeAttributes > &A, QuadTreeNM &T, List< QuadTreeNodeNM * > &new_subtree_root_List) |
| void | construct_subtree (NodeArray< NodeAttributes > &A, QuadTreeNM &T, QuadTreeNodeNM *subtree_root_ptr, List< QuadTreeNodeNM * > &new_subtree_root_List) |
| void | create_sorted_coordinate_Lists (const Graph &G, NodeArray< NodeAttributes > &A, List< ParticleInfo > &L_x, List< ParticleInfo > &L_y) |
| void | decompose_subtreenode (QuadTreeNM &T, List< ParticleInfo > &act_x_List_copy, List< ParticleInfo > &act_y_List_copy, List< QuadTreeNodeNM * > &new_leaf_List) |
| void | delete_empty_subtrees (QuadTreeNM &T) |
| void | delete_red_quad_tree_and_count_treenodes (QuadTreeNM &T) |
| void | delete_sparse_subtree (QuadTreeNM &T, QuadTreeNodeNM *new_leaf_ptr) |
| double | f_rep_scalar (double d) |
| int | find_sm_cell () const |
| void | find_sm_cell (int a) |
| void | find_small_cell_by_formula (QuadTreeNodeNM *act_ptr, double x_min, double x_max, double y_min, double y_max) |
| void | find_small_cell_iteratively (QuadTreeNodeNM *act_ptr, double x_min, double x_max, double y_min, double y_max) |
| bool | find_smallest_quad (NodeArray< NodeAttributes > &A, QuadTreeNM &T) |
| void | form_multipole_expansion_of_leaf_node (NodeArray< NodeAttributes > &A, QuadTreeNodeNM *act_ptr) |
| void | form_multipole_expansion_of_subtree (NodeArray< NodeAttributes > &A, QuadTreeNM &T, List< QuadTreeNodeNM * > &quad_tree_leaves) |
| void | form_multipole_expansions (NodeArray< NodeAttributes > &A, QuadTreeNM &T, List< QuadTreeNodeNM * > &quad_tree_leaves) |
| void | free_binko () |
| void | free_power_of_2_array () |
| bool | in_lb_quad (QuadTreeNodeNM *act_ptr, double x_min, double x_max, double y_min, double y_max) |
| bool | in_lt_quad (QuadTreeNodeNM *act_ptr, double x_min, double x_max, double y_min, double y_max) |
| bool | in_rb_quad (QuadTreeNodeNM *act_ptr, double x_min, double x_max, double y_min, double y_max) |
| bool | in_rt_quad (QuadTreeNodeNM *act_ptr, double x_min, double x_max, double y_min, double y_max) |
| void | init_binko (int t) |
| void | init_expansion_Lists (QuadTreeNodeNM *act_ptr) |
| void | init_power_of_2_array () |
| void | make_copy_and_init_Lists (List< ParticleInfo > &L_x_orig, List< ParticleInfo > &L_x_copy, List< ParticleInfo > &L_y_orig, List< ParticleInfo > &L_y_copy) |
| int | maxboxindex (int level) |
| void | particles_in_leaves (int b) |
| int | particles_in_leaves () const |
| int | power_of_two (int i) |
| void | precision (int p) |
| int | precision () const |
| void | set_center (QuadTreeNodeNM *act_ptr) |
| void | set_contained_nodes_for_leaves (NodeArray< NodeAttributes > &A, QuadTreeNodeNM *subtree_root_ptr, Array2D< QuadTreeNodeNM * > &leaf_ptr, int maxindex) |
| void | set_particlenumber_in_subtree_entries (QuadTreeNM &T) |
| void | split_in_x_direction (QuadTreeNodeNM *act_ptr, List< ParticleInfo > *&L_x_left_ptr, List< ParticleInfo > *&L_y_left_ptr, List< ParticleInfo > *&L_x_right_ptr, List< ParticleInfo > *&L_y_right_ptr) |
| void | split_in_y_direction (QuadTreeNodeNM *act_ptr, List< ParticleInfo > *&L_x_bottom_ptr, List< ParticleInfo > *&L_y_bottom_ptr, List< ParticleInfo > *&L_x_top_ptr, List< ParticleInfo > *&L_y_top_ptr) |
| void | split_in_y_direction (QuadTreeNodeNM *act_ptr, List< ParticleInfo > *&L_x_ptr, List< ParticleInfo > *&L_x_b_ptr, List< ParticleInfo > *&L_x_t_ptr, List< ParticleInfo > *&L_y_ptr, List< ParticleInfo > *&L_y_b_ptr, List< ParticleInfo > *&L_y_t_ptr) |
| void | transform_local_exp_to_forces (NodeArray< NodeAttributes > &A, List< QuadTreeNodeNM * > &quad_tree_leaves, NodeArray< DPoint > &F_local_exp) |
| void | transform_multipole_exp_to_forces (NodeArray< NodeAttributes > &A, List< QuadTreeNodeNM * > &quad_tree_leaves, NodeArray< DPoint > &F_multipole_exp) |
| int | tree_construction_way () const |
| void | tree_construction_way (int a) |
| bool | well_separated (QuadTreeNodeNM *ptr_1, QuadTreeNodeNM *ptr_2) |
| void | x_delete_left_subLists (QuadTreeNodeNM *act_ptr, List< ParticleInfo > *&L_x_left_ptr, List< ParticleInfo > *&L_y_left_ptr, List< ParticleInfo > *&L_x_right_ptr, List< ParticleInfo > *&L_y_right_ptr, ListIterator< ParticleInfo > last_left_item) |
| void | x_delete_right_subLists (QuadTreeNodeNM *act_ptr, List< ParticleInfo > *&L_x_left_ptr, List< ParticleInfo > *&L_y_left_ptr, List< ParticleInfo > *&L_x_right_ptr, List< ParticleInfo > *&L_y_right_ptr, ListIterator< ParticleInfo > last_left_item) |
| void | y_delete_left_subLists (QuadTreeNodeNM *act_ptr, List< ParticleInfo > *&L_x_left_ptr, List< ParticleInfo > *&L_y_left_ptr, List< ParticleInfo > *&L_x_right_ptr, List< ParticleInfo > *&L_y_right_ptr, ListIterator< ParticleInfo > last_left_item) |
| void | y_delete_right_subLists (QuadTreeNodeNM *act_ptr, List< ParticleInfo > *&L_x_left_ptr, List< ParticleInfo > *&L_y_left_ptr, List< ParticleInfo > *&L_x_right_ptr, List< ParticleInfo > *&L_y_right_ptr, ListIterator< ParticleInfo > last_left_item) |
| void | y_move_left_subLists (List< ParticleInfo > *&L_x_ptr, List< ParticleInfo > *&L_x_b_ptr, List< ParticleInfo > *&L_x_t_ptr, List< ParticleInfo > *&L_y_ptr, List< ParticleInfo > *&L_y_b_ptr, List< ParticleInfo > *&L_y_t_ptr, ListIterator< ParticleInfo > last_left_item) |
| void | y_move_right_subLists (List< ParticleInfo > *&L_x_ptr, List< ParticleInfo > *&L_x_b_ptr, List< ParticleInfo > *&L_x_t_ptr, List< ParticleInfo > *&L_y_ptr, List< ParticleInfo > *&L_y_b_ptr, List< ParticleInfo > *&L_y_t_ptr, ListIterator< ParticleInfo > last_left_item) |
Definition at line 65 of file NMM.h.