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

Public Member Functions

 WossCoordDefTest ()
virtual ~WossCoordDefTest () override=default
Public Member Functions inherited from woss::WossTest
 WossTest ()
virtual ~WossTest ()=default
 WossTest (const WossTest &copy)=delete
 WossTest (WossTest &&tmp)=delete
WossTest & operator= (const WossTest &copy)=delete
WossTest & operator= (WossTest &&tmp)=delete
void run ()
WossTest & setWossTestDebug (bool flag)
bool getWossTestDebug () const
WossTest & setWossRandomGenStream (int stream)
int getWossRandomGenStream () const
WossTest & setResDbCreatorDebug (bool flag)
bool getResDbCreatorDebug () const
WossTest & setResDbDebug (bool flag)
bool getResDbDebug () const
WossTest & setResDbUseBinary (bool flag)
bool getResDbUseBinary () const
WossTest & setResDbUseTimeArr (bool flag)
bool getResDbUseTimeArr () const
WossTest & setResDbUsePressure (bool flag)
bool getResDbUsePressure () const
WossTest & setResDbSpaceSampling (double sampling)
double getResDbSpaceSampling () const
WossTest & setResDbFilePath (const std::string &path)
std::string getResDbFilePath () const
WossTest & setResDbFileName (const std::string &file_name)
std::string getResDbFileName () const
WossTest & setSedimDeck41DbType (DECK41DbType type)
DECK41DbType getSedimDeck41DbType () const
WossTest & setSedimDbCreatorDebug (bool flag)
bool getSedimDbCreatorDebug () const
WossTest & setSedimDbDebug (bool flag)
bool getSedimDbDebug () const
WossTest & setSedimDbCoordFilePath (const std::string &path)
std::string getSedimDbCoordFilePath () const
WossTest & setSedimDbMarsdenFilePath (const std::string &path)
std::string getSedimDbMarsdenFilePath () const
WossTest & setSedimDbMarsdenOneFilePath (const std::string &path)
std::string getSedimDbMarsdenOneFilePath () const
WossTest & setSspDbCreatorDebug (bool flag)
bool getSspDbCreatorDebug () const
WossTest & setSspDbDebug (bool flag)
bool getSspDbDebug () const
WossTest & setSspDbFilePath (const std::string &path)
std::string getSspDbFilePath () const
WossTest & setSspWoaDbType (WOADbType type)
WOADbType getSspWoaDbType () const
WossTest & setBathyDbCreatorDebug (bool flag)
bool getBathyDbCreatorDebug () const
WossTest & setBathyDbDebug (bool flag)
bool getBathyDbDebug () const
WossTest & setBathyDbGebcoFormat (GEBCO_BATHY_TYPE type)
GEBCO_BATHY_TYPE getBathyDbGebcoFormat () const
WossTest & setBathyDbFilePath (const std::string &path)
std::string getBathyDbFilePath () const
WossTest & setWossDbManagerDebug (bool flag)
bool getWossDbManagerDebug () const
WossTest & setWossCreatorDebug (bool flag)
bool getWossCreatorDebug () const
WossTest & setWossDebug (bool flag)
bool getWossDebug () const
WossTest & setWossClearWorkDir (bool flag)
bool getWossClearWorkDir () const
WossTest & setWossEvolutionTimeQuantum (double time)
double getWossEvolutionTimeQuantum () const
WossTest & setWossTotalRuns (int runs)
int getWossTotalRuns () const
WossTest & setWossFrequencyStep (double step)
double getWossFrequencyStep () const
WossTest & setWossTotalRangeSteps (double step)
double getWossTotalRangeSteps () const
WossTest & setWossTxMinDepthOffset (double offset)
double getWossTxMinDepthOffset () const
WossTest & setWossTxMaxDepthOffset (double offset)
double getWossTxMaxDepthOffset () const
WossTest & setWossTotalTransmitters (int transmitters)
int getWossTotalTransmitters () const
WossTest & setWossTotalRxDepths (int rx_depths)
int getWossTotalRxDepths () const
WossTest & setWossRxMinDepthOffset (double offset)
double getWossRxMinDepthOffset () const
WossTest & setWossRxMaxDepthOffset (double offset)
double getWossRxMaxDepthOffset () const
WossTest & setWossTotalRxRanges (int rx_ranges)
int getWossTotalRxRanges () const
WossTest & setWossRxMinRangeOffset (double offset)
double getWossRxMinRangeOffset () const
WossTest & setWossRxMaxRangeOffset (double offset)
double getWossRxMaxRangeOffset () const
WossTest & setWossTotalRays (double rays)
double getWossTotalRays () const
WossTest & setWossMinAngle (double angle)
double getWossMinAngle () const
WossTest & setWossMaxAngle (double angle)
double getWossMaxAngle () const
WossTest & setWossUseThorpeAtt (bool flag)
bool getWossUseThorpeAtt () const
WossTest & setWossSspDepthPrecision (double precision)
double getWossSspDepthPrecision () const
WossTest & setWossNormalizedSspDepthSteps (double steps)
double getWossNormalizedSspDepthSteps () const
WossTest & setWossWorkDirPath (const std::string &path)
std::string getWossWorkDirPath () const
WossTest & setWossBellhopPath (const std::string &path)
std::string getWossBellhopPath () const
WossTest & setWossBellhopBinName (const std::string &name)
std::string getWossBellhopBinName () const
WossTest & setWossBellhopMode (const std::string &mode)
std::string getWossBellhopMode () const
WossTest & setWossBellhopBeamOptions (const std::string &options)
std::string getWossBellhopBeamOptions () const
WossTest & setWossBellhopBathyType (const std::string &type)
std::string getWossBellhopBathyType () const
WossTest & setWossBellhopBathyMethod (const std::string &type)
std::string getWossBellhopBathyMethod () const
WossTest & setWossBellhopAltimType (const std::string &type)
std::string getWossBellhopAltimType () const
WossTest & setWossBellhopArraySyntax (BellhopArrSyntax syntax)
BellhopArrSyntax getWossBellhopArraySyntax () const
WossTest & setWossBellhopShdSyntax (BellhopShdSyntax syntax)
BellhopShdSyntax getWossBellhopShdSyntax () const
WossTest & setWossSimTime (const SimTime &time)
SimTime getWossSimTime () const
WossTest & setWossBoxDepth (double depth)
double getWossBoxDepth () const
WossTest & setWossBoxRange (double range)
double getWossBoxRange () const
WossTest & setWossManagerDebug (bool flag)
bool getWossManagerDebug () const
WossTest & setWossManagerTimeEvoActive (bool flag)
bool getWossManagerTimeEvoActive () const
WossTest & setWossManagerThreads (unsigned int threads)
int getWossManagerThreads () const
WossTest & setWossManagerSpaceSampling (double sampling)
double getWossManagerSpaceSampling () const
WossTest & setWossManagerUseMultiThread (bool flag)
bool getWossManagerUseMultiThread () const
WossTest & setWossManagerUseThreadPool (bool flag)
bool getWossManagerUseThreadPool () const
WossTest & setWossTransducerHandlerDebug (bool flag)
bool getWossTransducerHandlerDebug () const
WossTest & setWossControllerDebug (bool flag)
bool getWossControllerDebug () const

Private Member Functions

virtual void doConfig () override
virtual void doInit () override
virtual void doRun () override
void doCoordCartTests (const CoordZ &curr_coord)
void doBearingTests (const CoordZ &curr_coord, const CoordZ &new_coord, double curr_distance, double curr_bear)

Private Attributes

double start_lat
double end_lat
double step_lat
double start_lon
double end_lon
double step_lon
double start_bearing
double end_bearing
double step_bearing
double start_distance
double end_distance
double step_distance
double precision
double cartesian_precision
double start_depth
double end_depth
double step_depth
vector< double > vector_lat
vector< double > vector_lon
vector< double > vector_dist
vector< double > vector_bearing
vector< double > vector_depth

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< SSP > ssp_proto
 SSP prototype which will be plugged into the WOSS framework.
std::unique_ptr< Sediment > sediment_proto
 Sediment prototype which will be plugged into the WOSS framework.
std::unique_ptr< Pressure > pressure_proto
 Pressure prototype which will be plugged into the WOSS framework.
std::unique_ptr< TimeArr > time_arr_proto
 TimeArr prototype which will be plugged into the WOSS framework.
std::unique_ptr< Transducer > transducer_proto
 Transducer prototype which will be plugged into the WOSS framework.
std::unique_ptr< AltimBretschneider > altim_bret_proto
 AltimBretschneider prototype which will be plugged into the WOSS framework.
std::unique_ptr< Location > location_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< RandomGenerator > random_gen_proto
 RandomGenerator prototype which will be plugged into the WOSS framework.
std::unique_ptr< TimeReference > time_ref_proto
 TimeReference prototype which will be plugged into the WOSS framework.
DefHandler & def_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< ResPressureBinDbCreator > res_db_creator_press_bin
 the helper will automatically allocate the desired result database creator based on current configuration.
std::shared_ptr< ResPressureTxtDbCreator > res_db_creator_press_txt
 the helper will automatically allocate the desired result database creator based on current configuration.
std::shared_ptr< ResTimeArrBinDbCreator > res_db_creator_time_arr_bin
 the helper will automatically allocate the desired result database creator based on current configuration.
std::shared_ptr< ResTimeArrTxtDbCreator > res_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< SedimDeck41DbCreator > sedim_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< SspWoa2005DbCreator > ssp_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< BathyGebcoDbCreator > bathy_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< WossDbManager > woss_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< BellhopCreator > bellhop_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< TransducerHandler > woss_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< WossController > woss_controller
 the helper will automatically allocate the woss controller.
bool initialized
 initialization complete flag.

Constructor & Destructor Documentation

◆ WossCoordDefTest()

◆ ~WossCoordDefTest()

virtual WossCoordDefTest::~WossCoordDefTest ( )
overridevirtualdefault

Member Function Documentation

◆ doBearingTests()

void WossCoordDefTest::doBearingTests ( const CoordZ & curr_coord,
const CoordZ & new_coord,
double curr_distance,
double curr_bear )
private

◆ doConfig()

void WossCoordDefTest::doConfig ( )
overrideprivatevirtual

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

Implements woss::WossTest.

◆ doCoordCartTests()

◆ doInit()

void WossCoordDefTest::doInit ( )
overrideprivatevirtual

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

Implements woss::WossTest.

◆ doRun()

void WossCoordDefTest::doRun ( )
overrideprivatevirtual

Member Data Documentation

◆ cartesian_precision

double WossCoordDefTest::cartesian_precision
private

◆ end_bearing

double WossCoordDefTest::end_bearing
private

Referenced by doRun(), and WossCoordDefTest().

◆ end_depth

double WossCoordDefTest::end_depth
private

Referenced by doRun(), and WossCoordDefTest().

◆ end_distance

double WossCoordDefTest::end_distance
private

Referenced by doRun(), and WossCoordDefTest().

◆ end_lat

double WossCoordDefTest::end_lat
private

Referenced by doRun(), and WossCoordDefTest().

◆ end_lon

double WossCoordDefTest::end_lon
private

Referenced by doRun(), and WossCoordDefTest().

◆ precision

double WossCoordDefTest::precision
private

Referenced by doBearingTests(), and WossCoordDefTest().

◆ start_bearing

double WossCoordDefTest::start_bearing
private

Referenced by doRun(), and WossCoordDefTest().

◆ start_depth

double WossCoordDefTest::start_depth
private

Referenced by doRun(), and WossCoordDefTest().

◆ start_distance

double WossCoordDefTest::start_distance
private

Referenced by doRun(), and WossCoordDefTest().

◆ start_lat

double WossCoordDefTest::start_lat
private

Referenced by doRun(), and WossCoordDefTest().

◆ start_lon

double WossCoordDefTest::start_lon
private

Referenced by doRun(), and WossCoordDefTest().

◆ step_bearing

double WossCoordDefTest::step_bearing
private

Referenced by doRun(), and WossCoordDefTest().

◆ step_depth

double WossCoordDefTest::step_depth
private

Referenced by doRun(), and WossCoordDefTest().

◆ step_distance

double WossCoordDefTest::step_distance
private

Referenced by doRun(), and WossCoordDefTest().

◆ step_lat

double WossCoordDefTest::step_lat
private

Referenced by doRun(), and WossCoordDefTest().

◆ step_lon

double WossCoordDefTest::step_lon
private

Referenced by doRun(), and WossCoordDefTest().

◆ vector_bearing

vector<double> WossCoordDefTest::vector_bearing
private

Referenced by doRun(), and WossCoordDefTest().

◆ vector_depth

vector<double> WossCoordDefTest::vector_depth
private

Referenced by doRun(), and WossCoordDefTest().

◆ vector_dist

vector<double> WossCoordDefTest::vector_dist
private

Referenced by doRun(), and WossCoordDefTest().

◆ vector_lat

vector<double> WossCoordDefTest::vector_lat
private

Referenced by doRun(), and WossCoordDefTest().

◆ vector_lon

vector<double> WossCoordDefTest::vector_lon
private

Referenced by doRun(), and WossCoordDefTest().


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