Jpp 20.0.0-rc.9-29-gccc23c492-D
the software that should make you happy
Loading...
Searching...
No Matches
JAbstractSoundVelocity.hh
Go to the documentation of this file.
1#ifndef __JACOUSTICS__JABSTRACTSOUNDVELOCITY__
2#define __JACOUSTICS__JABSTRACTSOUNDVELOCITY__
3
4/**
5 * \file
6 *
7 * Abstract sound velocity.
8 * \author mdejong
9 */
10namespace JACOUSTICS {}
11namespace JPP { using namespace JACOUSTICS; }
12
13namespace JACOUSTICS {
14
15 /**
16 * Interface for depth dependend velocity of sound.
17 *
18 * Note that the z-axis is pointing upwards.
19 */
21 /**
22 * Virtual destructor.
23 */
25 {}
26
27
28 /**
29 * Get velocity of sound.
30 *
31 * \return velocity [m/s]
32 */
33 virtual double operator()() const = 0;
34
35
36 /**
37 * Get velocity of sound at given depth relative to seabed.
38 *
39 * \param z depth [m]
40 * \return velocity [m/s]
41 */
42 virtual double operator()(const double z) const
43 {
44 return (*this)();
45 }
46
47
48 /**
49 * Get distance travelled by sound.
50 *
51 * \param t_s time [s]
52 * \param z1 depth [m]
53 * \param z2 depth [m]
54 * \return distance [m]
55 */
56 virtual double getDistance(const double t_s,
57 const double z1,
58 const double z2) const = 0;
59
60
61 /**
62 * Get propagation time of sound.
63 *
64 * \param D_m distance [m]
65 * \param z1 depth [m]
66 * \param z2 depth [m]
67 * \return time [s]
68 */
69 virtual double getTime(const double D_m,
70 const double z1,
71 const double z2) const = 0;
72
73
74 /**
75 * Get inverse velocity of sound.
76 *
77 * \param D_m distance [m]
78 * \param z1 depth [m]
79 * \param z2 depth [m]
80 * \return inverse velocity [s/m]
81 */
82 virtual double getInverseVelocity(const double D_m,
83 const double z1,
84 const double z2) const = 0;
85 };
86}
87
88#endif
Auxiliary classes and methods for acoustic position calibration.
Interface for depth dependend velocity of sound.
virtual double operator()() const =0
Get velocity of sound.
virtual double getTime(const double D_m, const double z1, const double z2) const =0
Get propagation time of sound.
virtual double operator()(const double z) const
Get velocity of sound at given depth relative to seabed.
virtual double getDistance(const double t_s, const double z1, const double z2) const =0
Get distance travelled by sound.
virtual double getInverseVelocity(const double D_m, const double z1, const double z2) const =0
Get inverse velocity of sound.
virtual ~JAbstractSoundVelocity()
Virtual destructor.