Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions include/geom/cell_hex.h
Original file line number Diff line number Diff line change
Expand Up @@ -125,11 +125,18 @@ class Hex : public Cell

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override;

/**
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type low_order_key (const unsigned int s) const override;

/**
* \returns \p Hex8::side_nodes_map[side][side_node] after doing some range checking.
*/
Expand Down
3 changes: 1 addition & 2 deletions include/geom/cell_hex27.h
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,7 @@ class Hex27 final : public Hex

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Hex27 since we can
* use the center node of each face to provide a perfect (unique)
Expand Down
11 changes: 9 additions & 2 deletions include/geom/cell_inf_hex.h
Original file line number Diff line number Diff line change
Expand Up @@ -151,11 +151,18 @@ class InfHex : public InfCell

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override;

/**
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type low_order_key (const unsigned int s) const override;

/**
* \returns \p InfHex8::side_nodes_map[side][side_node] after doing some range checking.
*/
Expand Down
3 changes: 1 addition & 2 deletions include/geom/cell_inf_hex18.h
Original file line number Diff line number Diff line change
Expand Up @@ -160,8 +160,7 @@ class InfHex18 final : public InfHex

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p InfHex18 since we can
* use the center node of the bottom face to provide a perfect (unique)
Expand Down
11 changes: 9 additions & 2 deletions include/geom/cell_inf_prism.h
Original file line number Diff line number Diff line change
Expand Up @@ -143,11 +143,18 @@ class InfPrism : public InfCell

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override;

/**
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type low_order_key (const unsigned int s) const override;

/**
* \returns InfPrism6::side_nodes_map[side][side_node] after doing some range checking.
*/
Expand Down
11 changes: 9 additions & 2 deletions include/geom/cell_prism.h
Original file line number Diff line number Diff line change
Expand Up @@ -117,11 +117,18 @@ class Prism : public Cell

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override;

/**
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type low_order_key (const unsigned int s) const override;

/**
* \returns \p Prism6::side_nodes_map[side][side_node] after doing some range checking.
*/
Expand Down
3 changes: 1 addition & 2 deletions include/geom/cell_prism18.h
Original file line number Diff line number Diff line change
Expand Up @@ -156,8 +156,7 @@ class Prism18 final : public Prism

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Prism18 since we can
* use the center node of each quad face to provide a perfect (unique)
Expand Down
3 changes: 1 addition & 2 deletions include/geom/cell_prism20.h
Original file line number Diff line number Diff line change
Expand Up @@ -160,8 +160,7 @@ class Prism20 final : public Prism

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Prism20 since we can
* use the center node of each quad face to provide a perfect (unique)
Expand Down
3 changes: 1 addition & 2 deletions include/geom/cell_prism21.h
Original file line number Diff line number Diff line change
Expand Up @@ -163,8 +163,7 @@ class Prism21 final : public Prism

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Prism21 since we can
* use the center node of each quad face to provide a perfect (unique)
Expand Down
13 changes: 10 additions & 3 deletions include/geom/cell_pyramid.h
Original file line number Diff line number Diff line change
Expand Up @@ -120,14 +120,21 @@ class Pyramid : public Cell
*/
using Elem::key;

/**
/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override;

/**
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type low_order_key (const unsigned int s) const override;

/**
* \returns \p Pyramid5::side_nodes_map[side][side_node] after doing some range checking.
*/
virtual unsigned int local_side_node(unsigned int side,
Expand Down
3 changes: 1 addition & 2 deletions include/geom/cell_pyramid14.h
Original file line number Diff line number Diff line change
Expand Up @@ -158,8 +158,7 @@ class Pyramid14 final : public Pyramid

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Pyramid14 since we can
* use the center node of the base face to provide a perfect (unique)
Expand Down
3 changes: 1 addition & 2 deletions include/geom/cell_pyramid18.h
Original file line number Diff line number Diff line change
Expand Up @@ -164,8 +164,7 @@ class Pyramid18 final : public Pyramid

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Pyramid18 since we can
* use the center node of the base face to provide a perfect (unique)
Expand Down
11 changes: 9 additions & 2 deletions include/geom/cell_tet.h
Original file line number Diff line number Diff line change
Expand Up @@ -106,12 +106,19 @@ class Tet : public Cell

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override;

/**
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type low_order_key (const unsigned int s) const override;

/**
* \returns \p Tet4::side_nodes_map[side][side_node] after doing some range checking.
*/
virtual unsigned int local_side_node(unsigned int side,
Expand Down
12 changes: 10 additions & 2 deletions include/geom/edge.h
Original file line number Diff line number Diff line change
Expand Up @@ -127,12 +127,20 @@ class Edge : public Elem

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override final
{ return this->compute_key(this->node_id(s)); }

/**
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type low_order_key (const unsigned int s) const override final
{ return this->compute_key(this->node_id(s)); }

/**
* \returns \p side after doing some range checking. \p side_node is ignored.
*/
Expand Down
11 changes: 9 additions & 2 deletions include/geom/elem.h
Original file line number Diff line number Diff line change
Expand Up @@ -249,11 +249,18 @@ class Elem : public ReferenceCountedObject<Elem>,

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const = 0;

/**
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type low_order_key (const unsigned int s) const = 0;

/**
* \returns An id associated with the global node ids of this
* element. The id is not necessarily unique, but should be
Expand Down
11 changes: 9 additions & 2 deletions include/geom/face_inf_quad.h
Original file line number Diff line number Diff line change
Expand Up @@ -157,11 +157,18 @@ class InfQuad : public Elem

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override;

/**
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type low_order_key (const unsigned int s) const override;

/**
* \returns \p InfQuad4::side_nodes_map[side][side_node] after doing some range checking.
*/
Expand Down
3 changes: 1 addition & 2 deletions include/geom/face_inf_quad6.h
Original file line number Diff line number Diff line change
Expand Up @@ -113,8 +113,7 @@ class InfQuad6 : public InfQuad

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We override this function to return a key for the Edge3 side
* which is consistent which Edge3::key().
Expand Down
19 changes: 13 additions & 6 deletions include/geom/face_quad.h
Original file line number Diff line number Diff line change
Expand Up @@ -131,19 +131,26 @@ class Quad : public Face
*/
using Elem::key;

/**
* \returns An id associated with the global node ids of this
* element. The id is not necessarily unique, but should be
* close.
*/
virtual dof_id_type key () const override;

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override;

/**
* \returns An id associated with the global node ids of this
* element. The id is not necessarily unique, but should be
* close.
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type key () const override;
virtual dof_id_type low_order_key (const unsigned int s) const override;

/**
* \returns \p Quad4::side_nodes_map[side][side_node] after doing some range checking.
Expand Down
3 changes: 1 addition & 2 deletions include/geom/face_quad8.h
Original file line number Diff line number Diff line change
Expand Up @@ -132,8 +132,7 @@ class Quad8 : public Quad

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Quad8 since we can
* use the center node of each edge to provide a perfect (unique)
Expand Down
3 changes: 1 addition & 2 deletions include/geom/face_quad9.h
Original file line number Diff line number Diff line change
Expand Up @@ -132,8 +132,7 @@ class Quad9 : public Quad

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Quad9 since we can
* use the center node of each edge to provide a perfect (unique)
Expand Down
19 changes: 13 additions & 6 deletions include/geom/face_tri.h
Original file line number Diff line number Diff line change
Expand Up @@ -118,19 +118,26 @@ class Tri : public Face
*/
using Elem::key;

/**
* \returns An id associated with the global node ids of this
* element. The id is not necessarily unique, but should be
* close.
*/
virtual dof_id_type key () const override final;

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*/
virtual dof_id_type key (const unsigned int s) const override;

/**
* \returns An id associated with the global node ids of this
* element. The id is not necessarily unique, but should be
* close.
* \returns An id associated with the \p s side of this element, as
* defined solely by element vertices. The id is not necessarily
* unique, but should be close. This is particularly useful in the
* \p MeshBase::find_neighbors() routine.
*/
virtual dof_id_type key () const override final;
virtual dof_id_type low_order_key (const unsigned int s) const override;

/**
* \returns \p Tri3::side_nodes_map[side][side_node] after doing some range checking.
Expand Down
5 changes: 2 additions & 3 deletions include/geom/face_tri6.h
Original file line number Diff line number Diff line change
Expand Up @@ -142,10 +142,9 @@ class Tri6 : public Tri

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Quad8 since we can
* We reimplement this method here for the \p Tri6 since we can
* use the center node of each edge to provide a perfect (unique)
* key.
*/
Expand Down
5 changes: 2 additions & 3 deletions include/geom/face_tri7.h
Original file line number Diff line number Diff line change
Expand Up @@ -147,10 +147,9 @@ class Tri7 : public Tri

/**
* \returns An id associated with the \p s side of this element.
* The id is not necessarily unique, but should be close. This is
* particularly useful in the \p MeshBase::find_neighbors() routine.
* The id is not necessarily unique, but should be close.
*
* We reimplement this method here for the \p Quad8 since we can
* We reimplement this method here for the \p Tri7 since we can
* use the center node of each edge to provide a perfect (unique)
* key.
*/
Expand Down
Loading