Eclipse 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-2019 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v2.0
6 // which accompanies this distribution, and is available at
7 // http://www.eclipse.org/legal/epl-v20.html
8 // SPDX-License-Identifier: EPL-2.0
9 /****************************************************************************/
15 // Experimental extensions to the Krauss car-following model
16 /****************************************************************************/
17 #ifndef MSCFModel_KraussX_h
18 #define MSCFModel_KraussX_h
19 
20 // ===========================================================================
21 // included modules
22 // ===========================================================================
23 #include <config.h>
24 
25 #include "MSCFModel_Krauss.h"
27 
28 
29 // ===========================================================================
30 // class definitions
31 // ===========================================================================
38 public:
42  MSCFModel_KraussX(const MSVehicleType* vtype);
43 
44 
47 
48 
52  double patchSpeedBeforeLC(const MSVehicle* veh, double vMin, double vMax) const;
53 
54 
59  int getModelID() const {
60  return SUMO_TAG_CF_KRAUSSX;
61  }
63 
64 
69  MSCFModel* duplicate(const MSVehicleType* vtype) const;
70 
71 private:
72 
73 
81  double dawdleX(double vOld, double vMin, double vMax, std::mt19937* rng) const;
82 
84  double myTmp1;
85  double myTmp2;
86 
87 };
88 
89 #endif /* MSCFModel_KraussX_H */
90 
Representation of a vehicle in the micro simulation.
Definition: MSVehicle.h:80
The car-following model abstraction.
Definition: MSCFModel.h:57
int getModelID() const
Returns the model&#39;s name.
The car-following model and parameter.
Definition: MSVehicleType.h:66
~MSCFModel_KraussX()
Destructor.
double dawdleX(double vOld, double vMin, double vMax, std::mt19937 *rng) const
Applies driver imperfection (dawdling / sigma)
MSCFModel_KraussX(const MSVehicleType *vtype)
Constructor.
double patchSpeedBeforeLC(const MSVehicle *veh, double vMin, double vMax) const
apply custom speed adaptations within the given speed bounds
double myTmp1
extension parameter nr1
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.