USML
boundary_grid< DATA_TYPE, NUM_DIMS > Class Template Reference
Collaboration diagram for boundary_grid< DATA_TYPE, NUM_DIMS >:

Detailed Description

template<class DATA_TYPE, int NUM_DIMS>
class usml::ocean::boundary_grid< DATA_TYPE, NUM_DIMS >

Bottom model constructed from a 1-D or 2-D data grid.

The coordinate system for each kind of data set is:

 - 1-D: Assumes that the bottom depth is a function of latitude and
        that the geodetic axes have been transformed to
        their spherical earth equivalents (theta).
 - 2-D: Assumes that the order of axes in the grid is
        (latitude, longitude) and that the geodetic
        axes have been transformed to their spherical earth
        equivalents (theta,phi).

Uses the GRID_INTERP_PCHIP interpolation in both directions to reduce sudden changes in surface normal direction. Values outside of the latitude/longitude axes defined by the data grid at limited to the values at the grid edge.

Constructor & Destructor Documentation

boundary_grid ( data_grid< DATA_TYPE, NUM_DIMS > *  height,
reflect_loss_model reflect_loss = NULL 
)
inline

Initialize depth and reflection loss components for a boundary.

Parameters
heightBottom depth (meters) as a function of position. Assumes control of this grid and deletes it when the class is destroyed.
reflect_lossReflection loss model. Defaults to a Rayleigh reflection for "sand" if NULL. The boundary_model takes over ownship of this reference and deletes it as part of its destructor.
virtual ~boundary_grid ( )
inlinevirtual

Delete boundary grid.

Member Function Documentation

virtual void height ( const wposition location,
matrix< double > *  rho,
wvector normal = NULL,
bool  quick_interp = false 
)
inlinevirtual

Compute the height of the boundary and it's surface normal at a series of locations.

Parameters
locationLocation at which to compute boundary.
rhoSurface height in spherical earth coords (output).
normalUnit normal relative to location (output).
quick_interpDetermines if you want a fast nearest or pchip interp

Implements boundary_model.

virtual void height ( const wposition1 location,
double *  rho,
wvector1 normal = NULL,
bool  quick_interp = false 
)
inlinevirtual

Compute the height of the boundary and it's surface normal at a single location.

Often used during reflection processing.

Parameters
locationLocation at which to compute boundary.
rhoSurface height in spherical earth coords (output).
normalUnit normal relative to location (output).
quick_interpDetermines if you want a fast nearest or pchip interp

Implements boundary_model.

Member Data Documentation

data_grid<DATA_TYPE, NUM_DIMS>* _height
protected

Boundary for all locations.