52#define _IFT_Material_density "d"
53#define _IFT_Material_castingtime "castingtime"
54#define _IFT_Material_preCastingTimeMat "precastingtimemat"
58#define STRAIN_STEPS 10.0
65class ProcessCommunicator;
150 virtual double giveCharacteristicValue(MatResponseMode type,
GaussPoint* gp,
TimeStep *tStep)
const ;
159 virtual double give(
int aProperty,
GaussPoint *gp)
const;
166 virtual bool hasProperty(
int aProperty,
GaussPoint *gp)
const;
173 virtual void modifyProperty(
int aProperty,
double value,
GaussPoint *gp);
196 virtual bool hasMaterialModeCapability(MaterialMode mode)
const;
202 virtual bool hasCastingTimeSupport()
const;
229 void printYourself()
override;
255 int checkConsistency()
override;
269 virtual int initMaterial(
Element *element);
333 {
return std::unique_ptr<MaterialStatus>() ; }
344 virtual void initTempStatus(
GaussPoint *gp)
const;
FEMComponent(int n, Domain *d)
virtual std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const
virtual ~Material()=default
Destructor.
double giveCastingTime() const
Material(int n, Domain *d)
virtual int setIPValue(const FloatArray &value, GaussPoint *gp, InternalStateType type)
virtual void giveCharacteristicVector(FloatArray &answer, FloatArray &flux, MatResponseMode type, GaussPoint *gp, TimeStep *tStep) const
Returns characteristic vector of the receiver.
virtual void giveCharacteristicMatrix(FloatMatrix &answer, MatResponseMode type, GaussPoint *gp, TimeStep *tStep) const
Returns characteristic matrix of the receiver.
virtual int estimatePackSize(DataStream &buff, GaussPoint *ip)
virtual int unpackAndUpdateUnknowns(DataStream &buff, TimeStep *tStep, GaussPoint *ip)
virtual void restoreConsistency(GaussPoint *gp)
int preCastingTimeMat
Material existing before casting time - optional parameter, zero by default.
virtual double predictRelativeComputationalCost(GaussPoint *gp)
virtual bool isCharacteristicMtrxSymmetric(MatResponseMode rMode) const
Dictionary propertyDictionary
virtual bool isActivated(TimeStep *tStep) const
virtual double predictRelativeRedistributionCost(GaussPoint *gp)
virtual int packUnknowns(DataStream &buff, TimeStep *tStep, GaussPoint *ip)
double giveTargetTime()
Returns target time.