57 vP.
at(1) = this->
E * (vF.at(1) - 1.);
59 vP.
at(1) = vF.at(1) * this->
E * 0.5 * (vF.at(1) * vF.at(1) - 1.);
84 d.
at(1,1)= e * 0.5 * (vF.
at(1) * vF.
at(1) - 1.) + e * vF.
at(1)*vF.
at(1);
98std::unique_ptr<MaterialStatus>
101 return std::make_unique<StructuralMaterialStatus>(gp);
108 StructuralMaterial :: initializeFrom(ir);
110 int hyperTypeRecord = 0;
113 if ( hyperTypeRecord == 0 ) {
115 }
else if ( hyperTypeRecord == 1 ) {
#define REGISTER_Material(class)
double & at(std::size_t i)
double at(std::size_t i, std::size_t j) const
HyperelasticMaterial1d(int n, Domain *d)
void initializeFrom(InputRecord &ir) override
HyperElasticMaterialType hyperelasticMaterialType
Parameter specifying the definition of used constitutive model.
FloatMatrixF< 1, 1 > give1dStressStiffnessMatrix_dPdF(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const override
std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const override
FloatArrayF< 1 > giveFirstPKStressVector_1d(const FloatArrayF< 1 > &vF, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveFirstPKStressVector_StressControl.
virtual MaterialStatus * giveStatus(GaussPoint *gp) const
void letTempPVectorBe(const FloatArray &v)
Assigns tempPVector to given vector v.
const FloatArray & giveTempFVector() const
Returns the const pointer to receiver's temporary deformation gradient vector.
void letTempFVectorBe(const FloatArray &v)
Assigns tempFVector to given vector v.
StructuralMaterial(int n, Domain *d)
#define _IFT_HyperelasticMaterial1d_E
#define _IFT_HyperelasticMaterial1d_type