PxVehicleTireAxisStickyParams
Defined in include/vehicle2/PxVehicleParams.h
-
struct PxVehicleTireAxisStickyParams
The low speed regime often presents numerical difficulties for the tire model due to the potential for divide-by-zero errors.
This particularly affects scenarios where the vehicle is slowing down due to damping and drag. In scenarios where there is no significant brake or drive torque, numerical error begins to dominate and it can be difficult to bring the vehicle to rest. A solution to this problem is to recognise that the vehicle is close to rest and to replace the tire forces with velocity constraints that will bring the vehicle to rest. This regime is known as the “sticky tire” regime. PxVehicleTireAxisStickyParams describes velocity and time thresholds that categorise the “sticky tire” regime. It also describes the rate at which the velocity constraints approach zero speed.
Public Functions
-
inline PxVehicleTireAxisStickyParams transformAndScale(const PxVehicleFrame &srcFrame, const PxVehicleFrame &trgFrame, const PxVehicleScale &srcScale, const PxVehicleScale &trgScale) const
-
inline bool isValid() const
Public Members
-
PxReal thresholdSpeed
A tire enters the “sticky tire” regime when it has been below a speed specified by thresholdSpeed for a continuous time specified by thresholdTime.
Range: [0, inf)Unit: velocity = length / time
-
PxReal thresholdTime
A tire enters the “sticky tire” regime when it has been below a speed specified by thresholdSpeed for a continuous time specified by thresholdTime.
Range: [0, inf)Unit: time
-
PxReal damping
The rate at which the velocity constraint approaches zero is controlled by the damping parameter.
Range: [0, inf)Unit: 1 / time (acceleration instead of force based damping, thus not mass/time)
Note
Larger values of damping lead to faster approaches to zero. Since the damping behaves like a stiffness with respect to the velocity, too large a value can lead to instabilities.
-
inline PxVehicleTireAxisStickyParams transformAndScale(const PxVehicleFrame &srcFrame, const PxVehicleFrame &trgFrame, const PxVehicleScale &srcScale, const PxVehicleScale &trgScale) const