|
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