35#ifndef trabbonenlembed_h
36#define trabbonenlembed_h
45#define _IFT_TrabBoneNLEmbed_Name "trabbonenlembed"
46#define _IFT_TrabBoneNLEmbed_r "r"
47#define _IFT_TrabBoneNLEmbed_m "m"
72 const char *
giveClassName()
const override {
return "TrabBoneNLEmbedStatus"; }
95 const char *
giveClassName()
const override {
return "TrabBoneNLEmbed"; }
109 return TrabBoneEmbed :: computeCumPlastStrain(gp, tStep);
121 std::unique_ptr<MaterialStatus>
CreateStatus(
GaussPoint *gp)
const override {
return std::make_unique<TrabBoneNLEmbedStatus>(gp); }
StructuralNonlocalMaterialExtensionInterface(Domain *d)
StructuralNonlocalMaterialStatusExtensionInterface()
TrabBoneEmbedStatus(GaussPoint *g)
TrabBoneEmbed(int n, Domain *d)
double localCumPlastStrainForAverage
Equivalent strain for averaging.
void printOutputAt(FILE *file, TimeStep *tStep) const override
Print receiver's output to given stream.
void updateYourself(TimeStep *tStep) override
double giveLocalCumPlastStrainForAverage() const
Gives the local cumulative plastic strain.
Interface * giveInterface(InterfaceType it) override
TrabBoneNLEmbedStatus(GaussPoint *g)
void saveContext(DataStream &stream, ContextMode mode) override
void setLocalCumPlastStrainForAverage(double ls)
Sets the local cumulative plastic strain.
void restoreContext(DataStream &stream, ContextMode mode) override
void initTempStatus() override
const char * giveClassName() const override
double computeWeightFunction(const double cl, const FloatArray &src, const FloatArray &coord) const override
TrabBoneNLEmbed(int n, Domain *d)
Interface * giveInterface(InterfaceType) override
int hasBoundedSupport() const override
const char * giveClassName() const override
void initializeFrom(InputRecord &ir) override
virtual void giveSupportRadius(double &radius)
Determines the width (radius) of limited support of weighting function.
const char * giveInputRecordName() const override
void giveInputRecord(DynamicInputRecord &input) override
double computeLocalCumPlastStrain(const FloatArrayF< 6 > &strain, GaussPoint *gp, TimeStep *tStep) const
void updateBeforeNonlocAverage(const FloatArray &strainVector, GaussPoint *gp, TimeStep *tStep) const override
std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const override
double computeCumPlastStrain(GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 6 > giveRealStressVector_3d(const FloatArrayF< 6 > &strain, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector for second Piola-Kirchoff stress.
#define _IFT_TrabBoneNLEmbed_Name