World Ocean Simulation System (WOSS) library
WossBellhopTest Class Reference
Inheritance diagram for WossBellhopTest:
Inheritance graph
Collaboration diagram for WossBellhopTest:
Collaboration graph

Public Member Functions

 WossBellhopTest ()
virtual ~WossBellhopTest () override=default
void setTxCoordZVector (vector< CoordZ > &tx)
void setRxCoordZVector (vector< CoordZ > &rx)
Public Member Functions inherited from woss::WossTest
 WossTest ()
virtual ~WossTest ()=default
 WossTest (const WossTest &copy)=delete
 WossTest (WossTest &&tmp)=delete
WossTestoperator= (const WossTest &copy)=delete
WossTestoperator= (WossTest &&tmp)=delete
void run ()
WossTestsetWossTestDebug (bool flag)
bool getWossTestDebug () const
WossTestsetWossRandomGenStream (int stream)
int getWossRandomGenStream () const
WossTestsetResDbCreatorDebug (bool flag)
bool getResDbCreatorDebug () const
WossTestsetResDbDebug (bool flag)
bool getResDbDebug () const
WossTestsetResDbUseBinary (bool flag)
bool getResDbUseBinary () const
WossTestsetResDbUseTimeArr (bool flag)
bool getResDbUseTimeArr () const
WossTestsetResDbUsePressure (bool flag)
bool getResDbUsePressure () const
WossTestsetResDbSpaceSampling (double sampling)
double getResDbSpaceSampling () const
WossTestsetResDbFilePath (const std::string &path)
std::string getResDbFilePath () const
WossTestsetResDbFileName (const std::string &file_name)
std::string getResDbFileName () const
WossTestsetSedimDeck41DbType (DECK41DbType type)
DECK41DbType getSedimDeck41DbType () const
WossTestsetSedimDbCreatorDebug (bool flag)
bool getSedimDbCreatorDebug () const
WossTestsetSedimDbDebug (bool flag)
bool getSedimDbDebug () const
WossTestsetSedimDbCoordFilePath (const std::string &path)
std::string getSedimDbCoordFilePath () const
WossTestsetSedimDbMarsdenFilePath (const std::string &path)
std::string getSedimDbMarsdenFilePath () const
WossTestsetSedimDbMarsdenOneFilePath (const std::string &path)
std::string getSedimDbMarsdenOneFilePath () const
WossTestsetSspDbCreatorDebug (bool flag)
bool getSspDbCreatorDebug () const
WossTestsetSspDbDebug (bool flag)
bool getSspDbDebug () const
WossTestsetSspDbFilePath (const std::string &path)
std::string getSspDbFilePath () const
WossTestsetSspWoaDbType (WOADbType type)
WOADbType getSspWoaDbType () const
WossTestsetBathyDbCreatorDebug (bool flag)
bool getBathyDbCreatorDebug () const
WossTestsetBathyDbDebug (bool flag)
bool getBathyDbDebug () const
WossTestsetBathyDbGebcoFormat (GEBCO_BATHY_TYPE type)
GEBCO_BATHY_TYPE getBathyDbGebcoFormat () const
WossTestsetBathyDbFilePath (const std::string &path)
std::string getBathyDbFilePath () const
WossTestsetWossDbManagerDebug (bool flag)
bool getWossDbManagerDebug () const
WossTestsetWossCreatorDebug (bool flag)
bool getWossCreatorDebug () const
WossTestsetWossDebug (bool flag)
bool getWossDebug () const
WossTestsetWossClearWorkDir (bool flag)
bool getWossClearWorkDir () const
WossTestsetWossEvolutionTimeQuantum (double time)
double getWossEvolutionTimeQuantum () const
WossTestsetWossTotalRuns (int runs)
int getWossTotalRuns () const
WossTestsetWossFrequencyStep (double step)
double getWossFrequencyStep () const
WossTestsetWossTotalRangeSteps (double step)
double getWossTotalRangeSteps () const
WossTestsetWossTxMinDepthOffset (double offset)
double getWossTxMinDepthOffset () const
WossTestsetWossTxMaxDepthOffset (double offset)
double getWossTxMaxDepthOffset () const
WossTestsetWossTotalTransmitters (int transmitters)
int getWossTotalTransmitters () const
WossTestsetWossTotalRxDepths (int rx_depths)
int getWossTotalRxDepths () const
WossTestsetWossRxMinDepthOffset (double offset)
double getWossRxMinDepthOffset () const
WossTestsetWossRxMaxDepthOffset (double offset)
double getWossRxMaxDepthOffset () const
WossTestsetWossTotalRxRanges (int rx_ranges)
int getWossTotalRxRanges () const
WossTestsetWossRxMinRangeOffset (double offset)
double getWossRxMinRangeOffset () const
WossTestsetWossRxMaxRangeOffset (double offset)
double getWossRxMaxRangeOffset () const
WossTestsetWossTotalRays (double rays)
double getWossTotalRays () const
WossTestsetWossMinAngle (double angle)
double getWossMinAngle () const
WossTestsetWossMaxAngle (double angle)
double getWossMaxAngle () const
WossTestsetWossUseThorpeAtt (bool flag)
bool getWossUseThorpeAtt () const
WossTestsetWossSspDepthPrecision (double precision)
double getWossSspDepthPrecision () const
WossTestsetWossNormalizedSspDepthSteps (double steps)
double getWossNormalizedSspDepthSteps () const
WossTestsetWossWorkDirPath (const std::string &path)
std::string getWossWorkDirPath () const
WossTestsetWossBellhopPath (const std::string &path)
std::string getWossBellhopPath () const
WossTestsetWossBellhopBinName (const std::string &name)
std::string getWossBellhopBinName () const
WossTestsetWossBellhopMode (const std::string &mode)
std::string getWossBellhopMode () const
WossTestsetWossBellhopBeamOptions (const std::string &options)
std::string getWossBellhopBeamOptions () const
WossTestsetWossBellhopBathyType (const std::string &type)
std::string getWossBellhopBathyType () const
WossTestsetWossBellhopBathyMethod (const std::string &type)
std::string getWossBellhopBathyMethod () const
WossTestsetWossBellhopAltimType (const std::string &type)
std::string getWossBellhopAltimType () const
WossTestsetWossBellhopArraySyntax (BellhopArrSyntax syntax)
BellhopArrSyntax getWossBellhopArraySyntax () const
WossTestsetWossBellhopShdSyntax (BellhopShdSyntax syntax)
BellhopShdSyntax getWossBellhopShdSyntax () const
WossTestsetWossSimTime (const SimTime &time)
SimTime getWossSimTime () const
WossTestsetWossBoxDepth (double depth)
double getWossBoxDepth () const
WossTestsetWossBoxRange (double range)
double getWossBoxRange () const
WossTestsetWossManagerDebug (bool flag)
bool getWossManagerDebug () const
WossTestsetWossManagerTimeEvoActive (bool flag)
bool getWossManagerTimeEvoActive () const
WossTestsetWossManagerThreads (unsigned int threads)
int getWossManagerThreads () const
WossTestsetWossManagerSpaceSampling (double sampling)
double getWossManagerSpaceSampling () const
WossTestsetWossManagerUseMultiThread (bool flag)
bool getWossManagerUseMultiThread () const
WossTestsetWossManagerUseThreadPool (bool flag)
bool getWossManagerUseThreadPool () const
WossTestsetWossTransducerHandlerDebug (bool flag)
bool getWossTransducerHandlerDebug () const
WossTestsetWossControllerDebug (bool flag)
bool getWossControllerDebug () const

Private Member Functions

virtual void doConfig () override
virtual void doInit () override
virtual void doRun () override

Private Attributes

vector< CoordZtx_coordz_vector
vector< CoordZrx_coordz_vector
CoordZPairVect coordz_pair_vector
vector< double > frequencies_vector
string db_path
string res_path
bool skip_single_tests = false

Additional Inherited Members

Protected Member Functions inherited from woss::WossTest
void config ()
void init ()
Protected Attributes inherited from woss::WossTest
bool debug
 debug flag
std::unique_ptr< SSPssp_proto
 SSP prototype which will be plugged into the WOSS framework.
std::unique_ptr< Sedimentsediment_proto
 Sediment prototype which will be plugged into the WOSS framework.
std::unique_ptr< Pressurepressure_proto
 Pressure prototype which will be plugged into the WOSS framework.
std::unique_ptr< TimeArrtime_arr_proto
 TimeArr prototype which will be plugged into the WOSS framework.
std::unique_ptr< Transducertransducer_proto
 Transducer prototype which will be plugged into the WOSS framework.
std::unique_ptr< AltimBretschneideraltim_bret_proto
 AltimBretschneider prototype which will be plugged into the WOSS framework.
std::unique_ptr< Locationlocation_proto
 Location prototype which will be plugged into the WOSS framework.
int woss_random_gen_stream
 random generator used by the WOSS framework.
std::unique_ptr< RandomGeneratorrandom_gen_proto
 RandomGenerator prototype which will be plugged into the WOSS framework.
std::unique_ptr< TimeReferencetime_ref_proto
 TimeReference prototype which will be plugged into the WOSS framework.
DefHandlerdef_handler
 Definition Handler object allocated by the helper.
bool res_db_creator_debug
 enable/disable the debug prints of the woss results database creator.
bool res_db_debug
 enable/disable the debug prints of the woss result databases.
bool res_db_use_binary
 set up the woss result database format: binary or textual.
bool res_db_use_time_arr
 set up the woss result databases data format: power delay profile.
bool res_db_use_pressure
 set up the woss result databases data format: single pressure tap.
double res_db_space_sampling
 set up the woss result database 2D spatial sampling
std::string res_db_file_path
 set up the woss result database file path
std::string res_db_file_name
 set up the woss result database file name (without path)
std::shared_ptr< ResPressureBinDbCreatorres_db_creator_press_bin
 the helper will automatically allocate the desired result database creator based on current configuration.
std::shared_ptr< ResPressureTxtDbCreatorres_db_creator_press_txt
 the helper will automatically allocate the desired result database creator based on current configuration.
std::shared_ptr< ResTimeArrBinDbCreatorres_db_creator_time_arr_bin
 the helper will automatically allocate the desired result database creator based on current configuration.
std::shared_ptr< ResTimeArrTxtDbCreatorres_db_creator_time_arr_txt
 the helper will automatically allocate the desired result database creator based on current configuration.
DECK41DbType sedim_deck41_db_type
 DECK41 db data format type.
bool sedim_db_creator_debug
 enable/disable the debug prints of the woss sediment database creator.
bool sedim_db_debug
 enable/disable the debug prints of the woss sediment database.
std::string sedim_db_coord_file_path
 setup the path of the sediment database indexed by geographical coordinates with decimal degrees resolution
std::string sedim_db_marsden_file_path
 setup the path of the sediment database indexed by geographical coordinates with marsden square resolution
std::string sedim_db_marsden_one_file_path
 setup the path of the sediment database indexed by geographical coordinates with marsden one square resolution
std::shared_ptr< SedimDeck41DbCreatorsedim_db_creator
 the helper will automatically allocate the woss sediment database creator
bool ssp_db_creator_debug
 enable/disable the debug prints of the woss SSP database creator.
bool ssp_db_debug
 enable/disable the debug prints of the woss SSP database.
std::string ssp_db_file_path
 setup the path of the woss monthly SSP database indexed by geographical coordinates
WOADbType ssp_woa_db_type
 WOA SSP Db Type.
std::shared_ptr< SspWoa2005DbCreatorssp_db_creator
 the helper will automatically allocate the woss sediment database creator
bool bathy_db_creator_debug
 enable/disable the debug prints of the woss Bathymetry database creator.
bool bathy_db_debug
 enable/disable the debug prints of the woss Bathymetry database (GEBCO).
GEBCO_BATHY_TYPE bathy_db_gebco_format
 setup the the GEBCO database format
std::string bathy_db_file_path
 setup the path of the woss GEBCO database
std::shared_ptr< BathyGebcoDbCreatorbathy_db_creator
 the helper will automatically allocate the woss GEBCO bathymetry db creator
bool woss_db_manager_debug
 enable/disable the debug prints of the woss DB manager object.
std::shared_ptr< WossDbManagerwoss_db_manager
 the helper will automatically allocate the woss DB manager
bool woss_creator_debug
 enable/disable the debug prints of the woss creator.
bool woss_debug
 enable/disable the debug prints of all woss objects
bool woss_clear_work_dir
 woss object configuration: clear the temporary files created by the underlying channel simulator
double evolution_time_quantum
 woss object configuration: evolution time quantum
int total_runs
 woss object configuration: total number of channel simulator runs
double frequency_step
 woss object configuration: number of frequency steps
double total_range_steps
 woss object configuration: tx - rx range sampling in meters
double tx_min_depth_offset
 woss object configuration: transmitter min offset in meters
double tx_max_depth_offset
 woss object configuration: transmitter max offset in meters
int total_transmitters
 woss object configuration: total number of transmitting sources
int total_rx_depths
 woss object configuration: receiver depth sampling
double rx_min_depth_offset
 woss object configuration: receiver min depth offset in meters
double rx_max_depth_offset
 woss object configuration: receiver max depth offset in meters
int total_rx_ranges
 woss object configuration: receiver range sampling
double rx_min_range_offset
 woss object configuration: receiver min range offset in meters
double rx_max_range_offset
 woss object configuration: receiver max range offset in meters
double total_rays
 woss object configuration: total number of rays (0 = automatic)
double min_angle
 woss object configuration: minimum vertical angle in decimal degrees
double max_angle
 woss object configuration: maximum vertical angle in decimal degrees
bool use_thorpe_att
 woss object configuration: use thorpe attenuation in channel computation
double ssp_depth_precision
 woss object configuration: SSP depth precision in meters
double normalized_ssp_depth_steps
 woss object configuration: SSP depth quantization steps
std::string work_dir_path
 woss object configuration: path of the temporary directory
std::string bellhop_path
 woss object configuration: path of the Bellhop executable
std::string bellhop_bin_name
 woss object configuration: Bellhop binary name
std::string bellhop_mode
 woss object configuration: Bellhop mode string
std::string bellhop_beam_options
 woss object configuration: Bellhop beam option string
std::string bellhop_bathy_type
 woss object configuration: Bellhop bathymetry type string
std::string bellhop_bathy_method
 woss object configuration: Bathymetry write method string
std::string bellhop_altim_type
 woss object configuration: Bellhop Altimetry type string
BellhopArrSyntax bellhop_arr_syntax
 woss object configration: Bellhop Arr file syntax to be used during .arr file parsing
BellhopShdSyntax bellhop_shd_syntax
 woss object configration: Bellhop Shd file syntax to be used during .shd file parsing
SimTime sim_time
 woss object configuration: woss simulation times (start and end sim times)
std::shared_ptr< BellhopCreatorbellhop_creator
 the helper will automatically allocate the woss creator
double box_depth
 woss object configuration: maximum depth to trace rays to; deeper rays will be ignored
double box_range
 woss object configuration: maximum range to trace rats to; longer rays will be ignored
bool woss_manager_debug
 enable/disable the debug prints of the woss manager.
bool time_evolution_active
 enable/disable the time evolution feature.
unsigned int concurrent_threads
 number of concurrent threads (0 = auto).
double woss_manager_space_sampling
 woss manager space sampling in meters
bool woss_manager_use_multithread
 enable/disable the multithread feature
bool woss_manager_use_thread_pool
 enable/disable woss::ThreadPool usage
std::shared_ptr< WossManagerSimple< WossManagerResDb > > woss_manager_simple
 the helper will automatically allocate the desired woss manager based on current configuration.
std::shared_ptr< WossManagerSimple< WossManagerResDbMT > > woss_manager_multi
 the helper will automatically allocate the desired woss manaeger based on current configuration.
bool woss_transducer_handler_debug
 enable/disable the debug prints of the woss transducer handler.
std::shared_ptr< TransducerHandlerwoss_transducer_handler
 the helper will automatically allocate the woss Transducer handler.
bool woss_controller_debug
 enable/disable the debug prints of the woss conteroller
std::shared_ptr< WossControllerwoss_controller
 the helper will automatically allocate the woss controller.
bool initialized
 initialization complete flag.

Constructor & Destructor Documentation

◆ WossBellhopTest()

WossBellhopTest::WossBellhopTest ( )

References db_path, frequencies_vector, res_path, rx_coordz_vector, tx_coordz_vector, and woss::WossTest::WossTest().

Here is the call graph for this function:

◆ ~WossBellhopTest()

virtual WossBellhopTest::~WossBellhopTest ( )
overridevirtualdefault

Member Function Documentation

◆ doConfig()

void WossBellhopTest::doConfig ( )
overrideprivatevirtual

Virtual function that allows the derived class to perform its custom configuration phase

Implements woss::WossTest.

References woss::BELLHOP_CREATOR_ARR_FILE_SYNTAX_2, woss::BELLHOP_CREATOR_SHD_FILE_SYNTAX_1, coordz_pair_vector, db_path, woss::DECK41_DB_V2_TYPE, frequencies_vector, woss::GEBCO_2D_15_SECONDS_BATHY_TYPE, res_path, rx_coordz_vector, woss::WossTest::setBathyDbFilePath(), woss::WossTest::setBathyDbGebcoFormat(), woss::WossTest::setResDbCreatorDebug(), woss::WossTest::setResDbDebug(), woss::WossTest::setResDbFileName(), woss::WossTest::setResDbFilePath(), woss::WossTest::setResDbUseBinary(), woss::WossTest::setResDbUsePressure(), woss::WossTest::setResDbUseTimeArr(), woss::WossTest::setSedimDbCoordFilePath(), woss::WossTest::setSedimDbMarsdenFilePath(), woss::WossTest::setSedimDbMarsdenOneFilePath(), woss::WossTest::setSedimDeck41DbType(), woss::WossTest::setSspDbFilePath(), woss::WossTest::setSspWoaDbType(), woss::WossTest::setWossBellhopAltimType(), woss::WossTest::setWossBellhopArraySyntax(), woss::WossTest::setWossBellhopBathyMethod(), woss::WossTest::setWossBellhopBathyType(), woss::WossTest::setWossBellhopBeamOptions(), woss::WossTest::setWossBellhopBinName(), woss::WossTest::setWossBellhopMode(), woss::WossTest::setWossBellhopShdSyntax(), woss::WossTest::setWossBoxDepth(), woss::WossTest::setWossBoxRange(), woss::WossTest::setWossClearWorkDir(), woss::WossTest::setWossCreatorDebug(), woss::WossTest::setWossDbManagerDebug(), woss::WossTest::setWossDebug(), woss::WossTest::setWossEvolutionTimeQuantum(), woss::WossTest::setWossFrequencyStep(), woss::WossTest::setWossManagerDebug(), woss::WossTest::setWossManagerSpaceSampling(), woss::WossTest::setWossManagerThreads(), woss::WossTest::setWossManagerTimeEvoActive(), woss::WossTest::setWossManagerUseMultiThread(), woss::WossTest::setWossManagerUseThreadPool(), woss::WossTest::setWossMaxAngle(), woss::WossTest::setWossMinAngle(), woss::WossTest::setWossNormalizedSspDepthSteps(), woss::WossTest::setWossRandomGenStream(), woss::WossTest::setWossRxMaxDepthOffset(), woss::WossTest::setWossRxMaxRangeOffset(), woss::WossTest::setWossRxMinDepthOffset(), woss::WossTest::setWossRxMinRangeOffset(), woss::WossTest::setWossSimTime(), woss::WossTest::setWossSspDepthPrecision(), woss::WossTest::setWossTestDebug(), woss::WossTest::setWossTotalRangeSteps(), woss::WossTest::setWossTotalRays(), woss::WossTest::setWossTotalRuns(), woss::WossTest::setWossTotalRxDepths(), woss::WossTest::setWossTotalRxRanges(), woss::WossTest::setWossTotalTransmitters(), woss::WossTest::setWossTxMaxDepthOffset(), woss::WossTest::setWossTxMinDepthOffset(), woss::WossTest::setWossUseThorpeAtt(), woss::WossTest::setWossWorkDirPath(), skip_single_tests, tx_coordz_vector, woss::WOA_DB_TYPE_2013, and woss::BellhopWoss::WOSS_BELLHOP_BIN_NAME.

◆ doInit()

void WossBellhopTest::doInit ( )
overrideprivatevirtual

Virtual function that allows the derived class to perform its custom initialization phase

Implements woss::WossTest.

References db_path, and woss::WossTest::woss_db_manager.

◆ doRun()

◆ setRxCoordZVector()

void WossBellhopTest::setRxCoordZVector ( vector< CoordZ > & rx)
inline

References rx_coordz_vector.

◆ setTxCoordZVector()

void WossBellhopTest::setTxCoordZVector ( vector< CoordZ > & tx)
inline

References tx_coordz_vector.

Member Data Documentation

◆ coordz_pair_vector

CoordZPairVect WossBellhopTest::coordz_pair_vector
private

Referenced by doConfig(), and doRun().

◆ db_path

string WossBellhopTest::db_path
private

Referenced by doConfig(), doInit(), and WossBellhopTest().

◆ frequencies_vector

vector<double> WossBellhopTest::frequencies_vector
private

Referenced by doConfig(), doRun(), and WossBellhopTest().

◆ res_path

string WossBellhopTest::res_path
private

Referenced by doConfig(), doRun(), and WossBellhopTest().

◆ rx_coordz_vector

vector<CoordZ> WossBellhopTest::rx_coordz_vector
private

◆ skip_single_tests

bool WossBellhopTest::skip_single_tests = false
private

Referenced by doConfig(), and doRun().

◆ tx_coordz_vector

vector<CoordZ> WossBellhopTest::tx_coordz_vector
private

The documentation for this class was generated from the following file: