volume_model Class Reference
[Ocean Boundaries]

Collaboration diagram for volume_model:
Collaboration graph
[legend]

Detailed Description

A "volume scattering layer model" computes the environmental parameters of a single volume scattering layer in the ocean.

The modeled properties include the depth, thickness, and reverberation scattering strength of the layer. Depth is defined using the average (center) distance of the layer relative to the center of the earth. Thickness is the full distance from the bottom to the top of the layer.


Constructor & Destructor Documentation

volume_model ( scattering_model scatter = NULL  )  [inline]

Initialize reflection loss components for a boundary.

Parameters:
scatter Reverberation scattering strength model
virtual ~volume_model (  )  [inline, virtual]

Delete reflection loss model.


Member Function Documentation

virtual void depth ( const wposition1 location,
double *  rho,
double *  thickness = NULL 
) [pure virtual]

Compute the depth of the layer and it's thickness at a single location.

Often used to process the reverberation for individual collisions with volume scattering layer.

Parameters:
location Location at which to compute boundary.
rho Depth of layer center in spherical earth coords (output).
thickness Layer thickness (output).

Implemented in volume_flat.

virtual void depth ( const wposition location,
matrix< double > *  rho,
matrix< double > *  thickness = NULL 
) [pure virtual]

Compute the depth of the layer and it's thickness at a series of locations.

Often used to detect collisions between ray paths and the volume scattering layer.

Parameters:
location Location at which to compute boundary.
rho Depth of layer center in spherical earth coords (output).
thickness Layer thickness (output).

Implemented in volume_flat.

virtual void scattering ( const wposition location,
const seq_vector frequencies,
double  de_incident,
matrix< double >  de_scattered,
double  az_incident,
matrix< double >  az_scattered,
matrix< vector< double > > *  amplitude 
) [inline, virtual]

Computes the broadband scattering strength for a collection of scattering angles from a common incoming ray.

Each scattering has its own location, de_scattered, and az_scattered. The result is a broadband reverberation scattering strength for each scattering.

Parameters:
location Location at which to compute attenuation.
frequencies Frequencies over which to compute loss. (Hz)
de_incident Depression incident angle (radians).
de_scattered Depression scattered angle (radians).
az_incident Azimuthal incident angle (radians).
az_scattered Azimuthal scattered angle (radians).
amplitude Reverberation scattering strength ratio (output).

Implements scattering_model.

virtual void scattering ( const wposition1 location,
const seq_vector frequencies,
double  de_incident,
double  de_scattered,
double  az_incident,
double  az_scattered,
vector< double > *  amplitude 
) [inline, virtual]

Computes the broadband scattering strength for a single location.

Parameters:
location Location at which to compute attenuation.
frequencies Frequencies over which to compute loss. (Hz)
de_incident Depression incident angle (radians).
de_scattered Depression scattered angle (radians).
az_incident Azimuthal incident angle (radians).
az_scattered Azimuthal scattered angle (radians).
amplitude Change in ray strength in dB (output).

Implements scattering_model.

void scattering ( scattering_model scattering  )  [inline]

Define a new reverberation scattering strength model.

Parameters:
scattering Scattering model for this layer.

Member Data Documentation

Reference to the scattering strength model.


Generated on 4 May 2015 for USML by  doxygen 1.6.1