SUMO - Simulation of Urban MObility
MSCFModel_KraussX.h
Go to the documentation of this file.
1 /****************************************************************************/
7 // Experimental extensions to the Krauss car-following model
8 /****************************************************************************/
9 // SUMO, Simulation of Urban MObility; see http://sumo.dlr.de/
10 // Copyright (C) 2001-2017 DLR (http://www.dlr.de/) and contributors
11 /****************************************************************************/
12 //
13 // This file is part of SUMO.
14 // SUMO is free software: you can redistribute it and/or modify
15 // it under the terms of the GNU General Public License as published by
16 // the Free Software Foundation, either version 3 of the License, or
17 // (at your option) any later version.
18 //
19 /****************************************************************************/
20 #ifndef MSCFModel_KraussX_h
21 #define MSCFModel_KraussX_h
22 
23 // ===========================================================================
24 // included modules
25 // ===========================================================================
26 #ifdef _MSC_VER
27 #include <windows_config.h>
28 #else
29 #include <config.h>
30 #endif
31 
32 #include "MSCFModel_Krauss.h"
34 
35 
36 // ===========================================================================
37 // class definitions
38 // ===========================================================================
45 public:
54  MSCFModel_KraussX(const MSVehicleType* vtype, double accel, double decel,
55  double emergencyDecel, double apparentDecel,
56  double dawdle, double headwayTime,
57  double tmp1, double tmp2);
58 
59 
62 
63 
66 
73  double moveHelper(MSVehicle* const veh, double vPos) const;
74 
75 
80  int getModelID() const {
81  return SUMO_TAG_CF_KRAUSSX;
82  }
84 
85 
90  MSCFModel* duplicate(const MSVehicleType* vtype) const;
91 
92 private:
93 
94 
102  double dawdleX(double vOld, double vMin, double vMax) const;
103 
105  double myTmp1;
106  double myTmp2;
107 
108 };
109 
110 #endif /* MSCFModel_KraussX_H */
111 
Representation of a vehicle in the micro simulation.
Definition: MSVehicle.h:83
The car-following model abstraction.
Definition: MSCFModel.h:60
int getModelID() const
Returns the model&#39;s name.
The car-following model and parameter.
Definition: MSVehicleType.h:74
double dawdleX(double vOld, double vMin, double vMax) const
Applies driver imperfection (dawdling / sigma)
~MSCFModel_KraussX()
Destructor.
MSCFModel_KraussX(const MSVehicleType *vtype, double accel, double decel, double emergencyDecel, double apparentDecel, double dawdle, double headwayTime, double tmp1, double tmp2)
Constructor.
double myTmp1
extension parameter nr1
double moveHelper(MSVehicle *const veh, double vPos) const
Applies interaction with stops and lane changing model influences.
Krauss car-following model, with acceleration decrease and faster start.
Krauss car-following model, changing accel and speed by slope.
MSCFModel * duplicate(const MSVehicleType *vtype) const
Duplicates the car-following model.
double dawdle(double speed) const
Applies driver imperfection (dawdling / sigma)