reflect_loss_netcdf.h

00001 
00006 #pragma once
00007 
00008 
00009 #include <usml/ocean/reflect_loss_model.h>
00010 #include <usml/ocean/reflect_loss_rayleigh.h>
00011 #include <vector>
00012 #include <netcdfcpp.h>
00013 
00014 namespace usml {
00015 namespace ocean {
00016 
00017 using boost::numeric::ublas::vector;
00018 
00021 
00029 class USML_DECLSPEC reflect_loss_netcdf : public reflect_loss_model {
00030 
00031     public:
00032 
00043         reflect_loss_netcdf( const char *filename ) ;
00044 
00056         virtual void reflect_loss(
00057             const wposition1& location,
00058             const seq_vector& frequencies, double angle,
00059             vector<double>* amplitude, vector<double>* phase=NULL ) ;
00060 
00064         virtual ~reflect_loss_netcdf() ;
00065 
00066     private:
00067 
00071         std::vector<reflect_loss_rayleigh*> _rayleigh ;
00072 
00076         data_grid<double, 2>* _bottom_grid ;
00077 
00078 } ;
00079 
00081 }  // end of namespace ocean
00082 }  // end of namespace usml

Generated on 4 May 2015 for USML by  doxygen 1.6.1