Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

ZeroLengthSection Class Reference

#include <ZeroLengthSection.h>

Inheritance diagram for ZeroLengthSection::

Element DomainComponent TaggedObject MovableObject List of all members.

Public Methods

 ZeroLengthSection (int tag, int dimension, int Nd1, int Nd2, const Vector &x, const Vector &yprime, SectionForceDeformation &theSection)
 ZeroLengthSection ()
 ~ZeroLengthSection ()
int getNumExternalNodes (void) const
 public methods to obtain inforrmation about dof & connectivity. More...

const IDgetExternalNodes (void)
int getNumDOF (void)
void setDomain (Domain *theDomain)
int commitState (void)
 public methods to set the state of the element. More...

int revertToLastCommit (void)
int revertToStart (void)
const MatrixgetTangentStiff (void)
 public methods to obtain stiffness, mass, damping and residual information. More...

const MatrixgetSecantStiff (void)
const MatrixgetDamp (void)
const MatrixgetMass (void)
void zeroLoad (void)
int addLoad (const Vector &addP)
int addInertiaLoadToUnbalance (const Vector &accel)
const VectorgetResistingForce (void)
const VectorgetResistingForceIncInertia (void)
int sendSelf (int commitTag, Channel &theChannel)
 public methods for element output. More...

int recvSelf (int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)
int displaySelf (Renderer &theViewer, int displayMode, float fact)
void Print (ostream &s, int flag=0)
Response* setResponse (char **argv, int argc, Information &eleInformation)
 method for obtaining information specific to an element. More...

int getResponse (int responseID, Information &eleInformation)

Detailed Description

The ZeroLengthSection class represents an element defined by two nodes at the same geometric location, hence it has zero length. The nodes are connected by a SectionForceDeformation object which represents the force-deformation relationship for the element.

ZeroLengthSection elements are constructed with a {tag} in a domain of {dimension} 2 or 3, connected by nodes {Nd1} and {Nd2}. The vector {x} defines the local x-axis for the element and the vector {yprime} lies in the local x-y plane for the element. The local z-axis is the cross product between {x} and {yprime}, and the local y-axis is the cross product between the local z-axis and {x}. \

Definition at line 65 of file ZeroLengthSection.h.


Constructor & Destructor Documentation

ZeroLengthSection::ZeroLengthSection ( int tag,
int dimension,
int Nd1,
int Nd2,
const Vector & x,
const Vector & yprime,
SectionForceDeformation & theSection )
 

Construct a ZeroLengthSection element with {tag} . The force-deformation relationship for the element is obtained by invoking {getCopy()} on the {\bf SectionForceDeformation} pointer {theSection}. The section model acts in the local space defined by the {x} and {yprime} vectors. The section axial force-deformation acts along the element local x-axis and the section y-z axes directly corresponsd to the local element y-z axes.

Definition at line 58 of file ZeroLengthSection.cpp.

ZeroLengthSection::ZeroLengthSection ( )
 

This is the constructor invoked by an {\bf FEM\_ObjectBroker} object. It constructs an empty ZeroLengthSection element with two nodes. The {recvSelf()} method is invoked on the object for it to set the internal data.

Definition at line 81 of file ZeroLengthSection.cpp.

ZeroLengthSection::~ZeroLengthSection ( )
 

Element destructor deletes memory for storing the section model pointer.

Definition at line 91 of file ZeroLengthSection.cpp.


Member Function Documentation

void ZeroLengthSection::Print ( ostream & s,
int flag = 0 ) [virtual]
 

Prints the element node tags and section model to the stream {em s}.

Reimplemented from TaggedObject.

Definition at line 504 of file ZeroLengthSection.cpp.

int ZeroLengthSection::addInertiaLoadToUnbalance ( const Vector & accel ) [virtual]
 

The element has no mass, so this operation has no effect and returns 0.

Reimplemented from Element.

Definition at line 288 of file ZeroLengthSection.cpp.

int ZeroLengthSection::addLoad ( const Vector & addP ) [virtual]
 

The element has no loads, so this operation has no effect and returns 0.

Reimplemented from Element.

Definition at line 281 of file ZeroLengthSection.cpp.

int ZeroLengthSection::commitState ( void ) [virtual]
 

public methods to set the state of the element.

Reimplemented from Element.

Definition at line 211 of file ZeroLengthSection.cpp.

int ZeroLengthSection::displaySelf ( Renderer & theViewer,
int displayMode,
float fact ) [virtual]
 

Display element.

Reimplemented from DomainComponent.

Definition at line 475 of file ZeroLengthSection.cpp.

const Matrix & ZeroLengthSection::getDamp ( void ) [virtual]
 

Return a zero damping matrix.

Reimplemented from Element.

Definition at line 257 of file ZeroLengthSection.cpp.

const ID & ZeroLengthSection::getExternalNodes ( void ) [virtual]
 

Return {\bf ID} of size with the node tags defining the element.

Reimplemented from Element.

Definition at line 111 of file ZeroLengthSection.cpp.

const Matrix & ZeroLengthSection::getMass ( void ) [virtual]
 

Return a zero mass matrix.

Reimplemented from Element.

Definition at line 266 of file ZeroLengthSection.cpp.

int ZeroLengthSection::getNumDOF ( void ) [virtual]
 

Return the number of DOF for the element, which depends on the dimension of the problem and the number of DOF associated with each node.

Reimplemented from Element.

Definition at line 117 of file ZeroLengthSection.cpp.

int ZeroLengthSection::getNumExternalNodes ( void ) const [virtual]
 

public methods to obtain inforrmation about dof & connectivity.

Reimplemented from Element.

Definition at line 105 of file ZeroLengthSection.cpp.

const Vector & ZeroLengthSection::getResistingForce ( void ) [virtual]
 

Return resisting force vector for element. The element resisting force is computed from the section stress resultants, , as . The section stress resulant is obtained by calling {getStressResultant()}.

Reimplemented from Element.

Definition at line 295 of file ZeroLengthSection.cpp.

Referenced by getResistingForceIncInertia().

const Vector & ZeroLengthSection::getResistingForceIncInertia ( void ) [virtual]
 

Returns the result of {getResistingForce()} as there is no element mass.

Reimplemented from Element.

Definition at line 313 of file ZeroLengthSection.cpp.

int ZeroLengthSection::getResponse ( int responseID,
Information & eleInformation ) [virtual]
 

Reimplemented from Element.

Definition at line 535 of file ZeroLengthSection.cpp.

const Matrix & ZeroLengthSection::getSecantStiff ( void ) [virtual]
 

Returns the tangent stiffness matrix for the element as the secant stiffness is not defined for SectionForceDeformation objects.

Reimplemented from Element.

Definition at line 250 of file ZeroLengthSection.cpp.

const Matrix & ZeroLengthSection::getTangentStiff ( void ) [virtual]
 

public methods to obtain stiffness, mass, damping and residual information.

Reimplemented from Element.

Definition at line 232 of file ZeroLengthSection.cpp.

Referenced by getSecantStiff().

int ZeroLengthSection::recvSelf ( int commitTag,
Channel & theChannel,
FEM_ObjectBroker & theBroker ) [virtual]
 

Receive information about element and section from a channel.

Reimplemented from MovableObject.

Definition at line 377 of file ZeroLengthSection.cpp.

int ZeroLengthSection::revertToLastCommit ( void ) [virtual]
 

Revert state of element to last commit by reverting to last committed state of the section. Return 0 if successful, !0 otherwise.

Reimplemented from Element.

Definition at line 218 of file ZeroLengthSection.cpp.

int ZeroLengthSection::revertToStart ( void ) [virtual]
 

Revert state of element to initial sate by reverting to initial state of the section. Return 0 if successful, !0 otherwise.

Reimplemented from Element.

Definition at line 225 of file ZeroLengthSection.cpp.

int ZeroLengthSection::sendSelf ( int commitTag,
Channel & theChannel ) [virtual]
 

public methods for element output.

Reimplemented from MovableObject.

Definition at line 320 of file ZeroLengthSection.cpp.

void ZeroLengthSection::setDomain ( Domain * theDomain ) [virtual]
 

Initialize element and define data structures. Sets up the element transformation matrix, , which defines the kinematic relationship between nodal displacements and section deformations.

Reimplemented from DomainComponent.

Definition at line 129 of file ZeroLengthSection.cpp.

Response * ZeroLengthSection::setResponse ( char ** argv,
int argc,
Information & eleInformation ) [virtual]
 

method for obtaining information specific to an element.

Reimplemented from Element.

Definition at line 512 of file ZeroLengthSection.cpp.

void ZeroLengthSection::zeroLoad ( void ) [virtual]
 

The element has no loads, so this operation has no effect.

Reimplemented from Element.

Definition at line 275 of file ZeroLengthSection.cpp.


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