The reflect_loss_netcdf object ingests a netCDF formatted file of bottom type data and creates a reflect_loss_rayleigh object to create a rayleigh reflection loss value for the bottom type number at a specific location and returns broadband reflection loss and phase change.
reflect_loss_netcdf | ( | const char * | filename | ) |
Constructor Loads bottom province data from a netCDF formatted file.
filename | Filename of the NetCDF file to ingest |
The information stored in "type" is set to a double with the value from 1 to the number of different bottom provinces for the profile.
Gets the size of the dimensions to be used to create the data grid
Extracts the data for all of the variables from the netcdf file and stores them
Creates a sequence vector of axises that are passed to the data grid constructor
Creates a data grid with the above assigned axises and populates the grid with the data from the netcdf file
Set the interpolation type to the nearest neighbor and restrict extrapolation
Builds a vector of reflect_loss_rayleigh values for all bottom province numbers
~reflect_loss_netcdf | ( | ) | [virtual] |
Destructor.
Iterates over the rayleigh reflection loss values and deletes them.
void reflect_loss | ( | const wposition1 & | location, | |
const seq_vector & | frequencies, | |||
double | angle, | |||
vector< double > * | amplitude, | |||
vector< double > * | phase = NULL | |||
) | [virtual] |
Gets a rayleigh reflection loss value for the bottom type number at a specific location then computes the broadband reflection loss and phase change.
Gets a rayleigh reflection loss value for the bottom province number at a specific location then computes the broadband reflection loss and phase change.
location | Location at which to compute attenuation. | |
frequencies | Frequencies over which to compute loss. (Hz) | |
angle | Reflection angle relative to the normal (radians). | |
amplitude | Change in ray strength in dB (output). | |
phase | Change in ray phase in radians (output). Phase change not computed if this is NULL. |
Implements reflect_loss_model.
data_grid<double, 2>* _bottom_grid [private] |
Data grid that stores all of the bottom province information.
std::vector<reflect_loss_rayleigh*> _rayleigh [private] |
Stored rayleigh models for bottom reflections.