29 #ifndef LOADCOMBINATION_H 30 #define LOADCOMBINATION_H 32 #include "domain/component/ForceReprComponent.h" 35 class MapLoadPatterns;
38 class LoadCombinationGroup;
46 class sumando:
public EntCmd
53 sumando(
const float &f= 1.0,
LoadPattern *lp=
nullptr);
55 const float &Factor(
void)
const;
60 sumando getNeg(
void)
const;
61 const sumando &
suma(
const sumando &otro);
62 const sumando &
resta(
const sumando &otro);
64 const sumando &
divide(
const float &otro);
67 void Print(std::ostream &os)
const;
72 typedef TDescomp::iterator iterator;
73 typedef TDescomp::const_iterator const_iterator;
78 static std::map<int,std::string> map_str_descomp;
80 void set_gamma_f(
void);
92 {
return descomp.begin(); }
94 {
return descomp.end(); }
107 inline void setNombre(
const std::string &nmb)
119 inline const std::string &getNombre(
void)
const 122 inline void setDescomp(
const std::string &descomp)
128 const_iterator begin(
void)
const 129 {
return descomp.begin(); }
130 const_iterator end(
void)
const 131 {
return descomp.end(); }
132 size_t size(
void)
const 133 {
return descomp.size(); }
134 bool empty(
void)
const 135 {
return descomp.empty(); }
169 std::string
getString(
const std::string &fmt=
"")
const;
170 virtual void Print(std::ostream &s,
int flag =0)
const;
A LoadPattern object is used to to store reference loads and single point constraints and a TimeSerie...
Definition: LoadPattern.h:87
int recvSelf(const CommParameters &)
Receives object through the channel being passed as parameter.
Definition: LoadCombination.cc:441
LoadCombination operator-(const LoadCombination &) const
Substraction operator.
Definition: LoadCombination.cc:549
const std::string getDescompCombPrevia(void) const
Returns, if possible, the decomposition of the "previous" combination.
Definition: LoadCombination.cc:353
int recvDescomp(void)
Returns the combination decomposition (it must be called only after setting un the object's owner and...
Definition: LoadCombination.cc:417
LoadCombination & suma(const LoadCombination &otro)
Sums the combination being passed as parameter.
Definition: LoadCombination.cc:454
const LoadCombinationGroup * getGrupo(void) const
Returns the group to wich the combination belongs.
Definition: LoadCombination.cc:314
Domain (mesh and boundary conditions) of the finite element model.
Definition: Domain.h:98
virtual void Print(std::ostream &s, int flag=0) const
Imprime.
Definition: LoadCombination.cc:674
Vector que almacena los dbTags de los miembros de la clase.
Definition: DbTagData.h:43
virtual void setDomain(Domain *theDomain)
Asigna a pointer al domain.
LoadCombination operator/(const float &) const
Division by a number operator.
Definition: LoadCombination.cc:565
void limpia_ceros(void)
Deletes the null weighted load combinations.
Definition: LoadCombination.cc:304
void add_component(const sumando &)
Adds a component to the combination.
Definition: LoadCombination.cc:226
LoadCombination operator*(const float &) const
Product by a number operator.
Definition: LoadCombination.cc:557
Load pattern combination (1.5*PP+1.0*CP+1.6*SC ...).
Definition: LoadCombination.h:43
void interpreta_descomp(const std::string &str)
Computes the combination from the string being passed as parameter.
Definition: LoadCombination.cc:240
FEM_ObjectBroker is is an object broker class for the finite element method. All methods are virtual ...
Definition: FEM_ObjectBroker.h:138
Base class for components that represent forces.
Definition: ForceReprComponent.h:37
std::deque< sumando > TDescomp
Container type for the combination expression (1.5*PP+1.0*CP+1.6*SC ...).
Definition: LoadCombination.h:71
bool dominaA(const LoadCombination &otra) const
Returns true if the factors that weight all the load patterns of this load combination are greater th...
Definition: LoadCombination.cc:620
LoadCombination & resta(const LoadCombination &otro)
Substracts the combination being passed as parameter.
Definition: LoadCombination.cc:480
LoadCombination & asigna(const std::string &)
Assigns the combination identified by the name being passed as parameter.
Definition: LoadCombination.cc:505
Load pattern container.
Definition: MapLoadPatterns.h:45
int recvData(const CommParameters &cp)
Receives members through the channel being passed as parameter.
Definition: LoadCombination.cc:401
Load combination container.
Definition: LoadCombinationGroup.h:46
int sendSelf(CommParameters &)
Sends object through the channel being passed as parameter.
Definition: LoadCombination.cc:429
bool addToDomain(void)
Adds to the domain being passed as parameter each of the load cases of the combination.
Definition: LoadCombination.cc:180
int getTagCombPrevia(void) const
Returns, if possible, the tag of the "previous" combination.
Definition: LoadCombination.cc:343
LoadCombination & multiplica(const float &otro)
Multiplies the combination by the number being passed as parameter.
Definition: LoadCombination.cc:521
const std::string getDescompRestoSobrePrevia(void) const
Returns, si puede, la diferencia entre esta y la previa.
Definition: LoadCombination.cc:363
float getCoefCaso(const LoadPattern *) const
Returns the weighting factor for the load case being passed as parameter.
Definition: LoadCombination.cc:574
const_iterator buscaCaso(const LoadPattern *) const
Returns a const iterator pointing to the load pattern being passed as parameter.
Definition: LoadCombination.cc:274
LoadCombination & divide(const float &otro)
Divides the combination by the number being passed as parameter.
Definition: LoadCombination.cc:533
const LoadCombination * getPtrCombPrevia(void) const
Returns, if possible, a pointer to the "previous" combination.
Definition: LoadCombination.cc:323
LoadCombination(LoadCombinationGroup *owr=nullptr, const std::string &nmb="", int tag=0, LoadLoader *ll=nullptr)
Constructor.
Definition: LoadCombination.cc:141
LoadCombination operator+(const LoadCombination &) const
Addition operator.
Definition: LoadCombination.cc:541
const std::string getNombreCombPrevia(void) const
Returns, if possible, the name of the "previous" combination.
Definition: LoadCombination.cc:333
Lee load patterns desde archivo. Load definition manager.
Definition: LoadLoader.h:44
DbTagData & getDbTagData(void) const
Returns a vector para almacenar los dbTags de los miembros de la clase.
Definition: LoadCombination.cc:385
Communication parameters between processes.
Definition: CommParameters.h:65
int sendData(CommParameters &cp)
Send members through the channel being passed as parameter.
Definition: LoadCombination.cc:392
================================================================================
Definition: ContinuaReprComponent.h:34
std::string getString(const std::string &fmt="") const
Returns a string that represents the load combination «1.35*G1+0.90*G1».
Definition: LoadCombination.cc:658
~LoadCombination(void)
Destructor.
Definition: LoadCombination.cc:146
void clear(void)
Deletes the components of the load combination.
Definition: LoadCombination.cc:300
void set_domain(void)
Assigns the domain to each domain.
Definition: LoadCombination.cc:164
void removeFromDomain(void)
Removes from the domain being passed as parameter the load cases of the combination.
Definition: LoadCombination.cc:210