The protoTree is used to describe the preliminary tree, before it is actually extended to the full information of the mesh.
This extension will only be done for the actual leaf nodes, in the computational domain.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private | :: | nLevels | Keep track of the deepest level in the tree. |
|||
integer, | private | :: | nLeafNodes | Number of leaf nodes. |
|||
integer, | private | :: | nFloodedLeaves | Number of flooded leaves. |
|||
type(sdr_node_type), | private | :: | node | List of all nodes in the tree, each node contains a list of the objects it is intersecting and a property bit mask. It is identified by its treeID. All components of Node are growing arrays, thus the corresponding component of node inode has to be accessed with component%val(inode). |
|||
integer, | private | :: | levelNode_first(0:globalMaxLevels) | The index of the first node on a given level in node%treeID%sorted. |
|||
integer, | private | :: | levelNode_last(0:globalMaxLevels) | The index of the last node on a given level in node%treeID%sorted. |
|||
type(grw_intarray_type), | private | :: | child_intersected_object | Temporary array intersected objects of 8 children which will later be copied to intersected_object in node_type. This array is initialized in build_protoTree and destroyed after refine_leaf |