35#ifndef linearelasticmaterial_h
36#define linearelasticmaterial_h
44#define _IFT_LinearElasticMaterial_preCastStiffRed "precaststiffred"
116 const char *
giveClassName()
const override {
return "LinearElasticMaterial"; }
const FloatArrayF< 6 > & giveAlpha() const
int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep) override
void giveInputRecord(DynamicInputRecord &input) override
void computesSubTangents()
bool hasCastingTimeSupport() const override
FloatMatrixF< 4, 4 > tangentPlaneStrain
LinearElasticMaterial(int n, Domain *d)
Constructor.
FloatArrayF< 6 > giveThermalDilatationVector(GaussPoint *gp, TimeStep *tStep) const override
const char * giveClassName() const override
virtual FloatArrayF< 6 > giveRealStressVector_3dDegeneratedShell(const FloatArrayF< 6 > &reducedF, GaussPoint *gp, TimeStep *tStep) const
FloatArrayF< 2 > giveRealStressVector_2dBeamLayer(const FloatArrayF< 2 > &reducedE, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector_StressControl.
FloatMatrixF< 3, 3 > tangentPlaneStress
FloatArrayF< 5 > giveRealStressVector_PlateLayer(const FloatArrayF< 5 > &reducedE, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector_StressControl.
double giveEnergyDensity(GaussPoint *gp, TimeStep *tStep)
virtual double giveShearModulus() const
FloatArrayF< 3 > giveRealStressVector_Fiber(const FloatArrayF< 3 > &reducedE, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector_StressControl.
void giveEshelbyStressVector_PlaneStrain(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedF, TimeStep *tStep) override
FloatMatrixF< 6, 6 > tangent
Preconstructed 3d tangent.
FloatMatrixF< 6, 6 > give3dMaterialStiffnessMatrix(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 3 > giveRealStressVector_PlaneStress(const FloatArrayF< 3 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector_StressControl.
std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const override
const FloatMatrixF< 6, 6 > & giveTangent() const
FloatArrayF< 6 > alpha
Thermal expansion.
void initializeFrom(InputRecord &ir) override
FloatArrayF< 2 > giveRealStressVector_Warping(const FloatArrayF< 2 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector_StressControl.
FloatArrayF< 6 > giveRealStressVector_3d(const FloatArrayF< 6 > &strain, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector for second Piola-Kirchoff stress.
FloatArrayF< 1 > giveRealStressVector_1d(const FloatArrayF< 1 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector_StressControl.
double preCastStiffnessReduction
artificial isotropic damage to reflect reduction in stiffness for time < castingTime.
StructuralMaterial(int n, Domain *d)