Description
Template for a powertrain model using shaft elements.
This powertrain template includes a torque converter and a manumatic transmission.
#include <ChShaftsPowertrain.h>


| Public Member Functions | |
| ChShaftsPowertrain (const std::string &name, const ChVector<> &dir_motor_block=ChVector<>(1, 0, 0)) | |
| Construct a shafts-based powertrain model. | |
| virtual std::string | GetTemplateName () const override | 
| Get the name of the vehicle subsystem template. | |
| virtual double | GetMotorSpeed () const override | 
| Return the current engine speed. | |
| virtual double | GetMotorTorque () const override | 
| Return the current engine torque. | |
| virtual double | GetTorqueConverterSlippage () const override | 
| Return the value of slippage in the torque converter. | |
| virtual double | GetTorqueConverterInputTorque () const override | 
| Return the input torque to the torque converter. | |
| virtual double | GetTorqueConverterOutputTorque () const override | 
| Return the output torque from the torque converter. | |
| virtual double | GetTorqueConverterOutputSpeed () const override | 
| Return the torque converter output shaft speed. | |
| virtual double | GetOutputTorque () const override | 
| Return the output torque from the powertrain.  More... | |
| void | SetGearShiftLatency (double ml) | 
| Use this to define the gear shift latency, in seconds. | |
| double | GetGearShiftLatency (double ml) | 
| Use this to get the gear shift latency, in seconds. | |
|  Public Member Functions inherited from chrono::vehicle::ChPowertrain | |
| int | GetCurrentTransmissionGear () const | 
| Return the current transmission gear.  More... | |
| void | SetDriveMode (DriveMode mode) | 
| Set the drive mode. | |
| DriveMode | GetDriveMode () const | 
| Return the current drive mode. | |
| void | SetTransmissionMode (TransmissionMode mode) | 
| Set the transmission mode (automatic or manual).  More... | |
| TransmissionMode | GetTransmissionMode () const | 
| Get the current transmission mode. | |
| void | ShiftUp () | 
| Shift up. | |
| void | ShiftDown () | 
| Shift down. | |
| void | SetGear (int gear) | 
| Shift to the specified gear.  More... | |
|  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. | |
| double | GetMass () const | 
| Get the subsystem mass.  More... | |
| const ChFrame & | GetCOMFrame () const | 
| Get the current subsystem COM frame (relative to and expressed in the subsystem's reference frame).  More... | |
| const ChMatrix33 & | GetInertia () const | 
| Get the current subsystem inertia (relative to the subsystem COM frame).  More... | |
| const ChFrame & | GetTransform () const | 
| Get the current subsystem position relative to the global frame.  More... | |
| void | SetVisualizationType (VisualizationType vis) | 
| Set the visualization mode for this subsystem. | |
| virtual void | AddVisualizationAssets (VisualizationType vis) | 
| Add visualization assets to this subsystem, for the specified visualization mode. | |
| virtual void | RemoveVisualizationAssets () | 
| Remove all visualization assets from 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.  More... | |
| virtual void | Output (ChVehicleOutput &database) const | 
| Output data for this subsystem's component list to the specified database. | |
| Protected Member Functions | |
| virtual double | GetMotorBlockInertia () const =0 | 
| Inertias of the component ChShaft objects. | |
| virtual double | GetCrankshaftInertia () const =0 | 
| virtual double | GetIngearShaftInertia () const =0 | 
| virtual double | GetPowershaftInertia () const =0 | 
| virtual double | GetUpshiftRPM () const =0 | 
| Upshift and downshift rotation speeds (in RPM) | |
| virtual double | GetDownshiftRPM () const =0 | 
| virtual void | SetEngineTorqueMap (std::shared_ptr< ChFunction_Recorder > &map)=0 | 
| Engine speed-torque map. | |
| virtual void | SetEngineLossesMap (std::shared_ptr< ChFunction_Recorder > &map)=0 | 
| Engine speed-torque braking effect because of losses. | |
| virtual void | SetTorqueConverterCapacityFactorMap (std::shared_ptr< ChFunction_Recorder > &map)=0 | 
| Set the capacity factor map.  More... | |
| virtual void | SetTorqeConverterTorqueRatioMap (std::shared_ptr< ChFunction_Recorder > &map)=0 | 
| Set the torque ratio map.  More... | |
|  Protected Member Functions inherited from chrono::vehicle::ChPowertrain | |
| ChPowertrain (const std::string &name) | |
| virtual void | InitializeInertiaProperties () override | 
| Initialize subsystem inertia properties.  More... | |
| virtual void | UpdateInertiaProperties () override | 
| Update subsystem inertia properties.  More... | |
| virtual void | SetGearRatios (std::vector< double > &fwd, double &rev)=0 | 
| Set the transmission gear ratios (one or more forward gear ratios and a single reverse gear ratio). | |
|  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.  More... | |
| void | AddInertiaProperties (ChVector<> &com, ChMatrix33<> &inertia) | 
| Add this subsystem's inertia properties.  More... | |
| virtual void | Create (const rapidjson::Document &d) | 
| Create a vehicle subsystem from JSON data.  More... | |
| 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. | |
| Additional Inherited Members | |
|  Public Types inherited from chrono::vehicle::ChPowertrain | |
| enum | DriveMode { DriveMode::FORWARD, DriveMode::NEUTRAL, DriveMode::REVERSE } | 
| Driving modes.  More... | |
| enum | TransmissionMode { TransmissionMode::AUTOMATIC, TransmissionMode::MANUAL } | 
| Transmission mode.  More... | |
|  Static Public Member Functions inherited from chrono::vehicle::ChPart | |
| static ChMatrix33 | TransformInertiaMatrix (const ChVector<> &moments, const ChVector<> &products, const ChMatrix33<> &vehicle_rot, const ChMatrix33<> &body_rot) | 
| Utility function for transforming inertia tensors between centroidal frames.  More... | |
|  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::ChPowertrain | |
| TransmissionMode | m_transmission_mode | 
| transmission mode (automatic or manual) | |
| DriveMode | m_drive_mode | 
| drive mode (neutral, forward, or reverse) | |
| std::shared_ptr< ChDriveline > | m_driveline | 
| associated driveline subsystem | |
| std::vector< double > | m_gear_ratios | 
| gear ratios (0: reverse, 1+: forward) | |
| int | m_current_gear | 
| current transmission gear (0: reverse, 1+: forward) | |
| double | m_current_gear_ratio | 
| current gear ratio (positive for forward, negative for reverse) | |
|  Protected Attributes inherited from chrono::vehicle::ChPart | |
| std::string | m_name | 
| subsystem name | |
| 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
◆ GetOutputTorque()
| 
 | overridevirtual | 
Return the output torque from the powertrain.
This is the torque that is passed to a vehicle system, thus providing the interface between the powertrain and vehicle co-simulation modules.
Implements chrono::vehicle::ChPowertrain.
◆ SetTorqeConverterTorqueRatioMap()
| 
 | protectedpure virtual | 
Set the torque ratio map.
Specify torque ratio as a function of the speed ratio.
Implemented in chrono::vehicle::duro::Duro_Powertrain, chrono::vehicle::feda::FEDA_Powertrain, chrono::vehicle::hmmwv::HMMWV_Powertrain, chrono::vehicle::m113::M113_ShaftsPowertrain, chrono::vehicle::mrole::mrole_Powertrain, chrono::vehicle::fmtv::FMTV_Powertrain, and chrono::vehicle::ShaftsPowertrain.
◆ SetTorqueConverterCapacityFactorMap()
| 
 | protectedpure virtual | 
Set the capacity factor map.
Specify the capacity factor as a function of the speed ratio.
Implemented in chrono::vehicle::duro::Duro_Powertrain, chrono::vehicle::feda::FEDA_Powertrain, chrono::vehicle::hmmwv::HMMWV_Powertrain, chrono::vehicle::m113::M113_ShaftsPowertrain, chrono::vehicle::mrole::mrole_Powertrain, chrono::vehicle::fmtv::FMTV_Powertrain, and chrono::vehicle::ShaftsPowertrain.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_vehicle/powertrain/ChShaftsPowertrain.h
- /builds/uwsbel/chrono/src/chrono_vehicle/powertrain/ChShaftsPowertrain.cpp
