chrono::vehicle::ChVehicleCosimViperNode Class Reference


Viper rover co-simulation node.

The rover is co-simulated with tire nodes and a terrain node.

#include <ChVehicleCosimViperNode.h>

Inheritance diagram for chrono::vehicle::ChVehicleCosimViperNode:
Collaboration diagram for chrono::vehicle::ChVehicleCosimViperNode:

Public Member Functions

 ChVehicleCosimViperNode ()
 Construct a Viper rover node.
std::shared_ptr< viper::ViperGetRover () const
 Get the underlying rover system.
void SetInitialLocation (const ChVector<> &init_loc)
 Set the initial rover position, relative to the center of the terrain top-surface.
void SetInitialYaw (double init_yaw)
 Set the initial rover yaw angle (in radians).
void SetDriver (std::shared_ptr< viper::ViperDriver > driver)
 Attach a Viper driver system.
- Public Member Functions inherited from chrono::vehicle::ChVehicleCosimWheeledMBSNode
virtual NodeType GetNodeType () const override
 Return the node type as NodeType::MBS_WHEELED.
void SetNumThreads (int num_threads)
 Set the number of OpenMP threads used in Chrono simulation (default: 1).
void SetIntegratorType (ChTimestepper::Type int_type, ChSolver::Type slv_type)
 Set integrator and solver types. More...
void SetChassisFixed (bool val)
 Fix the chassis to ground (default: false).
void AttachDrawbarPullRig (std::shared_ptr< ChVehicleCosimDBPRig > rig)
 Attach a drawbar pull rig to the MBS system.
std::shared_ptr< ChVehicleCosimDBPRigGetDrawbarPullRig () const
 Return the drawbar-pull rig, if one is attached.
virtual void Initialize () override final
 Initialize this node. More...
virtual void Synchronize (int step_number, double time) override final
 Synchronize this node. More...
virtual void Advance (double step_size) override final
 Advance simulation. More...
virtual void OutputData (int frame) override final
 Output logging and debugging data.
virtual void OutputVisualizationData (int frame) override final
 Output post-processing visualization data.
- Public Member Functions inherited from chrono::vehicle::ChVehicleCosimBaseNode
std::string GetNodeTypeString () const
 Return the node type as a string.
bool IsCosimNode () const
 Return true if this node is part of the co-simulation infrastructure.
void SetStepSize (double step)
 Set the integration step size (default: 1e-4).
double GetStepSize () const
 Get the integration step size.
void SetOutDir (const std::string &dir_name, const std::string &suffix)
 Set the name of the output directory and an identifying suffix. More...
void SetVerbose (bool verbose)
 Enable/disable verbose messages during simulation (default: true).
const std::string & GetOutDirName () const
 Get the output directory name for this node.
double GetStepExecutionTime () const
 Get the simulation execution time for the current step on this node. More...
double GetTotalExecutionTime () const
 Get the cumulative simulation execution time on this node.
virtual void WriteCheckpoint (const std::string &filename) const
 Write checkpoint to the specified file (which will be created in the output directory).

Additional Inherited Members

- Public Types inherited from chrono::vehicle::ChVehicleCosimBaseNode
enum  NodeType { NodeType::MBS_WHEELED, NodeType::MBS_TRACKED, NodeType::TERRAIN, NodeType::TIRE }
 Type of node participating in co-simulation. More...
enum  InterfaceType { InterfaceType::BODY, InterfaceType::MESH }
 Type of the tire-terrain communication interface. More...
- Static Public Member Functions inherited from chrono::vehicle::ChVehicleCosimBaseNode
static std::string OutputFilename (const std::string &dir, const std::string &root, const std::string &ext, int frame, int frame_digits)
 Utility function for creating an output file name. More...
- Protected Member Functions inherited from chrono::vehicle::ChVehicleCosimWheeledMBSNode
 ChVehicleCosimWheeledMBSNode ()
 Construct a base class wheeled MBS node.
virtual void PostAdvance ()
 Perform any required operations after advancing the state of the MBS. More...
- Protected Member Functions inherited from chrono::vehicle::ChVehicleCosimBaseNode
 ChVehicleCosimBaseNode (const std::string &name)
void SendGeometry (const ChVehicleGeometry &geom, int dest) const
void RecvGeometry (ChVehicleGeometry &geom, int source) const
- Protected Attributes inherited from chrono::vehicle::ChVehicleCosimWheeledMBSNode
 containing system
ChTimestepper::Type m_int_type
 integrator type
ChSolver::Type m_slv_type
 solver type
std::shared_ptr< ChTimestepperHHTm_integrator
 HHT integrator object.
std::shared_ptr< ChVehicleCosimDBPRigm_DBP_rig
 DBP rig.
std::ofstream m_DBP_outf
 DBP output file stream.
- Protected Attributes inherited from chrono::vehicle::ChVehicleCosimBaseNode
int m_rank
 MPI rank of this node (in MPI_COMM_WORLD)
double m_step_size
 integration step size
std::string m_name
 name of the node
std::string m_out_dir
 top-level output directory
std::string m_node_out_dir
 node-specific output directory
std::ofstream m_outf
 output file stream
unsigned int m_num_wheeled_mbs_nodes
unsigned int m_num_tracked_mbs_nodes
unsigned int m_num_terrain_nodes
unsigned int m_num_tire_nodes
ChTimer< double > m_timer
 timer for integration cost
double m_cum_sim_time
 cumulative integration cost
bool m_verbose
 verbose messages during simulation?
- Static Protected Attributes inherited from chrono::vehicle::ChVehicleCosimBaseNode
static const double m_gacc = -9.81

The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono_vehicle/cosim/mbs/ChVehicleCosimViperNode.h
  • /builds/uwsbel/chrono/src/chrono_vehicle/cosim/mbs/ChVehicleCosimViperNode.cpp