38 #include "../sm/Materials/structuralmaterial.h" 39 #include "../sm/Materials/structuralms.h" 48 #define _IFT_MisesMat_Name "misesmat" 49 #define _IFT_MisesMat_sig0 "sig0" 50 #define _IFT_MisesMat_h "h" 51 #define _IFT_MisesMat_omega_crit "omega_crit" 52 #define _IFT_MisesMat_a "a" 232 virtual void updateYourself(
TimeStep *tStep);
void letTempLeftCauchyGreenBe(const FloatMatrix &values)
InternalStateType
Type representing the physical meaning of element or constitutive model internal variable.
FloatArray plasticStrain
Plastic strain (initial).
This class implements an isotropic elastoplastic material with Mises yield condition, associated flow rule and linear isotropic hardening.
virtual const char * giveClassName() const
void letLeftCauchyGreenBe(const FloatMatrix &values)
virtual void give3dMaterialStiffnessMatrix(FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep)
Computes full 3d material stiffness matrix at given integration point, time, respecting load history ...
FloatArray tempPlasticStrain
Plastic strain (final).
void letEffectiveStressBe(const FloatArray &values)
double H
Hardening modulus.
The purpose of DataStream abstract class is to allow to store/restore context to different streams...
virtual bool isCharacteristicMtrxSymmetric(MatResponseMode rMode)
Returns true if stiffness matrix of receiver is symmetric Default implementation returns true...
MisesMat(int n, Domain *d)
virtual void giveFirstPKStressVector_3d(FloatArray &answer, GaussPoint *gp, const FloatArray &vF, TimeStep *tStep)
Default implementation relies on giveRealStressVector for second Piola-Kirchoff stress.
This class implements a structural material status information.
void letTempEffectiveStressBe(const FloatArray &values)
double giveCumulativePlasticStrain()
double computeDamage(GaussPoint *gp, TimeStep *tStep)
double giveTempCumulativePlasticStrain()
void letTrialStressDevBe(const FloatArray &values)
const FloatMatrix & giveTempLeftCauchyGreen()
#define _IFT_MisesMat_Name
const FloatArray & givePlasDef()
virtual contextIOResultType saveContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Stores receiver state to output stream.
virtual const char * giveClassName() const
double K
Elastic bulk modulus.
MatResponseMode
Describes the character of characteristic material matrix.
double computeDamageParam(double tempKappa)
virtual int hasNonLinearBehaviour()
Returns nonzero if receiver is non linear.
This class is a abstract base class for all linear elastic material models in a finite element proble...
double giveTrialStressVol()
FloatArray trialStressD
Deviatoric trial stress - needed for tangent stiffness.
void setTempCumulativePlasticStrain(double value)
void performPlasticityReturn(GaussPoint *gp, const FloatArray &totalStrain, TimeStep *tStep)
FloatMatrix tempLeftCauchyGreen
Left Cauchy-Green deformation gradient (final).
const FloatArray & giveTrialStressDev()
virtual void computeCumPlastStrain(double &kappa, GaussPoint *gp, TimeStep *tStep)
LinearElasticMaterial * linearElasticMaterial
Reference to the basic elastic material.
virtual int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep)
Returns the integration point corresponding value in Reduced form.
double computeDamageParamPrime(double tempKappa)
virtual void give3dLSMaterialStiffnessMatrix(FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep)
void setTempDamage(double value)
Abstract base class representing a material status information.
Class representing vector of real numbers.
double kappa
Cumulative plastic strain (initial).
const FloatArray & getTempPlasticStrain() const
Implementation of matrix containing floating point numbers.
virtual double give(int aProperty, GaussPoint *gp, TimeStep *tStep)
IRResultType
Type defining the return values of InputRecord reading operations.
Implementation of Scalar function.
const FloatMatrix & giveLeftCauchyGreen()
void setTrialStressVol(double value)
const FloatArray & giveTempEffectiveStress()
virtual void give3dMaterialStiffnessMatrix_dPdF(FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep)
virtual MaterialStatus * CreateStatus(GaussPoint *gp) const
Creates new copy of associated status and inserts it into given integration point.
virtual void giveRealStressVector_1d(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedE, TimeStep *tStep)
Default implementation relies on giveRealStressVector_StressControl.
double giveTemperature(GaussPoint *gp, TimeStep *tStep)
virtual void printOutputAt(FILE *file, TimeStep *tStep)
Prints output of receiver to stream, for given time step.
const FloatArray & givePlasticStrain()
long ContextMode
Context mode (mask), defining the type of information written/read to/from context.
Abstract base class for all "structural" constitutive models.
void letTempPlasticStrainBe(const FloatArray &values)
const FloatArray & giveEffectiveStress()
virtual contextIOResultType restoreContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Restores the receiver state previously written in stream.
virtual void give1dStressStiffMtrx(FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep)
Method for computing 1d stiffness matrix of receiver.
the oofem namespace is to define a context or scope in which all oofem names are defined.
double G
Elastic shear modulus.
double tempKappa
Cumulative plastic strain (final).
virtual void initTempStatus(GaussPoint *gp)
Initializes temporary variables stored in integration point status at the beginning of new time step...
virtual const char * giveInputRecordName() const
ScalarFunction sig0
Initial (uniaxial) yield stress.
Class representing integration point in finite element program.
Class representing solution step.
virtual void giveRealStressVector_3d(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedE, TimeStep *tStep)
Default implementation relies on giveRealStressVector for second Piola-Kirchoff stress.
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
void computeGLPlasticStrain(const FloatMatrix &F, FloatMatrix &Ep, FloatMatrix b, double J)
FloatMatrix leftCauchyGreen
Left Cauchy-Green deformation gradient (initial).
LinearElasticMaterial * giveLinearElasticMaterial()
Returns a reference to the basic elastic material.