Public Member Functions |
| | HNAcousticProperty () |
| | HNAcousticProperty (const std::string &name) |
| | HNAcousticProperty (const double bulk_modls, const double density, const double relax_time, const double retrd_time, const double frac_exp) |
| | HNAcousticProperty (Material *m, const double bulk_modls, const double density, const double relax_time, const double retrd_time, const double frac_exp) |
| | HNAcousticProperty (const HNAcousticProperty &the_property) |
| HNAcousticProperty & | operator= (const HNAcousticProperty &the_property) |
| HNAcousticProperty * | clone () const |
| void | print () const |
| | Print the parameters associated with the material.
|
| | ~HNAcousticProperty () |
| virtual std::complex< double > | getAcousticWaveNumber (const double freq) const |
| | Use the dipersion model to calculate the acoustic wave number.
|
| virtual std::complex< double > | getAcousticImpedance (const double freq) const |
| | Use the dispersion model to calculate the medium impedance.
|
| virtual double | getEquivalentBulkModulus (const double freq) const |
| virtual double | getEquivalentConductivity (const double freq) const |
| | AcousticProperty () |
| | Acoustic properties of water.
|
| | AcousticProperty (const std::string &name) |
| | AcousticProperty (const double bulk_modulus, const double density, const double conductive_loss) |
| | AcousticProperty (Material *m, const double phase_velocity, const double density, const double attn=0) |
| | AcousticProperty (const AcousticProperty &the_property) |
| AcousticProperty & | operator= (const AcousticProperty &the_property) |
| | ~AcousticProperty () |
| virtual double | getBulkModulus () const |
| | Acoustic properties.
|
| virtual double | getDensity () const |
| | Acoustic properties.
|
| virtual double | getAcousticConductivity () const |
| virtual double | getAcousticPhaseVelocity (const double freq) const |
| | Acoustic properties.
|
| virtual double | getAcousticWavelength (const double freq) const |
| | Acoustic properties.
|
| virtual double | getAbsorptionDepth (const double freq) const |
| | MaterialDecorator () |
| | MaterialDecorator (Material *m) |
| | MaterialDecorator (const MaterialDecorator &the_decorator) |
| MaterialDecorator & | operator= (const MaterialDecorator &the_decorator) |
| bool | operator== (const Material &m) const |
| | The objects need to be equality-comparable to be used with the Flyweight pattern.
|
| virtual | ~MaterialDecorator () |
| virtual double | getYoungsModulus () const |
| | Elastic properties.
|
| virtual double | getLameFirst () const |
| | Elastic properties, represented by .
|
| virtual double | getShearModulus () const |
| | Elastic properties, represented by or .
|
| virtual double | getThermalConductivity () const |
| | Thermal properties.
|
| virtual double | getSpecificHeat () const |
| | Thermal properties.
|
| virtual double | getThermalExpansion () const |
| | Thermal properties.
|
| virtual double | getElectricConductivity () const |
| | Electromagnetic properties.
|
| virtual double | getRelativePermittivity () const |
| | Electromagnetic properties.
|
| virtual double | getMagneticConductivity () const |
| | Electromagnetic properties.
|
| virtual double | getRelativePermeability () const |
| | Electromagnetic properties.
|
| virtual double | getElectromagneticPhaseVelocity (const double frequency) const |
| | Electromagnetic properties.
|
| virtual double | getElectromagneticWavelength (const double frequency) const |
| | Electromagnetic properties.
|
| virtual std::complex< double > | getElectromagneticWaveNumber (const double frequency) const |
| | Electromagnetic properties.
|
| virtual std::complex< double > | getElectromagneticImpedance (const double frequency) const |
| | Electromagnetic properties.
|
| virtual | ~Material () |
Implement the dispersion model proposed in [Holm2011].
The constitutive relation is give by
where
denotes the DC bulk modulus,
denotes the relaxiation time,
denotes the retardation time, and
denotes the fractional exponent.