52 StructuralMaterial :: initializeFrom(ir);
69 StructuralMaterial :: giveInputRecord(input);
81 auto answer =
dot(tangent, reducedE);
86 status->letTempStressVectorBe(answer);
92WinklerPasternakMaterial :: give2dPlateSubSoilStiffMtrx(MatResponseMode mode,
GaussPoint *gp,
TimeStep *tStep)
const
98std::unique_ptr<MaterialStatus>
99WinklerPasternakMaterial :: CreateStatus(
GaussPoint *gp)
const
101 return std::make_unique<StructuralMaterialStatus>(gp);
106WinklerPasternakMaterial :: hasMaterialModeCapability(MaterialMode mode)
const
111 return mode == _2dPlateSubSoil;
#define REGISTER_Material(class)
virtual MaterialStatus * giveStatus(GaussPoint *gp) const
void letTempStrainVectorBe(const FloatArray &v)
Assigns tempStrainVector to given vector v.
StructuralMaterial(int n, Domain *d)
double c2x
C2 constants in x and y directions, defined as $\int_0^hG_{x,y}(z)Psi^2(z)\ dz$.
WinklerPasternakMaterial(int n, Domain *d)
FloatMatrixF< 3, 3 > give2dPlateSubSoilStiffMtrx(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const override
double c1
C1 constant, defined as $\int_0^hE_{oed}(z)\left(d\Psi(z)\over dz\right)^2\ dz$.
FloatArrayF< 3 > giveRealStressVector_2dPlateSubSoil(const FloatArrayF< 3 > &reducedE, GaussPoint *gp, TimeStep *tStep) const override
Default implementation is not provided.
FloatMatrixF< N, N > diag(const FloatArrayF< N > &v)
double dot(const FloatArray &x, const FloatArray &y)
#define _IFT_WinklerPasternakMaterial_C1
#define _IFT_WinklerPasternakMaterial_C2
#define _IFT_WinklerPasternakMaterial_C2Y
#define _IFT_WinklerPasternakMaterial_C2X