Itasca C++ Interface
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | List of all members
sel::ISELLink Class Referenceabstract

Interface to provide access to structural element links. More...

#include <isellink.h>

Public Types

enum  AttachType { AttachFree =0 , AttachRigid , AttachDeform }
 Possible attachment conditions to rotational and translational directions. More...
 

Public Member Functions

virtual const IThinggetIThing () const =0
 Returns a const IThing pointer.
 
virtual IThinggetIThing ()=0
 Returns a IThing pointer.
 
virtual const ISELLinkgetNext () const =0
 
virtual ISELLinkgetNext ()=0
 
virtual const ISELNodegetSourceNode () const =0
 
virtual uint32 getSide () const =0
 Returns 1 if the link is a side 1 link; returns 2 if the link is a side 2 link.
 
virtual uint64 getTargetID () const =0
 
virtual TType getType () const =0
 Returns the link type.
 
virtual TType getUsedBySELType () const =0
 
virtual AttachType getAttachCondition (uint32 dof) const =0
 
virtual QString getAttachConditionSymbol (uint32 dof) const =0
 
virtual TType getConstitType (uint32 dof) const =0
 
virtual bool getSlide () const =0
 
virtual void setSlide (bool)=0
 
virtual double getSlideTol () const =0
 
virtual void setSlideTol (const double &)=0
 
virtual ISELLinkModelgetConstitModel (uint32 dof) const =0
 Given a dof in the range 0 to 5, returns a pointer to the link constitutive model.
 
virtual const IThinggetTarget () const =0
 Returns a pointer to the target for this link.
 
virtual QString getTargetKeyword () const =0
 Returns the keyword used to identify this type of link on the command line.
 
virtual QString getTargetTypeName () const =0
 Returns a name indicating the type of object to which the link connects.
 
virtual TType getTargetType () const =0
 Returns the generic type of object to which the link connects.
 
virtual DVect getTargetPosition () const =0
 Returns the targets weighted position.
 
virtual DVect getTargetCentroid () const =0
 Return the targets centroid.
 
virtual void setTarget (IThing *thing)=0
 
virtual double getTargetPorePressure () const =0
 
virtual std::vector< std::pair< QString, QVariant > > getTypeEntryData () const =0
 
virtual bool findDowelPosFromPos (const DVect &p1, const DVect &p2, double charDist, std::vector< std::pair< DVect, DVect > > *intersections) const =0
 
virtual DVect getNearestFaceNormal (const DVect &pos, const DVect &dir) const =0
 

Static Public Attributes

static const TType type_ = 0x4c815bfe
 Type ID number for this class, for use in convert_cast() and convert_getcast().
 

Detailed Description

Interface to provide access to structural element links.

Structural elements can be joined to one another either by sharing a node or by having one of its nodes linked to either a node or a zone. If two or more structural elements share a node, all forces and moments are transfered between the structural elements at the node.

Member Enumeration Documentation

◆ AttachType

Possible attachment conditions to rotational and translational directions.

Enumerator
AttachFree 

free

AttachRigid 

rigid

AttachDeform 

deformable

Member Function Documentation

◆ findDowelPosFromPos()

virtual bool sel::ISELLink::findDowelPosFromPos ( const DVect & p1,
const DVect & p2,
double charDist,
std::vector< std::pair< DVect, DVect > > * intersections ) const
pure virtual

Gets the dowel node locations and puts in the vector intersections. These will always be pairs (two sides of a joint) Input beginning (p1) and end (p2) of host segment and characteristic distance (element length) Return false if no joint crossings found

◆ getAttachCondition()

virtual AttachType sel::ISELLink::getAttachCondition ( uint32 dof) const
pure virtual

Given a dof in the range 0 to 5, returns the attachment condition. See getAttachConditionSymbol().

◆ getAttachConditionSymbol()

virtual QString sel::ISELLink::getAttachConditionSymbol ( uint32 dof) const
pure virtual

Given a dof in the range 0 to 5, returns a descriptive name for the attachemnt condition. See getAttachCondition(). Possible values are:

  • (SELLK_FREE), + (SELLK_RIGID), LIN (SELLK_DEFORM and SELCM::SELCM_LIN), SY (SELLK_DEFORM and SELCM::SELCM_SY), SY (SELLK_DEFORM and SELCM::SELCM_NY), PY (SELLK_DEFORM and SELCM::SELCM_PY), PYDP (SELLK_DEFORM and SELCM::SELCM_PYDP), ? (default)

◆ getConstitType()

virtual TType sel::ISELLink::getConstitType ( uint32 dof) const
pure virtual

Given a dof in the range 0 to 5, returns the link constitutive model. If the attachment condition is different from SELLK_DEFORM, return SELCM::SELCM_NONE.

◆ getNearestFaceNormal()

virtual DVect sel::ISELLink::getNearestFaceNormal ( const DVect & pos,
const DVect & dir ) const
pure virtual

Finds the nearest zone face to position /pos, and zone face normal parallel to /dir. Only searches on node-to-zone type links, the target is a zone. Return the normal vector of the zone face

◆ getNext() [1/2]

virtual const ISELLink * sel::ISELLink::getNext ( ) const
pure virtual

Returns a const pointer to the next ISELLink object from the global list of links, or 0 for the last element of the list. See ISELLinkList::getFirstSELLk().

◆ getNext() [2/2]

virtual ISELLink * sel::ISELLink::getNext ( )
pure virtual

Returns a pointer to the next ISELLink object from the global list of links, or 0 for the last element ofthe list. See ISELLinkList::getFirstSELLk().

◆ getSlide()

virtual bool sel::ISELLink::getSlide ( ) const
pure virtual

Returns true if the large-strain sliding flag is on. This function only applies to node-to-zone links and has no effect on node-to-node links. See setSlide().

◆ getSlideTol()

virtual double sel::ISELLink::getSlideTol ( ) const
pure virtual

Returns large-strain sliding tolerance. This function only applies to node-to-zone links and has no effect on node-to-node links. See setSlideTol().

◆ getSourceNode()

virtual const ISELNode * sel::ISELLink::getSourceNode ( ) const
pure virtual

Returns a const pointer to the node from which the link emanates. Each link emanates from a node.

◆ getTargetID()

virtual uint64 sel::ISELLink::getTargetID ( ) const
pure virtual

Returns id of the target entity. For a node-to-node link, the target entity is the node. For a node-to-zone link, the target entity is the zone. See getTypeID().

◆ getUsedBySELType()

virtual TType sel::ISELLink::getUsedBySELType ( ) const
pure virtual

Return the structural element entity that is using this link.
If not being used by a specific type, then return 0. See SEL::getType().

◆ setSlide()

virtual void sel::ISELLink::setSlide ( bool )
pure virtual

Sets the large-strain sliding flag to on. This function only applies to node-to-zone links and has no effect on node-to-node links. See getSlide().

◆ setSlideTol()

virtual void sel::ISELLink::setSlideTol ( const double & )
pure virtual

Sets large-strain sliding tolerance. This function only applies to node-to-zone links and has no effect on node-to-node links. See setSlideTol().

◆ setTarget()

virtual void sel::ISELLink::setTarget ( IThing * thing)
pure virtual

Sets the current target for this link to thing. Throws an error if thing is of the wrong type or if the link would be invalid.


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