Project Chrono: chrono::vehicle::marder::Marder_SprocketSinglePinRight Class Reference

Public Member Functions | List of all members
chrono::vehicle::marder::Marder_SprocketSinglePinRight Class Reference
Models » Vehicle models » Marder tracked vehicle

## Description

M113 sprocket subsystem, suitable for interaction with single-pin track shoes (right side).

`#include <Marder_SprocketSinglePin.h>`

Inheritance diagram for chrono::vehicle::marder::Marder_SprocketSinglePinRight:
[legend]
Collaboration diagram for chrono::vehicle::marder::Marder_SprocketSinglePinRight:
[legend]

## Public Member Functions
virtual std::string | GetMeshFile () const override
Public Member Functions inherited from chrono::vehicle::marder::Marder_SprocketSinglePin
virtual unsigned int | GetNumTeeth () const override
| Get the number of teeth of the gear.
virtual double | GetAssemblyRadius () const override
| Get the radius of the gear.
virtual double | GetAddendumRadius () const override
| Get the addendum radius.
virtual double | GetGearMass () const override
| Return the mass of the gear body.
virtual const ChVector3d & | GetGearInertia () override
| Return the moments of inertia of the gear body.
virtual double | GetAxleInertia () const override
| Return the inertia of the axle shaft.
virtual double | GetSeparation () const override
| Return the distance between the two gear profiles.
virtual double | GetOuterRadius () const override
| Return the radius of the addendum circle.
virtual double | GetArcRadius () const override
| Return the radius of the (concave) tooth circular arc.
virtual double | GetArcCentersRadius () const override
| Return the radius of the tooth arc centers.
virtual double | GetLateralBacklash () const override
| Return the allowed backlash (play) before lateral contact with track shoes is enabled (to prevent detracking).
Public Member Functions inherited from chrono::vehicle::ChSprocketSinglePin
| ChSprocketSinglePin (const std::string &name)
virtual std::string | GetTemplateName () const override
| Get the name of the vehicle subsystem template.
virtual std::shared_ptr< ChLinePath > | GetProfile () const override
| Return the 2D gear profile.
virtual std::shared_ptr< ChSystem::CustomCollisionCallback > | GetCollisionCallback (ChTrackAssembly *track) override
| Return the custom collision callback object.
Public Member Functions inherited from chrono::vehicle::ChSprocket
std::shared_ptr< ChBody > | GetGearBody () const
| Get a handle to the gear body.
std::shared_ptr< ChShaft > | GetAxle () const
| Get a handle to the axle shaft.
std::shared_ptr< ChLinkLockRevolute > | GetRevolute () const
| Get a handle to the revolute joint.
double | GetAxleSpeed () const
| Get the angular speed of the axle.
void | EnableCollision (bool val)
| Turn on/off collision flag for the gear wheel.
std::shared_ptr< ChContactMaterial > | GetContactMaterial () const
| Get the sprocket contact material.
void | DisableLateralContact ()
| Disable lateral contact for preventing detracking (default: enabled).
virtual void | Initialize (std::shared_ptr< ChChassis > chassis, const ChVector3d &location, ChTrackAssembly *track)
| Initialize this sprocket subsystem.
void | ApplyAxleTorque (double torque)
| Apply the provided torque to the sprocket's axle (for debugging and testing).
std::shared_ptr< ChTriangleMeshConnected > | CreateVisualizationMesh (double radius, double width, double delta, ChColor color=ChColor(1, 1, 1)) const
| Utility function to create a sprocket visualization mesh.
virtual void | RemoveVisualizationAssets () override
| Remove visualization assets for the sprocket subsystem.
void | LogConstraintViolations ()
| Log current constraint violations.
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.

## Additional Inherited Members
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::marder::Marder_SprocketSinglePin
| Marder_SprocketSinglePin (const std::string &name)
virtual void | CreateContactMaterial (ChContactMethod contact_method) override
| Create the contact material consistent with the specified contact method.
virtual void | AddVisualizationAssets (VisualizationType vis) override
| Add visualization of the sprocket.
Protected Member Functions inherited from chrono::vehicle::ChSprocket
| ChSprocket (const std::string &name)
| Construct a sprocket subsystem with given name.
virtual void | InitializeInertiaProperties () override
| Initialize subsystem inertia properties.
virtual void | UpdateInertiaProperties () override
| Update subsystem inertia properties.
virtual void | ExportComponentList (rapidjson::Document &jsonDocument) const override
| Export this subsystem's component list to the specified JSON object.
virtual void | Output (ChVehicleOutput &database) const override
| Output data for this subsystem's component list to the specified database.
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::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::ChSprocket
ChVector3d | m_rel_loc
| sprocket subsystem location relative to chassis
std::shared_ptr< ChBody > | m_gear
| sprocket gear body
std::shared_ptr< ChShaft > | m_axle
| gear shafts
std::shared_ptr< ChShaftBodyRotation > | m_axle_to_spindle
| gear-shaft connector
std::shared_ptr< ChLinkLockRevolute > | m_revolute
| sprocket revolute joint
std::shared_ptr< ChContactMaterial > | m_material
| contact material;
std::shared_ptr< ChSystem::CustomCollisionCallback > | m_callback
| cached collision callback
bool | m_lateral_contact
| if 'true', enable lateral conatact to prevent detracking
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
Static Protected Attributes inherited from chrono::vehicle::marder::Marder_SprocketSinglePin
static const int | m_num_teeth = 12
static const double | m_gear_mass = 27.68
static const ChVector3d | m_gear_inertia
static const double | m_axle_inertia = 0.4
static const double | m_separation = 0.225
static const double | m_gear_RT = 0.3
static const double | m_gear_RC = 0.328414781
static const double | m_gear_R = 0.07
static const double | m_gear_RA = 0.275
static const double | m_lateral_backlash = 0.01

## Member Function Documentation

## ◆ GetMeshFile()

virtual std::string chrono::vehicle::marder::Marder_SprocketSinglePinRight::GetMeshFile | ( |  | ) | const
| inlineoverridevirtual

Implements chrono::vehicle::marder::Marder_SprocketSinglePin.

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

- D:/W/B/src/chrono-9.0.1/src/chrono_models/vehicle/marder/Marder_SprocketSinglePin.h
- D:/W/B/src/chrono-9.0.1/src/chrono_models/vehicle/marder/Marder_SprocketSinglePin.cpp