25 #ifndef _GEMA_PLUGIN_MECHANICALMATERIAL_FLUID_H_ 26 #define _GEMA_PLUGIN_MECHANICALMATERIAL_FLUID_H_ 29 #include <gmpFemPhysics.h> 57 virtual const QVariantMap* materialMetaDataMap()
63 m[
"properties"] = GmpFemPhysicsCommon::ValueList()
64 << GmpFemPhysicsCommon::ScalarValue(Bf_ID,
"Bf",
QObject::tr(
"Fluid compressibility"),
"1/kPa",
true);
91 const GmVector eu_old(mp->_oldStrain->valueAt(e, ip, coord), ns);
93 const GmVector s_old(mp->_oldStress->valueAt(e, ip, coord), ns);
95 const GmVector sr(mp->_residualStress->valueAt(e, ip, coord), ns);
98 const GmVector eu(mp->_newStrain->valueAt(e,ip, coord), ns);
101 double Cf = fluidCompressibility(e, coord, ip);
109 dStrain = eu - eu_old;
112 s = s_old + De*dStrain + sr;
115 mp->_newStress->setValue(e, ip, s.mem);
116 mp->_newYSR->setScalarValue(e, ip, 1.0);
127 double Cf = propertyAc(Bf_ID)->scalarValueAt(e, coord, ip);
void elasticStiffnessKG(GmMatrix &De, double K, double G, unsigned sc, unsigned ips)
Computes the elastic stiffness matrix using K and G.
Definition: gmpMechanicalMaterial.cpp:983
ElementPropertyIds
IDs for material element properties.
Definition: gmpMaterialFluid.h:39
virtual bool mechanicalConstitutiveModel(const GmElement *e, GmMatrix &De, const GmpMechanicPoint *mp, const GmVector *coord, const GmVector &Time, unsigned sc, bool ips) const
Evaluates stress and tangent matrix according to the material behavior adopted.
Definition: gmpMaterialFluid.h:77
static GmpFemPhysicsCommonMaterial * instance(GmSimulationData *simulation, int typeIndex, QString typeName, const GmLogCategory &logger)
A "factory" function used to register the material with the physics material factory.
Definition: gmpMaterialFluid.h:70
Declaration of the GmpMechanicalMaterial class.
QString tr(const char *sourceText, const char *disambiguation, int n)
Basic class providing the interface for a mechanical material.
Definition: gmpMechanicalMaterial.h:41
virtual ~GmpMaterialFluid()
Virtual destructor.
Definition: gmpMaterialFluid.h:54
The number of property ids above.
Definition: gmpMaterialFluid.h:44
Definition: gmpMechanicPoint.h:32
GmpMaterialFluid(int typeIndex, QString typeName, const GmLogCategory &logger)
Constructor. Gets as parameters the material index and its name.
Definition: gmpMaterialFluid.h:50
char bit_enum_count(unsigned list, unsigned last)
virtual bool isIsotropic() const
Returns true if the material is isotropic, false otherwise.
Definition: gmpMaterialFluid.h:121
Id for retrieving the Fluid compressibiolity accessor.
Definition: gmpMaterialFluid.h:41
Declaration of the GmpMechanicPoint class.
Definition: gmpMaterialFluid.h:35
Declaration of usefull configuration definitions for the plugin library.
virtual double fluidCompressibility(const GmElement *e, const GmVector *coord, int ip) const
Returns the material elastic modulus.
Definition: gmpMaterialFluid.h:124