MSCFModel_KraussOrig1.h
Go to the documentation of this file.00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef MSCFModel_KraussOrig1_h
00020 #define MSCFModel_KraussOrig1_h
00021
00022
00023
00024
00025 #ifdef _MSC_VER
00026 #include <windows_config.h>
00027 #else
00028 #include <config.h>
00029 #endif
00030
00031 #include <microsim/MSCFModel.h>
00032 #include <utils/xml/SUMOXMLDefinitions.h>
00033
00034
00035
00036
00037
00042 class MSCFModel_KraussOrig1 : public MSCFModel {
00043 public:
00050 MSCFModel_KraussOrig1(const MSVehicleType* vtype, SUMOReal accel, SUMOReal decel, SUMOReal dawdle, SUMOReal tau) throw();
00051
00052
00054 ~MSCFModel_KraussOrig1() throw();
00055
00056
00059
00066 SUMOReal moveHelper(MSVehicle * const veh, const MSLane * const lane, SUMOReal vPos) const throw();
00067
00068
00077 SUMOReal ffeV(const MSVehicle * const veh, SUMOReal speed, SUMOReal gap2pred, SUMOReal predSpeed) const throw();
00078
00079
00088 SUMOReal ffeV(const MSVehicle * const veh, SUMOReal gap2pred, SUMOReal predSpeed) const throw();
00089
00090
00098 SUMOReal ffeV(const MSVehicle * const veh, const MSVehicle * const pred) const throw();
00099
00100
00108 SUMOReal ffeS(const MSVehicle * const veh, SUMOReal gap2pred) const throw();
00109
00110
00120 SUMOReal interactionGap(const MSVehicle * const veh, SUMOReal vL) const throw();
00121
00122
00134 bool hasSafeGap(SUMOReal speed, SUMOReal gap, SUMOReal predSpeed, SUMOReal laneMaxSpeed) const throw();
00135
00136
00145 SUMOReal getMaxAccel(SUMOReal v) const throw() {
00146 return myAccel;
00147 }
00148
00149
00154 int getModelID() const throw() {
00155 return SUMO_TAG_CF_KRAUSS_ORIG1;
00156 }
00157
00158
00162 SUMOReal getTau() const throw() {
00163 return myTau;
00164 }
00166
00167
00168 private:
00174 SUMOReal _vsafe(SUMOReal gap, SUMOReal predSpeed) const throw();
00175
00176
00181 SUMOReal dawdle(SUMOReal speed) const throw();
00182
00183 private:
00186
00188 SUMOReal myAccel;
00189
00191 SUMOReal myDawdle;
00192
00194 SUMOReal myTau;
00195
00197 SUMOReal myTauDecel;
00199
00200 };
00201
00202 #endif
00203