Definition of the HMMWV assembly.

This class encapsulates a concrete wheeled vehicle model with parameters corresponding to a HMMWV, the powertrain model, and the 4 tires. It provides wrappers to access the different systems and subsystems, functions for specifying the driveline, powertrain, and tire types, as well as functions for controlling the visualization mode of each component. Note that this is an abstract class which cannot be instantiated. Instead, use one of the concrete classes HMMWV_Full or HMMWV_Reduced.

#include <HMMWV.h>

Inheritance diagram for chrono::vehicle::hmmwv::HMMWV:
Collaboration diagram for chrono::vehicle::hmmwv::HMMWV:

Public Member Functions

void SetContactMethod (ChMaterialSurface::ContactMethod val)
void SetChassisFixed (bool val)
void SetChassisCollisionType (ChassisCollisionType val)
void SetDriveType (DrivelineType val)
void SetPowertrainType (PowertrainModelType val)
void SetTireType (TireModelType val)
void SetInitPosition (const ChCoordsys<> &pos)
void SetInitFwdVel (double fwdVel)
void SetInitWheelAngVel (const std::vector< double > &omega)
void SetVehicleStepSize (double step_size)
void SetTireStepSize (double step_size)
ChSystemGetSystem () const
ChWheeledVehicleGetVehicle () const
std::shared_ptr< ChChassisGetChassis () const
std::shared_ptr< ChBodyAuxRefGetChassisBody () const
ChPowertrainGetPowertrain () const
ChTireGetTire (WheelID which) const
double GetTotalMass () const
void Initialize ()
void LockAxleDifferential (int axle, bool lock)
void LockCentralDifferential (int which, bool lock)
void SetAerodynamicDrag (double Cd, double area, double air_density)
void SetChassisVisualizationType (VisualizationType vis)
void SetSuspensionVisualizationType (VisualizationType vis)
void SetSteeringVisualizationType (VisualizationType vis)
void SetWheelVisualizationType (VisualizationType vis)
void SetTireVisualizationType (VisualizationType vis)
void Synchronize (double time, double steering_input, double braking_input, double throttle_input, const ChTerrain &terrain)
void Advance (double step)

Protected Member Functions

 HMMWV (ChSystem *system)
virtual HMMWV_VehicleCreateVehicle ()=0

Protected Attributes

ChMaterialSurface::ContactMethod m_contactMethod
ChassisCollisionType m_chassisCollisionType
bool m_fixed
DrivelineType m_driveType
PowertrainModelType m_powertrainType
TireModelType m_tireType
double m_vehicle_step_size
double m_tire_step_size
ChCoordsys m_initPos
double m_initFwdVel
std::vector< double > m_initOmega
bool m_apply_drag
double m_Cd
double m_area
double m_air_density
std::array< ChTire *, 4 > m_tires
double m_tire_mass