Loading...
Searching...
No Matches
CubbyFlow::MPMFluidConstitutiveModel< N > Class Template Referencefinal
Weakly compressible fluid constitutive model for MPM. More...
#include <Core/Particle/MPM/MPMFluidConstitutiveModel.hpp>
Public Types | |
| using | MatrixType = Matrix< double, N, N > |
Public Member Functions | |
| MPMFluidConstitutiveModel (double targetDensity=WATER_DENSITY, double speedOfSound=100.0, double eosExponent=7.0, double negativePressureScale=0.0) | |
| Constructs a weakly compressible MPM fluid model. | |
| double | GetTargetDensity () const |
| Returns the target density. | |
| double | GetSpeedOfSound () const |
| Returns the speed of sound. | |
| double | GetEosExponent () const |
| Returns the equation-of-state exponent. | |
| double | GetNegativePressureScale () const |
| Returns the negative-pressure scale. | |
| double | ComputeDensity (double mass, double currentVolume) const |
| Computes density from particle mass and current volume. | |
| double | ComputePressure (double density) const |
| Computes equation-of-state pressure for a density. | |
| MatrixType | ComputeCauchyStress (double pressure) const |
Converts pressure to the isotropic Cauchy stress -p I. | |
Detailed Description
template<size_t N>
class CubbyFlow::MPMFluidConstitutiveModel< N >
class CubbyFlow::MPMFluidConstitutiveModel< N >
Weakly compressible fluid constitutive model for MPM.
Computes particle density, Murnaghan-Tait equation-of-state pressure, and the corresponding isotropic Cauchy stress in 2-D or 3-D.
Member Typedef Documentation
◆ MatrixType
template<size_t N>
| using CubbyFlow::MPMFluidConstitutiveModel< N >::MatrixType = Matrix<double, N, N> |
Constructor & Destructor Documentation
◆ MPMFluidConstitutiveModel()
template<size_t N>
|
explicit |
Constructs a weakly compressible MPM fluid model.
- Parameters
-
[in] targetDensity Positive rest density. [in] speedOfSound Positive artificial speed of sound. [in] eosExponent Equation-of-state exponent, at least one. [in] negativePressureScale Expansion-pressure scale in [0, 1].
- Exceptions
-
std::invalid_argument If a parameter or the resulting equation-of-state scale is invalid.
Member Function Documentation
◆ ComputeCauchyStress()
template<size_t N>
| MPMFluidConstitutiveModel< N >::MatrixType CubbyFlow::MPMFluidConstitutiveModel< N >::ComputeCauchyStress | ( | double | pressure | ) | const |
Converts pressure to the isotropic Cauchy stress -p I.
- Exceptions
-
std::invalid_argument If the pressure is not finite.
◆ ComputeDensity()
template<size_t N>
| double CubbyFlow::MPMFluidConstitutiveModel< N >::ComputeDensity | ( | double | mass, |
| double | currentVolume | ||
| ) | const |
Computes density from particle mass and current volume.
- Exceptions
-
std::invalid_argument If either input or the resulting density is not finite and positive.
◆ ComputePressure()
template<size_t N>
| double CubbyFlow::MPMFluidConstitutiveModel< N >::ComputePressure | ( | double | density | ) | const |
Computes equation-of-state pressure for a density.
- Exceptions
-
std::invalid_argument If the density is not finite and positive or the resulting pressure is not finite.
◆ GetEosExponent()
template<size_t N>
| double CubbyFlow::MPMFluidConstitutiveModel< N >::GetEosExponent | ( | ) | const |
Returns the equation-of-state exponent.
◆ GetNegativePressureScale()
template<size_t N>
| double CubbyFlow::MPMFluidConstitutiveModel< N >::GetNegativePressureScale | ( | ) | const |
Returns the negative-pressure scale.
◆ GetSpeedOfSound()
template<size_t N>
| double CubbyFlow::MPMFluidConstitutiveModel< N >::GetSpeedOfSound | ( | ) | const |
Returns the speed of sound.
◆ GetTargetDensity()
template<size_t N>
| double CubbyFlow::MPMFluidConstitutiveModel< N >::GetTargetDensity | ( | ) | const |
Returns the target density.
The documentation for this class was generated from the following files:
- Core/Particle/MPM/MPMFluidConstitutiveModel.hpp
- Core/Particle/MPM/MPMFluidConstitutiveModel-Impl.hpp
1.9.8