Formula Student Autonomous Systems
The code for the main driverless system
Loading...
Searching...
No Matches
PerformanceTest Class Reference
Inheritance diagram for PerformanceTest:
Inheritance graph
Collaboration diagram for PerformanceTest:
Collaboration graph

Public Member Functions

std::string get_current_date_time_as_string ()
 Get current date and time as a string.
 
void print_to_file ()
 Writes performance data to a CSV file.
 
void fill_x (int size)
 Fills the state vector with values from a file.
 
void SetUp () override
 
void run_execution (const std::vector< common_lib::structures::Cone > &cone_map)
 Runes the Execution 10 times and outputs the average execution time.
 
std::vector< common_lib::structures::Conecreate_cone_map (int n_cones)
 Read and pares a file containing containing perception's output.
 

Public Attributes

std::shared_ptr< ExtendedKalmanFilterekf_test
 shared pointer to ExtendedKalmanFilter object
 
std::shared_ptr< MotionUpdatemotion_update_test
 shared pointer to MotionUpdate object
 
std::chrono::_V2::system_clock::time_point start_time
 Start time for performance measurement.
 
std::chrono::_V2::system_clock::time_point prediction_step_time
 Prediction Step Execution Time for performance measurement.
 
std::chrono::_V2::system_clock::time_point end_time
 End time for performance measurement.
 
std::chrono::microseconds prediction_step_duration
 Duration of prediction step execution.
 
std::chrono::microseconds correction_step_duration
 Duration of correction step execution.
 
std::string workload
 Description of the workload.
 
Eigen::Matrix2f q_test
 Test Eigen Matrix for Q.
 
Eigen::MatrixXf r_test
 Test Eigen Matrix for R.
 
std::shared_ptr< MotionModelmotion_model_
 Pointer to the MotionModel object for testing.
 
std::shared_ptr< DataAssociationModeldata_association_model_
 
int prediction_step_input_size = 0
 
int correction_step_input_size = 0
 
std::shared_ptr< ObservationModelobservation_model_
 ObservationModel object for testing.
 
std::string file_name
 File Name for Output.
 

Detailed Description

Definition at line 22 of file ekf_state_est_performance_test.cpp.

Member Function Documentation

◆ create_cone_map()

std::vector< common_lib::structures::Cone > PerformanceTest::create_cone_map ( int  n_cones)
inline

Read and pares a file containing containing perception's output.

Parameters
n_conesNumber of cones to output
Returns
std::vector<common_lib::structures::Cone> Data Structure representing the cone map coming from perception

Definition at line 213 of file ekf_state_est_performance_test.cpp.

◆ fill_x()

void PerformanceTest::fill_x ( int  size)
inline

Fills the state vector with values from a file.

Parameters
sizeNumber of state vector elements to fill.

Definition at line 118 of file ekf_state_est_performance_test.cpp.

◆ get_current_date_time_as_string()

std::string PerformanceTest::get_current_date_time_as_string ( )
inline

Get current date and time as a string.

Returns
Current date and time as a string in "YYYY-MM-DD-HH:MM" format.

Definition at line 58 of file ekf_state_est_performance_test.cpp.

Here is the caller graph for this function:

◆ print_to_file()

void PerformanceTest::print_to_file ( )
inline

Writes performance data to a CSV file.

< Output file for performance data (append)

Definition at line 72 of file ekf_state_est_performance_test.cpp.

◆ run_execution()

void PerformanceTest::run_execution ( const std::vector< common_lib::structures::Cone > &  cone_map)
inline

Runes the Execution 10 times and outputs the average execution time.

Parameters
cone_mapPerception's output map

Definition at line 182 of file ekf_state_est_performance_test.cpp.

◆ SetUp()

void PerformanceTest::SetUp ( )
inlineoverride

< Set up test environment

Definition at line 150 of file ekf_state_est_performance_test.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ correction_step_duration

std::chrono::microseconds PerformanceTest::correction_step_duration

Duration of correction step execution.

Definition at line 39 of file ekf_state_est_performance_test.cpp.

◆ correction_step_input_size

int PerformanceTest::correction_step_input_size = 0

Definition at line 49 of file ekf_state_est_performance_test.cpp.

◆ data_association_model_

std::shared_ptr<DataAssociationModel> PerformanceTest::data_association_model_

Definition at line 47 of file ekf_state_est_performance_test.cpp.

◆ ekf_test

std::shared_ptr<ExtendedKalmanFilter> PerformanceTest::ekf_test

shared pointer to ExtendedKalmanFilter object

Definition at line 25 of file ekf_state_est_performance_test.cpp.

◆ end_time

std::chrono::_V2::system_clock::time_point PerformanceTest::end_time

End time for performance measurement.

Definition at line 34 of file ekf_state_est_performance_test.cpp.

◆ file_name

std::string PerformanceTest::file_name

File Name for Output.

Definition at line 52 of file ekf_state_est_performance_test.cpp.

◆ motion_model_

std::shared_ptr<MotionModel> PerformanceTest::motion_model_

Pointer to the MotionModel object for testing.

Definition at line 45 of file ekf_state_est_performance_test.cpp.

◆ motion_update_test

std::shared_ptr<MotionUpdate> PerformanceTest::motion_update_test

shared pointer to MotionUpdate object

Definition at line 26 of file ekf_state_est_performance_test.cpp.

◆ observation_model_

std::shared_ptr<ObservationModel> PerformanceTest::observation_model_

ObservationModel object for testing.

Definition at line 50 of file ekf_state_est_performance_test.cpp.

◆ prediction_step_duration

std::chrono::microseconds PerformanceTest::prediction_step_duration

Duration of prediction step execution.

Definition at line 37 of file ekf_state_est_performance_test.cpp.

◆ prediction_step_input_size

int PerformanceTest::prediction_step_input_size = 0

Definition at line 48 of file ekf_state_est_performance_test.cpp.

◆ prediction_step_time

std::chrono::_V2::system_clock::time_point PerformanceTest::prediction_step_time

Prediction Step Execution Time for performance measurement.

Definition at line 31 of file ekf_state_est_performance_test.cpp.

◆ q_test

Eigen::Matrix2f PerformanceTest::q_test

Test Eigen Matrix for Q.

Definition at line 43 of file ekf_state_est_performance_test.cpp.

◆ r_test

Eigen::MatrixXf PerformanceTest::r_test

Test Eigen Matrix for R.

Definition at line 44 of file ekf_state_est_performance_test.cpp.

◆ start_time

std::chrono::_V2::system_clock::time_point PerformanceTest::start_time

Start time for performance measurement.

Definition at line 28 of file ekf_state_est_performance_test.cpp.

◆ workload

std::string PerformanceTest::workload

Description of the workload.

Definition at line 41 of file ekf_state_est_performance_test.cpp.


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