OOFEM 3.0
Loading...
Searching...
No Matches
oofem::IsoInterfaceDamageMaterialStatus Class Reference

#include <isointerfacedamage01.h>

Inheritance diagram for oofem::IsoInterfaceDamageMaterialStatus:
Collaboration diagram for oofem::IsoInterfaceDamageMaterialStatus:

Public Member Functions

 IsoInterfaceDamageMaterialStatus (GaussPoint *g)
 Constructor.
void printOutputAt (FILE *file, TimeStep *tStep) const override
 Print receiver's output to given stream.
double giveKappa () const
 Returns the last equilibrated scalar measure of the largest strain level.
double giveTempKappa () const
 Returns the temp. scalar measure of the largest strain level.
void setTempKappa (double newKappa)
 Sets the temp scalar measure of the largest strain level to given value.
double giveDamage () const override
 Returns the last equilibrated damage level.
double giveTempDamage () const override
 Returns the temp. damage level.
void setTempDamage (double newDamage)
 Sets the temp damage level to given value.
const char * giveClassName () const override
void initTempStatus () override
void updateYourself (TimeStep *tStep) override
void saveContext (DataStream &stream, ContextMode mode) override
void restoreContext (DataStream &stream, ContextMode mode) override
Public Member Functions inherited from oofem::StructuralInterfaceMaterialStatus
 StructuralInterfaceMaterialStatus (GaussPoint *g)
 Constructor. Creates new StructuralInterfaceMaterialStatus with number n, belonging to domain d and IntegrationPoint g.
void printOutputAt (FILE *file, TimeStep *tStep) const override
 Print receiver's output to given stream.
void initTempStatus () override
void updateYourself (TimeStep *tStep) override
void saveContext (DataStream &stream, ContextMode mode) override
void restoreContext (DataStream &stream, ContextMode mode) override
const FloatArrayF< 3 > & giveJump () const
 Returns the const pointer to receiver's jump.
const FloatArrayF< 3 > & giveTraction () const
 Returns the const pointer to receiver's traction vector.
const FloatArrayF< 3 > & giveFirstPKTraction () const
 Returns the const pointer to receiver's first Piola-Kirchhoff traction vector.
const FloatMatrixF< 3, 3 > & giveF () const
 Returns the const pointer to receiver's deformation gradient vector.
const FloatArrayF< 3 > & giveTempJump () const
 Returns the const pointer to receiver's temporary jump.
const FloatArrayF< 3 > & giveTempTraction () const
 Returns the const pointer to receiver's temporary traction vector.
const FloatArrayF< 3 > & giveTempFirstPKTraction () const
 Returns the const pointer to receiver's temporary first Piola-Kirchhoff traction vector.
const FloatMatrixF< 3, 3 > & giveTempF () const
 Returns the const pointer to receiver's temporary deformation gradient vector.
const FloatArrayF< 3 > & giveNormal () const
 Returns const reference to normal vector.
const FloatArrayF< 2 > & giveProjectedTraction () const
 Returns the projected traction.
void letJumpBe (const FloatArrayF< 3 > v)
 Assigns jump to given vector v.
void letTractionBe (const FloatArrayF< 3 > v)
 Assigns traction to given vector v.
void letFirstPKTractionBe (const FloatArrayF< 3 > v)
 Assigns firstPKTraction to given vector v.
void letFBe (const FloatMatrixF< 3, 3 > v)
 Assigns FVector to given vector v.
void letTempTractionBe (const FloatArrayF< 3 > v)
 Assigns tempTraction to given vector v.
void letTempJumpBe (const FloatArrayF< 3 > v)
 Assigns tempJump to given vector v.
void letTempFirstPKTractionBe (const FloatArrayF< 3 > v)
 Assigns tempFirstPKTraction to given vector v.
void letTempFBe (const FloatMatrixF< 3, 3 > &v)
 Assigns tempFVector to given vector v.
void letNormalBe (const FloatArrayF< 3 > &iN)
 Assigns normal vector.
void letProjectedTractionBe (const FloatArrayF< 2 > &iProjectedTraction)
 Assigns projeted traction.
const char * giveClassName () const override
 @TODO Projected tractions are never set. What is it supposed to be good for?
void copyStateVariables (const MaterialStatus &iStatus) override
 Functions for MaterialStatusMapperInterface.
void addStateVariables (const MaterialStatus &iStatus) override
bool giveNewlyInserted () const
void setNewlyInserted (bool iNewlyInserted)
Public Member Functions inherited from oofem::MaterialStatus
 MaterialStatus (GaussPoint *g)
virtual bool giveMaterialProperty (int propID, double &value)
virtual void setMaterialProperty (int propID, double value)
Public Member Functions inherited from oofem::IntegrationPointStatus
 IntegrationPointStatus (GaussPoint *g)
virtual ~IntegrationPointStatus ()=default
 Destructor.
virtual void setStatusVariable (int varID, double value)
virtual InterfacegiveInterface (InterfaceType t)
Public Member Functions inherited from oofem::MaterialStatusMapperInterface
 MaterialStatusMapperInterface ()
virtual ~MaterialStatusMapperInterface ()
virtual int MSMI_map (const GaussPoint &iGP, const Domain &iOldDom, Set &sourceSet, const TimeStep &iTStep, MaterialStatus &oStatus)
virtual int MSMI_map_cz (const GaussPoint &iGP, const Domain &iOldDom, Set &sourceSet, const TimeStep &iTStep, MaterialStatus &oStatus)
virtual int MSMI_update (const GaussPoint &iGP, const TimeStep &iTStep)
virtual int MSMI_finish (const TimeStep &iTStep)

Protected Attributes

double kappa = 0.
 Scalar measure of the largest equivalent displacement ever reached in material.
double tempKappa = 0.
 Non-equilibrated scalar measure of the largest equivalent displacement.
double damage = 0.
 Damage level of material.
double tempDamage = 0.
 Non-equilibrated damage level of material.
Protected Attributes inherited from oofem::StructuralInterfaceMaterialStatus
FloatArrayF< 3 > jump
 Equilibrated jump (discontinuity).
FloatArrayF< 3 > traction
 Equilibrated (engineering) traction vector.
FloatArrayF< 3 > tempTraction
 Temporary (engineering) traction vector.
FloatArrayF< 3 > tempJump
 Temporary jump (discontinuity).
FloatArrayF< 3 > firstPKTraction
 Equilibrated first Piola-Kirchhoff traction vector T.
FloatArrayF< 3 > tempFirstPKTraction
 Temporary first Piola-Kirchhoff traction vector (to find balanced state).
FloatMatrixF< 3, 3 > F
 Equilibrated deformation gradient in reduced form.
FloatMatrixF< 3, 3 > tempF
 Temporary deformation gradient in reduced form (to find balanced state).
FloatArrayF< 3 > mNormalDir
 Interface normal direction.
bool mNewlyInserted = true
FloatArrayF< 2 > projectedTraction
Protected Attributes inherited from oofem::IntegrationPointStatus
GaussPointgp
 Associated integration point.
Protected Attributes inherited from oofem::MaterialStatusMapperInterface
std::unique_ptr< MaterialMappingAlgorithmmpMaterialMapper

Detailed Description

This class implements associated Material Status to IsoInterfaceDamageMaterial.

Definition at line 57 of file isointerfacedamage01.h.

Constructor & Destructor Documentation

◆ IsoInterfaceDamageMaterialStatus()

oofem::IsoInterfaceDamageMaterialStatus::IsoInterfaceDamageMaterialStatus ( GaussPoint * g)

Member Function Documentation

◆ giveClassName()

const char * oofem::IsoInterfaceDamageMaterialStatus::giveClassName ( ) const
inlineoverridevirtual

Implements oofem::IntegrationPointStatus.

Definition at line 88 of file isointerfacedamage01.h.

◆ giveDamage()

double oofem::IsoInterfaceDamageMaterialStatus::giveDamage ( ) const
inlineoverridevirtual

Returns the last equilibrated damage level.

Reimplemented from oofem::StructuralInterfaceMaterialStatus.

Definition at line 82 of file isointerfacedamage01.h.

References damage.

Referenced by oofem::IsoInterfaceDamageMaterial::giveEngTraction_3d(), and oofem::IsoInterfaceDamageMaterial::giveIPValue().

◆ giveKappa()

double oofem::IsoInterfaceDamageMaterialStatus::giveKappa ( ) const
inline

Returns the last equilibrated scalar measure of the largest strain level.

Definition at line 76 of file isointerfacedamage01.h.

References kappa.

Referenced by oofem::IsoInterfaceDamageMaterial::give3dStiffnessMatrix_Eng(), oofem::IsoInterfaceDamageMaterial::giveEngTraction_3d(), and oofem::IsoInterfaceDamageMaterial::giveIPValue().

◆ giveTempDamage()

double oofem::IsoInterfaceDamageMaterialStatus::giveTempDamage ( ) const
inlineoverridevirtual

◆ giveTempKappa()

double oofem::IsoInterfaceDamageMaterialStatus::giveTempKappa ( ) const
inline

Returns the temp. scalar measure of the largest strain level.

Definition at line 78 of file isointerfacedamage01.h.

References tempKappa.

Referenced by oofem::IsoInterfaceDamageMaterial::give3dStiffnessMatrix_Eng().

◆ initTempStatus()

void oofem::IsoInterfaceDamageMaterialStatus::initTempStatus ( )
overridevirtual

Initializes the temporary internal variables, describing the current state according to previously reached equilibrium internal variables.

Reimplemented from oofem::MaterialStatus.

Definition at line 236 of file isointerfacedamage01.C.

References damage, kappa, tempDamage, and tempKappa.

◆ printOutputAt()

void oofem::IsoInterfaceDamageMaterialStatus::printOutputAt ( FILE * file,
TimeStep * tStep ) const
overridevirtual

Print receiver's output to given stream.

Reimplemented from oofem::IntegrationPointStatus.

Definition at line 223 of file isointerfacedamage01.C.

References damage, and kappa.

◆ restoreContext()

void oofem::IsoInterfaceDamageMaterialStatus::restoreContext ( DataStream & stream,
ContextMode mode )
overridevirtual

Restores the receiver state previously written in stream.

See also
saveContext
Parameters
streamInput stream.
modeDetermines amount of info available in stream (state, definition, ...).
Exceptions
throwsan ContextIOERR exception if error encountered.

Reimplemented from oofem::IntegrationPointStatus.

Definition at line 267 of file isointerfacedamage01.C.

References oofem::CIO_IOERR, damage, kappa, oofem::DataStream::read(), and THROW_CIOERR.

◆ saveContext()

void oofem::IsoInterfaceDamageMaterialStatus::saveContext ( DataStream & stream,
ContextMode mode )
overridevirtual

Stores receiver state to output stream.

Parameters
streamOutput stream.
modeDetermines amount of info required in stream (state, definition, ...).
Exceptions
throwsan ContextIOERR exception if error encountered.

Reimplemented from oofem::IntegrationPointStatus.

Definition at line 253 of file isointerfacedamage01.C.

References oofem::CIO_IOERR, damage, kappa, THROW_CIOERR, and oofem::DataStream::write().

◆ setTempDamage()

void oofem::IsoInterfaceDamageMaterialStatus::setTempDamage ( double newDamage)
inline

Sets the temp damage level to given value.

Definition at line 86 of file isointerfacedamage01.h.

References tempDamage.

Referenced by oofem::IsoInterfaceDamageMaterial::giveEngTraction_3d().

◆ setTempKappa()

void oofem::IsoInterfaceDamageMaterialStatus::setTempKappa ( double newKappa)
inline

Sets the temp scalar measure of the largest strain level to given value.

Definition at line 80 of file isointerfacedamage01.h.

References tempKappa.

Referenced by oofem::IsoInterfaceDamageMaterial::giveEngTraction_3d().

◆ updateYourself()

void oofem::IsoInterfaceDamageMaterialStatus::updateYourself ( TimeStep * )
overridevirtual

Update equilibrium history variables according to temp-variables. Invoked, after new equilibrium state has been reached.

Reimplemented from oofem::IntegrationPointStatus.

Definition at line 244 of file isointerfacedamage01.C.

References damage, kappa, tempDamage, and tempKappa.

Member Data Documentation

◆ damage

double oofem::IsoInterfaceDamageMaterialStatus::damage = 0.
protected

Damage level of material.

Definition at line 65 of file isointerfacedamage01.h.

Referenced by giveDamage(), initTempStatus(), printOutputAt(), restoreContext(), saveContext(), and updateYourself().

◆ kappa

double oofem::IsoInterfaceDamageMaterialStatus::kappa = 0.
protected

Scalar measure of the largest equivalent displacement ever reached in material.

Definition at line 61 of file isointerfacedamage01.h.

Referenced by giveKappa(), initTempStatus(), printOutputAt(), restoreContext(), saveContext(), and updateYourself().

◆ tempDamage

double oofem::IsoInterfaceDamageMaterialStatus::tempDamage = 0.
protected

Non-equilibrated damage level of material.

Definition at line 67 of file isointerfacedamage01.h.

Referenced by giveTempDamage(), initTempStatus(), setTempDamage(), and updateYourself().

◆ tempKappa

double oofem::IsoInterfaceDamageMaterialStatus::tempKappa = 0.
protected

Non-equilibrated scalar measure of the largest equivalent displacement.

Definition at line 63 of file isointerfacedamage01.h.

Referenced by giveTempKappa(), initTempStatus(), setTempKappa(), and updateYourself().


The documentation for this class was generated from the following files:

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011