58 if (param ==
nullptr) {
71 energyDiff += 0.5 * mass * (v * v - lastV * lastV);
93 if (angleDiff != 0.) {
95 double radius =
SPEED2DIST(v) / fabs(angleDiff);
98 if (radius < 0.0001) {
100 }
else if (radius > 10000) {
113 if (energyDiff > 0) {
129 return energyDiff / 3600.;
static const int ENERGY_BASE
Internal moment of inertia.
EmissionType
Enumerating all emission types, including fuel.
HelpersEnergy()
Constructor (initializes myEmissionClassStrings)
static const int ZERO_EMISSIONS
the first class in each model representing a zero emission vehicle
std::map< int, double > myDefaultParameter
The default parameter.
void insert(const std::string str, const T key, bool checkDuplicates=true)
Recuperation efficiency (constant)
StringBijection< SUMOEmissionClass > myEmissionClassStrings
Mapping between emission class names and integer representations.
Recuperation efficiency (by deceleration)
double compute(const SUMOEmissionClass c, const PollutantsInterface::EmissionType e, const double v, const double a, const double slope, const std::map< int, double > *param) const
Computes the emitted pollutant amount using the given speed and acceleration.
Helper methods for PHEMlight-based emission computation.