80 if ( currentStress == NULL ) {
84 v1 = ( ( currentStress->
at(1) - currentStress->
at(2) ) * ( currentStress->
at(1) - currentStress->
at(2) ) );
85 v2 = ( ( currentStress->
at(2) - currentStress->
at(3) ) * ( currentStress->
at(2) - currentStress->
at(3) ) );
86 v3 = ( ( currentStress->
at(3) - currentStress->
at(1) ) * ( currentStress->
at(3) - currentStress->
at(1) ) );
88 answer = ( 1. / 6. ) * ( v1 + v2 + v3 ) + currentStress->
at(4) * currentStress->
at(4) +
89 currentStress->
at(5) * currentStress->
at(5) + currentStress->
at(6) * currentStress->
at(6);
107 double f, sigx, sigy, sigz, sx, sy, sz;
110 if ( currentStress == NULL ) {
115 sigx = currentStress->
at(1);
116 sigy = currentStress->
at(2);
117 sigz = currentStress->
at(3);
119 sx = ( 2. / 3. ) * sigx - ( 1. / 3. ) * sigy - ( 1. / 3. ) * sigz;
120 sy = ( 2. / 3. ) * sigy - ( 1. / 3. ) * sigx - ( 1. / 3. ) * sigz;
121 sz = ( 2. / 3. ) * sigz - ( 1. / 3. ) * sigy - ( 1. / 3. ) * sigx;
123 answer->
at(1) = 0.5 * sx / f;
124 answer->
at(2) = 0.5 * sy / f;
125 answer->
at(3) = 0.5 * sz / f;
126 answer->
at(4) = currentStress->
at(4) / f;
127 answer->
at(5) = currentStress->
at(5) / f;
128 answer->
at(6) = currentStress->
at(6) / f;
virtual FloatArray * GiveYCPlasticStrainGradient(GaussPoint *, FloatArray *, FloatArray *)
double & at(int i)
Coefficient access function.
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
Dictionary propertyDictionary
Property dictionary.
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
LinearElasticMaterial * linearElasticMaterial
virtual double give(int aProperty, GaussPoint *gp)
Returns the value of material property 'aProperty'.
This class implements an isotropic linear elastic material in a finite element problem.
double computeJ2InvariantAt(FloatArray *)
This class implements a perfectly plastic material in a finite element problem.
virtual FloatArray * GiveLCPlasticStrainGradient(GaussPoint *, FloatArray *, FloatArray *)
virtual FloatArray * GiveYCStressGradient(GaussPoint *, FloatArray *, FloatArray *)
virtual double computeYCValueAt(GaussPoint *, FloatArray *, FloatArray *)
Pair * add(int aKey, double value)
Adds a new Pair with given keyword and value into receiver.
Class representing vector of real numbers.
IRResultType
Type defining the return values of InputRecord reading operations.
REGISTER_Material(DummyMaterial)
the oofem namespace is to define a context or scope in which all oofem names are defined.
Class representing integration point in finite element program.
virtual FloatArray * GiveLCStressGradient(GaussPoint *, FloatArray *, FloatArray *)