|
Jpp - the software that should make you happy
|
Implementation for velocity of sound. More...
#include <JSoundVelocity.hh>
Public Member Functions | |
| JSoundVelocity (const double a, const double b, const double z0) | |
| Constructor. More... | |
| JSoundVelocity & | set (const double z0) |
| Set depth. More... | |
| JSoundVelocity | operator[] (const double z0) const |
| Get sound velocity at given depth. More... | |
| virtual double | operator() () const |
| Get velocity of sound. More... | |
| virtual double | operator() (const double z) const |
| Get velocity of sound at given depth relative to seabed. More... | |
| virtual double | getDistance (const double t_s, const double z1, const double z2) const |
| Get distance travelled by sound. More... | |
| virtual double | getTime (const double D_m, const double z1, const double z2) const |
| Get propagation time of sound. More... | |
| virtual double | getInverseVelocity (const double D_m, const double z1, const double z2) const |
| Get inverse velocity of sound. More... | |
Private Attributes | |
| double | a |
| double | b |
| double | z0 |
Friends | |
| std::istream & | operator>> (std::istream &in, JSoundVelocity &velocity) |
| Read sound velocity from input. More... | |
| std::ostream & | operator<< (std::ostream &out, const JSoundVelocity &velocity) |
| Write sound velocity to output. More... | |
Implementation for velocity of sound.
Note that
It is assumed that the dependence of the sound velocity on the depth is non-zero.
The depth is commonly referred to as the seabed.
Definition at line 35 of file JSoundVelocity.hh.
|
inline |
Constructor.
Note that depth is negative.
| a | velocity [m/s] |
| b | d(v)/d(z) [m/s/m] |
| z0 | depth [m] |
Definition at line 47 of file JSoundVelocity.hh.
|
inline |
Set depth.
Note that depth is negative.
| z0 | depth [m] |
Definition at line 62 of file JSoundVelocity.hh.
|
inline |
Get sound velocity at given depth.
Note that depth is negative.
| z0 | depth [m] |
Definition at line 79 of file JSoundVelocity.hh.
|
inlinevirtual |
Get velocity of sound.
Implements JACOUSTICS::JAbstractSoundVelocity.
Definition at line 90 of file JSoundVelocity.hh.
|
inlinevirtual |
Get velocity of sound at given depth relative to seabed.
| z | depth [m] |
Reimplemented from JACOUSTICS::JAbstractSoundVelocity.
Definition at line 102 of file JSoundVelocity.hh.
|
inlinevirtual |
Get distance travelled by sound.
The distance travelled is obtained by consistency with method JSoundVelocity::getTime.
| t_s | time [s] |
| z1 | depth [m] |
| z2 | depth [m] return distance [m] |
Implements JACOUSTICS::JAbstractSoundVelocity.
Definition at line 118 of file JSoundVelocity.hh.
|
inlinevirtual |
Get propagation time of sound.
The propagation time is obtained from the integral
.
| D_m | distance [m] |
| z1 | depth [m] |
| z2 | depth [m] return time [s] |
Implements JACOUSTICS::JAbstractSoundVelocity.
Definition at line 145 of file JSoundVelocity.hh.
|
inlinevirtual |
Get inverse velocity of sound.
The inverse velocity is obtained from the propagation time given by method JSoundVelocity::getTime.
| D_m | distance [m] |
| z1 | depth [m] |
| z2 | depth [m] return inverse velocity [s/m] |
Implements JACOUSTICS::JAbstractSoundVelocity.
Definition at line 172 of file JSoundVelocity.hh.
|
friend |
Read sound velocity from input.
| in | input stream |
| velocity | sound velocity |
Definition at line 196 of file JSoundVelocity.hh.
|
friend |
Write sound velocity to output.
| out | output stream |
| velocity | sound velocity |
Definition at line 225 of file JSoundVelocity.hh.
|
private |
Definition at line 233 of file JSoundVelocity.hh.
|
private |
Definition at line 234 of file JSoundVelocity.hh.
|
private |
Definition at line 235 of file JSoundVelocity.hh.
1.8.5