chrono::utils::ChBenchmarkTest Class Referenceabstract

Description

Base class for a Chrono benchmark test.

A derived class should set up a complete Chrono model in its constructor and implement GetSystem (to return a pointer to the underlying Chrono system) and ExecuteStep (to perform all operations required to advance the system state by one time step). Timing information for various phases of the simulation is collected for a sequence of steps.

#include <ChBenchmark.h>

Public Member Functions

virtual void ExecuteStep ()=0
 
virtual ChSystemGetSystem ()=0
 
void Simulate (int num_steps)
 
void ResetTimers ()
 

Public Attributes

double m_timer_step
 time for performing simulation
 
double m_timer_advance
 time for integration
 
double m_timer_jacobian
 time for evaluating/loading Jacobian data
 
double m_timer_setup
 time for solver setup
 
double m_timer_solver
 time for solver solve
 
double m_timer_collision
 time for collision detection
 
double m_timer_collision_broad
 time for broad-phase collision
 
double m_timer_collision_narrow
 time for narrow-phase collision
 
double m_timer_update
 time for system update