35 #include "../sm/Materials/structuralms.h" 36 #include "../sm/Materials/structuralmaterial.h" 38 #include "../sm/Elements/nlstructuralelement.h" 44 tempStressVector(), tempStrainVector(), FVector(), tempFVector()
59 if ( el->giveGeometryMode() == 1 ) {
80 fprintf(File,
" strains ");
82 for (
auto &var : helpVec ) {
83 fprintf( File,
" %.4e", var );
86 fprintf(File,
"\n stresses");
89 for (
auto &var : helpVec ) {
90 fprintf( File,
" %.4e", var );
200 printf(
"Entering StructuralMaterialStatus :: addStateVariables().\n");
static int giveSizeOfVoigtSymVector(MaterialMode mmode)
Returns the size of symmetric part of a reduced stress/strain vector according to given mode...
FloatArray PVector
Equilibrated first Piola-Kirchhoff stress vector.
virtual void updateYourself(TimeStep *tStep)
Update equilibrium history variables according to temp-variables.
MaterialMode giveMaterialMode()
Returns corresponding material mode of receiver.
virtual void updateYourself(TimeStep *)
Update equilibrium history variables according to temp-variables.
GaussPoint * gp
Associated integration point.
const FloatArray & giveTempCVector() const
Returns the const pointer to receiver's temporary Cauchy stress vector.
Abstract base class for "structural" finite elements with geometrical nonlinearities.
FloatArray tempStrainVector
Temporary strain vector in reduced form (to find balanced state)
const FloatArray & givePVector() const
Returns the const pointer to receiver's first Piola-Kirchhoff stress vector.
The purpose of DataStream abstract class is to allow to store/restore context to different streams...
contextIOResultType storeYourself(DataStream &stream) const
double & at(int i)
Coefficient access function.
FloatArray tempFVector
Temporary deformation gradient in reduced form (to find balanced state)
This class implements a structural material status information.
FloatArray stressVector
Equilibrated stress vector in reduced form.
const FloatArray & giveCVector() const
Returns the const pointer to receiver's Cauchy stress vector.
virtual ~StructuralMaterialStatus()
Destructor.
virtual contextIOResultType saveContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Stores receiver state to output stream.
Element * giveElement()
Returns corresponding element to receiver.
virtual void printOutputAt(FILE *file, TimeStep *tStep)
Print receiver's output to given stream.
static void giveFullSymVectorForm(FloatArray &answer, const FloatArray &vec, MaterialMode matMode)
Converts the reduced unsymmetric Voigt vector (2nd order tensor) to full form.
virtual void initTempStatus()
Initializes the temporary internal variables, describing the current state according to previously re...
FloatArray tempCVector
Temporary Cauchy stress vector (to find balanced state)
StructuralMaterialStatus(int n, Domain *d, GaussPoint *g)
Constructor. Creates new StructuralMaterialStatus with number n, belonging to domain d and Integratio...
const FloatArray & giveTempPVector() const
Returns the const pointer to receiver's temporary first Piola-Kirchhoff stress vector.
virtual void addStateVariables(const MaterialStatus &iStatus)
FloatArray tempPVector
Temporary first Piola-Kirchhoff stress vector (to find balanced state)
virtual void copyStateVariables(const MaterialStatus &iStatus)
Functions for MaterialStatusMapperInterface.
FloatArray CVector
Equilibrated Cauchy stress vector.
contextIOResultType restoreYourself(DataStream &stream)
const FloatArray & giveTempStrainVector() const
Returns the const pointer to receiver's temporary strain vector.
virtual contextIOResultType restoreContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Restores the receiver state previously written in stream.
IntegrationRule * giveIntegrationRule()
Returns corresponding integration rule to receiver.
Abstract base class representing a material status information.
Class representing vector of real numbers.
FloatArray strainVector
Equilibrated strain vector in reduced form.
const FloatArray & giveStressVector() const
Returns the const pointer to receiver's stress vector.
const FloatArray & giveFVector() const
Returns the const pointer to receiver's deformation gradient vector.
FloatArray FVector
Equilibrated deformation gradient in reduced form.
const FloatArray & giveTempFVector() const
Returns the const pointer to receiver's temporary deformation gradient vector.
long ContextMode
Context mode (mask), defining the type of information written/read to/from context.
virtual void initTempStatus()
Initializes the temporary internal variables, describing the current state according to previously re...
virtual contextIOResultType restoreContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Restores the receiver state previously written in stream.
const FloatArray & giveTempStressVector() const
Returns the const pointer to receiver's temporary stress vector.
int giveSize() const
Returns the size of receiver.
virtual contextIOResultType saveContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Stores receiver state to output stream.
the oofem namespace is to define a context or scope in which all oofem names are defined.
virtual void printOutputAt(FILE *file, TimeStep *tStep)
Print receiver's output to given stream.
const FloatArray & giveStrainVector() const
Returns the const pointer to receiver's strain vector.
FloatArray tempStressVector
Temporary stress vector in reduced form (increments are used mainly in nonlinear analysis) ...
Class representing integration point in finite element program.
Class representing solution step.
void resize(int s)
Resizes receiver towards requested size.