76 double freeSpeed(
const MSVehicle*
const veh,
double speed,
double seen,
double maxSpeed,
const bool onInsertion =
false)
const;
86 double followSpeed(
const MSVehicle*
const veh,
double speed,
double gap2pred,
double predSpeed,
double predMaxDecel,
const MSVehicle*
const pred = 0)
const;
96 double stopSpeed(
const MSVehicle*
const veh,
const double speed,
double gap2pred)
const;
106 double getSecureGap(
const MSVehicle*
const veh,
const MSVehicle*
const pred,
const double speed,
const double leaderSpeed,
const double leaderMaxDecel)
const;
209 double _v(
const MSVehicle*
const veh,
const MSVehicle*
const pred,
const double gap2pred,
const double mySpeed,
210 const double predSpeed,
const double desSpeed,
const bool respectMinGap =
true)
const;
214 const double speed,
const double predSpeed,
const double desSpeed,
double vErr,
The ACC car-following model.
CommunicationsOverrideMode CACC_CommunicationsOverrideMode
int CACC_ControlMode
The vehicle's CACC precious time step gap error.
The CACC car-following model.
MSCFModel_CACC & operator=(const MSCFModel_CACC &s)
Invalidated assignment operator.
virtual std::string getParameter(const MSVehicle *veh, const std::string &key) const
try to get the given parameter for this carFollowingModel
double stopSpeed(const MSVehicle *const veh, const double speed, double gap2pred) const
Computes the vehicle's safe speed for approaching a non-moving obstacle (no dawdling)
double getSecureGap(const MSVehicle *const veh, const MSVehicle *const pred, const double speed, const double leaderSpeed, const double leaderMaxDecel) const
Returns the a gap such that the gap mode acceleration of the follower is zero.
MSCFModel_CACC(const MSVehicleType *vtype)
Constructor.
double myGapControlGainGap
virtual void setParameter(MSVehicle *veh, const std::string &key, const std::string &value) const
try to set the given parameter for this carFollowingModel
double myGapClosingControlGainGap
MSCFModel * duplicate(const MSVehicleType *vtype) const
Duplicates the car-following model.
double followSpeed(const MSVehicle *const veh, double speed, double gap2pred, double predSpeed, double predMaxDecel, const MSVehicle *const pred=0) const
Computes the vehicle's safe speed (no dawdling)
double speedSpeedControl(const double speed, double vErr, VehicleMode &vehMode) const
double _v(const MSVehicle *const veh, const MSVehicle *const pred, const double gap2pred, const double mySpeed, const double predSpeed, const double desSpeed, const bool respectMinGap=true) const
double insertionFollowSpeed(const MSVehicle *const v, double speed, double gap2pred, double predSpeed, double predMaxDecel, const MSVehicle *const pred=0) const
Computes the vehicle's acceptable speed at insertion.
double myGapClosingControlGainGapDot
static std::map< std::string, CommunicationsOverrideMode > CommunicationsOverrideModeMap
double mySpeedControlGain
double myCollisionAvoidanceGainGapDot
double speedGapControl(const MSVehicle *const veh, const double gap2pred, const double speed, const double predSpeed, const double desSpeed, double vErr, const MSVehicle *const pred, VehicleMode &vehMode) const
double myGapControlGainGapDot
int getModelID() const
Returns the model's name.
~MSCFModel_CACC()
Destructor.
VehicleMode
Vehicle mode (default is CACC) Switch to ACC mode if CACC_ControlMode = 1 (gap control mode) and lead...
@ CACC_COLLISION_AVOIDANCE_MODE
virtual MSCFModel::VehicleVariables * createVehicleVariables() const
Returns model specific values which are stored inside a vehicle and must be used with casting.
static std::map< VehicleMode, std::string > VehicleModeNames
Vehicle mode name map.
double freeSpeed(const MSVehicle *const veh, double speed, double seen, double maxSpeed, const bool onInsertion=false) const
Computes the vehicle's safe speed without a leader.
double myCollisionAvoidanceGainGap
double interactionGap(const MSVehicle *const, double vL) const
Returns the maximum gap at which an interaction between both vehicles occurs.
CommunicationsOverrideMode
@ CACC_MODE_LEADER_NO_CAV
The car-following model abstraction.
Representation of a vehicle in the micro simulation.
The car-following model and parameter.