35#ifndef isointerfacedamage02_h
36#define isointerfacedamage02_h
45#define _IFT_IsoInterfaceDamageMaterial_2_Name "isointrfdm02"
46#define _IFT_IsoInterfaceDamageMaterial_2_tablename "tablename"
47#define _IFT_IsoInterfaceDamageMaterial_2_kn "kn"
48#define _IFT_IsoInterfaceDamageMaterial_2_ks "ks"
49#define _IFT_IsoInterfaceDamageMaterial_2_ft "ft"
50#define _IFT_IsoInterfaceDamageMaterial_2_maxOmega "maxomega"
91 const char *
giveClassName()
const override {
return "IsoInterfaceDamageMaterialStatus"; }
150 const char *
giveClassName()
const override {
return "IsoInterfaceDamageMaterial"; }
178 std::unique_ptr<MaterialStatus>
CreateStatus(
GaussPoint *gp)
const override {
return std::make_unique<IsoInterfaceDamageMaterialStatus_2>(gp); }
double kappa
Scalar measure of the largest equivalent displacement ever reached in material.
IsoInterfaceDamageMaterialStatus_2(GaussPoint *g)
Constructor.
double giveTempKappa() const
Returns the temp. scalar measure of the largest strain level.
const char * giveClassName() const override
double tempDamage
Non-equilibrated damage level of material.
double damage
Damage level of material.
void printOutputAt(FILE *file, TimeStep *tStep) const override
Print receiver's output to given stream.
void initTempStatus() override
double tempKappa
Non-equilibrated scalar measure of the largest equivalent displacement.
void saveContext(DataStream &stream, ContextMode mode) override
void restoreContext(DataStream &stream, ContextMode mode) override
void updateYourself(TimeStep *tStep) override
void setTempKappa(double newKappa)
Sets the temp scalar measure of the largest strain level to given value.
double giveTempDamage() const override
Returns the temp. damage level.
double giveKappa() const
Returns the last equilibrated scalar measure of the largest strain level.
double giveDamage() const override
Returns the last equilibrated damage level.
void setTempDamage(double newDamage)
Sets the temp damage level to given value.
FloatArray damages
Damages read from the second column in the table file.
void giveInputRecord(DynamicInputRecord &input) override
double e0
Limit elastic deformation.
void initializeFrom(InputRecord &ir) override
double maxOmega
Maximum limit on omega. The purpose is elimination of a too compliant material which may cause conver...
const char * giveClassName() const override
virtual double computeDamageParam(double kappa, const FloatArrayF< 3 > &strain, GaussPoint *gp) const
virtual double computeEquivalentStrain(const FloatArrayF< 3 > &strain, GaussPoint *gp, TimeStep *tStep) const
int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override
const char * giveInputRecordName() const override
FloatArrayF< 3 > giveEngTraction_3d(const FloatArrayF< 3 > &jump, GaussPoint *gp, TimeStep *tStep) const override
bool hasAnalyticalTangentStiffness() const override
FloatArray strains
Strains read from the first column in the table file.
double ft
Tension strength.
std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const override
FloatMatrixF< 3, 3 > give3dStiffnessMatrix_Eng(MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const override
IsoInterfaceDamageMaterial_2(int n, Domain *d)
Constructor.
std::string tablename
Name of table file.
double kn
Elastic properties (normal moduli).
StructuralInterfaceMaterialStatus(GaussPoint *g)
Constructor. Creates new StructuralInterfaceMaterialStatus with number n, belonging to domain d and I...
StructuralInterfaceMaterial(int n, Domain *d)
#define _IFT_IsoInterfaceDamageMaterial_2_Name