A class to manage the parameters for generating a wave. More...
#include <Wavefield.hh>
Public Member Functions | |
double | Amplitude () const |
The amplitude of the mean wave in [m]. More... | |
const std::vector< double > & | Amplitude_V () const |
Access the component amplitudes. More... | |
double | Angle () const |
The angle between the mean wave direction and the largest / smallest component waves. More... | |
double | AngularFrequency () const |
The angular frequency. More... | |
const std::vector< double > & | AngularFrequency_V () const |
Access the component angular frequencies. More... | |
void | DebugPrint () const |
Print a summary of the wave parameters to the gzmsg stream. More... | |
ignition::math::Vector2d | Direction () const |
A two component vector specifiying the direction. More... | |
const std::vector< ignition::math::Vector2d > & | Direction_V () const |
Access the component directions. More... | |
float | Gain () const |
Amplitude multiplier for PMS. More... | |
size_t | Number () const |
The number of wave components (3 max if visualisation required). More... | |
double | Period () const |
The period of the mean wave in [s]. More... | |
double | Phase () const |
The phase of the mean wave. More... | |
const std::vector< double > & | Phase_V () const |
Access the component phases. More... | |
double | Scale () const |
The scale between the mean and largest / smallest component waves. More... | |
void | SetAmplitude (double _amplitude) |
Set the mean wave amplitude. Must be positive. More... | |
void | SetAngle (double _angle) |
Set the angle parameter controlling the direction of the component waves. More... | |
void | SetDirection (const ignition::math::Vector2d &_direction) |
Set the mean wave direction. More... | |
void | SetFromSDF (sdf::Element &_sdf) |
Set the parameters from an SDF Element tree. More... | |
void | SetGain (double _gain) |
Set the PMS amplitude multiplier. More... | |
void | SetNumber (size_t _number) |
Set the number of wave components (3 max). More... | |
void | SetPeriod (double _period) |
Set the mean wave period. Must be positive. More... | |
void | SetPhase (double _phase) |
Set the mean wave phase. More... | |
void | SetScale (double _scale) |
Set the scale parameter controlling the range of amplitudes of the component waves. More... | |
void | SetSteepness (double _steepness) |
Set the steepness parameter controlling the steepness of the waves. In [0, 1]. More... | |
void | SetTau (double _tau) |
Set the time constant. More... | |
double | Steepness () const |
A parameter in [0, 1] controlling the wave steepness with 1 being steepest. More... | |
const std::vector< double > & | Steepness_V () const |
Access the steepness components. More... | |
float | Tau () const |
Time-constant for starting waves. More... | |
double | Wavelength () const |
The mean wavelength. More... | |
double | Wavenumber () const |
The mean wavenumber. More... | |
const std::vector< double > & | Wavenumber_V () const |
Access the component wavenumbers. More... | |
WaveParameters () | |
Constructor. More... | |
~WaveParameters () | |
Destructor. More... | |
Private Attributes | |
std::shared_ptr< WaveParametersPrivate > | data |
A class to manage the parameters for generating a wave.
in a wave field.
Definition at line 58 of file Wavefield.hh.
asv::WaveParameters::~WaveParameters | ( | ) |
Destructor.
Definition at line 289 of file Wavefield.cc.
asv::WaveParameters::WaveParameters | ( | ) |
Constructor.
Definition at line 293 of file Wavefield.cc.
double asv::WaveParameters::Amplitude | ( | ) | const |
The amplitude of the mean wave in [m].
Definition at line 350 of file Wavefield.cc.
const std::vector< double > & asv::WaveParameters::Amplitude_V | ( | ) | const |
Access the component amplitudes.
Definition at line 452 of file Wavefield.cc.
double asv::WaveParameters::Angle | ( | ) | const |
The angle between the mean wave direction and the largest / smallest component waves.
Definition at line 330 of file Wavefield.cc.
double asv::WaveParameters::AngularFrequency | ( | ) | const |
The angular frequency.
Definition at line 345 of file Wavefield.cc.
const std::vector< double > & asv::WaveParameters::AngularFrequency_V | ( | ) | const |
Access the component angular frequencies.
Definition at line 447 of file Wavefield.cc.
void asv::WaveParameters::DebugPrint | ( | ) | const |
Print a summary of the wave parameters to the gzmsg stream.
Definition at line 478 of file Wavefield.cc.
ignition::math::Vector2d asv::WaveParameters::Direction | ( | ) | const |
A two component vector specifiying the direction.
of the mean wave.
Definition at line 385 of file Wavefield.cc.
const std::vector< ignition::math::Vector2d > & asv::WaveParameters::Direction_V | ( | ) | const |
Access the component directions.
Definition at line 473 of file Wavefield.cc.
float asv::WaveParameters::Gain | ( | ) | const |
Amplitude multiplier for PMS.
Definition at line 380 of file Wavefield.cc.
size_t asv::WaveParameters::Number | ( | ) | const |
The number of wave components (3 max if visualisation required).
Definition at line 325 of file Wavefield.cc.
double asv::WaveParameters::Period | ( | ) | const |
The period of the mean wave in [s].
Definition at line 355 of file Wavefield.cc.
double asv::WaveParameters::Phase | ( | ) | const |
The phase of the mean wave.
Definition at line 360 of file Wavefield.cc.
const std::vector< double > & asv::WaveParameters::Phase_V | ( | ) | const |
Access the component phases.
Definition at line 457 of file Wavefield.cc.
double asv::WaveParameters::Scale | ( | ) | const |
The scale between the mean and largest / smallest component waves.
Definition at line 335 of file Wavefield.cc.
void asv::WaveParameters::SetAmplitude | ( | double | _amplitude | ) |
Set the mean wave amplitude. Must be positive.
[in] | _amplitude | The amplitude parameter. |
Definition at line 414 of file Wavefield.cc.
void asv::WaveParameters::SetAngle | ( | double | _angle | ) |
Set the angle parameter controlling the direction of the component waves.
[in] | _angle | The angle parameter. |
Definition at line 396 of file Wavefield.cc.
void asv::WaveParameters::SetDirection | ( | const ignition::math::Vector2d & | _direction | ) |
Set the mean wave direction.
[in] | _direction | The direction parameter, a two component vector. |
Definition at line 441 of file Wavefield.cc.
void asv::WaveParameters::SetFromSDF | ( | sdf::Element & | _sdf | ) |
Set the parameters from an SDF Element tree.
[in] | _sdf | The SDF Element tree containing the wave parameters. |
Definition at line 299 of file Wavefield.cc.
void asv::WaveParameters::SetGain | ( | double | _gain | ) |
Set the PMS amplitude multiplier.
[in] | _gain | The multiplier |
Definition at line 436 of file Wavefield.cc.
void asv::WaveParameters::SetNumber | ( | size_t | _number | ) |
Set the number of wave components (3 max).
[in] | _number | The number of component waves. |
Definition at line 390 of file Wavefield.cc.
void asv::WaveParameters::SetPeriod | ( | double | _period | ) |
Set the mean wave period. Must be positive.
[in] | _period | The period parameter. |
Definition at line 420 of file Wavefield.cc.
void asv::WaveParameters::SetPhase | ( | double | _phase | ) |
Set the mean wave phase.
[in] | _phase | The phase parameter. |
Definition at line 426 of file Wavefield.cc.
void asv::WaveParameters::SetScale | ( | double | _scale | ) |
Set the scale parameter controlling the range of amplitudes of the component waves.
[in] | _scale | The scale parameter. |
Definition at line 402 of file Wavefield.cc.
void asv::WaveParameters::SetSteepness | ( | double | _steepness | ) |
Set the steepness parameter controlling the steepness of the waves. In [0, 1].
[in] | _steepness | The steepness parameter. |
Definition at line 408 of file Wavefield.cc.
void asv::WaveParameters::SetTau | ( | double | _tau | ) |
Set the time constant.
[in] | _tau | The time constant. |
Definition at line 432 of file Wavefield.cc.
double asv::WaveParameters::Steepness | ( | ) | const |
A parameter in [0, 1] controlling the wave steepness with 1 being steepest.
Definition at line 340 of file Wavefield.cc.
const std::vector< double > & asv::WaveParameters::Steepness_V | ( | ) | const |
Access the steepness components.
Definition at line 462 of file Wavefield.cc.
float asv::WaveParameters::Tau | ( | ) | const |
Time-constant for starting waves.
Definition at line 375 of file Wavefield.cc.
double asv::WaveParameters::Wavelength | ( | ) | const |
The mean wavelength.
Definition at line 365 of file Wavefield.cc.
double asv::WaveParameters::Wavenumber | ( | ) | const |
The mean wavenumber.
Definition at line 370 of file Wavefield.cc.
const std::vector< double > & asv::WaveParameters::Wavenumber_V | ( | ) | const |
Access the component wavenumbers.
Definition at line 467 of file Wavefield.cc.
|
private |
Definition at line 190 of file Wavefield.hh.