GADGET-4
foftree< partset > Class Template Reference

#include <foftree.h>

Inherits tree< fofnode, partset, fofpoint_data, foreign_fofpoint_data >.

Public Types

typedef tree< fofnode, partset, fofpoint_data, foreign_fofpoint_databasetree
 
- Public Types inherited from tree< fofnode, partset, fofpoint_data, foreign_fofpoint_data >
enum  ftype
 
typedef decltype(Tp->P) pdata
 

Public Member Functions

void update_node_recursive (int no, int sib, int mode) override
 
void exchange_topleafdata (void) override
 
void fill_in_export_points (fofpoint_data *exp_point, int i, int no) override
 
void report_log_message (void) override
 
int treefind_fof_primary (MyIntPosType *searchcenter, MyNgbTreeFloat hsml, int target, int mode, thread_data *thread, int numnodes, node_info *firstnode, int *ngblist, MyIDStorage target_MinID, int target_MinIDTask, double target_DistanceOrigin)
 
int treefind_fof_return_a_particle_in_cell_recursive (int no)
 
void fof_link_particles_in_cell_recursive (int no, int q)
 
int treefind_fof_check_single_node_for_full_linking (int no)
 
- Public Member Functions inherited from tree< fofnode, partset, fofpoint_data, foreign_fofpoint_data >
void tree_add_to_fetch_stack (fofnode *nop, int nodetoopen, unsigned char shmrank)
 
void tree_add_to_work_stack (int target, int no, unsigned char shmrank, int mintopleafnode)
 
void prepare_shared_memory_access (void)
 
void cleanup_shared_memory_access (void)
 
void tree_fetch_foreign_nodes (enum ftype fetch_type)
 
void tree_initialize_leaf_node_access_info (void)
 
foreign_fofpoint_dataget_foreignpointsp (int n, unsigned char shmrank)
 
subfind_dataget_PSp (int n, unsigned char shmrank)
 
pdata get_Pp (int n, unsigned char shmrank)
 
sph_particle_dataget_SphPp (int n, unsigned char shmrank)
 
 tree ()
 
int treebuild (int ninsert, int *indexlist)
 
void treefree (void)
 
void treeallocate (int max_partindex, partset *Pptr, domain< partset > *Dptr)
 
void treeallocate_share_topnode_addresses (void)
 
void tree_export_node_threads (int no, int i, thread_data *thread, offset_tuple off=0)
 
void tree_export_node_threads_by_task_and_node (int task, int nodeindex, int i, thread_data *thread, offset_tuple off=0)
 
fofnodeget_nodep (int no)
 
fofnodeget_nodep (int no, unsigned char shmrank)
 
int * get_nextnodep (unsigned char shmrank)
 
fofpoint_dataget_pointsp (int no, unsigned char shmrank)
 
void tree_get_node_and_task (int i, int &no, int &task)
 

Public Attributes

int * FullyLinkedNodePIndex
 
- Public Attributes inherited from tree< fofnode, partset, fofpoint_data, foreign_fofpoint_data >
domain< partset > * D
 
partset * Tp
 
int * Father
 
int * Nextnode
 
int * NodeSibling
 
int * NodeIndex
 
fofnodeTopNodes
 
fofnodeNodes
 
fofnodeForeign_Nodes
 
foreign_fofpoint_dataForeign_Points
 
ptrdiff_t * TreeNodes_offsets
 
ptrdiff_t * TreePoints_offsets
 
ptrdiff_t * TreeNextnode_offsets
 
ptrdiff_t * TreeForeign_Nodes_offsets
 
ptrdiff_t * TreeForeign_Points_offsets
 
ptrdiff_t * TreeP_offsets
 
ptrdiff_t * TreeSphP_offsets
 
ptrdiff_t * TreePS_offsets
 
void ** TreeSharedMemBaseAddr
 
unsigned char * NodeLevel
 
fofpoint_dataPoints
 
int * IndexList
 
int * ResultIndexList
 
int * Send_offset
 
int * Send_count
 
int * Recv_count
 
int * Recv_offset
 
int MaxPart
 
int MaxNodes
 
int NumNodes
 
int NumPartImported
 
int NumPartExported
 
int NumForeignNodes
 
int MaxForeignNodes
 
int NumForeignPoints
 
int MaxForeignPoints
 
long long sum_NumForeignNodes
 
long long sum_NumForeignPoints
 
int FirstNonTopLevelNode
 
int EndOfTreePoints
 
int EndOfForeignNodes
 
int ImportedNodeOffset
 
int Ninsert
 
int NextFreeNode
 
MPI_Comm TreeSharedMemComm
 
int TreeSharedMem_ThisTask
 
int TreeSharedMem_NTask
 
int TreeInfoHandle
 
double Buildtime
 
int NumOnFetchStack
 
int MaxOnFetchStack
 
fetch_data * StackToFetch
 
int NumOnWorkStack
 
int MaxOnWorkStack
 
int NewOnWorkStack
 
int AllocWorkStackBaseLow
 
int AllocWorkStackBaseHigh
 
workstack_data * WorkStack
 

Additional Inherited Members

- Static Public Member Functions inherited from tree< fofnode, partset, fofpoint_data, foreign_fofpoint_data >
static bool compare_ghostrank (const fetch_data &a, const fetch_data &b)
 
static bool compare_workstack (const workstack_data &a, const workstack_data &b)
 

Detailed Description

template<typename partset>
class foftree< partset >

Definition at line 37 of file foftree.h.

Member Typedef Documentation

◆ basetree

Definition at line 40 of file foftree.h.

Member Function Documentation

◆ exchange_topleafdata()

void exchange_topleafdata ( void  )
overridevirtual

◆ fill_in_export_points()

void fill_in_export_points ( fofpoint_data exp_point,
int  i,
int  no 
)
overridevirtual

◆ fof_link_particles_in_cell_recursive()

void fof_link_particles_in_cell_recursive ( int  no,
int  q 
)

◆ report_log_message()

void report_log_message ( void  )
overridevirtual

◆ treefind_fof_check_single_node_for_full_linking()

int treefind_fof_check_single_node_for_full_linking ( int  no)

◆ treefind_fof_primary()

int treefind_fof_primary ( MyIntPosType searchcenter,
MyNgbTreeFloat  hsml,
int  target,
int  mode,
thread_data thread,
int  numnodes,
node_info firstnode,
int *  ngblist,
MyIDStorage  target_MinID,
int  target_MinIDTask,
double  target_DistanceOrigin 
)

◆ treefind_fof_return_a_particle_in_cell_recursive()

int treefind_fof_return_a_particle_in_cell_recursive ( int  no)

◆ update_node_recursive()

void update_node_recursive ( int  no,
int  sib,
int  mode 
)
overridevirtual

this routine determines the node ranges a given internal node and all its subnodes using a recursive computation. The result is stored in the Nodes[] structure in the sequence of this tree-walk. mode = 0: process a leaf branch, mode = 1: process top-level nodes

Implements tree< fofnode, partset, fofpoint_data, foreign_fofpoint_data >.

Definition at line 149 of file foftree_build.cc.

Member Data Documentation

◆ FullyLinkedNodePIndex

int* FullyLinkedNodePIndex

Definition at line 70 of file foftree.h.


The documentation for this class was generated from the following files: