35#ifndef isointerfacedamage01_h
36#define isointerfacedamage01_h
43#define _IFT_IsoInterfaceDamageMaterial_Name "isointrfdm01"
44#define _IFT_IsoInterfaceDamageMaterial_kn "kn"
45#define _IFT_IsoInterfaceDamageMaterial_ks "ks"
46#define _IFT_IsoInterfaceDamageMaterial_ft "ft"
47#define _IFT_IsoInterfaceDamageMaterial_gf "gf"
48#define _IFT_IsoInterfaceDamageMaterial_maxOmega "maxomega"
49#define _IFT_IsoInterfaceDamageMaterial_beta "beta"
88 const char *
giveClassName()
const override {
return "IsoInterfaceDamageMaterialStatus"; }
137 const char *
giveClassName()
const override {
return "IsoInterfaceDamageMaterial"; }
158 std::unique_ptr<MaterialStatus>
CreateStatus(
GaussPoint *gp)
const override {
return std::make_unique<IsoInterfaceDamageMaterialStatus>(gp); }
void setTempKappa(double newKappa)
Sets the temp scalar measure of the largest strain level to given value.
double damage
Damage level of material.
void updateYourself(TimeStep *tStep) override
void initTempStatus() override
double giveTempKappa() const
Returns the temp. scalar measure of the largest strain level.
const char * giveClassName() const override
double giveDamage() const override
Returns the last equilibrated damage level.
void restoreContext(DataStream &stream, ContextMode mode) override
double tempKappa
Non-equilibrated scalar measure of the largest equivalent displacement.
void saveContext(DataStream &stream, ContextMode mode) override
void setTempDamage(double newDamage)
Sets the temp damage level to given value.
double tempDamage
Non-equilibrated damage level of material.
double giveTempDamage() const override
Returns the temp. damage level.
void printOutputAt(FILE *file, TimeStep *tStep) const override
Print receiver's output to given stream.
double giveKappa() const
Returns the last equilibrated scalar measure of the largest strain level.
IsoInterfaceDamageMaterialStatus(GaussPoint *g)
Constructor.
double kappa
Scalar measure of the largest equivalent displacement ever reached in material.
bool hasAnalyticalTangentStiffness() const override
double beta
Weight factor for the influence of shear component of displacement jump on equivalent strain.
void initializeFrom(InputRecord &ir) override
FloatMatrixF< 3, 3 > give3dStiffnessMatrix_Eng(MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const override
IsoInterfaceDamageMaterial(int n, Domain *d)
Constructor.
double kn
Elastic properties (normal moduli).
const char * giveInputRecordName() const override
double computeEquivalentStrain(const FloatArrayF< 3 > &jump, GaussPoint *gp, TimeStep *tStep) const
double gf
Fracture energy.
double maxOmega
Maximum limit on omega. The purpose is elimination of a too compliant material which may cause conver...
double tempDillatCoeff
Coefficient of thermal dilatation.
FloatArrayF< 3 > giveEngTraction_3d(const FloatArrayF< 3 > &jump, GaussPoint *gp, TimeStep *tStep) const override
std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const override
const char * giveClassName() const override
int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override
void giveInputRecord(DynamicInputRecord &input) override
double e0
Limit elastic deformation.
virtual double computeDamageParam(double kappa, const FloatArrayF< 3 > &strain, GaussPoint *gp) const
double ft
Tension strength.
StructuralInterfaceMaterialStatus(GaussPoint *g)
Constructor. Creates new StructuralInterfaceMaterialStatus with number n, belonging to domain d and I...
StructuralInterfaceMaterial(int n, Domain *d)
#define _IFT_IsoInterfaceDamageMaterial_Name