#include <IDM.h>
Public Member Functions | |
IDM () | |
virtual | ~IDM () |
double | update (double vel, double dist) |
double | get_T () |
double | get_A () |
double | get_B () |
double | get_S0 () |
double | get_S1 () |
double | get_V0 () |
double | get_Delta () |
double | get_Polite () |
double | get_Bias () |
double | get_DB () |
void | set_T (double val) |
void | set_A (double val) |
void | set_B (double val) |
void | set_S0 (double val) |
void | set_S1 (double val) |
void | set_V0 (double val) |
void | set_Delta (double val) |
void | set_Polite (double val) |
void | set_Bias (double val) |
void | set_DB (double val) |
double | getDesiredVel () |
void | setVel (double vel) |
double | LaneChange (double GapToFront, double GapToBack, double FrontChangeAccel, double CurrentBackAccel, double ProposedBackAccel, bool overtake) |
Finds the advantage that a vehicle would gain from changing lane. | |
Private Member Functions | |
double | s_star (double vel) |
double | dvdt (double m_speed, double s) |
Private Attributes | |
double | m_T |
double | m_A |
double | m_B |
double | m_S0 |
double | m_S1 |
double | m_V0 |
double | m_Delta |
double | m_Polite |
double | m_Bias |
double | m_DB |
double | m_SafeBraking |
double | m_MinGap |
double | m_speed |
IDM::IDM | ( | ) |
IDM::~IDM | ( | ) | [virtual] |
double IDM::update | ( | double | vel, | |
double | dist | |||
) | [virtual] |
Implements DriverModel.
double IDM::get_T | ( | ) |
double IDM::get_A | ( | ) |
double IDM::get_B | ( | ) |
double IDM::get_S0 | ( | ) |
double IDM::get_S1 | ( | ) |
double IDM::get_V0 | ( | ) |
double IDM::get_Delta | ( | ) |
double IDM::get_Polite | ( | ) |
double IDM::get_Bias | ( | ) |
double IDM::get_DB | ( | ) |
void IDM::set_T | ( | double | val | ) |
void IDM::set_A | ( | double | val | ) |
void IDM::set_B | ( | double | val | ) |
void IDM::set_S0 | ( | double | val | ) |
void IDM::set_S1 | ( | double | val | ) |
void IDM::set_V0 | ( | double | val | ) |
void IDM::set_Delta | ( | double | val | ) |
void IDM::set_Polite | ( | double | val | ) |
void IDM::set_Bias | ( | double | val | ) |
void IDM::set_DB | ( | double | val | ) |
double IDM::getDesiredVel | ( | ) | [virtual] |
Implements DriverModel.
void IDM::setVel | ( | double | vel | ) | [virtual] |
Implements DriverModel.
double IDM::LaneChange | ( | double | GapToFront, | |
double | GapToBack, | |||
double | FrontChangeAccel, | |||
double | CurrentBackAccel, | |||
double | ProposedBackAccel, | |||
bool | overtake | |||
) | [virtual] |
Finds the advantage that a vehicle would gain from changing lane.
GapToFront | The gap to the vehicle in front in the new lane | |
GapToBack | The gap to the vehicle behind in the new lane | |
FrontChangeAccel | The change in acceleration the vehicle will experience with a new front vehicle | |
CurrentBackAccel | The current acceleration of the vehicle behind in the new lane | |
ProposedBackAccel | The new acceleration the vehicle behind will experience with a new front vehicle | |
overtake | Whether or not the vehicle is overtaking |
Implements DriverModel.
double IDM::s_star | ( | double | vel | ) | [private] |
double IDM::dvdt | ( | double | m_speed, | |
double | s | |||
) | [private] |
double IDM::m_T [private] |
double IDM::m_A [private] |
double IDM::m_B [private] |
double IDM::m_S0 [private] |
double IDM::m_S1 [private] |
double IDM::m_V0 [private] |
double IDM::m_Delta [private] |
double IDM::m_Polite [private] |
double IDM::m_Bias [private] |
double IDM::m_DB [private] |
double IDM::m_SafeBraking [private] |
double IDM::m_MinGap [private] |
double IDM::m_speed [private] |