SUMO - Simulation of Urban MObility
MSCFModel_KraussX.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2001-2017 German Aerospace Center (DLR) and others.
4 /****************************************************************************/
5 //
6 // This program and the accompanying materials
7 // are made available under the terms of the Eclipse Public License v2.0
8 // which accompanies this distribution, and is available at
9 // http://www.eclipse.org/legal/epl-v20.html
10 //
11 /****************************************************************************/
17 // Experimental extensions to the Krauss car-following model
18 /****************************************************************************/
19 #ifndef MSCFModel_KraussX_h
20 #define MSCFModel_KraussX_h
21 
22 // ===========================================================================
23 // included modules
24 // ===========================================================================
25 #ifdef _MSC_VER
26 #include <windows_config.h>
27 #else
28 #include <config.h>
29 #endif
30 
31 #include "MSCFModel_Krauss.h"
33 
34 
35 // ===========================================================================
36 // class definitions
37 // ===========================================================================
44 public:
53  MSCFModel_KraussX(const MSVehicleType* vtype, double accel, double decel,
54  double emergencyDecel, double apparentDecel,
55  double dawdle, double headwayTime,
56  double tmp1, double tmp2);
57 
58 
61 
62 
65 
72  double moveHelper(MSVehicle* const veh, double vPos) const;
73 
74 
79  int getModelID() const {
80  return SUMO_TAG_CF_KRAUSSX;
81  }
83 
84 
89  MSCFModel* duplicate(const MSVehicleType* vtype) const;
90 
91 private:
92 
93 
101  double dawdleX(double vOld, double vMin, double vMax) const;
102 
104  double myTmp1;
105  double myTmp2;
106 
107 };
108 
109 #endif /* MSCFModel_KraussX_H */
110 
Representation of a vehicle in the micro simulation.
Definition: MSVehicle.h:83
The car-following model abstraction.
Definition: MSCFModel.h:59
int getModelID() const
Returns the model&#39;s name.
The car-following model and parameter.
Definition: MSVehicleType.h:72
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.
virtual double dawdle(double speed) const
Applies driver imperfection (dawdling / sigma)