36 #include "domain/mesh/node/NodeTopology.h" 59 virtual size_t getNumNodeLayers(
void)
const= 0;
60 virtual size_t getNumNodeRows(
void)
const= 0;
61 virtual size_t getNumNodeColumns(
void)
const= 0;
62 virtual size_t getNumElementLayers(
void)
const= 0;
63 virtual size_t getNumElementRows(
void)
const= 0;
64 virtual size_t getNumElementColumns(
void)
const= 0;
65 size_t getNumberOfNodes(
void)
const;
66 size_t getNumberOfElements(
void)
const;
67 bool In(
const Node *)
const;
79 virtual Node *getNode(
const size_t &i=1,
const size_t &j=1,
const size_t &k=1)= 0;
80 virtual const Node *getNode(
const size_t &i=1,
const size_t &j=1,
const size_t &k=1)
const= 0;
82 Node *getNodeI(
const size_t &i);
83 Node *getNodeIJ(
const size_t &i,
const size_t &j);
84 inline Node *getNodeIJK(
const size_t &i,
const size_t &j,
const size_t &k)
85 {
return getNode(i,j,k); }
87 virtual Element *getElement(
const size_t &i=1,
const size_t &j=1,
const size_t &k=1)= 0;
88 virtual const Element *getElement(
const size_t &i=1,
const size_t &j=1,
const size_t &k=1)
const= 0;
90 inline Element *getElementI(
const size_t &i)
91 {
return getElement(i,1,1); }
92 inline Element *getElementIJ(
const size_t &i,
const size_t &j)
93 {
return getElement(i,j,1); }
94 inline Element *getElementIJK(
const size_t &i,
const size_t &j,
const size_t &k)
95 {
return getElement(i,j,k); }
97 std::list<const Node *>
getNodes(
void)
const;
101 std::list<const Element *>
getElements(
void)
const;
104 boost::python::list getElementsPy(
void);
boost::python::list getNodesPy(void)
Return the nodes of the set in a Python list.
Definition: SetEstruct.cc:191
void add_elements_to_handler(const ElemPtrArray3d &)
Adds the elements to the element handler.
Definition: SetEstruct.cc:129
Float vector abstraction.
Definition: Vector.h:94
void createInertiaLoads(const Vector &)
Creates the inertia load that corresponds to the acceleration argument.
Definition: SetEstruct.cc:263
std::list< const Node * > getNodes(void) const
Return the nodes of the set in a list.
Definition: SetEstruct.cc:147
bool isIRow(void) const
Returns true if only the I index varies.
Definition: SetEstruct.cc:57
Finite element model generation tools.
Definition: Preprocessor.h:59
size_t Dimension(void) const
Return the dimension of the range (0,1,2 or 3).
Definition: SetEstruct.cc:105
bool In(const Node *) const
Returns true if the node belongs to the set.
Definition: SetEstruct.cc:288
bool isKRow(void) const
Returns true if only the K index varies.
Definition: SetEstruct.cc:71
Three-dimensional array of pointers to elements.
Definition: ElemPtrArray3d.h:47
SetEstruct(const std::string &nmb="", Preprocessor *preprocessor=nullptr)
Constructor.
Definition: SetEstruct.cc:37
bool isKConstantLayer(void) const
Returns true if only I and J indices varies.
Definition: SetEstruct.cc:86
Base de las clases Set y SetEstruct.
Definition: SetBase.h:51
Base class for the finite elements.
Definition: Element.h:112
std::string getStrType(void) const
Returns the set type i_row, j_row, k_row, constantILayer,...
Definition: SetEstruct.cc:90
std::list< const Element * > getElements(void) const
Returns the elements in a list.
Definition: SetEstruct.cc:205
bool isIConstantLayer(void) const
Returns true if only J and K indices varies.
Definition: SetEstruct.cc:78
bool isJRow(void) const
Returns true if only the J index varies.
Definition: SetEstruct.cc:64
structured set, i.
Definition: SetEstruct.h:47
bool isJConstantLayer(void) const
Returns true if only J and K indices varies.
Definition: SetEstruct.cc:82
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
std::set< int > getNodeTags(void) const
Returns the tags of the nodes.
Definition: SetEstruct.cc:181
Mesh node.
Definition: Node.h:111
NodePtrSet getNodePtrSet(void)
Returns the pointers to the set nodes.
Definition: SetEstruct.cc:115
std::set< int > getElementTags(void) const
Returns the tags of the elements.
Definition: SetEstruct.cc:239
SetEstruct & operator=(const SetEstruct &)
Assignment operator.
Definition: SetEstruct.cc:45