50 epsp_vol = -( eps.
at(1) + eps.
at(2) );
52 epsp_vol = -( eps.
at(1) + eps.
at(2) + eps.
at(3) );
73 MaterialStatus(n, d, g), deviatoricStressVector(), deviatoricStrainRateVector()
80 fprintf(File,
"\n deviatoric stresses");
82 fprintf( File,
" %.4e", e );
99 if ( type == IST_DeviatoricStress ) {
102 if ( mmode == _2dFlow ) {
104 answer.
at(1) = vec.
at(1);
105 answer.
at(2) = vec.
at(2);
106 answer.
at(3) = -( vec.
at(1) + vec.
at(2) );
109 answer.
at(6) = vec.
at(3);
111 }
else if ( mmode == _2dAxiFlow ) {
113 answer.
at(1) = vec.
at(1);
114 answer.
at(2) = vec.
at(2);
115 answer.
at(3) = vec.
at(3);
118 answer.
at(6) = vec.
at(6);
120 }
else if ( mmode == _3dFlow ) {
128 }
else if ( type == IST_DeviatoricStrain ) {
131 if ( mmode == _2dFlow ) {
133 answer.
at(1) = vec.
at(1);
134 answer.
at(2) = vec.
at(2);
136 answer.
at(4) = vec.
at(3);
141 }
else if ( mmode == _2dAxiFlow ) {
143 answer.
at(1) = vec.
at(1);
144 answer.
at(2) = vec.
at(2);
145 answer.
at(3) = vec.
at(3);
148 answer.
at(6) = vec.
at(6);
150 }
else if ( mmode == _3dFlow ) {
158 }
else if ( type == IST_Viscosity ) {
160 answer.
at(1) = this->giveEffectiveViscosity(gp, tStep);
162 }
else if ( type == IST_Density ) {
164 answer.
at(1) = this->give(
'd', gp);
InternalStateType
Type representing the physical meaning of element or constitutive model internal variable.
MaterialMode giveMaterialMode()
Returns corresponding material mode of receiver.
virtual contextIOResultType saveContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Stores receiver state to output stream.
FloatArray deviatoricStressVector
Stress vector in reduced form.
void copySubVector(const FloatArray &src, int si)
Copy the given vector as sub-vector to receiver.
GaussPoint * gp
Associated integration point.
The purpose of DataStream abstract class is to allow to store/restore context to different streams...
contextIOResultType storeYourself(DataStream &stream) const
const FloatArray & giveDeviatoricStrainRateVector()
double & at(int i)
Coefficient access function.
virtual void updateInternalState(const FloatArray &vec, GaussPoint *gp, TimeStep *tStep)
Updates internal state of material according to new state vector.
virtual contextIOResultType saveContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Stores receiver state to output stream.
virtual void printOutputAt(FILE *file, TimeStep *tStep)
Print receiver's output to given stream.
MaterialMode
Type representing material mode of integration point.
virtual void giveStiffnessMatrices(FloatMatrix &dsdd, FloatArray &dsdp, FloatArray &dedd, double &dedp, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep)
Computes the 4 tangents of the compressible material response in 3D.
MatResponseMode
Describes the character of characteristic material matrix.
virtual void initTempStatus()
Initializes the temporary internal variables, describing the current state according to previously re...
FluidDynamicMaterialStatus(int n, Domain *d, GaussPoint *g)
Constructor - creates new TransportMaterialStatus with number n, belonging to domain d and integratio...
virtual contextIOResultType restoreContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Restores the receiver state previously written in stream.
virtual void initTempStatus()
Initializes the temporary internal variables, describing the current state according to previously re...
FloatArray deviatoricStrainRateVector
Strain vector in reduced form.
This class implements a transport material status information.
virtual void computeDeviatoricStressVector(FloatArray &stress_dev, double &epsp_vol, GaussPoint *gp, const FloatArray &eps, double pressure, TimeStep *tStep)
Computes the deviatoric stress vector and volumetric strain rate from given deviatoric strain and pre...
const FloatArray & giveDeviatoricStressVector()
Gives the deviatoric stress.
contextIOResultType restoreYourself(DataStream &stream)
Abstract base class representing a material status information.
virtual int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep)
Returns the integration point corresponding value in Reduced form.
Class representing vector of real numbers.
Implementation of matrix containing floating point numbers.
void zero()
Zeroes all coefficients of receiver.
long ContextMode
Context mode (mask), defining the type of information written/read to/from context.
virtual contextIOResultType restoreContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Restores the receiver state previously written in stream.
the oofem namespace is to define a context or scope in which all oofem names are defined.
int giveNumberOfRows() const
Returns number of rows of receiver.
Class representing integration point in finite element program.
Class representing solution step.
virtual int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep)
Returns the integration point corresponding value in Reduced form.
void resize(int s)
Resizes receiver towards requested size.
virtual void giveDeviatoricStiffnessMatrix(FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep)=0
Computes the deviatoric stiffness; .