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