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

LoadControl Class Reference

#include <LoadControl.h>

Inheritance diagram for LoadControl::

StaticIntegrator IncrementalIntegrator Integrator MovableObject List of all members.

Public Methods

 LoadControl (double deltaLambda, int numIncr, double minLambda, double maxlambda)
 ~LoadControl ()
int newStep (void)
int update (const Vector &deltaU)
int setDeltaLambda (double newDeltaLambda)
int sendSelf (int commitTag, Channel &theChannel)
 Public methods for Output. More...

int recvSelf (int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)
void Print (ostream &s, int flag=0)

Detailed Description

LoadControl is a subclass of StaticIntegrator, it is used to when performing a static analysis on the FE\_Model using the load control method. In the load control method, the following constraint equation is added to equation~\ref{staticFormTaylor} of the StaticIntegrator class:

where depends on , the load increment at the previous time step, , the number of iterations required to achieve convergence in the previos load step, and , the desired number of iteraions. is bounded by and . \

Knowing prior to each iteration, the unknowns in equation~\ref{staticFormTaylor}, is reduced to unknowns and results in the following equation:

\begin{equation} \R(U_{n}) = \lambda_n^{(i)} \P

  • \f_{R}\left(U_{n}^{(i)} \right) - K_n^{(i)} (U_{n} - U_{n}^{(i)}) \label{staticFormLoadControl} \end{equation}

Definition at line 85 of file LoadControl.h.


Constructor & Destructor Documentation

LoadControl::LoadControl ( double deltaLambda,
int numIncr,
double minLambda,
double maxlambda )
 

Definition at line 46 of file LoadControl.cpp.

LoadControl::~LoadControl ( )
 

Does nothing.

Definition at line 61 of file LoadControl.cpp.


Member Function Documentation

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

The object sends to its type, the current value of , and .

Reimplemented from Integrator.

Definition at line 162 of file LoadControl.cpp.

int LoadControl::newStep ( void ) [virtual]
 

The object obtains the current value of from the AnalysisModel object. It increments this by .

It will then invoke {applyLoadDomain(0.0, )} on the AnalysisModel object. Returns if successful. A warning message is printed and a is returned if no AnalysisModel is associated with the object.

Reimplemented from StaticIntegrator.

Definition at line 67 of file LoadControl.cpp.

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

Receives in a Vector of size 5 the data that was sent in {sendSelf()}. Returns if successful, a warning message is printed, is set to , and a is returned if {theChannel} fails to receive the Vector.

Reimplemented from MovableObject.

Definition at line 142 of file LoadControl.cpp.

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

Public methods for Output.

Reimplemented from MovableObject.

Definition at line 124 of file LoadControl.cpp.

int LoadControl::setDeltaLambda ( double newDeltaLambda )
 

Sets the value of the load increment in {newStep()} to be . Returns .

Definition at line 114 of file LoadControl.cpp.

int LoadControl::update ( const Vector & deltaU ) [virtual]
 

Invoked this causes the object to first increment the DOF\_Group displacements with , by invoking {incrDisp(\form#226} on the AnalysisModel, and then to update the domain, by invoking {updateDomain()} on the AnalysisModel. Returns if successful, a warning message and a is returned if no AnalysisModel is associated with the object.

Reimplemented from IncrementalIntegrator.

Definition at line 95 of file LoadControl.cpp.


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