SUMO - Simulation of Urban MObility

HelpersHBEFA Class Reference

Helper methods for HBEFA-based emission computation. More...

#include <HelpersHBEFA.h>

Static Public Member Functions

static SUMOReal computeCO (SUMOEmissionClass c, double v, double a) throw ()
 Returns the amount of emitted CO given the vehicle type and state (in g/s)
static SUMOReal computeCO2 (SUMOEmissionClass c, double v, double a) throw ()
 Returns the amount of emitted CO2 given the vehicle type and state (in g/s)
static SUMOReal computeFuel (SUMOEmissionClass c, double v, double a) throw ()
 Returns the amount of consumed fuel given the vehicle type and state (in l/s)
static SUMOReal computeHC (SUMOEmissionClass c, double v, double a) throw ()
 Returns the amount of emitted HC given the vehicle type and state (in g/s)
static SUMOReal computeNOx (SUMOEmissionClass c, double v, double a) throw ()
 Returns the amount of emitted NOx given the vehicle type and state (in g/s)
static SUMOReal computePMx (SUMOEmissionClass c, double v, double a) throw ()
 Returns the amount of emitted PMx given the vehicle type and state (in g/s)

Static Private Member Functions

static double computeUsing (double *f, double v, double a) throw ()
 Computes the emitted pollutant amount using the given values.
static double * getParameterForClass (SUMOEmissionClass c) throw ()
 Returns the parameter for the given vehicle emission class.

Static Private Attributes

static double myFunctionParameter [42][36]
 The function parameter.

Detailed Description

Helper methods for HBEFA-based emission computation.

The parameter are stored per vehicle class; 6*6 parameter are used, sorted by the pollutant (CO2, CO, HC, fuel, NOx, PMx), and the function part (c0, cav1, cav2, c1, c2, c3).

Definition at line 59 of file HelpersHBEFA.h.


Member Function Documentation

SUMOReal HelpersHBEFA::computeCO ( SUMOEmissionClass  c,
double  v,
double  a 
) throw () [static]

Returns the amount of emitted CO given the vehicle type and state (in g/s)

Parameters:
[in]cThe vehicle emission class
[in]vThe vehicle's current velocity
[in]aThe vehicle's current acceleration
Returns:
The amount of CO emitted by the given vehicle class when moving with the given velocity and acceleration [g/s]

Definition at line 160 of file HelpersHBEFA.cpp.

References CO_OFFSET, SUMOReal, SVE_P_LDV_7_7, SVE_UNKNOWN, and SVE_ZERO_EMISSIONS.

Referenced by ROEdge::buildTimeLines(), ROEdge::getCOEffort(), MSVehicle::getHBEFA_COEmissions(), MSDevice_HBEFA::notifyMove(), MSMeanData_HBEFA::MSLaneMeanDataValues::notifyMoveInternal(), and TraCIServerAPI_Vehicle::processGet().

SUMOReal HelpersHBEFA::computeCO2 ( SUMOEmissionClass  c,
double  v,
double  a 
) throw () [static]

Returns the amount of emitted CO2 given the vehicle type and state (in g/s)

Parameters:
[in]cThe vehicle emission class
[in]vThe vehicle's current velocity
[in]aThe vehicle's current acceleration
Returns:
The amount of CO2 emitted by the given vehicle class when moving with the given velocity and acceleration [g/s]

Definition at line 175 of file HelpersHBEFA.cpp.

References CO2_OFFSET, SUMOReal, SVE_P_LDV_7_7, SVE_UNKNOWN, and SVE_ZERO_EMISSIONS.

Referenced by ROEdge::buildTimeLines(), ROEdge::getCO2Effort(), MSVehicle::getHBEFA_CO2Emissions(), MSDevice_HBEFA::notifyMove(), MSMeanData_HBEFA::MSLaneMeanDataValues::notifyMoveInternal(), and TraCIServerAPI_Vehicle::processGet().

SUMOReal HelpersHBEFA::computeFuel ( SUMOEmissionClass  c,
double  v,
double  a 
) throw () [static]

Returns the amount of consumed fuel given the vehicle type and state (in l/s)

Parameters:
[in]cThe vehicle emission class
[in]vThe vehicle's current velocity
[in]aThe vehicle's current acceleration
Returns:
The amount of fuel consumed by the given vehicle class when moving with the given velocity and acceleration [l/s]

Definition at line 235 of file HelpersHBEFA.cpp.

References FUEL_OFFSET, SUMOReal, SVE_P_LDV_7_7, SVE_UNKNOWN, and SVE_ZERO_EMISSIONS.

Referenced by ROEdge::buildTimeLines(), ROEdge::getFuelEffort(), MSVehicle::getHBEFA_FuelConsumption(), MSDevice_HBEFA::notifyMove(), MSMeanData_HBEFA::MSLaneMeanDataValues::notifyMoveInternal(), and TraCIServerAPI_Vehicle::processGet().

SUMOReal HelpersHBEFA::computeHC ( SUMOEmissionClass  c,
double  v,
double  a 
) throw () [static]

Returns the amount of emitted HC given the vehicle type and state (in g/s)

Parameters:
[in]cThe vehicle emission class
[in]vThe vehicle's current velocity
[in]aThe vehicle's current acceleration
Returns:
The amount of HC emitted by the given vehicle class when moving with the given velocity and acceleration [g/s]

Definition at line 190 of file HelpersHBEFA.cpp.

References HC_OFFSET, SUMOReal, SVE_P_LDV_7_7, SVE_UNKNOWN, and SVE_ZERO_EMISSIONS.

Referenced by ROEdge::buildTimeLines(), MSVehicle::getHBEFA_HCEmissions(), ROEdge::getHCEffort(), MSDevice_HBEFA::notifyMove(), MSMeanData_HBEFA::MSLaneMeanDataValues::notifyMoveInternal(), and TraCIServerAPI_Vehicle::processGet().

SUMOReal HelpersHBEFA::computeNOx ( SUMOEmissionClass  c,
double  v,
double  a 
) throw () [static]

Returns the amount of emitted NOx given the vehicle type and state (in g/s)

Parameters:
[in]cThe vehicle emission class
[in]vThe vehicle's current velocity
[in]aThe vehicle's current acceleration
Returns:
The amount of NOx emitted by the given vehicle class when moving with the given velocity and acceleration [g/s]

Definition at line 205 of file HelpersHBEFA.cpp.

References NOx_OFFSET, SUMOReal, SVE_P_LDV_7_7, SVE_UNKNOWN, and SVE_ZERO_EMISSIONS.

Referenced by ROEdge::buildTimeLines(), MSVehicle::getHBEFA_NOxEmissions(), ROEdge::getNOxEffort(), MSDevice_HBEFA::notifyMove(), MSMeanData_HBEFA::MSLaneMeanDataValues::notifyMoveInternal(), and TraCIServerAPI_Vehicle::processGet().

SUMOReal HelpersHBEFA::computePMx ( SUMOEmissionClass  c,
double  v,
double  a 
) throw () [static]

Returns the amount of emitted PMx given the vehicle type and state (in g/s)

Parameters:
[in]cThe vehicle emission class
[in]vThe vehicle's current velocity
[in]aThe vehicle's current acceleration
Returns:
The amount of PMx emitted by the given vehicle class when moving with the given velocity and acceleration [g/s]

Definition at line 220 of file HelpersHBEFA.cpp.

References PMx_OFFSET, SUMOReal, SVE_P_LDV_7_7, SVE_UNKNOWN, and SVE_ZERO_EMISSIONS.

Referenced by ROEdge::buildTimeLines(), MSVehicle::getHBEFA_PMxEmissions(), ROEdge::getPMxEffort(), MSDevice_HBEFA::notifyMove(), MSMeanData_HBEFA::MSLaneMeanDataValues::notifyMoveInternal(), and TraCIServerAPI_Vehicle::processGet().

static double HelpersHBEFA::computeUsing ( double *  f,
double  v,
double  a 
) throw () [inline, static, private]

Computes the emitted pollutant amount using the given values.

As the functions are defining emissions/hour, the function's result is normed by 3600 (seconds in an hour) yielding in <measure>/s.

Parameters:
[in]fPointer to the function parameters to use
[in]vThe vehicle's current velocity
[in]aThe vehicle's current acceleration

Definition at line 134 of file HelpersHBEFA.h.

References MAX2(), and PI.

static double* HelpersHBEFA::getParameterForClass ( SUMOEmissionClass  c) throw () [inline, static, private]

Returns the parameter for the given vehicle emission class.

Parameters:
[in]cThe vehicle emission class
Returns:
The function parameter (for all pollutants)

Definition at line 120 of file HelpersHBEFA.h.

References myFunctionParameter.


Field Documentation

double HelpersHBEFA::myFunctionParameter [static, private]

The function parameter.

Definition at line 146 of file HelpersHBEFA.h.

Referenced by getParameterForClass().


The documentation for this class was generated from the following files:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines