72 double predSpeed,
double predMaxDecel,
const MSVehicle*
const pred = 0,
const CalcReason usage = CalcReason::CURRENT)
const;
82 double stopSpeed(
const MSVehicle*
const veh,
const double speed,
double gap,
double decel,
const CalcReason usage = CalcReason::CURRENT)
const;
103 double getSecureGap(
const MSVehicle*
const veh,
const MSVehicle*
const pred,
const double speed,
const double leaderSpeed,
const double leaderMaxDecel)
const;
140 double _v(
const MSVehicle* veh,
double predSpeed,
double gap,
double predAccel)
const;
144 double fullspeed(
double v,
double vpref,
double dx,
double bx)
const;
146 double approaching(
double dv,
double dx,
double abx,
double predAccel)
const;
147 double emergency(
double dv,
double dx,
double predAccel,
double v,
double gap,
double abx,
double bx)
const;
double accelSign
state variable for remembering the drift direction
The Wiedemann Model car-following model.
MSCFModel * duplicate(const MSVehicleType *vtype) const
Duplicates the car-following model.
double following(double sign) const
double finalizeSpeed(MSVehicle *const veh, double vPos) const
Applies interaction with stops and lane changing model influences.
double getSecureGap(const MSVehicle *const veh, const MSVehicle *const pred, const double speed, const double leaderSpeed, const double leaderMaxDecel) const
Returns the minimum gap to reserve if the leader is braking at maximum (>=0)
~MSCFModel_Wiedemann()
Destructor.
const double myMinAccel
The vehicle's minimum acceleration [m/s^2] // also b_null.
double approaching(double dv, double dx, double abx, double predAccel) const
double stopSpeed(const MSVehicle *const veh, const double speed, double gap, double decel, const CalcReason usage=CalcReason::CURRENT) const
Computes the vehicle's safe speed for approaching a non-moving obstacle (no dawdling)
MSCFModel_Wiedemann & operator=(const MSCFModel_Wiedemann &s)
Invalidated assignment operator.
const double myMaxApproachingDecel
The maximum deceleration when approaching.
double followSpeed(const MSVehicle *const veh, double speed, double gap2pred, double predSpeed, double predMaxDecel, const MSVehicle *const pred=0, const CalcReason usage=CalcReason::CURRENT) const
Computes the vehicle's safe speed (no dawdling)
double _v(const MSVehicle *veh, double predSpeed, double gap, double predAccel) const
static const double D_MAX
free-flow distance in m
VehicleVariables * createVehicleVariables() const
Returns model specific values which are stored inside a vehicle and must be used with casting.
const double myEstimation
The driver's estimation parameter // also 'ZF2'.
double fullspeed(double v, double vpref, double dx, double bx) const
MSCFModel_Wiedemann(const MSVehicleType *vtype)
Constructor.
double emergency(double dv, double dx, double predAccel, double v, double gap, double abx, double bx) const
const double myAX
the minimum front-bumper to front-bumper distance when standing
const double myCX
perception threshold modifier
double interactionGap(const MSVehicle *const, double vL) const
Returns the maximum gap at which an interaction between both vehicles occurs.
int getModelID() const
Returns the model's name.
const double mySecurity
The driver's security parameter // also 'ZF1'.
The car-following model abstraction.
CalcReason
What the return value of stop/follow/free-Speed is used for.
Representation of a vehicle in the micro simulation.
The car-following model and parameter.