xc
ACICreepShrinkageParameters.h
1 // -*-c++-*-
2 //----------------------------------------------------------------------------
3 // XC program; finite element analysis code
4 // for structural analysis and design.
5 //
6 // Copyright (C) Luis C. Pérez Tato
7 //
8 // This program derives from OpenSees <http://opensees.berkeley.edu>
9 // developed by the «Pacific earthquake engineering research center».
10 //
11 // Except for the restrictions that may arise from the copyright
12 // of the original program (see copyright_opensees.txt)
13 // XC is free software: you can redistribute it and/or modify
14 // it under the terms of the GNU General Public License as published by
15 // the Free Software Foundation, either version 3 of the License, or
16 // (at your option) any later version.
17 //
18 // This software is distributed in the hope that it will be useful, but
19 // WITHOUT ANY WARRANTY; without even the implied warranty of
20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 // GNU General Public License for more details.
22 //
23 //
24 // You should have received a copy of the GNU General Public License
25 // along with this program.
26 // If not, see <http://www.gnu.org/licenses/>.
27 //----------------------------------------------------------------------------
28 
29 #ifndef ACICreepShrinkageParameters_h
30 #define ACICreepShrinkageParameters_h
31 
32 #include "utility/kernel/CommandEntity.h"
33 #include "utility/actor/actor/MovableObject.h"
34 namespace XC {
35 
40  {
41  private:
42  double tcr;
43  double epsshu;
44  double epssha;
45  double epscra;
46  double epscru;
47  //double sigCr; // stress that creep curve is based on
48  double epscrd;
49 
50  protected:
51  int sendData(Communicator &);
52  int recvData(const Communicator &);
53  public:
55  ACICreepShrinkageParameters(const double &_tcr, const double &_epsshu, const double &_epssha, const double &_epscru, const double &_epscra, const double &_epscrd);
56 
57  void setup_parameters(void);
58 
59  double getF2(const double &, const double &) const;
60  double getShrink(const double &, const double &) const;
61 
62  void setUltimateShrinkage(const double &);
63  double getUltimateShrinkage(void) const;
64  void setShrinkageParameter(const double &);
65  double getShrinkageParameter(void) const;
66  void setCreepRelationshipAge(const double &);
67  double getCreepRelationshipAge(void) const;
68  void setUltimateConcreteCreep(const double &);
69  double getUltimateConcreteCreep(void) const;
70  void setCreepExponentParameter(const double &);
71  double getCreepExponentParameter(void) const;
72  void setCreepDParameter(const double &);
73  double getCreepDParameter(void) const;
74 
75  int sendSelf(Communicator &);
76  int recvSelf(const Communicator &);
77 
78  void Print(std::ostream &s, int flag =0) const;
79 
80  };
81 } // end of XC namespace
82 
83 
84 #endif
int recvData(const Communicator &)
Receives object members through the communicator argument.
Definition: ACICreepShrinkageParameters.cc:140
int sendSelf(Communicator &)
Sends object through the communicator argument.
Definition: ACICreepShrinkageParameters.cc:147
double getShrinkageParameter(void) const
Return shrinkage parameter.
Definition: ACICreepShrinkageParameters.cc:98
double getCreepDParameter(void) const
Return creep exponent parameter.
Definition: ACICreepShrinkageParameters.cc:130
Communication parameters between processes.
Definition: Communicator.h:66
Object that can move between processes.
Definition: MovableObject.h:100
void setCreepExponentParameter(const double &)
Assigns creep exponent parameter.
Definition: ACICreepShrinkageParameters.cc:118
void setUltimateConcreteCreep(const double &)
Assigns creep exponent parameter.
Definition: ACICreepShrinkageParameters.cc:110
double getUltimateShrinkage(void) const
Return ultimate shrinkage.
Definition: ACICreepShrinkageParameters.cc:90
double getF2(const double &, const double &) const
Return the f2 value used in setPhi method of creep materials.
Definition: ACICreepShrinkageParameters.cc:69
void setUltimateShrinkage(const double &)
Assigns ultimate shrinkage.
Definition: ACICreepShrinkageParameters.cc:86
int sendData(Communicator &)
Send object members through the communicator argument.
Definition: ACICreepShrinkageParameters.cc:134
Objet that can execute python scripts.
Definition: CommandEntity.h:40
void setShrinkageParameter(const double &)
Assigns shrinkage parameter.
Definition: ACICreepShrinkageParameters.cc:94
void setCreepRelationshipAge(const double &)
Assigns creep relationship age.
Definition: ACICreepShrinkageParameters.cc:102
double getUltimateConcreteCreep(void) const
Return creep exponent parameter.
Definition: ACICreepShrinkageParameters.cc:114
void setCreepDParameter(const double &)
Assigns creep exponent parameter.
Definition: ACICreepShrinkageParameters.cc:126
ACICreepShrinkageParameters(void)
Default constructor.
Definition: ACICreepShrinkageParameters.cc:33
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
void setup_parameters(void)
Sets initial values for the concrete parameters.
Definition: ACICreepShrinkageParameters.cc:61
Parameters that define creep and shrinkage behaviour according to the ACI code.
Definition: ACICreepShrinkageParameters.h:39
double getCreepExponentParameter(void) const
Return creep exponent parameter.
Definition: ACICreepShrinkageParameters.cc:122
int recvSelf(const Communicator &)
Receives object through the communicator argument.
Definition: ACICreepShrinkageParameters.cc:163
double getCreepRelationshipAge(void) const
Return creep relationship age.
Definition: ACICreepShrinkageParameters.cc:106