42#define _IFT_B3SolidMaterial_Name "b3solidmat"
43#define _IFT_B3SolidMaterial_emodulimode "emodulimode"
44#define _IFT_B3SolidMaterial_microprestress "microprestress"
45#define _IFT_B3SolidMaterial_c0 "c0"
46#define _IFT_B3SolidMaterial_c1 "c1"
47#define _IFT_B3SolidMaterial_ksh "ksh"
48#define _IFT_B3SolidMaterial_finalhumidity "finalhumidity"
49#define _IFT_B3SolidMaterial_initialhumidity "initialhumidity"
50#define _IFT_B3SolidMaterial_lambda0 "lambda0"
76 const char *
giveClassName()
const override {
return "B3SolidMaterialStatus"; }
#define _IFT_B3SolidMaterial_Name
double microprestress_old
Microprestresses.
B3SolidMaterialStatus(GaussPoint *g, int nunits)
void updateYourself(TimeStep *tStep) override
const char * giveClassName() const override
void restoreContext(DataStream &stream, ContextMode mode) override
void saveContext(DataStream &stream, ContextMode mode) override
double microprestress_new
double giveHumidity(GaussPoint *gp, TimeStep *tStep) const
Computes relative humidity at given time step and GP.
void giveEigenStrainVector(FloatArray &answer, GaussPoint *gp, TimeStep *tStep, ValueModeType mode) const override
double computeFlowTermViscosity(GaussPoint *gp, TimeStep *tStep) const
Evaluation of the flow term viscosity.
double n
Constant-exponent (obtained from experiments) n [Pedersen, 1990].
void computePointShrinkageStrainVector(FloatArray &answer, GaussPoint *gp, TimeStep *tStep) const
Evaluation of the shrinkageStrainVector. Shrinkage is fully dependent on humidity rate in given GP.
double computeCreepFunction(double t, double t_prime, GaussPoint *gp, TimeStep *tStep) const override
Evaluation of the compliance function of the non-aging solidifying constituent.
double a
Constant (obtained from experiments) A [Pedersen, 1990].
double inverse_sorption_isotherm(double w) const
double giveInitMicroPrestress() const
Computes initial value of the MicroPrestress.
double computeSolidifiedVolume(TimeStep *tStep) const
Evaluation of the relative volume of the solidified material.
void initializeFrom(InputRecord &ir) override
FloatArray computeCharCoefficients(double tPrime, GaussPoint *gp, TimeStep *tStep) const override
Evaluation of characteristic moduli of the non-aging Kelvin chain.
void computeCharTimes() override
Evaluation of characteristic times.
enum oofem::B3SolidMaterial::b3ShModeType shMode
double lambda0
constant equal to one day in time units of analysis (eg. 86400 if the analysis runs in seconds)
bool hasIncrementalShrinkageFormulation() const override
void giveShrinkageStrainVector(FloatArray &answer, GaussPoint *gp, TimeStep *tStep, ValueModeType mode) const override
double giveHumidityIncrement(GaussPoint *gp, TimeStep *tStep) const
Computes relative humidity increment at given time step and GP.
double EpsSinf
Additional parameters for average cross section shrinkage.
double computeMicroPrestress(GaussPoint *gp, TimeStep *tStep, int option) const
double tS0
MPS tS0 - necessary for the initial value of microprestress (age when the load is applied).
void giveRealStressVector(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedStrain, TimeStep *tStep) const override
double es0
Additional parameters for free shrinkage at material point.
double w_h
Constant water content (obtained from experiments) w_h [Pedersen, 1990].
B3SolidMaterial(int n, Domain *d)
double EspringVal
elastic modulus of the aging spring (first member of Kelvin chain if retardation spectrum is used)
void predictParametersFrom(double, double, double, double, double, double, double)
void updateEparModuli(double tPrime, GaussPoint *gp, TimeStep *tStep) const override
Update of partial moduli of individual chain units.
double c1
MPS constant c1 (=C1*R*T/M).
const char * giveInputRecordName() const override
void computeTotalAverageShrinkageStrainVector(FloatArray &answer, GaussPoint *gp, TimeStep *tStep) const
const char * giveClassName() const override
double giveEModulus(GaussPoint *gp, TimeStep *tStep) const override
Evaluation of the incremental modulus.
double c0
MPS constant c0 [MPa^-1 * day^-1].
double kSh
MPS shrinkage parameter. Either this or inithum and finalhum must be given in input record.
std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const override
KelvinChainMaterialStatus(GaussPoint *g, int nunits)
KelvinChainMaterial(int n, Domain *d)