| 
    Nektar++
    
   | 
 
this class contains the infomration and methods for individal octants in the Octree More...
#include <Octant.h>

Public Member Functions | |
| Octant (int i, OctantSharedPtr p, Array< OneD, OctantFace > dir) | |
| Defualt constructor.  More... | |
| Octant (int i, NekDouble x, NekDouble y, NekDouble z, NekDouble dx, const std::vector< CurvaturePointSharedPtr > &cplist) | |
| constructor for master octant  More... | |
| void | Subdivide (OctantSharedPtr p, int &numoct) | 
| Subdivide the octant.  More... | |
| void | CompileLeaves (std::vector< OctantSharedPtr > &Octants) | 
| Recursive method which gets a list of the leaf octants Moves down levels if octant is not a leaf.  More... | |
| int | GetId () | 
| Get the Id of the octant.  More... | |
| Array< OneD, NekDouble > | GetLoc () | 
| Get the location of the center of the octant.  More... | |
| NekDouble | DX () | 
| Get the octants half dimension.  More... | |
| std::vector < CurvaturePointSharedPtr >  | GetCPList () | 
| Get the list of curvature points that are within this octant.  More... | |
| int | NumCurvePoint () | 
| Get the number of points in the octants cp list.  More... | |
| int | NumValidCurvePoint () | 
| Get the number of valid cp points in the octants list.  More... | |
| void | SetDelta (NekDouble d) | 
| Set the value for delta for this octant.  More... | |
| NekDouble | GetDelta () | 
| Get value of delta.  More... | |
| void | SetChildren (Array< OneD, OctantSharedPtr > c) | 
| Set the children of this octant.  More... | |
| bool | IsLeaf () | 
| Get whether the octant is a leaf or not.  More... | |
| NekDouble | FX (OctantFace f) | 
| Get the far dimension in a given direction f.  More... | |
| void | RemoveNeigbour (int id, OctantFace f) | 
| Remove a neigbour from this octants list.  More... | |
| void | SetNeigbour (OctantSharedPtr o, OctantFace f) | 
| std::map< OctantFace,  std::vector< OctantSharedPtr > >  | GetNeigbours () | 
| Get the map of neigbours.  More... | |
| bool | NeedDivide () | 
| Get whether this octants needs to divide based on the curvature sampling.  More... | |
| NekDouble | Distance (OctantSharedPtr o) | 
| Get the distance from this octant to another.  More... | |
| bool | IsDeltaKnown () | 
| Get whether a value of delta has been set or not.  More... | |
| void | SetLocation (OctantLocation l) | 
| set the location of the octant with respect to the CAD  More... | |
| CurvaturePointSharedPtr | GetCPPoint () | 
| Get the first cp point in the list.  More... | |
| OctantLocation | GetLocation () | 
| Get the location of the octant with respect to the geometry.  More... | |
| OctantSharedPtr | GetChild (int q) | 
| Get a specific child of this octant.  More... | |
| int | GetNumBoundary () | 
Private Attributes | |
| int | m_id | 
| id  More... | |
| bool | m_leaf | 
| leaf identifer  More... | |
| OctantSharedPtr | m_parent | 
| parent id  More... | |
| Array< OneD, OctantSharedPtr > | m_children | 
| list of child ids  More... | |
| Array< OneD, NekDouble > | m_loc | 
| x,y,z location of the octant  More... | |
| NekDouble | m_hd | 
| half dimension of the octant  More... | |
| std::vector < CurvaturePointSharedPtr >  | m_localCPList | 
| curvature sampling point list  More... | |
| int | m_numValidPoints | 
| number of valid cp points  More... | |
| int | m_numBoundaryPoints | 
| std::pair< bool, NekDouble > | m_delta | 
| mesh sizing parameter  More... | |
| bool | m_needToDivide | 
| idenify if division is needed  More... | |
| OctantLocation | m_location | 
| idenify if delta has ben set  More... | |
| std::map< OctantFace,  std::vector< OctantSharedPtr > >  | m_neigbours | 
| list of neighbours  More... | |
Friends | |
| class | MemoryManager< Octant > | 
this class contains the infomration and methods for individal octants in the Octree
| Nektar::NekMeshUtils::Octant::Octant | ( | int | i, | 
| OctantSharedPtr | p, | ||
| Array< OneD, OctantFace > | dir | ||
| ) | 
Defualt constructor.
Definition at line 63 of file Octant.cpp.
References DX(), Nektar::NekMeshUtils::eBack, Nektar::NekMeshUtils::eDown, Nektar::NekMeshUtils::eForward, Nektar::NekMeshUtils::eLeft, Nektar::NekMeshUtils::eOnBoundary, Nektar::NekMeshUtils::eRight, Nektar::NekMeshUtils::eUnknown, Nektar::NekMeshUtils::eUp, GetDelta(), GetNumBoundary(), m_delta, m_hd, m_leaf, m_loc, m_localCPList, m_location, m_needToDivide, m_neigbours, m_numBoundaryPoints, m_numValidPoints, m_parent, NumValidCurvePoint(), and SetDelta().
Referenced by Subdivide().
| Nektar::NekMeshUtils::Octant::Octant | ( | int | i, | 
| NekDouble | x, | ||
| NekDouble | y, | ||
| NekDouble | z, | ||
| NekDouble | dx, | ||
| const std::vector< CurvaturePointSharedPtr > & | cplist | ||
| ) | 
constructor for master octant
Definition at line 173 of file Octant.cpp.
References Nektar::NekMeshUtils::eBack, Nektar::NekMeshUtils::eDown, Nektar::NekMeshUtils::eForward, Nektar::NekMeshUtils::eLeft, Nektar::NekMeshUtils::eOnBoundary, Nektar::NekMeshUtils::eRight, Nektar::NekMeshUtils::eUp, m_delta, m_leaf, m_loc, m_localCPList, m_location, m_needToDivide, m_neigbours, and m_numValidPoints.
      
  | 
  inline | 
Recursive method which gets a list of the leaf octants Moves down levels if octant is not a leaf.
Definition at line 110 of file Octant.h.
References IsLeaf(), and m_children.
      
  | 
  inline | 
Get the distance from this octant to another.
Definition at line 266 of file Octant.h.
References m_loc.
      
  | 
  inline | 
Get the octants half dimension.
Definition at line 142 of file Octant.h.
References m_hd.
Referenced by Octant().
      
  | 
  inline | 
Get the far dimension in a given direction f.
Definition at line 211 of file Octant.h.
References Nektar::NekMeshUtils::eBack, Nektar::NekMeshUtils::eDown, Nektar::NekMeshUtils::eForward, Nektar::NekMeshUtils::eLeft, Nektar::NekMeshUtils::eRight, Nektar::NekMeshUtils::eUp, m_hd, and m_loc.
      
  | 
  inline | 
Get a specific child of this octant.
Definition at line 311 of file Octant.h.
References m_children.
      
  | 
  inline | 
Get the list of curvature points that are within this octant.
Definition at line 150 of file Octant.h.
References m_localCPList.
      
  | 
  inline | 
Get the first cp point in the list.
Definition at line 293 of file Octant.h.
References ASSERTL0, and m_localCPList.
      
  | 
  inline | 
      
  | 
  inline | 
Get the Id of the octant.
Definition at line 126 of file Octant.h.
References m_id.
Referenced by RemoveNeigbour(), and Subdivide().
Get the location of the center of the octant.
Definition at line 134 of file Octant.h.
References m_loc.
      
  | 
  inline | 
Get the location of the octant with respect to the geometry.
Definition at line 303 of file Octant.h.
References m_location.
      
  | 
  inline | 
Get the map of neigbours.
Definition at line 249 of file Octant.h.
References m_neigbours.
      
  | 
  inline | 
      
  | 
  inline | 
Get whether a value of delta has been set or not.
Definition at line 277 of file Octant.h.
References m_delta.
      
  | 
  inline | 
Get whether the octant is a leaf or not.
Definition at line 203 of file Octant.h.
References m_leaf.
Referenced by CompileLeaves().
      
  | 
  inline | 
Get whether this octants needs to divide based on the curvature sampling.
Definition at line 258 of file Octant.h.
References m_needToDivide.
      
  | 
  inline | 
Get the number of points in the octants cp list.
Definition at line 158 of file Octant.h.
References m_localCPList.
      
  | 
  inline | 
Get the number of valid cp points in the octants list.
Definition at line 166 of file Octant.h.
References m_numValidPoints.
Referenced by Octant().
| void Nektar::NekMeshUtils::Octant::RemoveNeigbour | ( | int | id, | 
| OctantFace | f | ||
| ) | 
Remove a neigbour from this octants list.
Definition at line 494 of file Octant.cpp.
References GetId(), and m_neigbours.
      
  | 
  inline | 
Set the children of this octant.
Definition at line 195 of file Octant.h.
References m_children.
Referenced by Subdivide().
Set the value for delta for this octant.
Definition at line 174 of file Octant.h.
References m_delta.
Referenced by Octant().
      
  | 
  inline | 
set the location of the octant with respect to the CAD
Definition at line 285 of file Octant.h.
References m_location.
      
  | 
  inline | 
Definition at line 241 of file Octant.h.
References m_neigbours.
| void Nektar::NekMeshUtils::Octant::Subdivide | ( | OctantSharedPtr | p, | 
| int & | numoct | ||
| ) | 
Subdivide the octant.
Definition at line 212 of file Octant.cpp.
References ASSERTL0, Nektar::NekMeshUtils::eBack, Nektar::NekMeshUtils::eDown, Nektar::NekMeshUtils::eForward, Nektar::NekMeshUtils::eLeft, Nektar::NekMeshUtils::eRight, Nektar::NekMeshUtils::eUp, GetId(), Nektar::NekMeshUtils::GetReverseFace(), m_leaf, m_neigbours, Octant(), and SetChildren().
      
  | 
  friend | 
      
  | 
  private | 
list of child ids
Definition at line 329 of file Octant.h.
Referenced by CompileLeaves(), GetChild(), and SetChildren().
      
  | 
  private | 
mesh sizing parameter
Definition at line 340 of file Octant.h.
Referenced by GetDelta(), IsDeltaKnown(), Octant(), and SetDelta().
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
leaf identifer
Definition at line 325 of file Octant.h.
Referenced by IsLeaf(), Octant(), and Subdivide().
      
  | 
  private | 
curvature sampling point list
Definition at line 335 of file Octant.h.
Referenced by GetCPList(), GetCPPoint(), NumCurvePoint(), and Octant().
      
  | 
  private | 
idenify if delta has ben set
Definition at line 344 of file Octant.h.
Referenced by GetLocation(), Octant(), and SetLocation().
      
  | 
  private | 
idenify if division is needed
Definition at line 342 of file Octant.h.
Referenced by NeedDivide(), and Octant().
      
  | 
  private | 
list of neighbours
Definition at line 346 of file Octant.h.
Referenced by GetNeigbours(), Octant(), RemoveNeigbour(), SetNeigbour(), and Subdivide().
      
  | 
  private | 
Definition at line 338 of file Octant.h.
Referenced by GetNumBoundary(), and Octant().
      
  | 
  private | 
number of valid cp points
Definition at line 337 of file Octant.h.
Referenced by NumValidCurvePoint(), and Octant().
      
  | 
  private | 
 1.8.8