29 #ifndef CommParameters_h 30 #define CommParameters_h 32 #include "utility/matrix/ID.h" 34 #include "utility/actor/objectBroker/FEM_ObjectBroker.h" 35 #include "BrokedPtrCommMetaData.h" 37 #include "DbTagData.h" 50 class ArrayCommMetaData;
51 class MatrixCommMetaData;
52 class TensorCommMetaData;
56 class DomainDecompositionAnalysis;
60 class BeamIntegration;
75 inline const int &getCommitTag(
void)
const 79 inline const Channel *getChannel(
void)
const 81 inline Channel *getChannel(
void)
167 size_t sendSzts(
const size_t &,
const size_t &,
const size_t &,
const size_t &,
const size_t &,
const size_t &,
DbTagData &,
const CommMetaData &);
189 T *getBrokedTagged(T* &ptr,
const int &,
const int &,
const int &,T *(
FEM_ObjectBroker::*ptrFunc)(
int))
const;
201 LinearSOE *brokeDDLinearSOE(
const int &,
const int &)
const;
202 LinearSOE *brokeLinearSOE(
const int &,
const int &)
const;
211 ConvergenceTest *getNewConvergenceTest(EntCmd *owr,
int classTag)
const;
212 TimeSeries *getNewTimeSeries(
int classTag)
const;
213 CrdTransf2d *getNewCrdTransf2d(
int classTag)
const;
214 CrdTransf3d *getNewCrdTransf3d(
int classTag)
const;
215 CrdTransf *getNewCrdTransf(
int classTag)
const;
221 T *CommParameters::getBrokedPtr(
const int &classTag,T *(
FEM_ObjectBroker::*ptrFunc)(
int))
const 224 T *retval=((*broker).*ptrFunc)(classTag);
235 Material *tmp= broker->getNewMaterial(classTag);
238 ptr=
dynamic_cast<MAT *
>(tmp);
243 std::cerr <<
"WARNING - receiveMaterialPtr " 244 <<
"failed to receive material.\n";
249 std::cerr <<
"CommParameters::getBrokedMaterial " 250 <<
" el material es de clase inadecuada." 255 std::cerr <<
"getBrokedMaterial: " 256 <<
" broker could not create material of class type: " 257 << classTag << std::endl;;
272 ptr=
dynamic_cast<HDL *
>(tmp);
276 std::cerr <<
"getBrokedMaterial: " 277 <<
" broker could not create handler of class type: " 278 << classTag << std::endl;;
290 GroundMotion *tmp= broker->getNewGroundMotion(classTag);
293 ptr=
dynamic_cast<GM *
>(tmp);
297 std::cerr <<
"getBrokedGroundMotion: " 298 <<
" broker could not create ground motion of class type: " 299 << classTag << std::endl;;
305 T *CommParameters::getBrokedTagged(T* &ptr,
const int &dbTag,
const int &objTag,
const int &classTag,T *(
FEM_ObjectBroker::*ptrFunc)(
int))
const 310 T *retval=((*broker).*ptrFunc)(classTag);
314 retval->setDbTag(dbTag);
315 retval->setTag(objTag);
319 std::cerr <<
"getBrokedTagged; no se pudo crear el objeto con classTag: " 320 << classTag << std::endl;
335 std::cerr <<
"receiveMovableIDPtr -- ran out of memory\n";
340 int res= ptr->recvSelf(*
this);
342 std::cerr <<
"receiveMovableIDPtr - failed to receive ID data\n";
int sendMovable(MovableObject &, DbTagData &, const CommMetaData &)
Sends a movable object through the channel being passed as parameter.
Definition: CommParameters.cc:959
CrdTransf provides the abstraction of a frame coordinate transformation. It is an abstract base class...
Definition: CrdTransf.h:87
int receiveVector(Vector &v, const int &) const
Recibe el vector.
Definition: CommParameters.cc:407
int sendTensorPtr(BJtensor *ptr, DbTagData &, const TensorCommMetaData &)
Envía a pointer al tensor through the channel being passed as parameter.
Definition: CommParameters.cc:255
Base class for static integrators.
Definition: StaticIntegrator.h:83
int receiveStrings(std::deque< std::string > &, DbTagData &, const CommMetaData &) const
Receives the string container through the channel being passed as parameter.
Definition: CommParameters.cc:360
ID * receiveIDPtr(ID *&, DbTagData &, const ArrayCommMetaData &) const
Receives an ID pointer through the communicator being passed as parameter.
Definition: CommParameters.cc:124
Base class for DOF numbererers.
Definition: DOF_Numberer.h:84
Base class for materials.
Definition: Material.h:85
int sendVector(const Vector &, const int &)
Sends vector.
Definition: CommParameters.cc:400
int sendMatrices(const std::vector< Matrix > &, DbTagData &, const CommMetaData &)
Sends the matrices.
Definition: CommParameters.cc:283
int sendDouble(const double &, DbTagData &, const CommMetaData &)
Sends a double through the channel being passed as parameter.
Definition: CommParameters.cc:554
IncrementalIntegrator is an algorithmic class for setting up the finite element equations in an incre...
Definition: IncrementalIntegrator.h:87
Definition: BJtensor.h:110
size_t sendSzts(const size_t &, const size_t &, DbTagData &, const CommMetaData &)
Envía the integers through the channel being passed as parameter.
Definition: CommParameters.cc:829
double * receiveDoublePtr(double *&, DbTagData &, const ArrayCommMetaData &) const
Recib los valores que contiene el array through the channel being passed as parameter.
Definition: CommParameters.cc:527
EquiSolnAlgo is an abstract base class, i.e. no objects of it's type can be created. Its subclasses deifine the sequence of operations to be performed in the analysis by static equilibrium of a finite element model.
Definition: EquiSolnAlgo.h:85
int sendIDPtr(ID *, DbTagData &, const ArrayCommMetaData &)
Sends an ID pointer through the communicator being passed as parameter.
Definition: CommParameters.cc:106
int sendVectorPtr(Vector *ptr, DbTagData &, const ArrayCommMetaData &)
Sends the Vector pointed by ptr through the channel being passed as parameter.
Definition: CommParameters.cc:467
int receiveDouble(double &, DbTagData &, const CommMetaData &) const
Recibe el double through the channel being passed as parameter.
Definition: CommParameters.cc:608
Vector que almacena los dbTags de los miembros de la clase.
Definition: DbTagData.h:43
int receiveTensor(BJtensor &v, DbTagData &, const CommMetaData &) const
Recibe el tensor through the channel being passed as parameter.
Definition: CommParameters.cc:342
int receiveDoubles(double &, double &, DbTagData &, const CommMetaData &) const
Recibe the doubles through the channel being passed as parameter.
Definition: CommParameters.cc:620
int getDbTag(void) const
Solicita al canal que devuelva un tag para la database.
Definition: CommParameters.cc:56
int sendID(const ID &, const int &)
Sends vector.
Definition: CommParameters.cc:72
int receiveIdData(DbTagData &, const int &) const
Recibe el miembro data through the channel being passed as parameter.
Definition: CommParameters.cc:396
bool isDatastore(void) const
Returns true if it's a data store.
Definition: CommParameters.cc:63
int sendMovablePtr(MovableObject *ptr, DbTagData &, const PtrCommMetaData &)
Sends a pointer to movable object through the channel being passed as parameter.
Definition: CommParameters.cc:980
int sendIdData(const DbTagData &, const int &)
Sends miembro data through the channel being passed as parameter.
Definition: CommParameters.cc:392
used to solve a system of equations and to do static condensation operations on the linear system of ...
Definition: DomainSolver.h:79
Vector * receiveVectorPtr(Vector *&ptr, DbTagData &, const ArrayCommMetaData &) const
Receives a Vector pointed by ptr through the channel being passed as parameter.
Definition: CommParameters.cc:485
FEM_ObjectBroker is is an object broker class for the finite element method. All methods are virtual ...
Definition: FEM_ObjectBroker.h:138
int sendMatrixPtr(Matrix *ptr, DbTagData &, const MatrixCommMetaData &)
Envía a pointer a la matriz through the channel being passed as parameter.
Definition: CommParameters.cc:209
BJtensor * receiveTensorPtr(BJtensor *&ptr, DbTagData &, const TensorCommMetaData &) const
Recibe a pointer a matriz through the channel being passed as parameter.
Definition: CommParameters.cc:263
int receiveString(std::string &v, DbTagData &, const CommMetaData &) const
Recibe la cadena de caracteres through the channel being passed as parameter.
Definition: CommParameters.cc:324
MovableVector * receiveMovableVectorPtr(MovableVector *&, DbTagData &, const PtrCommMetaData &)
Receives a MovableVector pointer through the channel being passed as parameter.
Definition: CommParameters.cc:172
convergence test.
Definition: ConvergenceTest.h:75
int receiveMatrix(Matrix &v, const int &) const
Recibe la matriz through the channel being passed as parameter.
Definition: CommParameters.cc:183
int receiveID(ID &v, const int &) const
Recibe el vector.
Definition: CommParameters.cc:79
Stiffness material contribution response identifiers.
Definition: ResponseId.h:60
int receiveInts(int &, int &, DbTagData &, const CommMetaData &) const
Recibe the integers through the channel being passed as parameter.
Definition: CommParameters.cc:763
Base class for 3D coordinate transformation.
Definition: CrdTransf3d.h:80
Object that can move between processes.
Definition: MovableObject.h:91
Matrix * receiveMatrixPtr(Matrix *&ptr, DbTagData &, const MatrixCommMetaData &) const
Recibe a pointer a matriz through the channel being passed as parameter.
Definition: CommParameters.cc:228
int receiveMovable(MovableObject &, DbTagData &, const CommMetaData &) const
Receives a movable object trhrough the channel being passed as parameter.
Definition: CommParameters.cc:969
const int & getDbTagDataPos(const size_t &i) const
Returns the integer in the position being passed as parameter.
Definition: DbTagData.cc:58
size_t receiveSzts(size_t &, size_t &, DbTagData &, const CommMetaData &) const
Recibe the integers through the channel being passed as parameter.
Definition: CommParameters.cc:884
int sendString(const std::string &, DbTagData &, const CommMetaData &)
Envía la cadena de caracteres through the channel being passed as parameter.
Definition: CommParameters.cc:316
int receiveMatrices(std::vector< Matrix > &, DbTagData &, const CommMetaData &) const
Recibe las matrices.
Definition: CommParameters.cc:302
int receiveInt(int &, DbTagData &, const CommMetaData &) const
Recibe the integers through the channel being passed as parameter.
Definition: CommParameters.cc:751
Matrix that can move between processes.
Definition: MovableMatrix.h:43
int sendDoubles(const double &, const double &, DbTagData &, const CommMetaData &)
Envía the doubles through the channel being passed as parameter.
Definition: CommParameters.cc:563
Definition: Subdomain.h:87
int sendVectors(std::vector< Vector > &, DbTagData &, const CommMetaData &)
Sends the vector container through the channel being passed as parameter.
Definition: CommParameters.cc:448
Used when performing a domain decomposition analysis. It provides methods which can be invoked by a s...
Definition: DomainDecompositionAnalysis.h:81
int sendBool(const bool &, DbTagData &, const CommMetaData &)
Sends bool through the channel being passed as parameter.
Definition: CommParameters.cc:682
int sendMovableMatrixPtr(MovableMatrix *, DbTagData &, const PtrCommMetaData &)
Sends a MovableMatrix pointer through the channel being passed as parameter.
Definition: CommParameters.cc:272
int sendMatrix(const Matrix &, const int &)
Envía la matriz through the channel being passed as parameter.
Definition: CommParameters.cc:176
int receiveVectors(std::vector< Vector > &v, DbTagData &, const CommMetaData &) const
Receives the vector container through the channel being passed as parameter.
Definition: CommParameters.cc:456
Channel is an abstract base class which defines the channel interface. A channel is a point of commun...
Definition: Channel.h:85
int sendStrings(std::deque< std::string > &, DbTagData &, const CommMetaData &)
Sends the string container through the channel being passed as parameter.
Definition: CommParameters.cc:352
MovableMatrix * receiveMovableMatrixPtr(MovableMatrix *&, DbTagData &, const PtrCommMetaData &)
Receives a MovableMatrix pointer through the channel being passed as parameter.
Definition: CommParameters.cc:278
Linea system of equations. This is the class definition for LinearSOE. LinearSOE is an abstract base ...
Definition: LinearSOE.h:86
ResponseId * receiveResponseIdPtr(ResponseId *&, DbTagData &, const ArrayCommMetaData &) const
Receives a ResponseId object.
Definition: CommParameters.cc:947
int sendInts(const int &, const int &, DbTagData &, const CommMetaData &)
Envía the integers through the channel being passed as parameter.
Definition: CommParameters.cc:706
size_t receiveSzt(size_t &, DbTagData &, const CommMetaData &) const
Recibe the integers through the channel being passed as parameter.
Definition: CommParameters.cc:874
Vector that can move between processes.
Definition: MovableVector.h:41
int sendMovableVectorPtr(MovableVector *, DbTagData &, const PtrCommMetaData &)
Sends a MovableVector pointer through the channel being passed as parameter.
Definition: CommParameters.cc:165
MovableID * receiveMovableIDPtr(MovableID *&, DbTagData &, const PtrCommMetaData &)
Receives a MovableID pointer through the channel being passed as parameter.
Definition: CommParameters.cc:159
int sendInt(const int &, DbTagData &, const CommMetaData &)
Sends the integer through the channel being passed as parameter.
Definition: CommParameters.cc:697
int sendTensor(const BJtensor &, DbTagData &, const CommMetaData &)
Sends tensor through the channel being passed as parameter.
Definition: CommParameters.cc:334
Definition: DataOutputHandler.h:61
Los objetos de esta clase, dan acceso a los objetos FE_Element y DOF_Group creados por el Constraint ...
Definition: AnalysisModel.h:113
int sendMovableIDPtr(MovableID *, DbTagData &, const PtrCommMetaData &)
Sends a MovableID pointer through the channel being passed as parameter.
Definition: CommParameters.cc:152
Base class for ground motions.
Definition: GroundMotion.h:83
ConstraintHandlers enforce the single and multi freedom constraints that exist in the domain by creat...
Definition: ConstraintHandler.h:94
ID that can move between processes.
Definition: MovableID.h:43
int receiveBool(bool &, DbTagData &, const CommMetaData &) const
Sends the bool through the channel being passed as parameter.
Definition: CommParameters.cc:687
Communication parameters between processes.
Definition: CommParameters.h:65
Base class for 2D coordinate transformation.
Definition: CrdTransf2d.h:77
================================================================================
Definition: ContinuaReprComponent.h:34
Solution algorithm for domain decomposition.
Definition: DomainDecompAlgo.h:83
Time variation of loads.A TimeSeries object is used to determine the load factor to be applied to the...
Definition: TimeSeries.h:81
Base class for 3D coordinate transformations.
Definition: ShellCrdTransf3dBase.h:48
Base class for integration on beam elements.
Definition: BeamIntegration.h:73
int sendBrokedPtr(MovableObject *ptr, DbTagData &, const BrokedPtrCommMetaData &)
Envía a pointer to movable object through the channel being passed as parameter.
Definition: CommParameters.cc:996
Base class for dynamic equations of motion integrators.
Definition: TransientIntegrator.h:84
int sendDoublePtr(double *, DbTagData &, const ArrayCommMetaData &)
Envía los valores que contiene el array through the channel being passed as parameter.
Definition: CommParameters.cc:511
CommParameters(int cTag, Channel &)
Constructor.
Definition: CommParameters.cc:48
size_t sendSzt(const size_t &, DbTagData &, const CommMetaData &)
Sends entero through the channel being passed as parameter.
Definition: CommParameters.cc:824