class NodalLoad : public Load


Inheritance:


Public Methods

NodalLoad(int classTag)
NodalLoad(int tag, int node, int classTag)
NodalLoad(int tag, int node, const Vector &load, bool isLoadConstant = false)
~NodalLoad()
virtual void setDomain(Domain *newDomain)
virtual int getNodeTag(void) const
virtual void applyLoad(double loadFactor)
virtual int sendSelf(int commitTag, Channel &theChannel)
virtual int recvSelf(int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)
virtual void Print(ostream &s, int flag =0)

Inherited from Load:

Public Methods

virtual void setLoadPatternTag(int loadPaternTag)
virtual int getLoadPatternTag(void) const

Inherited from DomainComponent:

Public Methods

virtual Domain* getDomain(void) const
virtual int displaySelf(Renderer &, int displayMode, float fact)
virtual int setParameter(char **argv, int argc, Information &eleInformation)
virtual int updateParameter(int responseID, Information &eleInformation)

Inherited from TaggedObject:

Public Methods

inline int getTag(void) const
friend ostream& operator<<(ostream &s, TaggedObject &m)
inline int TaggedObject::getTag(void) const

Protected Methods

void setTag(int newTag)

Inherited from MovableObject:

Public Methods

int getClassTag(void) const
int getDbTag(void) const
void setDbTag(int dbTag)

Documentation

NodalLoads are loads acting on Nodes. The public methods are all declared as virtual to allow subclasses to be introduced for the provision of time varying loads. Each NodalLoad object is associated with a single Node object and has a Vector object corresponding to the load acting on this Node object as a result of the NodalLoad.

NodalLoad(int classTag)

To create a NodalLoad object with tag tag acting on Node node with a reference load given by load. tag and LOAD_TAG_NodalLoad (defined in <classTags.h>)are passed to the Load constructor. A new vector object is created using the vector load as the argument. (THIS MAY CHANGE - may associate the load Vector with load, allowing identical loads on diff nodes to be created without the need for each to have its own vector) If no enough memory is available an error message is printed and the program terminates. The boolean isLoadConstant is used to indicate whether the value of the load applies to the Node is independent of the load factor.

NodalLoad(int tag, int node, int classTag)

Provided for subclasses, which may which to provide the abstraction of time varying nodal loads. The integers tag and classTag are passed to the Load constructor.

NodalLoad(int tag, int node, const Vector &load, bool isLoadConstant = false)

Provided so that a FEM_ObjectBroker can construct an object. 0 and classTag are passed to the Load classes constructor. The data for the object is filled in when recvSelf() is invoked on the object.

~NodalLoad()

If a Vector for the load was constructed, the destructor invokes delete on this Vector object

virtual void setDomain(Domain *newDomain)

To set the associated Domain object. First checks to ensure that a Node object with the tag exists in the Domain. It sets the pointer for it's associated Node object to point to this object, and then invokes the DomainComponent classes setDomain() method. If the Node does not exist in the Domain a warning message and setDomain() is not invoked.

virtual int getNodeTag(void) const

Returns the integer node passed in the constructor

virtual void applyLoad(double loadFactor)

To it's associated Node it invokes addUnbalancedLoad() with it's copy of the Vector object load and a factor of loadFactor if isLoadConstant was specified as false in the constructor or 1 if it was specified as true. Warning messages are printed, if no Domain has been associated with the NodalLoad object or no Node with a tag node exists in the Domain. For efficiency reasons, the NodalLoad object keeps a pointer to it's associated Node object. The time timeStep has no influence on the load added.

virtual int sendSelf(int commitTag, Channel &theChannel)

Determines its database tag. The object then sends it's tag, node and size of load Vector to the Channel in an ID object. Then, if load is not NULL, it sends it's copy of the load Vector. Returns 0 if successful, a negative number if the Channel failed to send the data.

virtual int recvSelf(int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)

The object first determines its database tag. It then invokes receives an ID object from the Channel containing it's tag, node and size of load Vector. If size of load is not 0 it then receives it's copy of the load Vector. Returns 0 if successful, a negative number if the Channel failed to receive the data.

virtual void Print(ostream &s, int flag =0)

Prints it's node and then prints the load Vector


This class has no child classes.

alphabetic index Contents

this page has been generated automatically by a slightly modified version of doc++ for OpenSees

Copyright Contact Us