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

DomainDecompositionAnalysis Class Reference

#include <DomainDecompositionAnalysis.h>

Inheritance diagram for DomainDecompositionAnalysis::

Analysis MovableObject SubstructuringAnalysis List of all members.

Public Methods

 DomainDecompositionAnalysis (Subdomain &theDomain)
 DomainDecompositionAnalysis (int classTag, Subdomain &theDomain)
 DomainDecompositionAnalysis (Subdomain &theDomain, ConstraintHandler &theHandler, DOF_Numberer &theNumberer, AnalysisModel &theModel, DomainDecompAlgo &theSolnAlgo, IncrementalIntegrator &theIntegrator, LinearSOE &theSOE, DomainSolver &theSolver)
virtual ~DomainDecompositionAnalysis ()
virtual int analyze (void)
virtual int domainChanged (void)
virtual int getNumExternalEqn (void)
virtual int getNumInternalEqn (void)
virtual int computeInternalResponse (void)
virtual int formTangent (void)
virtual int formResidual (void)
virtual int formTangVectProduct (Vector &force)
virtual const MatrixgetTangent (void)
virtual const VectorgetResidual (void)
virtual const VectorgetTangVectProduct (void)
virtual int sendSelf (int commitTag, Channel &theChannel)
virtual int recvSelf (int commitTag, Channel &theChannel, FEM_ObjectBroker &theBroker)

Protected Methods

Subdomain* getSubdomainPtr (void) const
ConstraintHandlergetConstraintHandlerPtr (void) const
DOF_NumberergetDOF_NumbererPtr (void) const
AnalysisModelgetAnalysisModelPtr (void) const
DomainDecompAlgogetDomainDecompAlgoPtr (void) const
IncrementalIntegratorgetIncrementalIntegratorPtr (void) const
LinearSOEgetLinSOEPtr (void) const
DomainSolver* getDomainSolverPtr (void) const

Detailed Description

DomainDecompositionAnalysis is a subclass of Analysis, it is used when performing an analysis using the domain decomposition method to solve the equations. Its public member functions are all virtual to allow for the generalization of the class. The following are the aggregates of such an analysis type: \begin{itemize} \item {\bf AnalysisModel} - a container class holding the FE\_Element and DOF\_Group objects created by the ConstraintHandler object. \item {\bf ConstraintHandler} - a class which creates the DOF\_Group and FE\_Element objects, the type of objects created depending on how the specified constraints in the domain are to be handled. \item {\bf DOF\_Numberer} - a class responsible for providing equation numbers to the individual degrees of freedom in each DOF\_Group object. \item {\bf LinearSOE} - a numeric class responsible for the creation and subsequent solution of large systems of linear equations of the form , where A is a matrix, and x and b are vectors. \item {\bf IncrementalIntegrator} - an algorithmic class which provides methods which are invoked by the FE\_Element to determine their current tangent and residual matrices; that is this is the class that sets up the system of equations. It also provides the {update()} method which is invoked to set up the appropriate dof response values once the solution algorithm has formed and solved the system of equations. \item {\bf DomainDecompositionAlgo} - an algorithmic class specifying the sequence of operations to be performed in determing the response for the external dof and placing these in the system of equations. \item {\bf DomainSolver} - an algorithmic class specifying the sequence of operations to be performed in performing the numerical operations. \end{itemize}

Definition at line 98 of file DomainDecompositionAnalysis.h.


Constructor & Destructor Documentation

DomainDecompositionAnalysis::DomainDecompositionAnalysis ( Subdomain & theDomain )
 

ConstraintHandler &theHandler,

Definition at line 62 of file DomainDecompositionAnalysis.cpp.

DomainDecompositionAnalysis::DomainDecompositionAnalysis ( int classTag,
Subdomain & theDomain )
 

{DomainDecompositionAnalysis(int classTag, Subdomain &theDomain);}

Definition at line 80 of file DomainDecompositionAnalysis.cpp.

DomainDecompositionAnalysis::DomainDecompositionAnalysis ( Subdomain & theDomain,
ConstraintHandler & theHandler,
DOF_Numberer & theNumberer,
AnalysisModel & theModel,
DomainDecompAlgo & theSolnAlgo,
IncrementalIntegrator & theIntegrator,
LinearSOE & theSOE,
DomainSolver & theSolver )
 

Definition at line 98 of file DomainDecompositionAnalysis.cpp.

DomainDecompositionAnalysis::~DomainDecompositionAnalysis ( ) [virtual]
 

ConstraintHandler &theHandler,

Definition at line 132 of file DomainDecompositionAnalysis.cpp.


Member Function Documentation

int DomainDecompositionAnalysis::analyze ( void ) [virtual]
 

Causes an error message to be output and returns .

Reimplemented in SubstructuringAnalysis.

Definition at line 138 of file DomainDecompositionAnalysis.cpp.

int DomainDecompositionAnalysis::computeInternalResponse ( void ) [virtual]
 

Definition at line 247 of file DomainDecompositionAnalysis.cpp.

int DomainDecompositionAnalysis::domainChanged ( void ) [virtual]
 

Method used to inform the object that the domain has changed. The DomainDecompositionAnalysis object then performs the following:

Reimplemented from Analysis.

Definition at line 146 of file DomainDecompositionAnalysis.cpp.

Referenced by formResidual(), formTangVectProduct(), formTangent(), getResidual(), getTangVectProduct(), and getTangent().

int DomainDecompositionAnalysis::formResidual ( void ) [virtual]
 

Definition at line 291 of file DomainDecompositionAnalysis.cpp.

Referenced by getResidual().

int DomainDecompositionAnalysis::formTangVectProduct ( Vector & force ) [virtual]
 

Definition at line 321 of file DomainDecompositionAnalysis.cpp.

int DomainDecompositionAnalysis::formTangent ( void ) [virtual]
 

Definition at line 256 of file DomainDecompositionAnalysis.cpp.

Referenced by formResidual(), formTangVectProduct(), and getTangent().

AnalysisModel * DomainDecompositionAnalysis::getAnalysisModelPtr ( void ) const [protected]
 

Definition at line 447 of file DomainDecompositionAnalysis.cpp.

ConstraintHandler * DomainDecompositionAnalysis::getConstraintHandlerPtr ( void ) const [protected]
 

Definition at line 431 of file DomainDecompositionAnalysis.cpp.

DOF_Numberer * DomainDecompositionAnalysis::getDOF_NumbererPtr ( void ) const [protected]
 

Definition at line 439 of file DomainDecompositionAnalysis.cpp.

DomainDecompAlgo * DomainDecompositionAnalysis::getDomainDecompAlgoPtr ( void ) const [protected]
 

Definition at line 455 of file DomainDecompositionAnalysis.cpp.

DomainSolver * DomainDecompositionAnalysis::getDomainSolverPtr ( void ) const [protected]
 

Definition at line 479 of file DomainDecompositionAnalysis.cpp.

IncrementalIntegrator * DomainDecompositionAnalysis::getIncrementalIntegratorPtr ( void ) const [protected]
 

Definition at line 463 of file DomainDecompositionAnalysis.cpp.

LinearSOE * DomainDecompositionAnalysis::getLinSOEPtr ( void ) const [protected]
 

Definition at line 471 of file DomainDecompositionAnalysis.cpp.

int DomainDecompositionAnalysis::getNumExternalEqn ( void ) [virtual]
 

A method to return the number of external degrees-of-freedom on the Subdomain interface, this information is returned when {handle()} is invoked on {theConstraintHandler}.

Definition at line 232 of file DomainDecompositionAnalysis.cpp.

int DomainDecompositionAnalysis::getNumInternalEqn ( void ) [virtual]
 

Definition at line 238 of file DomainDecompositionAnalysis.cpp.

const Vector & DomainDecompositionAnalysis::getResidual ( void ) [virtual]
 

Definition at line 369 of file DomainDecompositionAnalysis.cpp.

Subdomain * DomainDecompositionAnalysis::getSubdomainPtr ( void ) const [protected]
 

Definition at line 422 of file DomainDecompositionAnalysis.cpp.

const Vector & DomainDecompositionAnalysis::getTangVectProduct ( void ) [virtual]
 

Definition at line 403 of file DomainDecompositionAnalysis.cpp.

const Matrix & DomainDecompositionAnalysis::getTangent ( void ) [virtual]
 

Definition at line 348 of file DomainDecompositionAnalysis.cpp.

int DomainDecompositionAnalysis::recvSelf ( int commitTag,
Channel & theChannel,
FEM_ObjectBroker & theBroker ) [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 MovableObject.

Definition at line 524 of file DomainDecompositionAnalysis.cpp.

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

This is a pure virtual method, one must be written for each instantiable subclass of MovableObject. Each object has to send the data needed to be able to reproduce that object in a remote process. The object uses the methods provided by {theChannel} object to send the data to another channel at the remote actor, the address of the channel is set before this method is called. An object of similar type at the remote actor is invoked with a {receiveSelf()} to receive the data. Returns if successful (successful in that the data got to the channel), or a if no data was sent.

Reimplemented from MovableObject.

Definition at line 486 of file DomainDecompositionAnalysis.cpp.


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