 |
Eclipse SUMO - Simulation of Urban MObility
|
Go to the documentation of this file.
79 double vehicleMass,
double vehicleLoading,
double vehicleMassRot,
80 double crossArea,
double cdValue,
81 double f0,
double f1,
double f2,
double f3,
double f4,
82 double ratedPower,
double pNormV0,
double pNormP0,
double pNormV1,
double pNormP1,
83 double axleRatio,
double engineIdlingSpeed,
double engineRatedSpeed,
double effectiveWheelDiameter,
85 const std::string& vehicleFuelType,
86 const std::vector< std::vector<double> >& matrixFC,
87 const std::vector<std::string>& headerLinePollutants,
88 const std::vector< std::vector<double> >& matrixPollutants,
89 const std::vector< std::vector<double> >& matrixSpeedRotational,
90 const std::vector< std::vector<double> >& normedDragTable,
91 const std::vector<double>& idlingValuesPollutants);
104 double CalcPower(
double v,
double a,
double slope,
double vehicleLoading = 0)
const;
115 double GetMaxAccel(
double v,
double a,
double gradient,
double vehicleLoading = 0)
const;
122 double GetEmission(
const std::string& pollutantIdentifier,
double power,
double speed,
bool normalized =
false)
const;
123 double GetDecelCoast(
double speed,
double acc,
double gradient,
double vehicleLoading)
const;
236 double Interpolate(
double px,
double p1,
double p2,
double e1,
double e2)
const;
244 void FindLowerUpperInPattern(
int& lowerIndex,
int& upperIndex,
const std::vector<double>& pattern,
double value)
const;
std::vector< double > _speedCurveRotational
double GetRotationalCoeffecient(double speed) const
Calculates rotational index for speed.
double _crossSectionalArea
crosssectional area of vehicle
Data Handler for a single CEP emission data set.
double CalcPower(double v, double a, double slope, double vehicleLoading=0) const
Returns the power of used for a vehicle at state v,a, slope and loading.
double GetEmission(const std::string &pollutantIdentifier, double power, double speed, bool normalized=false) const
Returns a emission measure for power[kW] level.
double GetDecelCoast(double speed, double acc, double gradient, double vehicleLoading) const
std::vector< double > _normedCepCurveFC
std::vector< double > _gearTransmissionCurve
double _resistanceF1
Rolling resistance f1.
double GetGearCoeffecient(double speed) const
std::vector< double > _powerPatternFC
double GetVehicleLoading() const
Getter function to recieve vehicle data from CEP.
double GetMassVehicle() const
Getter function to recieve vehicle data from CEP.
StringBijection< std::vector< double > > _normalizedCepCurvePollutants
double GetResistanceF4() const
Getter function to recieve vehicle data from CEP.
double GetDragCoeffecient(double nNorm) const
int _sizeOfPatternPollutants
std::vector< double > _powerPatternPollutants
SUMOEmissionClass GetEmissionClass() const
Getter function to recieve vehicle data from CEP.
double GetMassRot() const
Getter function to recieve vehicle data from CEP.
double _massRot
rotational mass of vehicle
double GetResistanceF1() const
Getter function to recieve vehicle data from CEP.
double GetRatedPower() const
Getter function to recieve vehicle data from CEP.
double _resistanceF2
Rolling resistance f2.
double _effictiveWheelDiameter
double GetPMaxNorm(double speed) const
Calculates maximum available rated power for speed.
const std::string & GetVehicleFuelType() const
Getter function to recieve vehicle data from CEP.
std::vector< double > _normailzedPowerPatternPollutants
double _vehicleLoading
vehicle loading
StringBijection< double > _idlingValuesPollutants
StringBijection< std::vector< double > > _cepCurvePollutants
void FindLowerUpperInPattern(int &lowerIndex, int &upperIndex, const std::vector< double > &pattern, double value) const
Finds bounding upper and lower index in pattern for value.
std::vector< double > _normalizedPowerPatternFC
double GetCrossSectionalArea() const
Getter function to recieve vehicle data from CEP.
double GetMaxAccel(double v, double a, double gradient, double vehicleLoading=0) const
Returns the maximum accelaration for a vehicle at state v,a, slope and loading.
SUMOEmissionClass _emissionClass
PHEM emission class of vehicle.
double _pNormV0
Step functions parameter for maximum rated power.
std::vector< double > _nNormTable
double Interpolate(double px, double p1, double p2, double e1, double e2) const
Interpolates emission linearly between two known power-emission pairs.
double _resistanceF4
Rolling resistance f4.
double _ratedPower
rated power of vehicle
double GetCdValue() const
Getter function to recieve vehicle data from CEP.
double _pNormP0
Step functions parameter for maximum rated power.
std::string _vehicleFuelType
double _resistanceF3
Rolling resistance f3.
double _resistanceF0
Rolling resistance f0.
double _pNormV1
Step functions parameter for maximum rated power.
double _massVehicle
vehicle mass
double GetResistanceF2() const
Getter function to recieve vehicle data from CEP.
double GetResistanceF0() const
Getter function to recieve vehicle data from CEP.
PHEMCEP(bool heavyVehicel, SUMOEmissionClass emissionClass, const std::string &emissionClassIdentifier, double vehicleMass, double vehicleLoading, double vehicleMassRot, double crossArea, double cdValue, double f0, double f1, double f2, double f3, double f4, double ratedPower, double pNormV0, double pNormP0, double pNormV1, double pNormP1, double axleRatio, double engineIdlingSpeed, double engineRatedSpeed, double effectiveWheelDiameter, double idlingFC, const std::string &vehicleFuelType, const std::vector< std::vector< double > > &matrixFC, const std::vector< std::string > &headerLinePollutants, const std::vector< std::vector< double > > &matrixPollutants, const std::vector< std::vector< double > > &matrixSpeedRotational, const std::vector< std::vector< double > > &normedDragTable, const std::vector< double > &idlingValuesPollutants)
double GetResistanceF3() const
Getter function to recieve vehicle data from CEP.
NormalizingType _normalizingType
double _engineIdlingSpeed
double _pNormP1
Step functions parameter for maximum rated power.
std::vector< double > _dragNormTable
std::vector< double > _speedPatternRotational
std::vector< double > _cepCurveFC