|
|
using | storage_t = ntree_storage< Policy > |
| |
|
using | id_t = util::id_t |
| |
|
using | offset_t = util::offset_t |
| |
|
using | element_t = typename Policy::element_t |
| |
|
using | point_t = util::point< element_t, dimension > |
| |
|
using | range_t = std::array< point_t, 2 > |
| |
|
using | key_t = typename Policy::key_t |
| |
|
using | node_t = typename Policy::node_t |
| |
|
using | tree_entity_t = typename Policy::tree_entity_t |
| |
|
using | entity_t = typename Policy::entity_t |
| |
|
using | entity_id_t = typename entity_base< 0 >::id_t |
| |
|
using | geometry_t = ntree_geometry< element_t, dimension > |
| |
|
| | access () |
| |
|
void | set_range (const range_t &range) |
| | Set the range of the current domain. This range is the same among all the processes and is used to compute the keys for each particles.
|
| |
|
template<class... S, class = std::enable_if_t<Write>> |
| entity_t * | make_entity (S &&... args) |
| | Construct a new entity. The entity's constructor should not be called directly.
|
| |
|
void | generate_keys () |
| | Make the keys for all the enities present in the tree.
|
| |
|
void | sort_entities () |
| | Sort the entities present in the tree.
|
| |
| node_t * | root () |
| |
|
template<class... S, class = std::enable_if_t<Write>> |
| entity_t * | make_tree_entity (S &&... args) |
| | Construct a new tree entity. The tree entity's constructor should not be called directly.
|
| |
|
void | build_tree () |
| | Build the tree topology in the node_map_, insert all the local particles of the tree in a serial way.
|
| |
|
void | insert (entity_t &ent) |
| | Insert a particle in the tree. Search for the nearest parent and refine if necessary.
|
| |
|
entity_t & | get (const entity_id_t &id) |
| | get an entity from the storage
|
| |
|
node_t * | find_parent (key_t key) |
| | Find the closest parent of a key.
|
| |
|
void | cofm (node_t *b=nullptr, bool local=false) |
| | Compute the cofm data for the tree using double stack.
|
| |
|
void | update_COM (node_t *b, bool=false) |
| | Compute the COFM information for a dedicated branch.
|
| |
|
void | graphviz (int num) |
| | Output the tree topology in a file The format is graphviz and can be converted to PDF with dot dot -Tpng file.gv > file.png.
|
| |
|
|
static constexpr bool | Write = privilege_write(Priv) |
| |
|
static constexpr size_t | dimension = Policy::dimension |
| |
|
|
std::ostream & | operator<< (std::ostream &os, const access &t) |
| |
◆ access()
template<typename POLICY_TYPE >
template<std::size_t Priv>
Constuct a tree topology with unit coordinates, i.e. each coordinate dimension is in range [0, 1].
◆ root()
template<typename POLICY_TYPE >
template<std::size_t Priv>
Return the root from the hash table
The documentation for this struct was generated from the following file:
- /home/bergen/devel/tuxfan/flecsi/flecsi/topo/ntree/interface.hh