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

LagrangeConstraintHandler Class Reference

#include <LagrangeConstraintHandler.h>

Inheritance diagram for LagrangeConstraintHandler::

ConstraintHandler MovableObject List of all members.

Public Methods

 LagrangeConstraintHandler (double alphaSP, double alphaMP)
 ~LagrangeConstraintHandler ()
int handle (const ID *nodesNumberedLast=0)
void clearAll (void)
virtual int sendSelf (int commitTag, Channel &theChannel)
virtual int recvSelf (int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)

Detailed Description

The LagrangeConstraintHandler class is a class which deals with both single and multi point constraints using the Lagrange method. This is done by, in addition to creating a DOF\_Group object for each Node and an FE\_Element for each Element in the Domain, creating a LagrangeDOF\_Group object and either a LagrangeSP\_FE or a LagrangeMP\_FE object for each constraint in the Domain. It is these objects that enforce the constraints by modifying the tangent matrix and residual vector. \

}

Definition at line 63 of file LagrangeConstraintHandler.h.


Constructor & Destructor Documentation

LagrangeConstraintHandler::LagrangeConstraintHandler ( double alphaSP,
double alphaMP )
 

The integer {HANDLER\_TAG\_LagrangeConstraintHandler} (defined in classTags.h\form#24) is passed to the LagrangeConstraintHandler constructor. Stores {alphaSP} and {alphaMP} which are needed to construct the LagrangeSP\_FE and LagrangeMP\_FE objects in {handle()}.

Definition at line 59 of file LagrangeConstraintHandler.cpp.

LagrangeConstraintHandler::~LagrangeConstraintHandler ( )
 

Currently invokes {clearAll()}, this will change when {clearAll()} is rewritten.

Definition at line 67 of file LagrangeConstraintHandler.cpp.


Member Function Documentation

void LagrangeConstraintHandler::clearAll ( void ) [virtual]
 

Currently this invokes delete on all the FE\_element and DOF\_Group objects created in {handle()} and the arrays used to store pointers to these objects. FOR ANALYSIS INVOLVING DYNAMIC LOAD BALANCING, RE-MESHING AND CONTACT THIS MUST CHANGE.

Reimplemented from ConstraintHandler.

Definition at line 277 of file LagrangeConstraintHandler.cpp.

int LagrangeConstraintHandler::handle ( const ID * nodesNumberedLast = 0 ) [virtual]
 

Determines the number of FE\_Elements and DOF\_Groups needed from the Domain (a one to one mappinging between Elements and FE\_Elements, SP\_Constraints and LagrangeSP\_FEs, MP\_Constraints and LagrangeMP\_FEs and Nodes and DOF\_Groups). Creates two arrays of pointers to store the FE\_Elements and DOF\_Groups, returning a warning message and a or if not enough memory is available for these arrays. Then the object will iterate through the Nodes of the Domain, creating a DOF\_Group for each node and setting the initial id for each dof to or if the node identifier is in {nodesToBeNumberedLast}. The object then iterates through the Elements of the Domain creating a FE\_Element for each Element, if the Element is a Subdomain {setFE\_ElementPtr()} is invoked on the Subdomain with the new FE\_Element as the argument. If not enough memory is available for any DOF\_Group or FE\_element a warning message is printed and a or is returned. The object then iterates through the SP\_Constraints of the Domain creating a LagrangeSP\_FE for each constraint, using the Domain, the constraint and {alphaSP} as the arguments in the constructor. The object then iterates through the MP\_Constraints of the Domain creating a LagrangeMP\_FE for each constraint, using the Domain, the constraint and {alphaMP} as the arguments in the constructor. Finally the method returns the number of degrees-of-freedom associated with the DOF\_Groups in {nodesToBeNumberedLast}.

Reimplemented from ConstraintHandler.

Definition at line 83 of file LagrangeConstraintHandler.cpp.

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

Receives in a Vector of size 2 the values {alphaSP} and {alphaMP}. Returns if successful.

Reimplemented from MovableObject.

Definition at line 323 of file LagrangeConstraintHandler.cpp.

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

Sends in a Vector of size 2 {alphaSP} and {alphaMP}. Returns if successful.

Reimplemented from MovableObject.

Definition at line 310 of file LagrangeConstraintHandler.cpp.


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