#include <StructuredElementSeq.hpp>
Inheritance diagram for moab::StructuredElementSeq:
Collaboration diagram for moab::StructuredElementSeq:Public Member Functions | |
| StructuredElementSeq (EntityHandle start_handle, const int imin, const int jmin, const int kmin, const int imax, const int jmax, const int kmax, int *is_periodic=NULL) | |
| constructor More... | |
| virtual | ~StructuredElementSeq () |
| ScdElementData * | sdata () |
| ScdElementData const * | sdata () const |
| EntityHandle | get_vertex (const int i, const int j, const int k) const |
| get handle of vertex at i, j, k More... | |
| EntityHandle | get_vertex (const HomCoord &coords) const |
| get handle of vertex at homogeneous coords More... | |
| EntityHandle | get_element (const int i, const int j, const int k) const |
| get handle of element at i, j, k More... | |
| EntityHandle | get_element (const HomCoord &coords) const |
| get handle of element at homogeneous coords More... | |
| const HomCoord & | min_params () const |
| get min params for this element More... | |
| void | min_params (HomCoord &coords) const |
| void | min_params (int &i, int &j, int &k) const |
| const HomCoord & | max_params () const |
| get max params for this element More... | |
| void | max_params (HomCoord &coords) const |
| void | max_params (int &i, int &j, int &k) const |
| void | param_extents (int &di, int &dj, int &dk) const |
| get the number of vertices in each direction, inclusive More... | |
| ErrorCode | get_params (const EntityHandle ehandle, int &i, int &j, int &k) const |
| given a handle, get the corresponding parameters More... | |
| int | i_min () const |
| convenience functions for parameter extents More... | |
| int | j_min () const |
| int | k_min () const |
| int | i_max () const |
| int | j_max () const |
| int | k_max () const |
| bool | boundary_complete () const |
| test the bounding vertex sequences and determine whether they fully define the vertices covering this element block's parameter space More... | |
| bool | contains (const int i, const int j, const int k) const |
| test whether this sequence contains these parameters More... | |
| bool | contains (const HomCoord &coords) const |
| ErrorCode | get_params_connectivity (const int i, const int j, const int k, std::vector< EntityHandle > &connectivity) const |
| get connectivity of an entity given entity's parameters More... | |
| int | is_periodic_i () const |
| Return whether box is periodic in i. More... | |
| int | is_periodic_j () const |
| Return whether box is periodic in j. More... | |
| void | is_periodic (int is_periodic_ij[2]) const |
| Return whether box is periodic in i and j. More... | |
| virtual ErrorCode | get_connectivity (EntityHandle handle, std::vector< EntityHandle > &connect, bool topological=false) const |
| virtual ErrorCode | get_connectivity (EntityHandle handle, EntityHandle const *&connect, int &connect_length, bool topological=false, std::vector< EntityHandle > *storage=0) const |
| virtual ErrorCode | set_connectivity (EntityHandle handle, EntityHandle const *connect, int connect_length) |
| virtual EntityHandle * | get_connectivity_array () |
| virtual int | values_per_entity () const |
| Integer value used in finding appropriate SequenceData. More... | |
| virtual EntitySequence * | split (EntityHandle here) |
| Split this sequence into two consecutive sequences. More... | |
| virtual SequenceData * | create_data_subset (EntityHandle start_handle, EntityHandle end_handle) const |
| Create a new SequenceData that is a copy of a subset of the one referenced by this sequence. More... | |
| virtual void | get_const_memory_use (unsigned long &bytes_per_entity, unsigned long &size_of_sequence) const |
| Get memory characteristcs that are the same for all entities. More... | |
Public Member Functions inherited from moab::ElementSequence | |
| ElementSequence (EntityHandle start, EntityID count, unsigned int nodes_per_elem, SequenceData *dat) | |
| virtual | ~ElementSequence () |
| unsigned int | nodes_per_element () const |
| EntityHandle const * | get_connectivity_array () const |
| bool | has_mid_edge_nodes () const |
| bool | has_mid_face_nodes () const |
| bool | has_mid_volume_nodes () const |
Public Member Functions inherited from moab::EntitySequence | |
| EntitySequence (EntityHandle start, EntityID count, SequenceData *dat) | |
| virtual | ~EntitySequence () |
| EntityType | type () const |
| EntityHandle | start_handle () const |
| EntityHandle | end_handle () const |
| SequenceData * | data () const |
| void | data (SequenceData *ptr) |
| EntityID | size () const |
| bool | using_entire_data () const |
| True if SequenceData has no holes and is used only by this EntitySequence. More... | |
| virtual ErrorCode | merge (EntitySequence &other) |
| Merge this sequence with another. More... | |
| virtual ErrorCode | pop_back (EntityID count) |
| Erase entities in range: (end_handle()-count, end_handle()]. More... | |
| virtual ErrorCode | pop_front (EntityID count) |
| Erase entities in range: [start_handle(), start_handle()+count) More... | |
| virtual unsigned long | get_per_entity_memory_use (EntityHandle first, EntityHandle last) const |
| Get portion of memory use that varies per entity. More... | |
Protected Member Functions | |
| StructuredElementSeq (StructuredElementSeq &split_from, EntityHandle here) | |
Protected Member Functions inherited from moab::ElementSequence | |
| ElementSequence (ElementSequence &split_from, EntityHandle here) | |
Protected Member Functions inherited from moab::EntitySequence | |
| EntitySequence (EntityHandle h) | |
| EntitySequence (EntitySequence &split_from, EntityHandle here) | |
| SequenceData * | create_data_subset (EntityHandle start_handle, EntityHandle end_handle, int num_sequence_arrays, unsigned const *bytes_per_element) const |
| ErrorCode | prepend_entities (EntityID count) |
| ErrorCode | append_entities (EntityID count) |
Definition at line 36 of file StructuredElementSeq.hpp.
| moab::StructuredElementSeq::StructuredElementSeq | ( | EntityHandle | start_handle, |
| const int | imin, | ||
| const int | jmin, | ||
| const int | kmin, | ||
| const int | imax, | ||
| const int | jmax, | ||
| const int | kmax, | ||
| int * | is_periodic = NULL |
||
| ) |
|
virtual |
Definition at line 42 of file StructuredElementSeq.cpp.
|
inlineprotected |
Definition at line 238 of file StructuredElementSeq.hpp.
|
inline |
test the bounding vertex sequences and determine whether they fully define the vertices covering this element block's parameter space
Definition at line 156 of file StructuredElementSeq.hpp.
References moab::ScdElementData::boundary_complete(), and sdata().
Referenced by moab::ScdBox::boundary_complete().
|
inline |
Definition at line 166 of file StructuredElementSeq.hpp.
References moab::ScdElementData::contains(), and sdata().
|
inline |
test whether this sequence contains these parameters
Definition at line 162 of file StructuredElementSeq.hpp.
References moab::ScdElementData::contains(), and sdata().
|
virtual |
Create a new SequenceData that is a copy of a subset of the one referenced by this sequence.
Create a new SequenceData that is a copy of a subset of the SequenceData referenced by this EntitySequence. Do not make any changes to this EntitySequence or the current SequenceData.
Implements moab::EntitySequence.
Definition at line 94 of file StructuredElementSeq.cpp.
|
virtual |
Implements moab::ElementSequence.
Definition at line 54 of file StructuredElementSeq.cpp.
References ErrorCode, get_connectivity(), and MB_STRUCTURED_MESH.
|
virtual |
Implements moab::ElementSequence.
Definition at line 44 of file StructuredElementSeq.cpp.
References ErrorCode, get_params(), get_params_connectivity(), and MB_SUCCESS.
Referenced by get_connectivity().
|
virtual |
Implements moab::ElementSequence.
Definition at line 79 of file StructuredElementSeq.cpp.
|
virtual |
Get memory characteristcs that are the same for all entities.
Get charactersitic constant memory use for all entities in sequence.
| bytes_per_entity | The total bytes consumed for each entity in the underlying SequenceData. It is assumed that the same amount of memory is consumed for unused portions of the SequenceData. |
| size_of_sequence | The size of the leaf subclass of this class |
Implements moab::EntitySequence.
Definition at line 99 of file StructuredElementSeq.cpp.
References moab::ScdElementData::get_memory_use(), sdata(), and moab::SequenceData::size().
|
inline |
get handle of element at homogeneous coords
Definition at line 79 of file StructuredElementSeq.hpp.
References moab::ScdElementData::get_element(), moab::HomCoord::i(), moab::HomCoord::j(), moab::HomCoord::k(), and sdata().
|
inline |
get handle of element at i, j, k
Definition at line 73 of file StructuredElementSeq.hpp.
References moab::ScdElementData::get_element(), and sdata().
|
inline |
given a handle, get the corresponding parameters
Definition at line 123 of file StructuredElementSeq.hpp.
References moab::ScdElementData::get_params(), and sdata().
Referenced by get_connectivity(), and moab::ScdBox::get_params().
|
inline |
get connectivity of an entity given entity's parameters
Definition at line 172 of file StructuredElementSeq.hpp.
References moab::ScdElementData::get_params_connectivity(), and sdata().
Referenced by get_connectivity().
|
inline |
get handle of vertex at homogeneous coords
Definition at line 67 of file StructuredElementSeq.hpp.
References moab::ScdElementData::get_vertex(), and sdata().
|
inline |
get handle of vertex at i, j, k
Definition at line 61 of file StructuredElementSeq.hpp.
Referenced by moab::ScdBox::get_vertex_from_seq().
|
inline |
Definition at line 141 of file StructuredElementSeq.hpp.
References moab::HomCoord::i(), and max_params().
|
inline |
convenience functions for parameter extents
Definition at line 129 of file StructuredElementSeq.hpp.
References moab::HomCoord::i(), and min_params().
|
inline |
Return whether box is periodic in i and j.
Return whether box is periodic in i and j
| is_periodic_ij | Non-zero if periodic in i [0] or j [1] |
Definition at line 202 of file StructuredElementSeq.hpp.
References moab::ScdElementData::is_periodic(), and sdata().
Referenced by moab::ScdBox::elem_seq().
|
inline |
Return whether box is periodic in i.
Return whether box is periodic in i
Definition at line 184 of file StructuredElementSeq.hpp.
References moab::ScdElementData::is_periodic_i(), and sdata().
|
inline |
Return whether box is periodic in j.
Return whether box is periodic in j
Definition at line 193 of file StructuredElementSeq.hpp.
References moab::ScdElementData::is_periodic_j(), and sdata().
|
inline |
Definition at line 145 of file StructuredElementSeq.hpp.
References moab::HomCoord::j(), and max_params().
|
inline |
Definition at line 133 of file StructuredElementSeq.hpp.
References moab::HomCoord::j(), and min_params().
|
inline |
Definition at line 149 of file StructuredElementSeq.hpp.
References moab::HomCoord::k(), and max_params().
|
inline |
Definition at line 137 of file StructuredElementSeq.hpp.
References moab::HomCoord::k(), and min_params().
|
inline |
get max params for this element
Definition at line 101 of file StructuredElementSeq.hpp.
References moab::ScdElementData::max_params(), and sdata().
Referenced by i_max(), j_max(), k_max(), and max_params().
|
inline |
Definition at line 105 of file StructuredElementSeq.hpp.
References max_params().
|
inline |
Definition at line 109 of file StructuredElementSeq.hpp.
References moab::HomCoord::i(), moab::HomCoord::j(), moab::HomCoord::k(), and max_params().
|
inline |
get min params for this element
Definition at line 85 of file StructuredElementSeq.hpp.
References moab::ScdElementData::min_params(), and sdata().
Referenced by i_min(), j_min(), k_min(), and min_params().
|
inline |
Definition at line 89 of file StructuredElementSeq.hpp.
References min_params().
|
inline |
Definition at line 93 of file StructuredElementSeq.hpp.
References moab::HomCoord::i(), moab::HomCoord::j(), moab::HomCoord::k(), and min_params().
|
inline |
get the number of vertices in each direction, inclusive
Definition at line 117 of file StructuredElementSeq.hpp.
References moab::ScdElementData::param_extents(), and sdata().
|
inline |
Definition at line 51 of file StructuredElementSeq.hpp.
References moab::EntitySequence::data().
Referenced by moab::ScdBox::add_vbox(), boundary_complete(), contains(), get_const_memory_use(), get_element(), get_params(), get_params_connectivity(), get_vertex(), is_periodic(), is_periodic_i(), is_periodic_j(), max_params(), min_params(), param_extents(), and moab::ScdBox::ScdBox().
|
inline |
Definition at line 55 of file StructuredElementSeq.hpp.
References moab::EntitySequence::data().
|
virtual |
Implements moab::ElementSequence.
Definition at line 74 of file StructuredElementSeq.cpp.
References MB_STRUCTURED_MESH.
|
virtual |
Split this sequence into two consecutive sequences.
Split this sequence into two sequences.
| here | New sequences should be [start_handle(),here) & [here,end_handle()] |
Implements moab::EntitySequence.
Definition at line 89 of file StructuredElementSeq.cpp.
References StructuredElementSeq().
|
virtual |
Integer value used in finding appropriate SequenceData.
This value is matched to input values by TypeSequenceManager to determine if an available, unused portino of a SequenceData can be used for a specific entity allocation. For example, it is used to find a SequenceData with the appropriate number of vertices per element when allocating elements. The default value is zero.
Reimplemented from moab::EntitySequence.
Definition at line 84 of file StructuredElementSeq.cpp.