USML
reflect_loss_constant.h
1 
5 #ifndef USML_OCEAN_REFLECT_LOSS_CONSTANT_H
6 #define USML_OCEAN_REFLECT_LOSS_CONSTANT_H
7 
8 #include <usml/ocean/reflect_loss_model.h>
9 
10 namespace usml {
11 namespace ocean {
12 
13 using boost::numeric::ublas::vector;
14 
17 
22 class USML_DECLSPEC reflect_loss_constant : public reflect_loss_model {
23 
24  private:
25 
27  double _amplitude ;
28 
30  double _phase ;
31 
32  public:
33 
40  reflect_loss_constant( double amplitude, double phase=0.0 ) :
41  _amplitude(amplitude), _phase(phase) {}
42 
53  virtual void reflect_loss(
54  const wposition1& location,
55  const seq_vector& frequencies, double angle,
56  vector<double>* amplitude, vector<double>* phase=NULL ) ;
57 
58 } ;
59 
61 } // end of namespace ocean
62 } // end of namespace usml
63 
64 #endif
A reflection loss model computes the changes in amplitude and phase that result from the reflection o...
Definition: reflect_loss_model.h:30
Models reflection loss as a constant factor that is independent of grazing angle and frequency...
Definition: reflect_loss_constant.h:22
reflect_loss_constant(double amplitude, double phase=0.0)
Initialize model with a constant factors.
Definition: reflect_loss_constant.h:40
double _phase
Holds the reflection phase change (radians).
Definition: reflect_loss_constant.h:30
World location in geodetic earth coordinates (latitude, longitude, and altitude). ...
Definition: wposition1.h:23
double _amplitude
Holds the reflection amplitude change (dB).
Definition: reflect_loss_constant.h:27
A read-only, monotonic sequence of values.
Definition: seq_vector.h:36