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)
177 size_t sendSzts(
const size_t &,
const size_t &,
const size_t &,
const size_t &,
const size_t &,
const size_t &,
DbTagData &,
const CommMetaData &);
199 T *getBrokedTagged(T* &ptr,
const int &,
const int &,
const int &,T *(
FEM_ObjectBroker::*ptrFunc)(
int))
const;
211 LinearSOE *brokeDDLinearSOE(
const int &,
const int &)
const;
212 LinearSOE *brokeLinearSOE(
const int &,
const int &)
const;
215 TransientIntegrator *brokeTransientIntegrator(
const int &)
const;
221 ConvergenceTest *getNewConvergenceTest(CommandEntity *owr,
int classTag)
const;
222 TimeSeries *getNewTimeSeries(
int classTag)
const;
223 CrdTransf2d *getNewCrdTransf2d(
int classTag)
const;
224 CrdTransf3d *getNewCrdTransf3d(
int classTag)
const;
225 CrdTransf *getNewCrdTransf(
int classTag)
const;
231 T *CommParameters::getBrokedPtr(
const int &classTag,T *(
FEM_ObjectBroker::*ptrFunc)(
int))
const 234 T *retval=((*broker).*ptrFunc)(classTag);
245 Material *tmp= broker->getNewMaterial(classTag);
248 ptr=
dynamic_cast<MAT *
>(tmp);
253 std::cerr <<
"WARNING - receiveMaterialPtr " 254 <<
"failed to receive material.\n";
259 std::cerr <<
"CommParameters::getBrokedMaterial " 260 <<
" el material es de clase inadecuada." 265 std::cerr <<
"getBrokedMaterial: " 266 <<
" broker could not create material of class type: " 267 << classTag << std::endl;;
282 ptr=
dynamic_cast<HDL *
>(tmp);
286 std::cerr <<
"getBrokedMaterial: " 287 <<
" broker could not create handler of class type: " 288 << classTag << std::endl;;
300 GroundMotion *tmp= broker->getNewGroundMotion(classTag);
303 ptr=
dynamic_cast<GM *
>(tmp);
307 std::cerr <<
"getBrokedGroundMotion: " 308 <<
" broker could not create ground motion of class type: " 309 << classTag << std::endl;;
315 T *CommParameters::getBrokedTagged(T* &ptr,
const int &dbTag,
const int &objTag,
const int &classTag,T *(
FEM_ObjectBroker::*ptrFunc)(
int))
const 320 T *retval=((*broker).*ptrFunc)(classTag);
324 retval->setDbTag(dbTag);
325 retval->setTag(objTag);
329 std::cerr <<
"getBrokedTagged; can't create object con classTag: " 330 << classTag << std::endl;
345 std::cerr <<
"receiveMovableIDPtr -- ran out of memory\n";
350 int res= ptr->recvSelf(*
this);
352 std::cerr <<
"receiveMovableIDPtr - failed to receive ID data\n";
int sendBools(const bool &, const bool &, DbTagData &, const CommMetaData &)
Sends the bools through the channel being passed as parameter.
Definition: CommParameters.cc:687
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
int sendIDPtr(ID *, DbTagData &, const ArrayCommMetaData &)
Sends an ID pointer through the communicator being passed as parameter.
Definition: CommParameters.cc:106
int sendTensor(const BJtensor &, DbTagData &, const CommMetaData &)
Sends tensor through the channel being passed as parameter.
Definition: CommParameters.cc:334
{staticFormTaylor} {equation}
Definition: StaticIntegrator.h:137
Base class for DOF numbererers.
Definition: DOF_Numberer.h:93
Float vector abstraction.
Definition: Vector.h:93
Domain enclosed in another domain.
Definition: Subdomain.h:101
int sendStrings(std::deque< std::string > &, DbTagData &, const CommMetaData &)
Sends the string container through the channel being passed as parameter.
Definition: CommParameters.cc:352
Matrix * receiveMatrixPtr(Matrix *&ptr, DbTagData &, const MatrixCommMetaData &) const
Receives a pointer to the matrix through the channel being passed as parameter.
Definition: CommParameters.cc:228
int sendMovableMatrixPtr(MovableMatrix *, DbTagData &, const PtrCommMetaData &)
Sends a MovableMatrix pointer through the channel being passed as parameter.
Definition: CommParameters.cc:272
int sendDouble(const double &, DbTagData &, const CommMetaData &)
Sends a double through the channel being passed as parameter.
Definition: CommParameters.cc:554
double * receiveDoublePtr(double *&, DbTagData &, const ArrayCommMetaData &) const
Receive the array data through the channel being passed as parameter.
Definition: CommParameters.cc:527
ConstraintHandlers enforce the single and multi freedom constraints that exist in the domain by creat...
Definition: ConstraintHandler.h:92
int sendIdData(const DbTagData &, const int &)
Sends miembro data through the channel being passed as parameter.
Definition: CommParameters.cc:392
ID that can move between processes.
Definition: MovableID.h:43
int sendInts(const int &, const int &, DbTagData &, const CommMetaData &)
Sends the integers through the channel being passed as parameter.
Definition: CommParameters.cc:812
int sendVectorPtr(Vector *ptr, DbTagData &, const ArrayCommMetaData &)
Sends the Vector pointed by ptr through the channel being passed as parameter.
Definition: CommParameters.cc:467
Linear system of equations.
Definition: LinearSOE.h:91
int receiveString(std::string &v, DbTagData &, const CommMetaData &) const
Receives la text string through the channel being passed as parameter.
Definition: CommParameters.cc:324
size_t receiveSzt(size_t &, DbTagData &, const CommMetaData &) const
Receives the integers through the channel being passed as parameter.
Definition: CommParameters.cc:980
Object that can move between processes.
Definition: MovableObject.h:99
CrdTransf provides the abstraction of a frame coordinate transformation.
Definition: CrdTransf.h:87
const int & getDbTagDataPos(const size_t &i) const
Returns the integer in the position being passed as parameter.
Definition: DbTagData.cc:58
int receiveMatrices(std::vector< Matrix > &, DbTagData &, const CommMetaData &) const
Receives las matrices.
Definition: CommParameters.cc:302
int sendDoubles(const double &, const double &, DbTagData &, const CommMetaData &)
Envía the doubles through the channel being passed as parameter.
Definition: CommParameters.cc:563
ID * receiveIDPtr(ID *&, DbTagData &, const ArrayCommMetaData &) const
Receives an ID pointer through the communicator being passed as parameter.
Definition: CommParameters.cc:124
int sendVectors(std::vector< Vector > &, DbTagData &, const CommMetaData &)
Sends the vector container through the channel being passed as parameter.
Definition: CommParameters.cc:448
int receiveIdData(DbTagData &, const int &) const
Receives el miembro data through the channel being passed as parameter.
Definition: CommParameters.cc:396
MovableID * receiveMovableIDPtr(MovableID *&, DbTagData &, const PtrCommMetaData &)
Receives a MovableID pointer through the channel being passed as parameter.
Definition: CommParameters.cc:159
Solution algorithm for domain decomposition analysis.
Definition: DomainDecompAlgo.h:88
int receiveMovable(MovableObject &, DbTagData &, const CommMetaData &) const
Receives a movable object trhrough the channel being passed as parameter.
Definition: CommParameters.cc:1076
Definition: BJtensor.h:110
Base class for materials.
Definition: Material.h:91
Vector that stores the dbTags of the class members.
Definition: DbTagData.h:43
int sendMovableIDPtr(MovableID *, DbTagData &, const PtrCommMetaData &)
Sends a MovableID pointer through the channel being passed as parameter.
Definition: CommParameters.cc:152
FEM_ObjectBroker is is an object broker class for the finite element method.
Definition: FEM_ObjectBroker.h:145
Vector of integers.
Definition: ID.h:93
bool isDatastore(void) const
Returns true if it's a data store.
Definition: CommParameters.cc:63
int sendMatrix(const Matrix &, const int &)
Send the matrix through the channel being passed as parameter.
Definition: CommParameters.cc:176
int receiveID(ID &v, const int &) const
Receives el vector.
Definition: CommParameters.cc:79
int receiveInt(int &, DbTagData &, const CommMetaData &) const
Receives the integers through the channel being passed as parameter.
Definition: CommParameters.cc:857
Base class for 2D coordinate transformation.
Definition: CrdTransf2d.h:77
Base class for 3D coordinate transformations.
Definition: ShellCrdTransf3dBase.h:48
int sendVector(const Vector &, const int &)
Sends vector.
Definition: CommParameters.cc:400
int sendDoublePtr(double *, DbTagData &, const ArrayCommMetaData &)
Send the array data through the channel being passed as parameter.
Definition: CommParameters.cc:511
MovableMatrix * receiveMovableMatrixPtr(MovableMatrix *&, DbTagData &, const PtrCommMetaData &)
Receives a MovableMatrix pointer through the channel being passed as parameter.
Definition: CommParameters.cc:278
Used when performing a domain decomposition analysis.
Definition: DomainDecompositionAnalysis.h:90
Container for FE_Element and DOF_Group objects created by the constraint handler. ...
Definition: AnalysisModel.h:133
int sendTensorPtr(BJtensor *ptr, DbTagData &, const TensorCommMetaData &)
Envía a pointer al tensor through the channel being passed as parameter.
Definition: CommParameters.cc:255
int sendMatrixPtr(Matrix *ptr, DbTagData &, const MatrixCommMetaData &)
Send a pointer to the matrix through the channel being passed as parameter.
Definition: CommParameters.cc:209
int sendMovablePtr(MovableObject *ptr, DbTagData &, const PtrCommMetaData &)
Sends a pointer to movable object through the channel being passed as parameter.
Definition: CommParameters.cc:1088
int receiveBool(bool &, DbTagData &, const CommMetaData &) const
Sends the bool through the channel being passed as parameter.
Definition: CommParameters.cc:732
int sendInt(const int &, DbTagData &, const CommMetaData &)
Sends the integer through the channel being passed as parameter.
Definition: CommParameters.cc:803
Base class for ground motions.
Definition: GroundMotion.h:83
Base class for integration on beam elements.
Definition: BeamIntegration.h:73
int receiveTensor(BJtensor &v, DbTagData &, const CommMetaData &) const
Receives el tensor through the channel being passed as parameter.
Definition: CommParameters.cc:342
BJtensor * receiveTensorPtr(BJtensor *&ptr, DbTagData &, const TensorCommMetaData &) const
Receives a pointer to tensor through the channel being passed as parameter.
Definition: CommParameters.cc:263
int receiveDouble(double &, DbTagData &, const CommMetaData &) const
Receives el double through the channel being passed as parameter.
Definition: CommParameters.cc:608
int sendMovableVectorPtr(MovableVector *, DbTagData &, const PtrCommMetaData &)
Sends a MovableVector pointer through the channel being passed as parameter.
Definition: CommParameters.cc:165
int receiveBools(bool &, bool &, DbTagData &, const CommMetaData &) const
Receives the bools through the channel being passed as parameter.
Definition: CommParameters.cc:742
Stiffness material contribution response identifiers.
Definition: ResponseId.h:60
IncrementalIntegrator is an algorithmic class for setting up the finite element equations in an incre...
Definition: IncrementalIntegrator.h:96
Channel is an abstract base class which defines the channel interface.
Definition: Channel.h:91
EquiSolnAlgo is an abstract base class, i.e.
Definition: EquiSolnAlgo.h:88
int receiveVector(Vector &v, const int &) const
Receives el vector.
Definition: CommParameters.cc:407
ResponseId * receiveResponseIdPtr(ResponseId *&, DbTagData &, const ArrayCommMetaData &) const
Receives a ResponseId object.
Definition: CommParameters.cc:1054
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
CommParameters(int cTag, Channel &)
Constructor.
Definition: CommParameters.cc:48
convergence test.
Definition: ConvergenceTest.h:80
MovableVector * receiveMovableVectorPtr(MovableVector *&, DbTagData &, const PtrCommMetaData &)
Receives a MovableVector pointer through the channel being passed as parameter.
Definition: CommParameters.cc:172
int receiveDoubles(double &, double &, DbTagData &, const CommMetaData &) const
Receives the doubles through the channel being passed as parameter.
Definition: CommParameters.cc:620
int sendID(const ID &, const int &)
Sends vector.
Definition: CommParameters.cc:72
size_t sendSzt(const size_t &, DbTagData &, const CommMetaData &)
Sends entero through the channel being passed as parameter.
Definition: CommParameters.cc:930
size_t sendSzts(const size_t &, const size_t &, DbTagData &, const CommMetaData &)
Sends the integers through the channel being passed as parameter.
Definition: CommParameters.cc:935
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:34
int receiveInts(int &, int &, DbTagData &, const CommMetaData &) const
Receives the integers through the channel being passed as parameter.
Definition: CommParameters.cc:869
Time variation of loads.
Definition: TimeSeries.h:81
Communication parameters between processes.
Definition: CommParameters.h:65
Matrix of floats.
Definition: Matrix.h:108
int sendString(const std::string &, DbTagData &, const CommMetaData &)
Envía la text string through the channel being passed as parameter.
Definition: CommParameters.cc:316
used to solve a system of equations and to do static condensation operations on the linear system of ...
Definition: DomainSolver.h:82
Matrix that can move between processes.
Definition: MovableMatrix.h:43
int sendMovable(MovableObject &, DbTagData &, const CommMetaData &)
Sends a movable object through the channel being passed as parameter.
Definition: CommParameters.cc:1066
int sendMatrices(const std::vector< Matrix > &, DbTagData &, const CommMetaData &)
Sends the matrices.
Definition: CommParameters.cc:283
Vector that can move between processes.
Definition: MovableVector.h:41
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
int receiveMatrix(Matrix &v, const int &) const
Receives the matrix through the channel being passed as parameter.
Definition: CommParameters.cc:183
int getDbTag(void) const
Solicita al canal que devuelva un tag para la database.
Definition: CommParameters.cc:56
int sendBool(const bool &, DbTagData &, const CommMetaData &)
Sends bool through the channel being passed as parameter.
Definition: CommParameters.cc:682
int sendBrokedPtr(MovableObject *ptr, DbTagData &, const BrokedPtrCommMetaData &)
Sends a pointer to movable object through the channel being passed as parameter.
Definition: CommParameters.cc:1104
Definition: DataOutputHandler.h:61
size_t receiveSzts(size_t &, size_t &, DbTagData &, const CommMetaData &) const
Receives the integers through the channel being passed as parameter.
Definition: CommParameters.cc:990
Base class for 3D coordinate transformation.
Definition: CrdTransf3d.h:80