21 #ifndef MSCFModel_Wiedemann_H 22 #define MSCFModel_Wiedemann_H 63 double accel,
double decel,
double emergencyDecel,
64 double security,
double estimation);
90 double followSpeed(
const MSVehicle*
const veh,
double speed,
double gap2pred,
double predSpeed,
double predMaxDecel)
const;
150 double _v(
const MSVehicle* veh,
double predSpeed,
double gap)
const;
154 double fullspeed(
double v,
double vpref,
double dx,
double bx)
const;
156 double approaching(
double dv,
double dx,
double bx)
const;
157 double emergency(
double dv,
double dx)
const;
185 double krauss_vsafe(
double gap,
double predSpeed)
const;
The Wiedemann Model car-following model.
Representation of a vehicle in the micro simulation.
double krauss_vsafe(double gap, double predSpeed) const
vsafe from krauss since Wiedemann is deficient at approaching
const double myCX
perception threshold modifier
const double mySecurity
The driver's security parameter // also 'ZF1'.
The car-following model abstraction.
MSCFModel_Wiedemann & operator=(const MSCFModel_Wiedemann &s)
Invalidated assignment operator.
int getModelID() const
Returns the model's name.
double stopSpeed(const MSVehicle *const veh, const double speed, double gap) const
Computes the vehicle's safe speed for approaching a non-moving obstacle (no dawdling) ...
double following(double sign) const
The car-following model and parameter.
double interactionGap(const MSVehicle *const, double vL) const
Returns the maximum gap at which an interaction between both vehicles occurs.
double _v(const MSVehicle *veh, double predSpeed, double gap) const
static const double D_MAX
free-flow distance in m
double emergency(double dv, double dx) const
~MSCFModel_Wiedemann()
Destructor.
double accelSign
state variable for remembering the drift direction
double followSpeed(const MSVehicle *const veh, double speed, double gap2pred, double predSpeed, double predMaxDecel) const
Computes the vehicle's safe speed (no dawdling)
VehicleVariables * createVehicleVariables() const
Returns model specific values which are stored inside a vehicle and must be used with casting...
double approaching(double dv, double dx, double bx) const
double moveHelper(MSVehicle *const veh, double vPos) const
Applies interaction with stops and lane changing model influences.
const double myMinAccel
The vehicle's minimum acceleration [m/s^2].
MSCFModel * duplicate(const MSVehicleType *vtype) const
Duplicates the car-following model.
MSCFModel_Wiedemann(const MSVehicleType *vtype, double accel, double decel, double emergencyDecel, double security, double estimation)
Constructor.
const double myEstimation
The driver's estimation parameter // also 'ZF2'.
const double myAX
front-bumper to front-bumper distance
double fullspeed(double v, double vpref, double dx, double bx) const