54IntMatPhaseField :: hasMaterialModeCapability(MaterialMode mode)
const
57 return mode == _3dInterface;
70 answer.
at(1) = g *
k*jump.
at(1);
71 answer.
at(2) = g *
k*jump.
at(2);
73 if ( jump.
at(3) > 0.0 ) {
74 answer.
at(3) = g *
k*jump.
at(3);
76 answer.
at(3) =
k*jump.
at(3);
79 double drivingEnergy = 0.5*
k*jump.
at(1)*jump.
at(1) + 0.5*
k*jump.
at(2)*jump.
at(2);
80 if ( jump.
at(3) > 0.0 ) {
81 drivingEnergy += 0.5*
k*jump.
at(3)*jump.
at(3);
96IntMatPhaseField :: give3dStiffnessMatrix_Eng(MatResponseMode rMode,
GaussPoint *gp,
TimeStep *tStep)
const
106 answer.
at(1, 1) = g*
k;
107 answer.
at(2, 2) = g*
k;
109 if ( jump.at(3) > 0.0 ) {
110 answer.
at(3,3) = g *
k;
133 if ( jump.at(3) > 0.0 ) {
140 Djd.
at(1, 1) = gPrime*
k * jump.at(1);
141 Djd.
at(2, 2) = gPrime*
k * jump.at(1);
142 if ( jump.at(3) > 0.0 ) {
143 Djd.
at(3,3) = gPrime *
k * jump.at(1);
163IntMatPhaseField :: giveDrivingForcePrime(
GaussPoint *gp)
const
188IntMatPhaseField :: compute_g(
double d)
const
192 return (1.0 - d) * (1.0 - d) + r0;
197IntMatPhaseField :: compute_gPrime(
double d)
const
200 return -2.0 * (1.0 - d);
204IntMatPhaseField :: compute_gBis(
double d)
const
217 StructuralInterfaceMaterial :: initializeFrom(ir);
223 StructuralInterfaceMaterial :: giveInputRecord(input);
237IntMatPhaseFieldStatus :: initTempStatus()
239 StructuralInterfaceMaterialStatus :: initTempStatus();
247IntMatPhaseFieldStatus :: updateYourself(
TimeStep *atTime)
249 StructuralInterfaceMaterialStatus :: updateYourself(atTime);
#define REGISTER_Material(class)
double & at(std::size_t i)
double at(std::size_t i, std::size_t j) const
void resize(Index rows, Index cols)
void beTranspositionOf(const FloatMatrix &src)
void zero()
Zeroes all coefficient of receiver.
double at(std::size_t i, std::size_t j) const
double giveTempDrivingEnergy() const
void letTempDrivingEnergyBe(double val)
double tempDamage
damage variable
double giveDamage() const override
double compute_gBis(double d) const
double compute_g(double d) const
IntMatPhaseField(int n, Domain *d)
double compute_gPrime(double d) const
virtual MaterialStatus * giveStatus(GaussPoint *gp) const
StructuralInterfaceMaterialPhF(int n, Domain *d)
StructuralInterfaceMaterialStatus(GaussPoint *g)
Constructor. Creates new StructuralInterfaceMaterialStatus with number n, belonging to domain d and I...
const FloatArrayF< 3 > & giveTempJump() const
Returns the const pointer to receiver's temporary jump.
void letTempTractionBe(const FloatArrayF< 3 > v)
Assigns tempTraction to given vector v.
void letTempJumpBe(const FloatArrayF< 3 > v)
Assigns tempJump to given vector v.
#define _IFT_IntMatPhaseField_kn
#define _IFT_IntMatPhaseField_gc