35 #ifndef latticedamage2d_h 36 #define latticedamage2d_h 42 #include "../sm/Materials/structuralmaterial.h" 49 #define _IFT_LatticeDamage2d_Name "latticedamage2d" 50 #define _IFT_LatticeDamage2d_eNormal "e" 51 #define _IFT_LatticeDamage2d_alphaOne "a1" 52 #define _IFT_LatticeDamage2d_alphaTwo "a2" 53 #define _IFT_LatticeDamage2d_softeningType "stype" 54 #define _IFT_LatticeDamage2d_wf "wf" 55 #define _IFT_LatticeDamage2d_wfOne "wf1" 56 #define _IFT_LatticeDamage2d_localrandomtype "randomtype" 57 #define _IFT_LatticeDamage2d_coefficientOfVariation "cov" 58 #define _IFT_LatticeDamage2d_e0Mean "e0" 59 #define _IFT_LatticeDamage2d_e0OneMean "e01" 60 #define _IFT_LatticeDamage2d_coh "coh" 61 #define _IFT_LatticeDamage2d_ec "ec" 62 #define _IFT_LatticeDamage2d_calpha "calpha" 63 #define _IFT_LatticeDamage2d_bio "bio" 64 #define _IFT_LatticeDamage2d_btype "btype" 216 void setE0(
double val) { e0 = val; }
239 virtual const char *
giveClassName()
const {
return "LatticeDamage2dStatus"; }
327 virtual void giveStiffnessMatrix(
FloatMatrix &answer,
332 virtual void computeStressIndependentStrainVector(
FloatArray &answer,
337 virtual void giveSecantStiffnessMatrix(
FloatMatrix &answer,
342 virtual void giveElasticStiffnessMatrix(
FloatMatrix &answer,
346 virtual int hasMaterialModeCapability(
MaterialMode mode);
350 virtual void computeDamageParam(
double &omega,
double kappa,
const FloatArray &strain,
GaussPoint *gp);
352 virtual double computeBiot(
double omega,
double kappa,
double le);
360 virtual void giveRandomParameters(
FloatArray ¶m);
372 virtual double give(
int aProperty,
GaussPoint *gp);
InternalStateType
Type representing the physical meaning of element or constitutive model internal variable.
double giveTempKappa()
Returns the temp. scalar measure of the largest strain level.
void setTempDamage(double newDamage)
Sets the temp damage level to given value.
double tempNormalStress
nonequilibrated normal stress
double coefficientOfVariation
Coefficient variation of the Gaussian distribution.
virtual int hasBeenUpdated()
Gives the last equilibrated normal stress.
GaussPoint * gp
Associated integration point.
virtual double giveNormalStress()
Gives the last equilibrated normal stress.
double tempKappa
Non-equilibrated scalar measure of the largest strain level.
virtual contextIOResultType saveContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Stores receiver state to output stream.
double giveKappa()
Returns the last equilibrated scalar measure of the largest strain level.
int temp_crack_flag
Non-equilibrated temp flag.
virtual double giveOldNormalStress()
Gives the last equilibrated normal stress.
double tempDeltaDissipation
Non-equilibrated increment of dissipation.
The purpose of DataStream abstract class is to allow to store/restore context to different streams...
double giveTempEquivalentStrain()
Returns the temp. scalar measure of the largest strain level.
LatticeDamage2dStatus(int n, Domain *d, GaussPoint *g)
Constructor.
double e0
Random material parameter stored in status, since each gp has a different value.
ValueModeType
Type representing the mode of UnknownType or CharType, or similar types.
This class implements associated Material Status to LatticeDamage2d.
double normalStress
equilibrated normal stress
#define _IFT_LatticeDamage2d_Name
double deltaDissipation
Increment of dissipation.
double giveTempDissipation()
Returns the temp. dissipation.
virtual bool isCharacteristicMtrxSymmetric(MatResponseMode rMode)
Returns true if stiffness matrix of receiver is symmetric Default implementation returns true...
This class implements a local random isotropic damage model for concrete in tension for 2D lattice el...
double coh
Parameter setting ratio of shear and tensile strength.
void setBiotCoefficientInStatus(double variable)
This class implements a base lattice material status.
void setTempEquivalentStrain(double newEquivStrain)
Sets the temp scalar measure of the largest strain level to given value.
double giveDeltaDissipation()
Returns the last equilibrated increment of dissipation.
double giveTempDeltaDissipation()
Returns the temp. increment dissipation.
MaterialMode
Type representing material mode of integration point.
const FloatArray & giveTempReducedStrain() const
Gives the temp value of plastic strain.
MatResponseMode
Describes the character of characteristic material matrix.
virtual void setVariableInStatus(double variable)
double giveTempDamage()
Returns the temp. damage level.
virtual const char * giveInputRecordName() const
double tempDissipation
Non-equilibrated dissipation..
FloatArray reducedStrain
Reduced strain.
void letTempReducedStrainBe(FloatArray v)
Assign the temp value of plastic strain.
void setTempNormalStress(double val)
Sets the temp normalStress.
void setE0(double val)
Set random e0.
double tempDamage
Non-equilibrated damage level of material.
double tempEquivStrain
Non-equilibrated scalar measure of the strain.
double crackWidth
Crack width.
virtual IRResultType initializeFrom(InputRecord *ir)
Initializes receiver according to object description stored in input record.
void setTempDissipation(double newDiss)
Sets the temp dissipation.
void printOutputAt(FILE *file, TimeStep *tStep)
Prints the receiver state to given stream.
double ec
Parameter for the elliptic equivalent strain function.
double le
Characteristic length.
void setTempCrackWidth(double val)
Sets the temp crack width.
void setTempKappa(double newKappa)
Sets the temp scalar measure of the largest strain level to given value.
double e0OneMean
Mean effective strain at sigma1.
Abstract base class for all random materials.
FloatArray tempReducedStrain
Non-equilibrated reduced strain.
virtual Interface * giveInterface(InterfaceType)
Interface requesting service.
virtual void initTempStatus()
Initializes the temporary internal variables, describing the current state according to previously re...
Abstract base class for all random constitutive model statuses.
void setOldNormalStress(double val)
Sets the old normalStress.
void setTempCrackFlag(int val)
Sets the temp_crack_flag.
double equivStrain
Scalar measure of the strain.
double giveDissipation()
Returns the last equilibrated dissipation.
virtual void updateYourself(TimeStep *)
Update equilibrium history variables according to temp-variables.
int crack_flag
The crack_flag indicates if the gp is cracked: crack_flag = 0 gp is uncracked crack_flag = 1 gp is cr...
Abstract base class representing a material status information.
Class representing vector of real numbers.
double damage
Damage level of material.
int biotType
Parameter specifying how the biot coefficient changes with the crack opening.
Implementation of matrix containing floating point numbers.
double oldNormalStress
old normal stress
IRResultType
Type defining the return values of InputRecord reading operations.
virtual const char * giveClassName() const
double kappa
Scalar measure of the largest strain level ever reached in material.
double alphaOne
Ratio of shear and normal modulus.
double eNormal
Normal modulus.
virtual contextIOResultType restoreContext(DataStream &stream, ContextMode mode, void *obj=NULL)
Restores the receiver state previously written in stream.
double eShear
Shear modulus.
long ContextMode
Context mode (mask), defining the type of information written/read to/from context.
Abstract base class for all "structural" constitutive models.
double localRandomType
Flag which chooses between no distribution (0) and Gaussian distribution (1)
InterfaceType
Enumerative type, used to identify interface type.
int softeningType
Parameter which determines the typ of the softeningFunction 1 = linear softening 2 = bilinear softeni...
double oldCrackWidth
Old crack width.
double tempCrackWidth
Non-equilibrated crack width.
double biot
Set biot coefficient.
double biotCoefficient
Parameter controlling the amount of fluid pressure added to the mechanical stress (Biot's coefficient...
virtual ~LatticeDamage2dStatus()
Destructor.
double giveEquivalentStrain()
Returns the last equilibrated scalar measure of the largest strain level.
double cAlpha
coefficient used for modelling eigendisplacements
the oofem namespace is to define a context or scope in which all oofem names are defined.
double e0Mean
Mean effective strain at peak.
double dissipation
Dissipation.
double giveLe()
Returns characteristic length stored in receiver.
virtual const char * giveClassName() const
double eTorsion
Torsion modulus.
void setLe(double ls)
Sets characteristic length to given value.
double giveDamage()
Returns the last equilibrated damage level.
Class representing integration point in finite element program.
double alphaTwo
Ratio of torsion and normal modulus.
void setTempDeltaDissipation(double newDiss)
Sets the temp. increment dissipation.
Class representing solution step.
const FloatArray & giveReducedStrain() const
Gives the old equilibrated value of plastic strain.
int giveCrackFlag()
Returns the crack_flag.
double giveCrackWidth()
Gives the last equilibrated crack width.