A reflection loss model computes the changes in intensity and phase that result from the reflection of a ray from a boundary.
Reflection is calculated on a ray-by-ray basis instead of across the wavefront because only selected rays interact with the boundary at any given time step. These models compute their results as a function of frequency to support broadband acoustics.
virtual ~reflect_loss_model | ( | ) | [inline, virtual] |
Virtual destructor.
virtual void reflect_loss | ( | const wposition1 & | location, | |
const seq_vector & | frequencies, | |||
double | angle, | |||
vector< double > * | amplitude, | |||
vector< double > * | phase = NULL | |||
) | [pure virtual] |
Computes the broadband reflection loss and phase change for a single location.
location | Location at which to compute reflection loss. | |
frequencies | Frequencies over which to compute loss. (Hz) | |
angle | Grazing angle relative to the interface (radians). | |
amplitude | Change in ray intensity in dB (output). | |
phase | Change in ray phase in radians (output). Phase change not computed if this is NULL. |
Implemented in boundary_model, reflect_loss_beckmann, reflect_loss_constant, reflect_loss_eckart, reflect_loss_netcdf, reflect_loss_rayleigh, and reflect_loss_rayleigh_grid.