|
OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
This class implements associated Material Status to MPSMaterial, which corresponds to a model for humidity- and temperature-dependent creep of concrete according to the microprestress-solidification theory. More...
#include <mps.h>
Inheritance diagram for oofem::MPSMaterialStatus:
Collaboration diagram for oofem::MPSMaterialStatus:Public Member Functions | |
| MPSMaterialStatus (int n, Domain *d, GaussPoint *g, int nunits) | |
| virtual | ~MPSMaterialStatus () |
| virtual void | initTempStatus () |
| Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables. More... | |
| virtual void | updateYourself (TimeStep *tStep) |
| Update equilibrium history variables according to temp-variables. More... | |
| virtual contextIOResultType | saveContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
| Stores receiver state to output stream. More... | |
| virtual contextIOResultType | restoreContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
| Restores the receiver state previously written in stream. More... | |
| double | giveHum () |
| Returns relative humidity. More... | |
| void | setHum (double src) |
| Stores relative humidity. More... | |
| double | giveHumIncrement () |
| Returns relative humidity increment. More... | |
| void | setHumIncrement (double src) |
| Stores relative humidity increment. More... | |
| double | giveT () |
| Returns temperature. More... | |
| void | setT (double src) |
| Stores temperature. More... | |
| double | giveTIncrement () |
| Returns temperature increment. More... | |
| void | setTIncrement (double src) |
| Stores temperature increment. More... | |
| double | giveTmax () |
| Returns previously maximum reached temperature. More... | |
| void | setTmax (double src) |
| Stores maximum reached temperature. More... | |
| double | giveEquivalentTime () |
| Returns equivalent time. More... | |
| void | setEquivalentTimeTemp (double src) |
| Stores equivalent time. More... | |
| double | giveFlowTermViscosity () |
| Returns viscosity of the flow term (associated with q4 and microprestress evolution) More... | |
| double | giveFlowTermViscosityTemp () |
| void | setFlowTermViscosityTemp (double src) |
| void | storeEmodulus (double src) |
| Returns Emodulus if computed previously in the same tStep. More... | |
| void | setEmodulusFlag (bool src) |
| double | giveStoredEmodulus (void) |
| Returns Emodulus if computed previously in the same tStep. More... | |
| bool | giveStoredEmodulusFlag (void) |
| void | setTempDryingShrinkageStrain (double src) |
| double | giveTempDryingShrinkageStrain (void) |
| double | giveDryingShrinkageStrain (void) |
| void | setTempAutogenousShrinkageStrain (double src) |
| double | giveTempAutogenousShrinkageStrain (void) |
| double | giveAutogenousShrinkageStrain (void) |
| void | setCreepStrainIncrement (FloatArray src) |
| const FloatArray & | giveCreepStrain () const |
| virtual const char * | giveClassName () const |
Public Member Functions inherited from oofem::KelvinChainSolidMaterialStatus | |
| KelvinChainSolidMaterialStatus (int n, Domain *d, GaussPoint *g, int nunits) | |
| virtual | ~KelvinChainSolidMaterialStatus () |
| virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
| Print receiver's output to given stream. More... | |
Public Member Functions inherited from oofem::RheoChainMaterialStatus | |
| RheoChainMaterialStatus (int n, Domain *d, GaussPoint *g, int nunits) | |
| virtual | ~RheoChainMaterialStatus () |
| virtual const FloatArray & | giveViscoelasticStressVector () const |
| FloatArray & | giveHiddenVarsVector (int i) |
| FloatArray & | giveTempHiddenVarsVector (int i) |
| FloatArray * | letHiddenVarsVectorBe (int i, FloatArray *) |
| void | letTempHiddenVarsVectorBe (int i, FloatArray &valueArray) |
| FloatArray * | giveShrinkageStrainVector () |
| void | setShrinkageStrainVector (FloatArray src) |
| void | setTempThermalStrain (double src) |
| double | giveTempThermalStrain (void) |
| double | giveThermalStrain (void) |
Public Member Functions inherited from oofem::StructuralMaterialStatus | |
| StructuralMaterialStatus (int n, Domain *d, GaussPoint *g) | |
| Constructor. Creates new StructuralMaterialStatus with number n, belonging to domain d and IntegrationPoint g. More... | |
| virtual | ~StructuralMaterialStatus () |
| Destructor. More... | |
| const FloatArray & | giveStrainVector () const |
| Returns the const pointer to receiver's strain vector. More... | |
| const FloatArray & | giveStressVector () const |
| Returns the const pointer to receiver's stress vector. More... | |
| const FloatArray & | givePVector () const |
| Returns the const pointer to receiver's first Piola-Kirchhoff stress vector. More... | |
| const FloatArray & | giveCVector () const |
| Returns the const pointer to receiver's Cauchy stress vector. More... | |
| const FloatArray & | giveFVector () const |
| Returns the const pointer to receiver's deformation gradient vector. More... | |
| const FloatArray & | giveTempStrainVector () const |
| Returns the const pointer to receiver's temporary strain vector. More... | |
| const FloatArray & | giveTempStressVector () const |
| Returns the const pointer to receiver's temporary stress vector. More... | |
| const FloatArray & | giveTempPVector () const |
| Returns the const pointer to receiver's temporary first Piola-Kirchhoff stress vector. More... | |
| const FloatArray & | giveTempCVector () const |
| Returns the const pointer to receiver's temporary Cauchy stress vector. More... | |
| const FloatArray & | giveTempFVector () const |
| Returns the const pointer to receiver's temporary deformation gradient vector. More... | |
| void | letStrainVectorBe (const FloatArray &v) |
| Assigns strain vector to given vector v. More... | |
| void | letStressVectorBe (const FloatArray &v) |
| Assigns stressVector to given vector v. More... | |
| void | letPVectorBe (const FloatArray &v) |
| Assigns PVector to given vector v. More... | |
| void | letCVectorBe (const FloatArray &v) |
| Assigns CVector to given vector v. More... | |
| void | letFVectorBe (const FloatArray &v) |
| Assigns FVector to given vector v. More... | |
| void | letTempStressVectorBe (const FloatArray &v) |
| Assigns tempStressVector to given vector v. More... | |
| void | letTempStrainVectorBe (const FloatArray &v) |
| Assigns tempStrainVector to given vector v. More... | |
| void | letTempPVectorBe (const FloatArray &v) |
| Assigns tempPVector to given vector v. More... | |
| void | letTempCVectorBe (const FloatArray &v) |
| Assigns tempPVector to given vector v. More... | |
| void | letTempFVectorBe (const FloatArray &v) |
| Assigns tempFVector to given vector v. More... | |
| virtual void | copyStateVariables (const MaterialStatus &iStatus) |
| Functions for MaterialStatusMapperInterface. More... | |
| virtual void | addStateVariables (const MaterialStatus &iStatus) |
Public Member Functions inherited from oofem::MaterialStatus | |
| MaterialStatus (int n, Domain *d, GaussPoint *g) | |
| Constructor. More... | |
| virtual | ~MaterialStatus () |
| Destructor. More... | |
| virtual bool | giveMaterialProperty (int propID, double &value) |
| Returns the value of material model property stored in receiving status. More... | |
| virtual void | setMaterialProperty (int propID, double value) |
| Allows to set the value of material model property to be stored in receiving status. More... | |
| virtual void | setStatusVariable (int varID, double value) |
| Allows to set the value of a specific variable, identified by varID. More... | |
| virtual void | restoreConsistency () |
| Restores consistency of the status, i.e., computes or corrects the values of certain status variables such that the state is admissible. More... | |
| virtual IRResultType | initializeFrom (InputRecord *ir) |
| Initializes receiver according to object description stored in input record. More... | |
Public Member Functions inherited from oofem::IntegrationPointStatus | |
| IntegrationPointStatus (int n, Domain *d, GaussPoint *g) | |
| Constructor. More... | |
| virtual | ~IntegrationPointStatus () |
| Destructor. More... | |
| virtual const char * | giveInputRecordName () const |
Public Member Functions inherited from oofem::FEMComponent | |
| FEMComponent (int n, Domain *d) | |
| Regular constructor, creates component with given number and belonging to given domain. More... | |
| virtual | ~FEMComponent () |
| Virtual destructor. More... | |
| Domain * | giveDomain () const |
| virtual void | setDomain (Domain *d) |
| Sets associated Domain. More... | |
| int | giveNumber () const |
| void | setNumber (int num) |
| Sets number of receiver. More... | |
| virtual void | updateLocalNumbering (EntityRenumberingFunctor &f) |
| Local renumbering support. More... | |
| virtual void | giveInputRecord (DynamicInputRecord &input) |
| Setups the input record string of receiver. More... | |
| virtual int | checkConsistency () |
| Allows programmer to test some internal data, before computation begins. More... | |
| virtual void | printYourself () |
| Prints receiver state on stdout. Useful for debugging. More... | |
| virtual Interface * | giveInterface (InterfaceType t) |
| Interface requesting service. More... | |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). More... | |
Public Member Functions inherited from oofem::MaterialStatusMapperInterface | |
| MaterialStatusMapperInterface () | |
| virtual | ~MaterialStatusMapperInterface () |
| virtual int | MSMI_map (const GaussPoint &iGP, const Domain &iOldDom, Set &sourceSet, const TimeStep &iTStep, MaterialStatus &oStatus) |
| Maps all internal state variables from the old domain to the given gp status. More... | |
| virtual int | MSMI_map_cz (const GaussPoint &iGP, const Domain &iOldDom, Set &sourceSet, const TimeStep &iTStep, MaterialStatus &oStatus) |
| virtual int | MSMI_update (const GaussPoint &iGP, const TimeStep &iTStep) |
| Updates the internal state variables from previously mapped values. More... | |
| virtual int | MSMI_finish (const TimeStep &iTStep) |
| Finishes the mapping for given time step. More... | |
Protected Attributes | |
| double | hum |
| Values of humidity and temperature in a particular GP and their increment. More... | |
| double | hum_increment |
| double | T |
| double | T_increment |
| double | T_max |
| double | equivalentTime |
| Hidden variable - equivalent time: necessary to compute solidified volume. More... | |
| double | equivalentTimeTemp |
| double | flowTermViscosity |
| double | flowTermViscosityTemp |
| bool | storedEmodulusFlag |
| flag for Emodulus - true if modulus has been already computed in the current time step More... | |
| double | storedEmodulus |
| double | dryingShrinkageStrain |
| double | tempDryingShrinkageStrain |
| double | autogenousShrinkageStrain |
| double | tempAutogenousShrinkageStrain |
| FloatArray | creepStrain |
| FloatArray | creepStrainIncrement |
Protected Attributes inherited from oofem::RheoChainMaterialStatus | |
| int | nUnits |
| Number of units in the chain. More... | |
| std::vector< FloatArray > | hiddenVars |
| Hidden (internal) variables, the meaning of which depends on the type of chain. More... | |
| std::vector< FloatArray > | tempHiddenVars |
| FloatArray | shrinkageStrain |
| Total shrinkage strain (needed only when the shrinkage evolution is described in the incremental form). More... | |
| double | thermalStrain |
| double | tempThermalStrain |
Protected Attributes inherited from oofem::StructuralMaterialStatus | |
| FloatArray | strainVector |
| Equilibrated strain vector in reduced form. More... | |
| FloatArray | stressVector |
| Equilibrated stress vector in reduced form. More... | |
| FloatArray | tempStressVector |
| Temporary stress vector in reduced form (increments are used mainly in nonlinear analysis) More... | |
| FloatArray | tempStrainVector |
| Temporary strain vector in reduced form (to find balanced state) More... | |
| FloatArray | PVector |
| Equilibrated first Piola-Kirchhoff stress vector. More... | |
| FloatArray | tempPVector |
| Temporary first Piola-Kirchhoff stress vector (to find balanced state) More... | |
| FloatArray | CVector |
| Equilibrated Cauchy stress vector. More... | |
| FloatArray | tempCVector |
| Temporary Cauchy stress vector (to find balanced state) More... | |
| FloatArray | FVector |
| Equilibrated deformation gradient in reduced form. More... | |
| FloatArray | tempFVector |
| Temporary deformation gradient in reduced form (to find balanced state) More... | |
Protected Attributes inherited from oofem::IntegrationPointStatus | |
| GaussPoint * | gp |
| Associated integration point. More... | |
Protected Attributes inherited from oofem::FEMComponent | |
| int | number |
| Component number. More... | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. More... | |
Protected Attributes inherited from oofem::MaterialStatusMapperInterface | |
| MaterialMappingAlgorithm * | mpMaterialMapper |
This class implements associated Material Status to MPSMaterial, which corresponds to a model for humidity- and temperature-dependent creep of concrete according to the microprestress-solidification theory.
At room temperature and 100% relative humidity, it reduces to model B3 for basic creep of concrete.
| oofem::MPSMaterialStatus::MPSMaterialStatus | ( | int | n, |
| Domain * | d, | ||
| GaussPoint * | g, | ||
| int | nunits | ||
| ) |
Definition at line 53 of file mps.C.
References autogenousShrinkageStrain, creepStrain, creepStrainIncrement, dryingShrinkageStrain, equivalentTime, equivalentTimeTemp, flowTermViscosityTemp, oofem::GaussPoint::giveMaterialMode(), oofem::StructuralMaterial::giveSizeOfVoigtSymVector(), hum, hum_increment, oofem::FloatArray::resize(), storedEmodulus, storedEmodulusFlag, T, T_increment, tempAutogenousShrinkageStrain, tempDryingShrinkageStrain, and oofem::FloatArray::zero().
Referenced by oofem::MPSMaterial::CreateStatus().
|
inlinevirtual |
Definition at line 127 of file mps.h.
References initTempStatus(), restoreContext(), saveContext(), and updateYourself().
|
inline |
Definition at line 183 of file mps.h.
References autogenousShrinkageStrain.
Referenced by oofem::MPSMaterial::giveIPValue(), and oofem::MPSMaterial::giveShrinkageStrainVector().
|
inlinevirtual |
Reimplemented from oofem::KelvinChainSolidMaterialStatus.
Reimplemented in oofem::MPSDamMaterialStatus.
|
inline |
Definition at line 186 of file mps.h.
References creepStrain.
Referenced by oofem::MPSMaterial::giveIPValue().
|
inline |
Definition at line 179 of file mps.h.
References dryingShrinkageStrain.
Referenced by oofem::MPSMaterial::giveIPValue(), and oofem::MPSMaterial::giveShrinkageStrainVector().
|
inline |
Returns equivalent time.
Definition at line 160 of file mps.h.
References equivalentTime.
Referenced by oofem::MPSMaterial::computeB4AutogenousShrinkageStrainVector(), oofem::MPSMaterial::computeEquivalentTime(), oofem::MPSMaterial::computeFibAutogenousShrinkageStrainVector(), and oofem::MPSDamMaterial::giveIPValue().
|
inline |
Returns viscosity of the flow term (associated with q4 and microprestress evolution)
Definition at line 165 of file mps.h.
References flowTermViscosity.
Referenced by oofem::MPSMaterial::computeFlowTermViscosity(), oofem::MPSMaterial::giveEigenStrainVector(), and oofem::MPSMaterial::giveEModulus().
|
inline |
Definition at line 166 of file mps.h.
References flowTermViscosityTemp.
Referenced by oofem::MPSMaterial::computeFlowTermViscosity().
|
inline |
Returns relative humidity.
Definition at line 136 of file mps.h.
References hum.
Referenced by oofem::MPSMaterial::giveHumidity().
|
inline |
Returns relative humidity increment.
Definition at line 140 of file mps.h.
References hum_increment.
Referenced by oofem::MPSMaterial::giveHumidity().
|
inline |
Returns Emodulus if computed previously in the same tStep.
Definition at line 173 of file mps.h.
References storedEmodulus.
Referenced by oofem::MPSMaterial::giveEModulus().
|
inline |
Definition at line 174 of file mps.h.
References storedEmodulusFlag.
Referenced by oofem::MPSMaterial::giveEModulus().
|
inline |
Returns temperature.
Definition at line 145 of file mps.h.
References T.
Referenced by oofem::MPSMaterial::giveTemperature().
|
inline |
Definition at line 182 of file mps.h.
References tempAutogenousShrinkageStrain.
Referenced by oofem::MPSDamMaterial::giveRealStressVector().
|
inline |
Definition at line 178 of file mps.h.
References tempDryingShrinkageStrain.
Referenced by oofem::MPSDamMaterial::giveRealStressVector().
|
inline |
Returns temperature increment.
Definition at line 150 of file mps.h.
References T_increment.
Referenced by oofem::MPSMaterial::giveTemperature().
|
inline |
Returns previously maximum reached temperature.
Definition at line 155 of file mps.h.
References T_max.
Referenced by oofem::MPSMaterial::computeFlowTermViscosity().
|
virtual |
Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables.
Reimplemented from oofem::KelvinChainSolidMaterialStatus.
Reimplemented in oofem::MPSDamMaterialStatus.
Definition at line 114 of file mps.C.
References creepStrainIncrement, equivalentTimeTemp, flowTermViscosityTemp, hum, hum_increment, oofem::KelvinChainSolidMaterialStatus::initTempStatus(), storedEmodulus, storedEmodulusFlag, T, T_increment, tempAutogenousShrinkageStrain, tempDryingShrinkageStrain, and oofem::FloatArray::zero().
Referenced by oofem::MPSDamMaterialStatus::initTempStatus(), and ~MPSMaterialStatus().
|
virtual |
Restores the receiver state previously written in stream.
| stream | Input stream. |
| mode | Determines amount of info available in stream (state, definition, ...). |
| obj | Special parameter for sending extra information. |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::KelvinChainSolidMaterialStatus.
Reimplemented in oofem::MPSDamMaterialStatus.
Definition at line 164 of file mps.C.
References oofem::CIO_IOERR, oofem::CIO_OK, equivalentTime, flowTermViscosity, oofem::DataStream::read(), oofem::KelvinChainSolidMaterialStatus::restoreContext(), and THROW_CIOERR.
Referenced by oofem::MPSDamMaterialStatus::restoreContext(), and ~MPSMaterialStatus().
|
virtual |
Stores receiver state to output stream.
| stream | Output stream. |
| mode | Determines amount of info required in stream (state, definition, ...). |
| obj | Special parameter, used only to send particular integration point to material class version of this method. |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::KelvinChainSolidMaterialStatus.
Reimplemented in oofem::MPSDamMaterialStatus.
Definition at line 140 of file mps.C.
References oofem::CIO_IOERR, oofem::CIO_OK, equivalentTime, flowTermViscosity, oofem::KelvinChainSolidMaterialStatus::saveContext(), THROW_CIOERR, and oofem::DataStream::write().
Referenced by oofem::MPSDamMaterialStatus::saveContext(), and ~MPSMaterialStatus().
|
inline |
Definition at line 185 of file mps.h.
Referenced by oofem::MPSMaterial::giveEigenStrainVector().
|
inline |
Definition at line 171 of file mps.h.
Referenced by oofem::MPSMaterial::giveEModulus().
|
inline |
Stores equivalent time.
Definition at line 162 of file mps.h.
Referenced by oofem::MPSMaterial::giveRealStressVector().
|
inline |
Definition at line 167 of file mps.h.
Referenced by oofem::MPSMaterial::computeFlowTermViscosity().
|
inline |
Stores relative humidity.
Definition at line 138 of file mps.h.
Referenced by oofem::MPSMaterial::giveHumidity().
|
inline |
Stores relative humidity increment.
Definition at line 142 of file mps.h.
Referenced by oofem::MPSMaterial::giveHumidity().
|
inline |
Stores temperature.
Definition at line 147 of file mps.h.
Referenced by oofem::MPSMaterial::giveTemperature().
|
inline |
Definition at line 181 of file mps.h.
Referenced by oofem::MPSMaterial::giveShrinkageStrainVector().
|
inline |
Definition at line 177 of file mps.h.
Referenced by oofem::MPSMaterial::giveShrinkageStrainVector().
|
inline |
Stores temperature increment.
Definition at line 152 of file mps.h.
Referenced by oofem::MPSMaterial::giveTemperature().
|
inline |
Stores maximum reached temperature.
Definition at line 157 of file mps.h.
Referenced by oofem::MPSMaterial::computeFlowTermViscosity().
|
inline |
Returns Emodulus if computed previously in the same tStep.
Definition at line 170 of file mps.h.
Referenced by oofem::MPSMaterial::giveEModulus().
|
virtual |
Update equilibrium history variables according to temp-variables.
Invoked, after new equilibrium state has been reached.
Reimplemented from oofem::KelvinChainSolidMaterialStatus.
Reimplemented in oofem::MPSDamMaterialStatus.
Definition at line 81 of file mps.C.
References oofem::FloatArray::add(), autogenousShrinkageStrain, creepStrain, creepStrainIncrement, dryingShrinkageStrain, equivalentTime, equivalentTimeTemp, flowTermViscosity, flowTermViscosityTemp, hum, hum_increment, storedEmodulus, storedEmodulusFlag, T, T_increment, tempAutogenousShrinkageStrain, tempDryingShrinkageStrain, oofem::KelvinChainSolidMaterialStatus::updateYourself(), and oofem::FloatArray::zero().
Referenced by oofem::MPSDamMaterialStatus::updateYourself(), and ~MPSMaterialStatus().
|
protected |
Definition at line 118 of file mps.h.
Referenced by giveAutogenousShrinkageStrain(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 120 of file mps.h.
Referenced by giveCreepStrain(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 121 of file mps.h.
Referenced by initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 116 of file mps.h.
Referenced by giveDryingShrinkageStrain(), MPSMaterialStatus(), and updateYourself().
|
protected |
Hidden variable - equivalent time: necessary to compute solidified volume.
Definition at line 107 of file mps.h.
Referenced by oofem::MPSDamMaterial::giveClassName(), giveEquivalentTime(), MPSMaterialStatus(), restoreContext(), saveContext(), and updateYourself().
|
protected |
Definition at line 108 of file mps.h.
Referenced by initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 109 of file mps.h.
Referenced by giveFlowTermViscosity(), restoreContext(), saveContext(), and updateYourself().
|
protected |
Definition at line 110 of file mps.h.
Referenced by giveFlowTermViscosityTemp(), initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
Values of humidity and temperature in a particular GP and their increment.
Definition at line 101 of file mps.h.
Referenced by giveHum(), initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 102 of file mps.h.
Referenced by giveHumIncrement(), initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 113 of file mps.h.
Referenced by giveStoredEmodulus(), initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
flag for Emodulus - true if modulus has been already computed in the current time step
Definition at line 112 of file mps.h.
Referenced by giveStoredEmodulusFlag(), initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 103 of file mps.h.
Referenced by oofem::MPSMaterial::computePsiR(), giveT(), initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 104 of file mps.h.
Referenced by giveTIncrement(), initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 105 of file mps.h.
Referenced by giveTmax().
|
protected |
Definition at line 119 of file mps.h.
Referenced by giveTempAutogenousShrinkageStrain(), initTempStatus(), MPSMaterialStatus(), and updateYourself().
|
protected |
Definition at line 117 of file mps.h.
Referenced by giveTempDryingShrinkageStrain(), initTempStatus(), MPSMaterialStatus(), and updateYourself().