USML
profile_munk Class Reference
Collaboration diagram for profile_munk:

Detailed Description

Creates an analytic model for the Munk profile, an idealized representation of a deep sound (SOFAR) channel.

The Munk profile is defined as:

         z' = 2 * (z-z1)/B ;
         c(z) = c1 * (1.0 + e * (z'-1.0+exp(-z'))) ;
where:
         z    = depth below the ocean surface (positive direction down),
         z1   = depth of the deep sound channel axis,
         B    = depth scaling factor,
         c1   = sound speed on the deep sound channel axis,
         e    = perturbation coefficient,
         c(z) = speed of sound as a function of depth.
References:
W. H. Munk, "Sound channel in an exponentially stratified ocean, with application to SOFAR", J. Acoust. Soc. Amer. (55) (1974) pp. 220-226.

Constructor & Destructor Documentation

profile_munk ( double  axis_depth = 1300.0,
double  scale = 1300.0,
double  axis_speed = 1500.0,
double  epsilon = 7.37e-3,
attenuation_model attmodel = NULL 
)
inline

Build Munk profile from its component parts.

Default to the profile parameters defined in Jensen, Kuperman, et. al.

Parameters
axis_depthDepth of the deep sound channel axis (meters).
scaleDepth scaling factor (meters).
axis_speedSound speed on the deep sound channel axis (m/s).
epsilonPerturbation coefficient.
attmodelIn-water attenuation model. Defaults to Thorp. The profile_model takes over ownship of this reference and deletes it as part of its destructor.
References:
F.B. Jensen, W.A. Kuperman, M.B. Porter, H. Schmidt, "Computational Ocean Acoustics", Figure 3.19 (b).

Member Function Documentation

double axis_depth ( )
inline

Depth of the deep sound channel axis (meters)

double axis_speed ( )
inline

Sound speed on the deep sound channel axis (m/s).

double epsilon ( )
inline

Perturbation coefficient.

double scale ( )
inline

Depth scaling factor (meters).

void sound_speed ( const wposition location,
matrix< double > *  speed,
wvector gradient = NULL 
)
virtual

Compute the speed of sound and it's first derivatives at a series of locations.

Parameters
locationLocation at which to compute sound speed.
speedSpeed of sound (m/s) at each location (output).
gradientSound speed gradient at each location (output).

Implements profile_model.

Member Data Documentation

const double _axis_depth
private

Depth of the deep sound channel axis (meters)

const double _axis_speed
private

Sound speed on the deep sound channel axis (m/s).

const double _epsilon
private

Perturbation coefficient.

const double _scale
private

Depth scaling factor (meters).