65 double gn = jumpVector.
at(1);
66 double gs1 = jumpVector.
at(2);
67 double gs2 = jumpVector.
at(3);
70 answer.
at(1) = this->
knc * gn;
71 answer.
at(2) = this->
ks0 * gs1;
72 answer.
at(3) = this->
ks0 * gs2;
73 }
else if ( gn <= this->
gn0 ) {
74 answer.
at(1) = this->
kn0 * gn;
75 answer.
at(2) = this->
ks0 * gs1;
76 answer.
at(3) = this->
ks0 * gs2;
77 }
else if ( gn <= this->
gnmax ) {
79 answer.
at(2) = this->
ks0 * gs1;
80 answer.
at(3) = this->
ks0 * gs2;
84 answer.
at(2) = this->
ks0 * gs1;
85 answer.
at(3) = this->
ks0 * gs2;
102 double gn = jumpVector.
at(1);
107 answer.
at(1, 1) = this->
knc;
108 answer.
at(2, 2) = this->
ks0;
109 answer.
at(3, 3) = this->
ks0;
110 }
else if ( gn <= this->
gn0 ) {
111 answer.
at(1, 1) = this->
kn0;
112 answer.
at(2, 2) = this->
ks0;
113 answer.
at(3, 3) = this->
ks0;
115 }
else if ( gn <= this->
gnmax ) {
116 answer.
at(1, 1) = this->
kn1;
117 answer.
at(2, 2) = this->
ks0;
118 answer.
at(3, 3) = this->
ks0;
121 answer.
at(1, 1) = 0.0;
122 answer.
at(2, 2) = this->
ks0;
123 answer.
at(3, 3) = this->
ks0;
132 if ( type == IST_DamageScalar ) {
156 this->
sigfn = 1.0e50;
157 this->
sigfs = 1.0e50;
166 if ( result !=
IRRT_OK )
return result;
170 if ( this->
kn0 < 0.0 ) {
173 }
else if ( this->
ks0 < 0.0 ) {
176 }
else if ( this->
GIc < 0.0 ) {
179 }
else if ( this->
kn0 < kn0min ) {
206 printf(
"Paramters for IntMatBilinearCZElastic: \n");
208 printf(
"-Strength paramters \n");
209 printf(
" sigfn = %e \n", this->
sigfn);
210 printf(
" GIc = %e \n", this->
GIc);
213 printf(
"-Stiffness parameters \n");
214 printf(
" kn0 = %e \n", this->
kn0);
215 printf(
" kn1 = %e \n", this->
kn1);
216 printf(
" knc = %e \n", this->
knc);
219 printf(
"-jump limits \n");
220 printf(
" gn0 = %e \n", this->
gn0);
221 printf(
" gnmax = %e \n", this->
gnmax);
InternalStateType
Type representing the physical meaning of element or constitutive model internal variable.
#define _IFT_IntMatBilinearCZElastic_knc
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
virtual MaterialStatus * giveStatus(GaussPoint *gp) const
Returns material status of receiver in given integration point.
double & at(int i)
Coefficient access function.
virtual void giveInputRecord(DynamicInputRecord &input)
Setups the input record string of receiver.
void printYourself()
Prints receiver state on stdout. Useful for debugging.
MatResponseMode
Describes the character of characteristic material matrix.
#define _IFT_IntMatBilinearCZElastic_kn
virtual int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep)
Returns the integration point corresponding value in Reduced form.
virtual void giveInputRecord(DynamicInputRecord &input)
Setups the input record string of receiver.
virtual int checkConsistency()
Allows programmer to test some internal data, before computation begins.
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
void letTempJumpBe(FloatArray v)
Assigns tempJump to given vector v.
IntMatBilinearCZElastic(int n, Domain *d)
Constructor.
virtual void give3dStiffnessMatrix_dTdj(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep)
double at(int i, int j) const
Coefficient access function.
void letTempFirstPKTractionBe(FloatArray v)
Assigns tempFirstPKTraction to given vector v.
Class representing vector of real numbers.
virtual ~IntMatBilinearCZElastic()
Destructor.
Implementation of matrix containing floating point numbers.
IRResultType
Type defining the return values of InputRecord reading operations.
void resize(int rows, int cols)
Checks size of receiver towards requested bounds.
double kn0
Material parameters.
void zero()
Zeroes all coefficients of receiver.
void zero()
Zeroes all coefficient of receiver.
virtual int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep)
Returns the integration point corresponding value in Reduced form.
virtual void giveFirstPKTraction_3d(FloatArray &answer, GaussPoint *gp, const FloatArray &jumpVector, const FloatMatrix &F, TimeStep *tStep)
REGISTER_Material(DummyMaterial)
void letTempTractionBe(FloatArray v)
Assigns tempTraction to given vector v.
#define _IFT_IntMatBilinearCZElastic_ks
int giveSize() const
Returns the size of receiver.
Abstract base class for all "structural" interface models.
the oofem namespace is to define a context or scope in which all oofem names are defined.
const FloatArray & giveTempJump() const
Returns the const pointer to receiver's temporary jump.
Class representing integration point in finite element program.
#define OOFEM_WARNING(...)
Class representing solution step.
#define _IFT_IntMatBilinearCZElastic_g1c
void resize(int s)
Resizes receiver towards requested size.
#define _IFT_IntMatBilinearCZElastic_sigfn
This class implements associated Material Status for ...