Project Chrono: chrono::vehicle::hmmwv::HMMWV_FialaTire Class Reference

Public Member Functions | List of all members
chrono::vehicle::hmmwv::HMMWV_FialaTire Class Reference
Models » Vehicle models » HMMWV

## Description

Fiala tire model for the HMMWV vehicle.

`#include <HMMWV_FialaTire.h>`

Inheritance diagram for chrono::vehicle::hmmwv::HMMWV_FialaTire:
[legend]
Collaboration diagram for chrono::vehicle::hmmwv::HMMWV_FialaTire:
[legend]

## Public Member Functions
| HMMWV_FialaTire (const std::string &name)
virtual double | GetNormalStiffnessForce (double depth) const override
| Return the vertical tire stiffness contribution to the normal force.
virtual double | GetNormalDampingForce (double depth, double velocity) const override
| Return the vertical tire damping contribution to the normal force.
virtual double | GetVisualizationWidth () const override
| Get visualization width.
virtual void | SetFialaParams () override
| Set the parameters in the Fiala model.
virtual double | GetTireMass () const override
| Return the tire mass.
virtual ChVector3d | GetTireInertia () const override
| Return the tire moments of inertia (in the tire centroidal frame).
virtual void | AddVisualizationAssets (VisualizationType vis) override
| Add visualization assets for the rigid tire subsystem.
virtual void | RemoveVisualizationAssets () override final
| Remove visualization assets for the rigid tire subsystem.
Public Member Functions inherited from chrono::vehicle::ChFialaTire
| ChFialaTire (const std::string &name)
virtual std::string | GetTemplateName () const override
| Get the name of the vehicle subsystem template.
virtual double | GetRadius () const override
| Get the tire width.
virtual double | GetWidth () const override
| Get the width of the tire.
double | GetSlipAngle_internal () const
| Get the tire slip angle computed internally by the Fiala model (in radians).
double | GetLongitudinalSlip_internal () const
| Get the tire longitudinal slip computed internally by the Fiala model.
double | GetCamberAngle_internal ()
| Get the camber angle for the Fiala tire model (in radians).
virtual double | GetDeflection () const override
| Get the tire deflection.
double | GetTireOmega ()
void | WritePlots (const std::string &plFileName, const std::string &plTireFormat)
| Generate basic tire plots.
Public Member Functions inherited from chrono::vehicle::ChForceElementTire
virtual TerrainForce | ReportTireForce (ChTerrain *terrain) const override
| Report the tire force and moment.
virtual TerrainForce | ReportTireForceLocal (ChTerrain *terrain, ChCoordsys<> &tire_frame) const override
| Report the tire forces expressed in the tire frame.
const ContactData & | ReportTireContactData () const
| Report current tire-terrain contact information.
void | SetVerbose (bool verbose)
| Enable/disable information terminal output (default: false).
Public Member Functions inherited from chrono::vehicle::ChTire
void | SetStepsize (double val)
| Set the value of the integration step size for the underlying dynamics (if applicable).
double | GetStepsize () const
| Get the current value of the integration step size.
void | SetCollisionType (CollisionType collision_type)
| Set the collision type for tire-terrain interaction.
void | SetPressure (double pressure)
| Set the internal tire pressure [Pa].
double | GetPressure () const
| Get the internal tire pressure [Pa].
double | GetSlipAngle () const
| Return the tire slip angle calculated based on the current state of the associated wheel body.
double | GetLongitudinalSlip () const
| Return the tire longitudinal slip calculated based on the current state of the associated wheel body.
double | GetCamberAngle () const
| Return the tire camber angle calculated based on the current state of the associated wheel body.
const std::string & | GetMeshFilename () const
| Get the name of the Wavefront file with tire visualization mesh.
Public Member Functions inherited from chrono::vehicle::ChPart
const std::string & | GetName () const
| Get the name identifier for this subsystem.
void | SetName (const std::string &name)
| Set the name identifier for this subsystem.
bool | IsInitialized () const
| Return flag indicating whether or not the part is fully constructed.
double | GetMass () const
| Get the subsystem mass.
const ChFrame & | GetCOMFrame () const
| Get the current subsystem COM frame (relative to and expressed in the subsystem's reference frame).
const ChMatrix33 & | GetInertia () const
| Get the current subsystem inertia (relative to the subsystem COM frame).
const ChFrame & | GetTransform () const
| Get the current subsystem position relative to the global frame.
void | SetVisualizationType (VisualizationType vis)
| Set the visualization mode for this subsystem.
virtual void | SetOutput (bool state)
| Enable/disable output for this subsystem.
bool | OutputEnabled () const
| Return the output state for this subsystem.
virtual void | ExportComponentList (rapidjson::Document &jsonDocument) const
| Export this subsystem's component list to the specified JSON object.
virtual void | Output (ChVehicleOutput &database) const
| Output data for this subsystem's component list to the specified database.

## Additional Inherited Members
Public Types inherited from chrono::vehicle::ChTire
enum class | CollisionType { SINGLE_POINT , FOUR_POINTS , ENVELOPE }
Static Public Member Functions inherited from chrono::vehicle::ChTire
static ChVector3d | EstimateInertia (double tire_width, double aspect_ratio, double rim_diameter, double tire_mass, double t_factor=2)
| Utility function for estimating the tire moments of inertia.
Static Public Member Functions inherited from chrono::vehicle::ChPart
static ChMatrix33 | TransformInertiaMatrix (const ChVector3d &moments, const ChVector3d &products, const ChMatrix33<> &vehicle_rot, const ChMatrix33<> &body_rot)
| Utility function for transforming inertia tensors between centroidal frames.
Protected Member Functions inherited from chrono::vehicle::ChFialaTire
void | FialaPatchForces (double &fx, double &fy, double &mz, double kappa, double alpha, double fz)
| Calculate Patch Forces.
virtual void | Initialize (std::shared_ptr< ChWheel > wheel) override
| Initialize this tire by associating it to the specified wheel.
virtual void | Synchronize (double time, const ChTerrain &terrain) override
| Update the state of this tire system at the current time.
virtual void | Advance (double step) override
| Advance the state of this tire by the specified time step.
Protected Member Functions inherited from chrono::vehicle::ChForceElementTire
| ChForceElementTire (const std::string &name)
| Construct a tire with the specified name.
virtual TerrainForce | GetTireForce () const override
| Get the tire force and moment.
Protected Member Functions inherited from chrono::vehicle::ChTire
| ChTire (const std::string &name)
| Construct a tire subsystem with given name.
void | CalculateKinematics (const WheelState &wheel_state, const ChCoordsys<> &tire_frame)
| Calculate kinematics quantities based on the given state of the associated wheel body.
double | GetOffset () const
| Get offset from spindle center.
std::shared_ptr< ChVisualShapeTriangleMesh > | AddVisualizationMesh (const std::string &mesh_file_left, const std::string &mesh_file_right)
| Add mesh visualization to the body associated with this tire (a wheel spindle body).
Protected Member Functions inherited from chrono::vehicle::ChPart
| ChPart (const std::string &name)
| Construct a vehicle subsystem with the specified name.
void | AddMass (double &mass)
| Add this subsystem's mass.
void | AddInertiaProperties (ChVector3d &com, ChMatrix33<> &inertia)
| Add this subsystem's inertia properties.
virtual void | Create (const rapidjson::Document &d)
| Create a vehicle subsystem from JSON data.
void | ExportBodyList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChBody > > bodies) const
| Export the list of bodies to the specified JSON document.
void | ExportShaftList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChShaft > > shafts) const
| Export the list of shafts to the specified JSON document.
void | ExportJointList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLink > > joints) const
| Export the list of joints to the specified JSON document.
void | ExportCouplesList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChShaftsCouple > > couples) const
| Export the list of shaft couples to the specified JSON document.
void | ExportMarkerList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChMarker > > markers) const
| Export the list of markers to the specified JSON document.
void | ExportLinSpringList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLinkTSDA > > springs) const
| Export the list of translational springs to the specified JSON document.
void | ExportRotSpringList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLinkRSDA > > springs) const
| Export the list of rotational springs to the specified JSON document.
void | ExportBodyLoadList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLoadBodyBody > > loads) const
| Export the list of body-body loads to the specified JSON document.
Static Protected Member Functions inherited from chrono::vehicle::ChTire
static bool | DiscTerrainCollision (CollisionType method, const ChTerrain &terrain, const ChVector3d &disc_center, const ChVector3d &disc_normal, double disc_radius, double width, const ChFunctionInterp &areaDep, ChCoordsys<> &contact, double &depth, float &mu)
| Perform disc-terrain collision detection, using the specified method.
static void | ConstructAreaDepthTable (double disc_radius, ChFunctionInterp &areaDep)
| Utility function to construct a loopkup table for penetration depth as function of intersection area, for a given tire radius.
static bool | DiscTerrainCollision1pt (const ChTerrain &terrain, const ChVector3d &disc_center, const ChVector3d &disc_normal, double disc_radius, ChCoordsys<> &contact, double &depth, float &mu)
| Perform disc-terrain collision detection.
static bool | DiscTerrainCollision4pt (const ChTerrain &terrain, const ChVector3d &disc_center, const ChVector3d &disc_normal, double disc_radius, double width, ChCoordsys<> &contact, double &depth, float &mu)
| Perform disc-terrain collision detection considering the curvature of the road surface.
static bool | DiscTerrainCollisionEnvelope (const ChTerrain &terrain, const ChVector3d &disc_center, const ChVector3d &disc_normal, double disc_radius, double width, const ChFunctionInterp &areaDep, ChCoordsys<> &contact, double &depth, float &mu)
| Collsion algorithm based on a paper of J.
Static Protected Member Functions inherited from chrono::vehicle::ChPart
static void | RemoveVisualizationAssets (std::shared_ptr< ChPhysicsItem > item)
| Erase all visual shapes from the visual model associated with the specified physics item (if any).
static void | RemoveVisualizationAsset (std::shared_ptr< ChPhysicsItem > item, std::shared_ptr< ChVisualShape > shape)
| Erase the given shape from the visual model associated with the specified physics item (if any).
Protected Attributes inherited from chrono::vehicle::ChFialaTire
double | m_unloaded_radius
| Fiala tire model parameters.
double | m_width
double | m_rolling_resistance
double | m_c_slip
double | m_c_alpha
double | m_u_min
double | m_u_max
double | m_mu
| Actual friction coefficient of the road.
double | m_mu_0
| Local friction coefficient of the road for given parameters.
double | m_time
TireStates | m_states
Protected Attributes inherited from chrono::vehicle::ChForceElementTire
ContactData | m_data
| tire-terrain collision information
TerrainForce | m_tireforce
| tire forces (in tire contact frame)
ChFunctionInterp | m_areaDep
| lookup table for estimation of penetration depth from intersection area
std::shared_ptr< ChVisualShape > | m_cyl_shape
| visualization cylinder asset
bool | m_verbose
| verbose output
Protected Attributes inherited from chrono::vehicle::ChTire
std::shared_ptr< ChWheel > | m_wheel
| associated wheel subsystem
double | m_stepsize
| tire integration step size (if applicable)
double | m_pressure
| internal tire pressure
CollisionType | m_collision_type
| method used for tire-terrain collision
std::string | m_vis_mesh_file
| name of OBJ file for visualization of this tire (may be empty)
double | m_slip_angle
double | m_longitudinal_slip
double | m_camber_angle
Protected Attributes inherited from chrono::vehicle::ChPart
std::string | m_name
| subsystem name
bool | m_initialized
| specifies whether ot not the part is fully constructed
bool | m_output
| specifies whether or not output is generated for this subsystem
std::shared_ptr< ChPart > | m_parent
| parent subsystem (empty if parent is vehicle)
double | m_mass
| subsystem mass
ChMatrix33 | m_inertia
| inertia tensor (relative to subsystem COM)
ChFrame | m_com
| COM frame (relative to subsystem reference frame).
ChFrame | m_xform
| subsystem frame expressed in the global frame

## Member Function Documentation

## ◆ AddVisualizationAssets()

void chrono::vehicle::hmmwv::HMMWV_FialaTire::AddVisualizationAssets | ( | VisualizationType | vis | ) |
| overridevirtual

Add visualization assets for the rigid tire subsystem.

Reimplemented from chrono::vehicle::ChForceElementTire.

## ◆ GetNormalDampingForce()

double chrono::vehicle::hmmwv::HMMWV_FialaTire::GetNormalDampingForce | ( | double | depth,
|  | double | velocity ) const
| overridevirtual

Return the vertical tire damping contribution to the normal force.

Implements chrono::vehicle::ChForceElementTire.

## ◆ GetNormalStiffnessForce()

double chrono::vehicle::hmmwv::HMMWV_FialaTire::GetNormalStiffnessForce | ( | double | depth | ) | const
| overridevirtual

Return the vertical tire stiffness contribution to the normal force.

Implements chrono::vehicle::ChForceElementTire.

## ◆ GetTireInertia()

virtual ChVector3d chrono::vehicle::hmmwv::HMMWV_FialaTire::GetTireInertia | ( |  | ) | const
| inlineoverridevirtual

Return the tire moments of inertia (in the tire centroidal frame).

Implements chrono::vehicle::ChTire.

## ◆ GetTireMass()

virtual double chrono::vehicle::hmmwv::HMMWV_FialaTire::GetTireMass | ( |  | ) | const
| inlineoverridevirtual

Return the tire mass.

Implements chrono::vehicle::ChTire.

## ◆ GetVisualizationWidth()

virtual double chrono::vehicle::hmmwv::HMMWV_FialaTire::GetVisualizationWidth | ( |  | ) | const
| inlineoverridevirtual

Get visualization width.

Reimplemented from chrono::vehicle::ChFialaTire.

## ◆ RemoveVisualizationAssets()

void chrono::vehicle::hmmwv::HMMWV_FialaTire::RemoveVisualizationAssets | ( |  | ) |
| finaloverridevirtual

Remove visualization assets for the rigid tire subsystem.

Reimplemented from chrono::vehicle::ChForceElementTire.

## ◆ SetFialaParams()

void chrono::vehicle::hmmwv::HMMWV_FialaTire::SetFialaParams | ( |  | ) |
| overridevirtual

Set the parameters in the Fiala model.

Implements chrono::vehicle::ChFialaTire.

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

- D:/W/B/src/chrono-9.0.1/src/chrono_models/vehicle/hmmwv/tire/HMMWV_FialaTire.h
- D:/W/B/src/chrono-9.0.1/src/chrono_models/vehicle/hmmwv/tire/HMMWV_FialaTire.cpp