48#define _IFT_MisesMat_Name "misesmat"
49#define _IFT_MisesMat_sig0 "sig0"
50#define _IFT_MisesMat_h "h"
51#define _IFT_MisesMat_htype "htype"
52#define _IFT_MisesMat_h_eps "h_eps"
53#define _IFT_MisesMat_h_function_eps "h(eps)"
54#define _IFT_MisesMat_omega_crit "omega_crit"
55#define _IFT_MisesMat_a "a"
56#define _IFT_MisesMat_yieldTol "yieldtol"
void restoreContext(DataStream &stream, ContextMode mode) override
double giveDamage() const
const char * giveClassName() const override
double damage
damage variable (initial).
void letTempEffectiveStressBe(const FloatArray &values)
double giveTempCumulativePlasticStrain() const
void printOutputAt(FILE *file, TimeStep *tStep) const override
Print receiver's output to given stream.
const FloatArray & givePlasDef()
void saveContext(DataStream &stream, ContextMode mode) override
double giveTempDamage() const
double giveCumulativePlasticStrain() const
const FloatArray & giveEffectiveStress() const
void setTrialStressVol(double value)
const FloatArray & giveTempEffectiveStress() const
FloatArray trialStressD
Deviatoric trial stress - needed for tangent stiffness.
void setTempDamage(double value)
void letTempPlasticStrainBe(const FloatArray &values)
double giveTrialStressVol() const
void letTrialStressDevBe(const FloatArray &values)
void initTempStatus() override
void setTempCumulativePlasticStrain(double value)
double trialStressV
volumetric trial stress - needed for tangent stiffness.
FloatArray tempPlasticStrain
Plastic strain (final).
double kappa
Cumulative plastic strain (initial).
double tempDamage
damage variable (final).
void updateYourself(TimeStep *tStep) override
const FloatArray & givePlasticStrain() const
const FloatArray & giveTrialStressDev() const
MisesMatStatus(GaussPoint *g)
void letEffectiveStressBe(const FloatArray &values)
double tempKappa
Cumulative plastic strain (final).
const FloatArray & getTempPlasticStrain() const
FloatArray plasticStrain
Plastic strain (initial).
FloatArrayF< 1 > giveRealStressVector_1d(const FloatArrayF< 1 > &reducedE, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector_StressControl.
ScalarFunction sig0
Initial (uniaxial) yield stress.
IsotropicLinearElasticMaterial linearElasticMaterial
Reference to the basic elastic material.
double giveS(GaussPoint *gp, TimeStep *tStep) const
virtual double computeCumPlastStrain(GaussPoint *gp, TimeStep *tStep) const
void initializeFrom(InputRecord &ir) override
const char * giveInputRecordName() const override
double computeDamageParam(double tempKappa) const
double computeYieldStress(double kappa, GaussPoint *gp, TimeStep *tStep) const
double G
Elastic shear modulus.
FloatMatrixF< 6, 6 > give3dMaterialStiffnessMatrix(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
double a
exponent in damage function.
double giveTemperature(GaussPoint *gp, TimeStep *tStep) const
FloatMatrixF< 1, 1 > give1dStressStiffMtrx(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
double checkYieldStress(double &dKappa, double kappa, GaussPoint *gp, TimeStep *tStep) const
int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override
std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const override
double computeDamage(GaussPoint *gp, TimeStep *tStep) const
const char * giveClassName() const override
bool isCharacteristicMtrxSymmetric(MatResponseMode rMode) const override
double yieldTol
tolerance for the yield function in RRM algorithm.
void performPlasticityReturn(const FloatArray &totalStrain, GaussPoint *gp, TimeStep *tStep) const
FloatArray h_eps
user-defined hardening (yield stress - kappa)
FloatMatrixF< 3, 3 > givePlaneStressStiffMtrx(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const override
double computeYieldStressPrime(double kappa) const
int hType
type of hardening function
double H
Hardening modulus.
FloatArrayF< 3 > giveRealStressVector_PlaneStress(const FloatArrayF< 3 > &totalStrain, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector_StressControl.
void performPlasticityReturn_PlaneStress(const FloatArrayF< 3 > &totalStrain, GaussPoint *gp, TimeStep *tStep) const
double omega_crit
critical(maximal) damage.
double K
Elastic bulk modulus.
FloatArray h_function_eps
void computeGLPlasticStrain(const FloatMatrix &F, FloatMatrix &Ep, FloatMatrix b, double J)
double computeDamageParamPrime(double tempKappa) const
MisesMat(int n, Domain *d)
FloatArrayF< 6 > giveRealStressVector_3d(const FloatArrayF< 6 > &strain, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector for second Piola-Kirchoff stress.
StructuralMaterialStatus(GaussPoint *g)
Constructor. Creates new StructuralMaterialStatus with IntegrationPoint g.
StructuralMaterial(int n, Domain *d)
#define _IFT_MisesMat_Name