|
Acoustic FDTD Solver
|
The implementation of the decorator pattern requires the class to contain a pointer to itself. More...
#include <MaterialDecorator.hpp>
Public Member Functions | |
| 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 * | clone () const |
| virtual void | print () const |
| Print the parameters associated with the material. | |
| virtual | ~MaterialDecorator () |
| virtual double | getBulkModulus () const |
| Acoustic properties. | |
| virtual double | getDensity () const |
| Acoustic properties. | |
| virtual double | getAcousticConductivity () const |
| virtual double | getAcousticPhaseVelocity (const double frequency) const |
| Acoustic properties. | |
| virtual double | getAcousticWavelength (const double frequency) const |
| Acoustic properties. | |
| virtual std::complex< double > | getAcousticWaveNumber (const double frequency) const |
| Acoustic properties. | |
| virtual std::complex< double > | getAcousticImpedance (const double frequency) const |
| Acoustic properties. | |
| 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. | |
Public Member Functions inherited from Material | |
| virtual | ~Material () |
Protected Attributes | |
| Material * | material |
The implementation of the decorator pattern requires the class to contain a pointer to itself.
Thus, by the Rule of Three in C++ programming, we need to overload the copy constructor, the assignment constructor, and the destructor.
| MaterialDecorator::MaterialDecorator | ( | ) |
| MaterialDecorator::MaterialDecorator | ( | Material * | m | ) |
| MaterialDecorator::MaterialDecorator | ( | const MaterialDecorator & | the_decorator | ) |
|
virtual |
|
virtual |
Implements Material.
Reimplemented in HNAcousticProperty, AcousticProperty, and ElasticProperty.
|
virtual |
Implements Material.
Reimplemented in AcousticProperty.
|
virtual |
Acoustic properties.
Implements Material.
Reimplemented in HNAcousticProperty, and AcousticProperty.
|
virtual |
|
virtual |
|
virtual |
Acoustic properties.
Implements Material.
Reimplemented in HNAcousticProperty, and AcousticProperty.
|
virtual |
|
virtual |
|
virtual |
Electromagnetic properties.
Implements Material.
|
virtual |
Electromagnetic properties.
Implements Material.
|
virtual |
Electromagnetic properties.
Implements Material.
|
virtual |
Electromagnetic properties.
Implements Material.
|
virtual |
Electromagnetic properties.
Implements Material.
|
virtual |
|
virtual |
Electromagnetic properties.
Implements Material.
|
virtual |
Electromagnetic properties.
Implements Material.
|
virtual |
Electromagnetic properties.
Implements Material.
|
virtual |
|
virtual |
Thermal properties.
Implements Material.
|
virtual |
Thermal properties.
Implements Material.
|
virtual |
Thermal properties.
Implements Material.
|
virtual |
| MaterialDecorator & MaterialDecorator::operator= | ( | const MaterialDecorator & | the_decorator | ) |
|
virtual |
The objects need to be equality-comparable to be used with the Flyweight pattern.
We overload the equality operator.
Implements Material.
|
virtual |
Print the parameters associated with the material.
Implements Material.
Reimplemented in HNAcousticProperty, AcousticProperty, and ElasticProperty.
|
protected |
1.8.1.2