Definition of a continuous band track assembly using an ANCFshell-based web A track assembly consists of a sprocket, an idler (with tensioner mechanism), a set of suspensions (road-wheel assemblies), and a collection of track shoes.
This class defines the template for a track assembly using a web modeled as an FEA mesh with ANCF shell elements.
|
| ChTrackAssemblyBandANCF (const std::string &name, VehicleSide side) |
| Construct an ANCFshell-based track assembly on the specified vehicle side. More...
|
|
virtual std::string | GetTemplateName () const override |
| Get the name of the vehicle subsystem template.
|
|
void | SetContactSurfaceType (ContactSurfaceType type) |
| Set the type of contact surface (default: TRIANGLE_MESH).
|
|
virtual size_t | GetNumTrackShoes () const override |
| Get the number of track shoes.
|
|
virtual std::shared_ptr< ChTrackShoe > | GetTrackShoe (size_t id) const override |
| Get a handle to the specified track shoe subsystem.
|
|
Public Member Functions inherited from chrono::vehicle::ChTrackAssemblyBand |
| ChTrackAssemblyBand (const std::string &name, VehicleSide side) |
|
virtual std::shared_ptr< ChSprocket > | GetSprocket () const override |
| Get a handle to the sprocket.
|
|
VehicleSide | GetVehicleSide () const |
| Return the vehicle side for this track assembly.
|
|
size_t | GetNumRoadWheelAssemblies () const |
| Get the number of suspensions.
|
|
size_t | GetNumRollers () const |
| Get the number of rollers.
|
|
std::shared_ptr< ChIdler > | GetIdler () const |
| Get a handle to the idler subsystem.
|
|
std::shared_ptr< ChTrackBrake > | GetBrake () const |
| Get a handle to the brake subsystem.
|
|
const ChRoadWheelAssemblyList & | GetRoadWheelAssemblies () const |
| Get the list of suspension subsystems.
|
|
std::shared_ptr< ChRoadWheelAssembly > | GetRoadWheelAssembly (size_t id) const |
| Get a handle to the specified suspension subsystem.
|
|
std::shared_ptr< ChRoller > | GetRoller (size_t id) const |
| Get a handle to the specified roller subsystem.
|
|
std::shared_ptr< ChRoadWheel > | GetRoadWheel (size_t id) const |
| Get a handle to the specified road wheel subsystem.
|
|
const ChVector & | GetTrackShoePos (size_t id) const |
| Get the global location of the specified track shoe. More...
|
|
const ChQuaternion & | GetTrackShoeRot (size_t id) const |
| Get the orientation of the specified track shoe. More...
|
|
const ChVector & | GetTrackShoeLinVel (size_t id) const |
| Get the linear velocity of the specified track shoe. More...
|
|
ChVector | GetTrackShoeAngVel (size_t id) const |
| Get the angular velocity of the specified track shoe. More...
|
|
BodyState | GetTrackShoeState (size_t id) const |
| Get the complete state for the specified track shoe. More...
|
|
void | GetTrackShoeStates (BodyStates &states) const |
| Get the complete states for all track shoes. More...
|
|
double | GetMass () const |
| Get the total mass of the track assembly. More...
|
|
virtual const ChVector | GetSprocketLocation () const =0 |
| Get the relative location of the sprocket subsystem. More...
|
|
virtual const ChVector | GetIdlerLocation () const =0 |
| Get the relative location of the idler subsystem. More...
|
|
virtual const ChVector | GetRoadWhelAssemblyLocation (int which) const =0 |
| Get the relative location of the specified suspension subsystem. More...
|
|
virtual const ChVector | GetRollerLocation (int which) const |
| Get the relative location of the specified roller subsystem. More...
|
|
void | Initialize (std::shared_ptr< ChBodyAuxRef > chassis, const ChVector<> &location, bool create_shoes=true) |
| Initialize this track assembly subsystem. More...
|
|
void | SetSprocketVisualizationType (VisualizationType vis) |
| Set visualization type for the sprocket subsystem.
|
|
void | SetIdlerVisualizationType (VisualizationType vis) |
|
void | SetRoadWheelAssemblyVisualizationType (VisualizationType vis) |
| Set visualization type for the suspension subsystems.
|
|
void | SetRoadWheelVisualizationType (VisualizationType vis) |
| Set visualization type for the road-wheel subsystems.
|
|
void | SetRollerVisualizationType (VisualizationType vis) |
| Set visualization type for the roller subsystems.
|
|
void | SetTrackShoeVisualizationType (VisualizationType vis) |
| Set visualization type for the track shoe subsystems.
|
|
void | Synchronize (double time, double braking, const TerrainForces &shoe_forces) |
| Update the state of this track assembly at the current time. More...
|
|
virtual void | SetOutput (bool state) override |
| Enable/disable output for this subsystem. More...
|
|
void | LogConstraintViolations () |
| Log current constraint violations.
|
|
| ChPart (const std::string &name) |
| Construct a vehicle subsystem with the specified name. More...
|
|
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.
|
|
void | SetVisualizationType (VisualizationType vis) |
| Set the visualization mode for this subsystem.
|
|
void | SetContactFrictionCoefficient (float friction_coefficient) |
| Set coefficient of friction. More...
|
|
void | SetContactRestitutionCoefficient (float restitution_coefficient) |
| Set coefficient of restitution. More...
|
|
void | SetContactMaterialProperties (float young_modulus, float poisson_ratio) |
| Set contact material properties. More...
|
|
void | SetContactMaterialCoefficients (float kn, float gn, float kt, float gt) |
| Set contact material coefficients. More...
|
|
float | GetCoefficientFriction () const |
| Get coefficient of friction for contact material.
|
|
float | GetCoefficientRestitution () const |
| Get coefficient of restitution for contact material.
|
|
float | GetYoungModulus () const |
| Get Young's modulus of elasticity for contact material.
|
|
float | GetPoissonRatio () const |
| Get Poisson ratio for contact material.
|
|
float | GetKn () const |
| Get normal stiffness coefficient for contact material.
|
|
float | GetKt () const |
| Get tangential stiffness coefficient for contact material.
|
|
float | GetGn () const |
| Get normal viscous damping coefficient for contact material.
|
|
float | GetGt () const |
| Get tangential viscous damping coefficient for contact material.
|
|
bool | OutputEnabled () const |
| Return the output state for this subsystem.
|
|
|
void | SetRubberLayerMaterial (double rho, const ChVector<> &E, const ChVector<> &nu, const ChVector<> &G) |
| Set material properties of the rubber layers (isotropic material). More...
|
|
void | SetSteelLayerMaterial (double rho, const ChVector<> &E, const ChVector<> &nu, const ChVector<> &G) |
| Set material properties of the steel layer (isotropic material). More...
|
|
void | SetElementStructuralDamping (double alpha) |
| Set element structural damping (default: 0.05).
|
|
void | SetLayerFiberAngles (double angle_1, double angle_2, double angle_3) |
| Set fiber angle for the three layers. More...
|
|
Protected Member Functions inherited from chrono::vehicle::ChTrackAssemblyBand |
bool | FindAssemblyPoints (std::shared_ptr< ChBodyAuxRef > chassis, int num_shoes, const std::vector< double > &connection_lengths, std::vector< ChVector2<>> &shoe_points) |
| Assembly Algorithm Utility Functions.
|
|
void | FindCircleTangentPoints (ChVector2<> Circle1Pos, double Circle1Rad, ChVector2<> Circle2Pos, double Circle2Rad, ChVector2<> &Tan1Pnt1, ChVector2<> &Tan1Pnt2, ChVector2<> &Tan2Pnt1, ChVector2<> &Tan2Pnt2) |
|
void | CheckCircleCircle (bool &found, ChVector2<> &Point, ChMatrixDynamic<> &Features, int FeatureIdx, ChVector2<> &StartingPoint, double Radius) |
|
void | CheckCircleLine (bool &found, ChVector2<> &Point, ChMatrixDynamic<> &Features, int FeatureIdx, ChVector2<> &StartingPoint, double Radius) |
|
| ChTrackAssembly (const std::string &name, VehicleSide side) |
|
virtual void | ExportComponentList (rapidjson::Document &jsonDocument) const override |
| Export this subsystem's component list to the specified JSON object. More...
|
|
virtual void | Output (ChVehicleOutput &database) const override |
| Output data for this subsystem's component list to the specified database.
|
|
virtual void | Create (const rapidjson::Document &d) |
| Create a vehicle subsystem from JSON data. More...
|
|
|
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 void | ExportBodyList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChBody >> bodies) |
| Export the list of bodies to the specified JSON document.
|
|
static void | ExportShaftList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChShaft >> shafts) |
| Export the list of shafts to the specified JSON document.
|
|
static void | ExportJointList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLink >> joints) |
| Export the list of joints to the specified JSON document.
|
|
static void | ExportCouplesList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChShaftsCouple >> couples) |
| Export the list of shaft couples to the specified JSON document.
|
|
static void | ExportMarkerList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChMarker >> markers) |
| Export the list of markers to the specified JSON document.
|
|
static void | ExportLinSpringList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLinkTSDA >> springs) |
| Export the list of translational springs to the specified JSON document.
|
|
static void | ExportRotSpringList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLinkRotSpringCB >> springs) |
| Export the list of rotational springs to the specified JSON document.
|
|
static void | ExportBodyLoadList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLoadBodyBody >> loads) |
| Export the list of body-body loads to the specified JSON document.
|
|