specfem::medium::material< dim3, acoustic, isotropic >¶
-
template<specfem::dimension::type DimensionTag>
class material<DimensionTag, specfem::element::medium_tag::acoustic, specfem::element::property_tag::isotropic> Template specialization for acoustic isotropic material properties.
Constructors
-
inline material(const type_real &density, const type_real &cp, const type_real &Qkappa, const type_real &Qmu, const type_real &compaction_grad)
Construct a new acoustic isotropic material.
- Parameters:
density – Density of the material
cp – Compressional wave speed
Qkappa – Attenuation factor for bulk modulus
Qmu – Attenuation factor for shear modulus
compaction_grad – Compaction gradient
-
inline bool operator==(const material<dimension_tag, specfem::element::medium_tag::acoustic, specfem::element::property_tag::isotropic> &other) const
Check if 2 materials have the same properties.
- Parameters:
other – Material to compare with
- Returns:
true If the materials have the same properties
-
inline bool operator!=(const material<dimension_tag, specfem::element::medium_tag::acoustic, specfem::element::property_tag::isotropic> &other) const
Check if 2 materials have different properties.
- Parameters:
other – Material to compare with
- Returns:
true If the materials have different properties
-
material() = default
Default constructor.
Public Functions
-
inline specfem::point::properties<dimension_tag, medium_tag, property_tag, false> get_properties() const
Get the properties of the material.
- Returns:
specfem::point::properties Material properties
-
inline std::string print() const
Print the material properties.
- Returns:
std::string Formatted material properties
Public Static Attributes
-
static constexpr auto dimension_tag = DimensionTag
Dimension of the material.
-
static constexpr auto medium_tag = specfem::element::medium_tag::acoustic
Medium tag.
-
static constexpr auto property_tag = specfem::element::property_tag::isotropic
Property tag.
Private Members
-
type_real density
Density of the material.
-
type_real cp
Compressional wave speed.
-
type_real Qkappa
Attenuation factor for bulk modulus.
-
type_real Qmu
Attenuation factor for shear modulus.
-
type_real compaction_grad
Compaction gradient.
-
type_real kappa
Bulk modulus.
-
inline material(const type_real &density, const type_real &cp, const type_real &Qkappa, const type_real &Qmu, const type_real &compaction_grad)