xc
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
XC::EntMdlr Class Referenceabstract

Multiblock topology object (point, line, face, block,...). More...

#include <EntMdlr.h>

Inheritance diagram for XC::EntMdlr:
Inheritance graph
[legend]
Collaboration diagram for XC::EntMdlr:
Collaboration graph
[legend]

Public Member Functions

 EntMdlr (Preprocessor *m, const size_t &i=0)
 Constructor.
 
 EntMdlr (const std::string &name="", const size_t &i=0, Preprocessor *m=nullptr)
 Constructor. More...
 
 EntMdlr (const EntMdlr &)
 Copy constructor.
 
virtual ~EntMdlr (void)
 Destructor.
 
EntMdlroperator= (const EntMdlr &)
 Assignment operator.
 
virtual bool operator== (const EntMdlr &) const
 Comparison operator.
 
std::string getDescription (void) const
 Return a description of the object. More...
 
virtual void set_index (const size_t &i)
 Assigns the objects index for its use in VTK arrays (see numerate in Set). More...
 
virtual bool In (const GeomObj3d &, const double &tol=0.0) const
 Returns true if the object lies inside the geometric object. More...
 
virtual bool Out (const GeomObj3d &, const double &tol=0.0) const
 Returns true if the object lies outside the geometric object. More...
 
bool hasNodes (void) const
 
virtual size_t getNumNodeLayers (void) const
 
virtual size_t getNumNodeRows (void) const
 
virtual size_t getNumNodeColumns (void) const
 
virtual size_t getNumElementLayers (void) const
 
virtual size_t getNumElementRows (void) const
 
virtual size_t getNumElementColumns (void) const
 
virtual NodegetNode (const size_t &i=1, const size_t &j=1, const size_t &k=1)
 Returns a pointer to the node which indexes are being passed as parameters. More...
 
virtual const NodegetNode (const size_t &i=1, const size_t &j=1, const size_t &k=1) const
 Returns a pointer to the node which indexes are being passed as parameters. More...
 
NodegetNearestNode (const Pos3d &p)
 Return the node closest to the point being passed as parameter.
 
const NodegetNearestNode (const Pos3d &p) const
 Return the node closest to the point being passed as parameter.
 
ID getNodeIndices (const Node *) const
 Return the indexes of the node being passed as parameter.
 
virtual ElementgetElement (const size_t &i=1, const size_t &j=1, const size_t &k=1)
 Returns a pointer to the element which indexes are being passed as parameters. More...
 
virtual const ElementgetElement (const size_t &i=1, const size_t &j=1, const size_t &k=1) const
 Returns a pointer to the element which indices are being passed as parameters. More...
 
NodefindNode (const int &tag)
 Returns a pointer to the node cuyo identifier is being passed as parameter.
 
const NodefindNode (const int &tag) const
 Returns a pointer to the node cuyo identifier is being passed as parameter.
 
ElementfindElement (const int &)
 Returns a pointer to the element identified by the tag being passed as parameter. More...
 
const ElementfindElement (const int &) const
 Returns a pointer to the element identified by the tag being passed as parameter. More...
 
ElementgetNearestElement (const Pos3d &p)
 Return the element closest to the point being passed as parameter.
 
const ElementgetNearestElement (const Pos3d &p) const
 Return the element closest to the point being passed as parameter.
 
std::set< const Element * > getConnectedElements (const Node *) const
 Return the elements connected to the node being passed as parameter.
 
std::set< Element * > getConnectedElements (const Node *)
 Return the elements connected to the node being passed as parameter.
 
boost::python::list getConnectedElementsPy (const Node *)
 Return the elements connected to the node being passed as parameter.
 
NodePtrArray3dgetTtzNodes (void)
 
const NodePtrArray3dgetTtzNodes (void) const
 
ElemPtrArray3dgetTtzElements (void)
 
const ElemPtrArray3dgetTtzElements (void) const
 
virtual unsigned short int GetDimension (void) const =0
 Return the object dimension (0, 1, 2 or 3).
 
virtual BND3d Bnd (void) const =0
 
IRowSet getVarRefIRow (size_t f=1, size_t c=1, const std::string &nmb="tmp")
 
IRowSet getVarRefIRow (const RangoIndice &layer_range, size_t f, size_t c, const std::string &nmb="tmp")
 
IRowSet getVarRefIRow (const Array3dRange &rango, const std::string &nmb="tmp")
 
JRowSet getVarRefJRow (size_t layer=1, size_t c=1, const std::string &nmb="tmp")
 
JRowSet getVarRefJRow (size_t layer, const RangoIndice &row_range, size_t c, const std::string &nmb="tmp")
 
JRowSet getVarRefJRow (const Array3dRange &rango, const std::string &nmb="tmp")
 
KRowSet getVarRefKRow (size_t layer=1, size_t f=1, const std::string &nmb="tmp")
 
KRowSet getVarRefKRow (size_t layer, size_t f, const RangoIndice &column_range, const std::string &nmb="tmp")
 
KRowSet getVarRefKRow (const Array3dRange &rango, const std::string &nmb="tmp")
 
void fix (const SFreedom_Constraint &)
 Fixes the nodes of the set.
 
void setGenMesh (bool m)
 Returns true if the points begins or ends in the line.
 
const bool & getGenMesh (void) const
 Returns true if the points begins or ends in the line.
 
virtual std::set< SetBase * > get_sets (void) const =0
 
virtual double getSquaredDistanceTo (const Pos3d &pt) const
 Return the squared distance to the position being passed as parameter. More...
 
virtual double getDistanceTo (const Pos3d &pt) const
 Return the distance to the position being passed as parameter.
 
Vector getSimpsonWeights (const std::string &, const std::string &, const size_t &f=1, const size_t &c=1, const size_t &n=10) const
 Return Simpson's weights.
 
void BorraPtrNodElem (void)
 Clears pointer to nodes and elements.
 
virtual Pos3d getCentroid (void) const
 Return the centroid of the object.
 
virtual int getVtkCellType (void) const
 Interfaz con VTK.
 
size_t getIdx (void) const
 Returns the index of the object for it use in VTK arrays.
 
boost::python::dict getPyDict (void) const
 Return a Python dictionary containing the object members values.
 
void setPyDict (const boost::python::dict &)
 Set the values of the object members from a Python dictionary.
 
- Public Member Functions inherited from XC::SetEstruct
 SetEstruct (const std::string &nmb="", Preprocessor *preprocessor=nullptr)
 Constructor.
 
 SetEstruct (const SetEstruct &)
 Copy constructor.
 
SetEstructoperator= (const SetEstruct &)
 Assignment operator.
 
virtual SetEstructgetCopy (void) const =0
 
size_t getNumberOfNodes (void) const
 
size_t getNumberOfElements (void) const
 
bool In (const Node *) const
 Returns true if the node belongs to the set.
 
bool In (const Element *) const
 Returns true if the element belongs to the set.
 
bool isIRow (void) const
 Returns true if only the I index varies.
 
bool isJRow (void) const
 Returns true if only the J index varies.
 
bool isKRow (void) const
 Returns true if only the K index varies.
 
bool isIConstantLayer (void) const
 Returns true if only J and K indices varies.
 
bool isJConstantLayer (void) const
 Returns true if only J and K indices varies.
 
bool isKConstantLayer (void) const
 Returns true if only I and J indices varies.
 
size_t Dimension (void) const
 Return the dimension of the range (0,1,2 or 3). More...
 
std::string getStrType (void) const
 Returns the set type i_row, j_row, k_row, constantILayer,...
 
NodegetNodeI (const size_t &i)
 
NodegetNodeIJ (const size_t &i, const size_t &j)
 
NodegetNodeIJK (const size_t &i, const size_t &j, const size_t &k)
 
ElementgetElementI (const size_t &i)
 
ElementgetElementIJ (const size_t &i, const size_t &j)
 
ElementgetElementIJK (const size_t &i, const size_t &j, const size_t &k)
 
std::set< int > getNodeTags (void) const
 Returns the tags of the nodes.
 
boost::python::list getNodes (void)
 Return the nodes of the set in a Python list.
 
std::set< int > getElementTags (void) const
 Returns the tags of the elements.
 
boost::python::list getElements (void)
 
void createInertiaLoads (const Vector &)
 Creates the inertia load that corresponds to the acceleration argument. More...
 
- Public Member Functions inherited from XC::SetBase
 SetBase (const std::string &nmb="", Preprocessor *preprocessor=nullptr)
 Constructor.
 
virtual bool operator== (const SetBase &) const
 Comparison operator.
 
void setColorComponents (const double &, const double &, const double &)
 Set the color of the object (red,green,blue) as integers from 0 to 255. More...
 
void setColor (const Vector &)
 Set the color of the object [red,green,blue] as integers from 0 to 255. More...
 
const VectorgetColor (void) const
 Return the color of the object [red,green,blue] as integers from 0 to 255. More...
 
virtual void genMesh (meshing_dir dm)
 Generates a finite element mesh from the set components.
 
const IDgetIdNodeTags (void) const
 Returns the tags of the nodes en un vector de enteros.
 
const IDgetIdElementTags (void) const
 Returns the tags of the elements en un vector de enteros.
 
boost::python::list getNodeTagsPy (void) const
 Returns the tags of the nodes in a Python list.
 
boost::python::list getElementTagsPy (void) const
 Returns the tags of the elements in a Python list.
 
bool interiorNode (const Node *) const
 Returns true if the all the elements connected to the given node belong to the set. More...
 
virtual bool In (const Pnt *) const
 Returns true if the point belongs to the set.
 
virtual bool In (const Edge *) const
 Returns true if the edge belongs to the set.
 
virtual bool In (const Face *) const
 Returns true if the surface belongs to the set.
 
virtual bool In (const Body *) const
 Returns true if the body belongs to the set.
 
virtual bool In (const UniformGrid *) const
 Returns true if the «uniform grid» belongs to the set.
 
void resetTributaries (void) const
 Reset tributary areas (or lengths, or volumes) for the nodes that are connected to the set elements. More...
 
bool checkTributaries (void) const
 Check if the interior nodes of the set have already a tributary area and warns the user about this circumstance. More...
 
void computeTributaryLengths (bool initialGeometry=true) const
 Computes the tributary lengths that correspond to each node of the element set. More...
 
void computeTributaryAreas (bool initialGeometry=true) const
 Computes the tributary areas that correspond to each node of the element set. More...
 
void computeTributaryVolumes (bool initialGeometry=true) const
 Computes the tributary volumes that correspond to each node of the element set. More...
 
boost::python::dict getPyDict (void) const
 Return a Python dictionary containing the object members values.
 
void setPyDict (const boost::python::dict &)
 Set the values of the object members from a Python dictionary.
 
- Public Member Functions inherited from XC::EntMdlrBase
 EntMdlrBase (const std::string &nmb="", Preprocessor *preprocessor=nullptr)
 Constructor.
 
EntMdlrBaseoperator+= (const EntMdlrBase &)
 += operator.
 
EntMdlrBaseoperator-= (const EntMdlrBase &)
 -= operator.
 
EntMdlrBaseoperator*= (const EntMdlrBase &)
 *= operator (intersection).
 
virtual bool operator== (const EntMdlrBase &) const
 Comparison operator.
 
const PreprocessorgetPreprocessor (void) const
 Return a pointer to the object preprocessor.
 
PreprocessorgetPreprocessor (void)
 Return a pointer to the object preprocessor.
 
const LabelContainergetLabels (void) const
 
size_t getTag (void) const
 Return the object identifier in the model (tag).
 
PntBuscaPnt (const size_t &)
 Return a pointer to the point identified by the tag being passed as parameter. More...
 
const PntBuscaPnt (const size_t &) const
 Return a const pointer to the point identified by the tag being passed as parameter. More...
 
EdgeBuscaEdge (const size_t &)
 Return a pointer to the edge identified by the tag being passed as parameter. More...
 
const EdgeBuscaEdge (const size_t &) const
 Return a pointer to the edge identified by the tag being passed as parameter. More...
 
FaceBuscaFace (const size_t &)
 Return a pointer to the face identified by the tag being passed as parameter. More...
 
const FaceBuscaFace (const size_t &) const
 Returns a pointer to the face identified by the tag being passed as parameter. More...
 
virtual int sendSelf (Communicator &)
 Send objects through the communicator argument.
 
virtual int recvSelf (const Communicator &)
 Receive objects through the communicator argument.
 
- Public Member Functions inherited from NamedEntity
 NamedEntity (const std::string &Name="", CommandEntity *owr=nullptr)
 Constructor.
 
const std::string & getName (void) const
 Return the object name.
 
void setName (const std::string &s)
 Set the object name.
 
std::string & Name (void)
 Return a reference to the object name.
 
virtual bool operator== (const NamedEntity &other) const
 Comparison operator.
 
bool operator< (const NamedEntity &other) const
 Less than operator.
 
NamedEntityoperator+= (const NamedEntity &)
 += operator.
 
NamedEntityoperator-= (const NamedEntity &)
 -= operator.
 
NamedEntityoperator*= (const NamedEntity &)
 *= operator.
 
boost::python::dict getPyDict (void) const
 Return a Python dictionary with the object members values.
 
void setPyDict (const boost::python::dict &)
 Set the values of the object members from a Python dictionary.
 
- Public Member Functions inherited from CommandEntity
 CommandEntity (CommandEntity *owr=nullptr)
 Default constructor.
 
CommandEntityOwner (void)
 Return a pointer to the object owner.
 
const CommandEntityOwner (void) const
 Return un puntero al objeto propietario de ESTE.
 
const StandardOutputWrappergetStandardOutputWrapper (void) const
 Return the regular output stream wrapper.
 
StandardOutputWrappergetStandardOutputWrapper (void)
 Return the regular output stream wrapper.
 
const std::string & getLogFileName (void) const
 Returns log file name.
 
void setLogFileName (const std::string &)
 Sets log file name.
 
const std::string & getErrFileName (void) const
 Returns err file name.
 
void setErrFileName (const std::string &)
 Sets error file name.
 
const std::string & getOutputFileName (void) const
 Returns regular output file name.
 
void setOutputFileName (const std::string &)
 Sets regular output file name.
 
boost::python::object evalPy (boost::python::object dict, const std::string &)
 Return the Python object that results from evaluating the argument.
 
boost::python::object execPy (boost::python::object dict, const std::string &)
 Return the Python objects that results from executing the code in the string argument.
 
boost::python::object execFilePy (boost::python::object dict, const std::string &)
 Return the Python object that results from executing the code in the file.
 
- Public Member Functions inherited from EntityWithProperties
 EntityWithProperties (EntityWithProperties *owr=nullptr)
 Default constructor.
 
virtual bool operator== (const EntityWithProperties &) const
 Comparison operator.
 
void clearPyProps (void)
 Clear python properties map.
 
bool hasPyProp (const std::string &)
 Returns true if property exists.
 
boost::python::object getPyProp (const std::string &str)
 Return the Python object with the name being passed as parameter.
 
void setPyProp (std::string str, boost::python::object val)
 Sets/appends a value tho the Python object's dictionary.
 
void copyPropsFrom (const EntityWithProperties &)
 Copy the properties from the argument.
 
boost::python::list getPropNames (void) const
 Return the names of the object properties weightings.
 
const PythonDict & getPropertiesDict (void) const
 Return a std::map container with the properties of the object.
 
- Public Member Functions inherited from EntityWithOwner
 EntityWithOwner (EntityWithOwner *owr=nullptr)
 Default constructor.
 
 EntityWithOwner (const EntityWithOwner &)
 Copy constructor.
 
EntityWithOwneroperator= (const EntityWithOwner &)
 Assignment operator.
 
virtual bool operator== (const EntityWithOwner &) const
 Comparison operator.
 
virtual ~EntityWithOwner (void)
 Virtual destructor.
 
virtual std::string getClassName (void) const
 Returns demangled class name.
 
void set_owner (EntityWithOwner *owr)
 Assigns the owner of the object.
 
EntityWithOwnerOwner (void)
 
const EntityWithOwnerOwner (void) const
 
- Public Member Functions inherited from XC::MovableObject
 MovableObject (int classTag, int dbTag)
 Constructor. More...
 
 MovableObject (int classTag)
 Constructor. More...
 
 MovableObject (const MovableObject &)
 Copy constructor. Doesn't copy the dbTag.
 
MovableObjectoperator= (const MovableObject &)
 Assignment operator. Doesn't copy the dbTag.
 
int getClassTag (void) const
 Return the class identifier.
 
int getDbTag (void) const
 Return the object identifier in the database.
 
int getDbTag (Communicator &)
 Return the object identifier in the database.
 
void setDbTag (int dbTag)
 Sets the object identifier in the database.
 
void setDbTag (Communicator &)
 Sets the object identifier in the database if not already set. More...
 
virtual int setParameter (const std::vector< std::string > &argv, Parameter &param)
 Sets the value param to the parameter argv.
 
virtual int updateParameter (int parameterID, Information &info)
 Updates the parameter identified by parameterID with info.
 
virtual int activateParameter (int parameterID)
 Activates the parameter identified by parameterID.
 
virtual int setVariable (const std::string &variable, Information &)
 Set the value of the variable idenfified by var.
 
virtual int getVariable (const std::string &variable, Information &)
 Return the value of the variable idenfified by var.
 
- Public Member Functions inherited from XC::DistributedBase
 DistributedBase (void)
 Constructor.
 
virtual ~DistributedBase (void)
 Destructor.
 
virtual DbTagDatagetDbTagData (void) const
 Returns a vector to store class dbTags.
 
const int & getDbTagDataPos (const int &i) const
 Returns the data at the i-th position.
 
void setDbTagDataPos (const int &i, const int &v)
 Sets the data at the i-th position.
 
void inicComm (const int &dataSize) const
 Initializes communication.
 

Protected Member Functions

virtual void update_topology (void)=0
 
void create_nodes (const Pos3dArray3d &)
 Creates nodes at the positions being passed as parameters.
 
Nodecreate_node (const Pos3d &pos, size_t i=1, size_t j=1, size_t k=1)
 Creates a node at the position being passed as parameter.
 
const Nodeset_node (size_t i, size_t j, size_t k, Node *)
 Set the (i,j,k) node. More...
 
bool create_elements (meshing_dir dm)
 Creates elements on the nodes created in create_nodes. More...
 
Pntcreate_point (const Pos3d &)
 Creates a point at the position being passed as parameter.
 
Pntcreate_point_if_needed (const Pos3d &, const double &tol=1e-6)
 Creates a point if there is no other existing point at a distance less that tol. More...
 
void create_points (const Pos3dArray &)
 Creates points at the positions being passed as parameters.
 
SetEstructcreate_row_set (const Array3dRange &, const std::string &)
 Creates a set that corresponds to a row of nodes and elements.
 
void clearAll (void)
 Clears object contents.
 
- Protected Member Functions inherited from XC::SetEstruct
void add_elements_to_handler (const ElemPtrArray3d &)
 Adds the elements to the element handler.
 
NodePtrSet getNodePtrSet (void)
 Returns the pointers to the set nodes.
 
- Protected Member Functions inherited from XC::EntMdlrBase
bool check_preprocessor (void) const
 Check for preprocessor.
 
int sendIdsLabels (const int &, const int &, Communicator &)
 Send labels through the communicator argument.
 
int recvIdsLabels (const int &, const int &, const Communicator &)
 Receive labels through the communicator argument.
 
int sendData (Communicator &)
 Send members through the communicator argument.
 
int recvData (const Communicator &)
 Receive members through the communicator argument.
 
- Protected Member Functions inherited from CommandEntity
template<class T >
void string_to (T &, const std::string &) const
 

Protected Attributes

NodePtrArray3d ttzNodes
 
ElemPtrArray3d ttzElements
 
- Protected Attributes inherited from XC::EntMdlrBase
LabelContainer labels
 Label container.
 

Friends

class Set
 
class SetMeshComp
 
class MultiBlockTopology
 

Additional Inherited Members

- Public Types inherited from EntityWithProperties
typedef std::map< std::string, boost::python::object > PythonDict
 
- Static Public Member Functions inherited from CommandEntity
static void resetStandardOutput (void)
 Reset the standard output streams to its defaults buffers.
 
- Static Public Member Functions inherited from EntityWithOwner
static int getVerbosityLevel (void)
 Get the value of the verbosity level.
 
static void setVerbosityLevel (const int &)
 Set the value of the verbosity level.
 
- Static Protected Member Functions inherited from CommandEntity
static CommandEntityentcmd_cast (boost::any &data)
 
- Static Protected Attributes inherited from EntityWithOwner
static int verbosity = 1
 Object that owns THIS ONE. More...
 

Detailed Description

Multiblock topology object (point, line, face, block,...).

Constructor & Destructor Documentation

◆ EntMdlr()

XC::EntMdlr::EntMdlr ( const std::string &  name = "",
const size_t &  i = 0,
Preprocessor m = nullptr 
)

Constructor.

Parameters
nameObject identifier.
iindex to be used in VTK arrays.
mPointer to preprocessor.

Member Function Documentation

◆ create_elements()

bool XC::EntMdlr::create_elements ( meshing_dir  dm)
protected

Creates elements on the nodes created in create_nodes.

◆ create_point_if_needed()

XC::Pnt * XC::EntMdlr::create_point_if_needed ( const Pos3d pos,
const double &  tol = 1e-6 
)
protected

Creates a point if there is no other existing point at a distance less that tol.

◆ findElement() [1/2]

XC::Element * XC::EntMdlr::findElement ( const int &  tag)

Returns a pointer to the element identified by the tag being passed as parameter.

◆ findElement() [2/2]

const XC::Element * XC::EntMdlr::findElement ( const int &  tag) const

Returns a pointer to the element identified by the tag being passed as parameter.

◆ getDescription()

std::string XC::EntMdlr::getDescription ( void  ) const

Return a description of the object.

This mimics the corresponding function in XC::Set and allows the modeler entities behave as sets in the Python interface.

◆ getElement() [1/2]

XC::Element * XC::EntMdlr::getElement ( const size_t &  i = 1,
const size_t &  j = 1,
const size_t &  k = 1 
)
virtual

Returns a pointer to the element which indexes are being passed as parameters.

Parameters
iindex of the layer.
jindex of the row.
kindex of the column.

Implements XC::SetEstruct.

◆ getElement() [2/2]

const XC::Element * XC::EntMdlr::getElement ( const size_t &  i = 1,
const size_t &  j = 1,
const size_t &  k = 1 
) const
virtual

Returns a pointer to the element which indices are being passed as parameters.

Parameters
iindex of the layer.
jindex of the row.
kindex of the column.

Implements XC::SetEstruct.

◆ getNode() [1/2]

XC::Node * XC::EntMdlr::getNode ( const size_t &  i = 1,
const size_t &  j = 1,
const size_t &  k = 1 
)
virtual

Returns a pointer to the node which indexes are being passed as parameters.

Parameters
iindex of the layer.
jindex of the row.
kindex of the column.

Implements XC::SetEstruct.

Reimplemented in XC::Face, and XC::Edge.

◆ getNode() [2/2]

const XC::Node * XC::EntMdlr::getNode ( const size_t &  i = 1,
const size_t &  j = 1,
const size_t &  k = 1 
) const
virtual

Returns a pointer to the node which indexes are being passed as parameters.

Parameters
iindex of the layer.
jindex of the row.
kindex of the column.

Implements XC::SetEstruct.

Reimplemented in XC::Face, and XC::Edge.

◆ getSquaredDistanceTo()

double XC::EntMdlr::getSquaredDistanceTo ( const Pos3d pt) const
virtual

Return the squared distance to the position being passed as parameter.

Reimplemented in XC::Face, XC::Pnt, and XC::Line.

◆ In()

bool XC::EntMdlr::In ( const GeomObj3d geomObj,
const double &  tol = 0.0 
) const
virtual

Returns true if the object lies inside the geometric object.

Parameters
geomObjobject to be contained in.
toltolerance.

Reimplemented in XC::CmbEdge, XC::Body, XC::Pnt, and XC::Edge.

◆ Out()

bool XC::EntMdlr::Out ( const GeomObj3d geomObj,
const double &  tol = 0.0 
) const
virtual

Returns true if the object lies outside the geometric object.

Parameters
geomObjobject to be contained in.
toltolerance.

Reimplemented in XC::CmbEdge, XC::Body, XC::Pnt, and XC::Edge.

◆ set_index()

void XC::EntMdlr::set_index ( const size_t &  i)
virtual

Assigns the objects index for its use in VTK arrays (see numerate in Set).

◆ set_node()

const XC::Node * XC::EntMdlr::set_node ( size_t  i,
size_t  j,
size_t  k,
Node nodePtr 
)
protected

Set the (i,j,k) node.

Issue a warning if there is already a node there.


The documentation for this class was generated from the following files: