Co-simulation support for vehicle-terrain interaction
Description
The vehicle co-simulation module provides an MPI_based framework for co-simulating a multibody system representing a wheeled mechanism with various terrain models and optionally various tire models. It implements a 3-way explicit force-displacement co-simulation approach. The three different types of nodes present in a co-simulation are as follows:
- MBS node, a single MPI rank which simulates the multibody system up to the wheel spindles.
- Tire nodes, a number of MPI ranks (equal to the number of wheels), each simulating one of the tires.
- Terrain node(s), one or more MPI ranks which simulate the deformable terrain
The inter-node communication at each synchronization time is as follows:
- MBS node sends spindle body state to corresponding Tire nodes
- Tire nodes send spindle forces to MBS node
- Tire nodes send tire state (rigid body state or deformable mesh state) to Terrain node
- Terrain node sends tire forces (single resultant force or distributed vertex forces) to corresponding Tire node
The communication interface between Tire and Terrain nodes can be of one of two types:
- ChVehicleCosimBaseNode::InterfaceType::BODY, in which data (force-displacement) for a single rigid body is exchanged
- ChVehicleCosimBaseNode::InterfaceType::MESH, in which data (force-displacement) for a deformable mesh is exchanged
Collaboration diagram for Co-simulation support for vehicle-terrain interaction:
Modules | |
Multibody system nodes | |
Tire simulation nodes | |
Terrain nodes using Chrono physics | |
Classes | |
class | chrono::vehicle::ChVehicleCosimBaseNode |
Base class for a co-simulation node. More... | |
class | chrono::vehicle::ChVehicleCosimMBSNode |
Base class for all MBS nodes. More... | |
class | chrono::vehicle::ChVehicleCosimOtherNode |
Definition of an additional MPI node not directly involved in co-simulation. More... | |
class | chrono::vehicle::ChVehicleCosimTerrainNode |
Base class for a terrain node. More... | |
class | chrono::vehicle::ChVehicleCosimTireNode |
Base class for all tire nodes. More... | |