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

EarthquakePattern Class Reference

#include <EarthquakePattern.h>

Inheritance diagram for EarthquakePattern::

LoadPattern DomainComponent TaggedObject MovableObject UniformExcitation List of all members.

Public Methods

 EarthquakePattern (int tag, int classTag)
virtual ~EarthquakePattern ()
virtual void applyLoad (double time)
virtual bool addSP_Constraint (SP_Constraint *)
 methods to add loads. More...

virtual bool addNodalLoad (NodalLoad *)
virtual bool addElementalLoad (ElementalLoad *)
virtual int sendSelf (int commitTag, Channel &theChannel)=0
 methods for o/p. More...

virtual int recvSelf (int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)=0
virtual void Print (ostream &s, int flag=0)
virtual LoadPatterngetCopy (void)=0
 method to obtain a blank copy of the LoadPattern. More...


Protected Methods

int addMotion (GroundMotion &theMotion)

Protected Attributes

GroundMotion** theMotions
int numMotions

Detailed Description

The EarthquakePattern class is an abstract class. An EarthquakePattern is an object which adds earthquake loads to models. This abstract class keeps track of the GroundMotion objects and implements the {applyLoad()} method. It is up to the concrete subclasses to set the appropriate values of {R} at each node in the model.\

}

Definition at line 53 of file EarthquakePattern.h.


Constructor & Destructor Documentation

EarthquakePattern::EarthquakePattern ( int tag,
int classTag )
 

The integers {tag} and {classTag} are passed to the LoadPattern classes constructor.

Definition at line 46 of file EarthquakePattern.cpp.

EarthquakePattern::~EarthquakePattern ( ) [virtual]
 

Invokes the destructor on all GroundMotions added to the Earthquakepattern. It then invokes the destructor on the array holding pointers to the GroundMotion objects.

Definition at line 53 of file EarthquakePattern.cpp.


Member Function Documentation

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

A pure virtual function. The component is to output itself to the output stream {s}. The integer {flag} can be used to select just what should be output, by default is passed.

Reimplemented from LoadPattern.

Reimplemented in UniformExcitation.

Definition at line 302 of file EarthquakePattern.cpp.

bool EarthquakePattern::addElementalLoad ( ElementalLoad * load ) [virtual]
 

Adds the ElementalLoad pointed to by {theLoad} to the LoadPattern. If the LoadPattern could add the pointer to its storage object for elemental loads, it will invoke {setDomain()} and {setLoadPattern()} on the load object if a Domain has been set.

Reimplemented from LoadPattern.

Definition at line 155 of file EarthquakePattern.cpp.

int EarthquakePattern::addMotion ( GroundMotion & theMotion ) [protected]
 

Definition at line 97 of file EarthquakePattern.cpp.

Referenced by UniformExcitation::UniformExcitation().

bool EarthquakePattern::addNodalLoad ( NodalLoad * load ) [virtual]
 

Adds the NodalLoad object pointed to by {theLoad} to the LoadPattern. If the LoadPattern could add the pointer to its storage object for nodal loads, it will invoke {setDomain()} and {setLoadPattern()} on the load object if a Domain has been set.

Reimplemented from LoadPattern.

Definition at line 148 of file EarthquakePattern.cpp.

bool EarthquakePattern::addSP_Constraint ( SP_Constraint * theSp ) [virtual]
 

methods to add loads.

Reimplemented from LoadPattern.

Definition at line 141 of file EarthquakePattern.cpp.

void EarthquakePattern::applyLoad ( double time ) [virtual]
 

Obtains from each GroundMotion, the velocity and acceleration for the time specified. These values are placed in two Vectors of size equal to the number of GroundMotion objects. For each node in the Domain {addInertiaLoadToUnbalance()} is invoked with the acceleration Vector objects. SIMILAR OPERATION WITH VEL and ACCEL NEEDS TO BE INVOKED ON ELEMENTS .. NEED TO MODIFY ELEMENT INTERFACE

Reimplemented from LoadPattern.

Reimplemented in UniformExcitation.

Definition at line 67 of file EarthquakePattern.cpp.

Referenced by UniformExcitation::applyLoad().

LoadPattern * EarthquakePattern::getCopy ( void ) [pure virtual]
 

method to obtain a blank copy of the LoadPattern.

Reimplemented from LoadPattern.

Reimplemented in UniformExcitation.

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

This is a pure virtual method, one must be written for each instantiable subclass of MovableObject. Each object has to receive the data needed to be able to recreate itself in the new process after it has been sent through {theChannel}. If the object is an aggregation containing other objects, new objects of the correct type can be constructed using {theBroker}. To return if successful or a if not.

Reimplemented from LoadPattern.

Reimplemented in UniformExcitation.

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

methods for o/p.

Reimplemented from LoadPattern.

Reimplemented in UniformExcitation.


Member Data Documentation

int EarthquakePattern::numMotions [protected]
 

Definition at line 105 of file EarthquakePattern.h.

GroundMotion ** EarthquakePattern::theMotions [protected]
 

Definition at line 103 of file EarthquakePattern.h.


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