Sound speed model constructed from a 1-D, 2-D, or 3-D data grid.
The coordinate system for each kind of data set is:
---NOTE: altitude is the distance from the surface of the ocean to the location under the ocean with down as negative.
^^^NOTE: All calculations are under the assumption that the grid axes passed in have already been transformed to their spherical earth equivalents (altitude -> rho, theta,phi).
profile_grid | ( | data_grid< DATA_TYPE, NUM_DIMS > * | speed, | |
attenuation_model * | attmodel = NULL | |||
) | [inline] |
Default behavior for new profile models.
speed | Sound speed for the whole ocean (m/s). Assumes control of this grid and deletes it when the class is destroyed. | |
attmodel | In-water attenuation model. Defaults to Thorp. The profile_model takes over ownership of this reference and deletes it as part of its destructor. |
virtual ~profile_grid | ( | ) | [inline, virtual] |
Delete sound speed grid.
virtual void sound_speed | ( | const wposition & | location, | |
matrix< double > * | speed, | |||
wvector * | gradient = NULL | |||
) | [inline, virtual] |
Compute the speed of sound and it's first derivatives at a series of locations.
location | Location at which to compute attenuation. | |
speed | Speed of sound (m/s) at each location (output). | |
gradient | Sound speed gradient at each location (output). |
Implements profile_model.
data_grid<DATA_TYPE,NUM_DIMS>* _sound_speed [private] |
Sound speed for all locations.