48#define _IFT_Concrete2_Name "concrete2"
49#define _IFT_Concrete2_e "e"
50#define _IFT_Concrete2_n "n"
51#define _IFT_Concrete2_sccc "sccc"
52#define _IFT_Concrete2_scct "scct"
53#define _IFT_Concrete2_epp "epp"
54#define _IFT_Concrete2_epu "epu"
55#define _IFT_Concrete2_eopp "eopp"
56#define _IFT_Concrete2_eopu "eopu"
57#define _IFT_Concrete2_sheartol "sheartol"
58#define _IFT_Concrete2_is_plastic_flow "is_plastic_flow"
59#define _IFT_Concrete2_ifad "ifad"
60#define _IFT_Concrete2_stirr_e "stirr_e"
61#define _IFT_Concrete2_stirr_ft "stirr_ft"
62#define _IFT_Concrete2_stirr_a "stirr_a"
63#define _IFT_Concrete2_stirr_tol "stirr_tol"
64#define _IFT_Concrete2_stirr_eref "stirr_eref"
65#define _IFT_Concrete2_stirr_lambda "stirr_lambda"
75#define c2_SHEARTOL 306
83#define stirr_LAMBDA 314
84#define c2_IS_PLASTIC_FLOW 315
109 { StructuralMaterialStatus :: printOutputAt(file, tStep); }
141 const char *
giveClassName()
const override {
return "Concrete2MaterialStatus"; }
167 double E = 0.,
n = 0.;
194 double SCC,
double SCT,
int *ifplas)
const;
196 double SCC,
double SCT,
int *ifplas)
const;
197 void stirr(
double dez,
double srf)
const;
199 double &ep2,
double &ep3,
double SCC,
double SCT,
int &ifupd)
const;
void updateYourself(TimeStep *tStep) override
double & giveTempCurrentStrainInZDir()
double SEZ
Current strain in transverse (z) direction.
const char * giveClassName() const override
void saveContext(DataStream &stream, ContextMode mode) override
double & giveTempCurrentPressureStrength()
double & giveTempCurrentStressInStirrups()
FloatArray plasticStrainIncrementVector
double & giveTempCurrentTensionStrength()
double SCCM
Current pressure strength.
double & giveCurrentPressureStrength()
void printOutputAt(FILE *file, TimeStep *tStep) const override
Print receiver's output to given stream.
void letPlasticStrainIncrementVectorBe(FloatArray v)
double & giveCurrentTensionStrength()
double & giveCurrentStressInStirrups()
double EPM
Max. eff. plastic strain.
void restoreContext(DataStream &stream, ContextMode mode) override
const FloatArray & givePlasticStrainIncrementVector() const
double SCTM
Current tension strength.
void initTempStatus() override
double & giveMaxEffPlasticStrain()
double & giveTempMaxVolPlasticStrain()
FloatArray plasticStrainVector
const FloatArray & givePlasticStrainVector() const
double & giveTempMaxEffPlasticStrain()
double E0PM
Max. vol. plastic strain.
double & giveCurrentStrainInZDir()
void letPlasticStrainVectorBe(FloatArray v)
double & giveMaxVolPlasticStrain()
double SRF
current stress in stirrups.
Concrete2MaterialStatus(GaussPoint *g)
double EOPU
Ultimate vol. pl. strain.
double EPP
Threshold eff. plastic strain for softening in compress.
double SCCC
Pressure strength.
void updateStirrups(GaussPoint *gp, FloatArray &strainIncrement, TimeStep *tStep) const
void stirr(double dez, double srf) const
double EPU
Ultimate eff. pl. strain.
int IFAD
Determines if state variables should be updated or not (>0 updates).
double EOPP
Threshold volumetric plastic strain for soft. in tension.
void initializeFrom(InputRecord &ir) override
void strsoft(GaussPoint *gp, double epsult, FloatArray &ep, double &ep1, double &ep2, double &ep3, double SCC, double SCT, int &ifupd) const
double give(int, GaussPoint *gp) const override
int IS_PLASTIC_FLOW
Indicates that plastic flow (not deformation theory) is used in pressure.
const char * giveClassName() const override
FloatMatrixF< 5, 5 > givePlateLayerStiffMtrx(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
void dtp3(GaussPoint *gp, FloatArray &e, FloatArray &s, FloatArray &ep, double SCC, double SCT, int *ifplas) const
double SCCT
Tension strength.
Concrete2(int n, Domain *d)
IsotropicLinearElasticMaterial linearElasticMaterial
const char * giveInputRecordName() const override
std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const override
void dtp2(GaussPoint *gp, FloatArray &e, FloatArray &s, FloatArray &ep, double SCC, double SCT, int *ifplas) const
FloatArrayF< 5 > giveRealStressVector_PlateLayer(const FloatArrayF< 5 > &strain, GaussPoint *gp, TimeStep *tStep) const override
Default implementation relies on giveRealStressVector_StressControl.
StructuralMaterialStatus(GaussPoint *g)
Constructor. Creates new StructuralMaterialStatus with IntegrationPoint g.
#define _IFT_Concrete2_Name