57 double normalJump = jump.
at( 1 );
60 double normalStress = 0.0;
63 normalJump, shearJump );
67 answer.
at( 1 ) = normalStress;
68 answer.
at( 2 ) = shearStress.
at( 1 );
69 answer.
at( 3 ) = shearStress.
at( 2 );
83 double normalJump = jump.
at( 1 );
86 double normalStress = 0.0;
89 normalJump, shearJump );
93 answer.
at( 1 ) = normalStress;
94 answer.
at( 2 ) = shearStress.
at( 1 );
111 double normalJump = jump.
at( 1 );
114 double normalStress = 0.0;
115 FloatArray shearStress, tempShearStressShift(0);
117 normalJump, shearJump );
121 answer.
at( 1 ) = normalStress;
134 double maxShearStress = 0.0;
137 if ( normalJump + normalClearance <= 0. ) {
139 maxShearStress = fabs( normalStress ) * this->
frictCoeff;
147 shearStress = this->
kn * shearJump - tempShearStressShift;
149 double eps = 1.0e-15;
150 if ( dp > maxShearStress ) {
151 shearStress.
times( maxShearStress / ( dp + eps ) );
153 tempShearStressShift = this->
kn * shearJump - shearStress;
173 double normalJump = jump.
at( 1 );
175 answer.
resize( numSpaceDim, numSpaceDim );
177 if ( rMode == SecantStiffness || rMode == TangentStiffness ) {
236 fprintf(file,
"status { ");
242 fprintf(file,
"}\n");
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.
The purpose of DataStream abstract class is to allow to store/restore context to different streams...
double & at(int i)
Coefficient access function.
virtual void giveInputRecord(DynamicInputRecord &input)
Setups the input record string of receiver.
int giveNumberOfSpatialDimensions()
Returns number of spatial dimensions.
MatResponseMode
Describes the character of characteristic material matrix.
virtual contextIOResultType restoreContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Restores the receiver state previously written in stream.
virtual void updateYourself(TimeStep *tStep)
Update equilibrium history variables according to temp-variables.
void letTempJumpBe(FloatArray v)
Assigns tempJump to given vector v.
void times(double f)
Multiplies receiver by factor f.
This class implements a structural interface material status information.
virtual void printOutputAt(FILE *file, TimeStep *tStep)
Print receiver's output to given stream.
Class representing vector of real numbers.
Implementation of matrix containing floating point numbers.
IRResultType
Type defining the return values of InputRecord reading operations.
double computeNorm() const
Computes the norm (or length) of the vector.
void resize(int rows, int cols)
Checks size of receiver towards requested bounds.
void zero()
Zeroes all coefficients of receiver.
virtual contextIOResultType saveContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Stores receiver state to output stream.
void times(double s)
Multiplies receiver with scalar.
long ContextMode
Context mode (mask), defining the type of information written/read to/from context.
void beUnitMatrix()
Sets receiver to unity matrix.
REGISTER_Material(DummyMaterial)
void letTempTractionBe(FloatArray v)
Assigns tempTraction to given vector v.
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.
virtual void initTempStatus()
Initializes the temporary internal variables, describing the current state according to previously re...
Class representing integration point in finite element program.
Class representing solution step.
void resize(int s)
Resizes receiver towards requested size.