46 #define _IFT_MPSMaterial_Name "mps" 47 #define _IFT_MPSMaterial_mode "mode" 48 #define _IFT_MPSMaterial_coupledanalysistype "coupledanalysistype" 49 #define _IFT_MPSMaterial_fc "fc" 50 #define _IFT_MPSMaterial_cc "cc" 51 #define _IFT_MPSMaterial_wc "w/c" 52 #define _IFT_MPSMaterial_ac "a/c" 53 #define _IFT_MPSMaterial_q1 "q1" 54 #define _IFT_MPSMaterial_q2 "q2" 55 #define _IFT_MPSMaterial_q3 "q3" 56 #define _IFT_MPSMaterial_q4 "q4" 57 #define _IFT_MPSMaterial_lambda0 "lambda0" 58 #define _IFT_MPSMaterial_t0 "t0" 59 #define _IFT_MPSMaterial_ksh "ksh" 63 #define _IFT_MPSMaterial_qetor "qetor" 64 #define _IFT_MPSMaterial_qrtor "qrtor" 65 #define _IFT_MPSMaterial_qstor "qstor" 66 #define _IFT_MPSMaterial_alphae "alphae" 67 #define _IFT_MPSMaterial_alphar "alphar" 68 #define _IFT_MPSMaterial_alphas "alphas" 69 #define _IFT_MPSMaterial_mus "mus" 70 #define _IFT_MPSMaterial_ktm "ktm" 71 #define _IFT_MPSMaterial_ktc "ktc" 72 #define _IFT_MPSMaterial_stiffnessfactor "stiffnessfactor" 73 #define _IFT_MPSMaterial_p "p" 74 #define _IFT_MPSMaterial_p_tilde "p_tilde" 75 #define _IFT_MPSMaterial_k3 "k3" 76 #define _IFT_MPSMaterial_sh_a "sh_a" 77 #define _IFT_MPSMaterial_sh_hC "sh_hc" 78 #define _IFT_MPSMaterial_sh_n "sh_n" 79 #define _IFT_MPSMaterial_alpha_as "alpha_as" 80 #define _IFT_MPSMaterial_eps_cas0 "eps_cas0" 81 #define _IFT_MPSMaterial_B4_eps_au_infty "b4_eps_au_infty" 82 #define _IFT_MPSMaterial_B4_tau_au "b4_tau_au" 83 #define _IFT_MPSMaterial_B4_alpha "b4_alpha" 84 #define _IFT_MPSMaterial_B4_r_t "b4_r_t" 85 #define _IFT_MPSMaterial_B4_cem_type "b4_cem_type" 86 #define _IFT_MPSMaterial_temperInCelsius "temperincelsius" 115 #ifdef keep_track_of_strains 147 void setT(
double src) { T = src; }
176 #ifdef keep_track_of_strains 212 double q1, q2, q3,
q4;
276 virtual double computeCreepFunction(
double t,
double t_prime,
GaussPoint *gp,
TimeStep *tStep);
281 void predictParametersFrom(
double,
double,
double,
double);
283 virtual void computeCharTimes();
299 double giveInitViscosity(
TimeStep *tStep);
348 friend class RankineMPSmat;
double giveStoredEmodulus(void)
Returns Emodulus if computed previously in the same tStep.
virtual contextIOResultType restoreContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Restores the receiver state previously written in stream.
InternalStateType
Type representing the physical meaning of element or constitutive model internal variable.
This class implements a solidifying Kelvin chain model describing a viscoelastic material.
virtual int hasIncrementalShrinkageFormulation()
If only incremental shrinkage strain formulation is provided, then total shrinkage strain must be tra...
GaussPoint * gp
Associated integration point.
double giveDryingShrinkageStrain(void)
FloatArray creepStrainIncrement
void setTIncrement(double src)
Stores temperature increment.
const FloatArray & giveCreepStrain() const
void setEquivalentTimeTemp(double src)
Stores equivalent time.
double kTm
kTm replaces ln(h) on RHS of the differential equation describing evolution of MPS ...
void setTempAutogenousShrinkageStrain(double src)
The purpose of DataStream abstract class is to allow to store/restore context to different streams...
double giveHumIncrement()
Returns relative humidity increment.
ValueModeType
Type representing the mode of UnknownType or CharType, or similar types.
void setTmax(double src)
Stores maximum reached temperature.
bool giveStoredEmodulusFlag(void)
void setCreepStrainIncrement(FloatArray src)
MPSMaterial(int n, Domain *d)
double giveEquivalentTime()
Returns equivalent time.
double tempAutogenousShrinkageStrain
MPSMaterialStatus(int n, Domain *d, GaussPoint *g, int nunits)
double temperScaleDifference
0 for Kelvin, 273.15 for Celsius
double giveTmax()
Returns previously maximum reached temperature.
double giveAutogenousShrinkageStrain(void)
virtual const char * giveClassName() const
double lambda0
constant equal to one day in time units of analysis (eg. 86400 if the analysis runs in seconds) ...
void setTempDryingShrinkageStrain(double src)
double muS
fluidity parameter used in viscosity evolution equation
double giveT()
Returns temperature.
void setEmodulusFlag(bool src)
This class implements the extended B3 model for concrete creep and shrinkage based on the microprestr...
void setT(double src)
Stores temperature.
double stiffnessFactor
scaling factor 1. for Pa, 1.e6 for MPa - only for empirical formulas - q1-q4 and ft and gf ...
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
double equivalentTime
Hidden variable - equivalent time: necessary to compute solidified volume.
virtual ~MPSMaterialStatus()
double autogenousShrinkageStrain
double giveFlowTermViscosityTemp()
double flowTermViscosityTemp
double giveTempAutogenousShrinkageStrain(void)
void setFlowTermViscosityTemp(double src)
bool storedEmodulusFlag
flag for Emodulus - true if modulus has been already computed in the current time step ...
double tempDryingShrinkageStrain
double kTc
parameter reducing creep effects of thermal cycling (replaces kTm in such case)
double giveTempDryingShrinkageStrain(void)
virtual const char * giveClassName() const
void setHum(double src)
Stores relative humidity.
double t0
age when temperature or humidity starts to change
double kSh
additional parameters for sorption isotherm (used to compute relative humidity from water content) ...
Abstract base class representing a material status information.
Class representing vector of real numbers.
double ct
parameter reducing creep effects of thermal cycling
#define _IFT_MPSMaterial_Name
double giveHum()
Returns relative humidity.
double giveFlowTermViscosity()
Returns viscosity of the flow term (associated with q4 and microprestress evolution) ...
IRResultType
Type defining the return values of InputRecord reading operations.
This class implements associated Material Status to MPSMaterial, which corresponds to a model for hum...
double p
exponent in the microprestress/viscosity governing equation
This class implements associated Material Status to KelvinChainSolidMaterial, which corresponds to a ...
FloatArray * giveShrinkageStrainVector()
virtual void updateYourself(TimeStep *tStep)
Update equilibrium history variables according to temp-variables.
long ContextMode
Context mode (mask), defining the type of information written/read to/from context.
double equivalentTimeTemp
double hum
Values of humidity and temperature in a particular GP and their increment.
the oofem namespace is to define a context or scope in which all oofem names are defined.
double eps_cas0
parameter for autogenous shrinkage according to fib MC 2010
virtual void initTempStatus()
Initializes the temporary internal variables, describing the current state according to previously re...
virtual const char * giveInputRecordName() const
double roomTemperature
reference room temperature for MPS algorithm [K]
Class representing integration point in finite element program.
double dryingShrinkageStrain
Class representing solution step.
double giveTIncrement()
Returns temperature increment.
void storeEmodulus(double src)
Returns Emodulus if computed previously in the same tStep.
void setHumIncrement(double src)
Stores relative humidity increment.
virtual contextIOResultType saveContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Stores receiver state to output stream.