Autopysta
Loading...
Searching...
No Matches
example_car.h
Go to the documentation of this file.
1
11#ifndef EXAMPLE_CAR_H
12#define EXAMPLE_CAR_H
13
14#include "model.h"
15#include "point.h"
16#include <queue>
17#include <vector>
18
25class example_car : public model {
26private:
27 std::queue<point*> defined_trajectory;
28
29public:
37 example_car(std::vector<point*> t);
38
50 double accel(point* leader, point* follower, params* q) override;
51
62 double equil_spcg(double vl, double vf, params* q) override;
63
74 double wave_speed(point* leader, point* follower, params* q) override;
75
84 double free_flow_speed(params* q) override;
85
97 point* new_point(generalized_trajectory* leader, trajectory* follower, params* p = (params*)nullptr) override;
98};
99
100#endif
A simple car-following model with a predefined trajectory.
Definition example_car.h:25
point * new_point(generalized_trajectory *leader, trajectory *follower, params *p=(params *) nullptr) override
Retrieves the next point in the predefined trajectory.
double wave_speed(point *leader, point *follower, params *q) override
Computes the wave speed of a traffic disturbance.
double accel(point *leader, point *follower, params *q) override
Computes the acceleration of the follower vehicle.
double free_flow_speed(params *q) override
Returns the free-flow speed of the model.
example_car(std::vector< point * > t)
Constructor for the example_car model.
double equil_spcg(double vl, double vf, params *q) override
Computes the equilibrium spacing between vehicles.
Base class for different types of trajectories.
Definition trajectory.h:26
Abstract car-following model class.
Definition model.h:30
Base class for car-following model parameters.
Definition params.h:24
Represents a point in time for a vehicle in a traffic simulation.
Definition point.h:23
Represents a dynamic trajectory of a moving object.
Definition trajectory.h:59
File for the model and lcm classes definitions (short description).
File for the point class definition.