 |
Eclipse SUMO - Simulation of Urban MObility
|
Go to the documentation of this file.
24 #define _USE_MATH_DEFINES
42 CEP(
bool heavyVehicle,
double vehicleMass,
double vehicleLoading,
double vehicleMassRot,
double crossArea,
double cWValue,
double f0,
double f1,
double f2,
double f3,
double f4,
double axleRatio, std::vector<double>& transmissionGearRatios,
double auxPower,
double ratedPower,
double engineIdlingSpeed,
double engineRatedSpeed,
double effictiveWheelDiameter,
double pNormV0,
double pNormP0,
double pNormV1,
double pNormP1,
const std::string& vehicelFuelType, std::vector<std::vector<double> >& matrixFC, std::vector<std::string>& headerLinePollutants, std::vector<std::vector<double> >& matrixPollutants, std::vector<std::vector<double> >& matrixSpeedRotational, std::vector<std::vector<double> >& normedDragTable,
double idlingFC, std::vector<double>& idlingPollutants);
134 double CalcPower(
double speed,
double acc,
double gradient);
138 double GetEmission(
const std::string& pollutant,
double power,
double speed,
Helpers* VehicleClass);
143 double GetDecelCoast(
double speed,
double acc,
double gradient);
151 double Interpolate(
double px,
double p1,
double p2,
double e1,
double e2);
170 #endif //#ifndef PHEMlightCEP
double GetRotationalCoeffecient(double speed)
void setDrivingPower(const double &value)
std::map< std::string, std::vector< double > > _cepNormalizedCurvePollutants
std::vector< double > _speedPatternRotational
std::vector< double > _dragNormTable
double GetEmission(const std::string &pollutant, double power, double speed, Helpers *VehicleClass)
void setRatedPower(const double &value)
std::vector< double > _nNormTable
const double & getRatedPower() const
std::vector< double > _normailzedPowerPatternPollutants
double GetPMaxNorm(double speed)
const std::string & getFuelType() const
void InitializeInstanceFields()
void FindLowerUpperInPattern(int &lowerIndex, int &upperIndex, std::vector< double > &pattern, double value)
const double & getNormalizingPower() const
std::map< std::string, std::vector< double > > _cepCurvePollutants
const bool & getHeavyVehicle() const
const NormalizingType & getNormalizingTypeX() const
double GetCO2Emission(double _FC, double _CO, double _HC, Helpers *VehicleClass)
std::vector< double > _powerPatternPollutants
double GetMaxAccel(double speed, double gradient)
const double & getDrivingPower() const
std::vector< double > _cepCurveFC
double GetDecelCoast(double speed, double acc, double gradient)
double Interpolate(double px, double p1, double p2, double e1, double e2)
@ NormalizingType_DrivingPower
std::vector< double > _normedCepCurveFC
double CalcPower(double speed, double acc, double gradient)
@ NormalizingType_RatedPower
std::vector< double > _speedCurveRotational
double _crossSectionalArea
NormalizingType _normalizingType
std::vector< double > _normalizedPowerPatternFC
std::vector< double > _powerPatternFC
std::map< std::string, double > _idlingValuesPollutants
std::vector< double > _gearTransmissionCurve
double _effectiveWheelDiameter
CEP(bool heavyVehicle, double vehicleMass, double vehicleLoading, double vehicleMassRot, double crossArea, double cWValue, double f0, double f1, double f2, double f3, double f4, double axleRatio, std::vector< double > &transmissionGearRatios, double auxPower, double ratedPower, double engineIdlingSpeed, double engineRatedSpeed, double effictiveWheelDiameter, double pNormV0, double pNormP0, double pNormV1, double pNormP1, const std::string &vehicelFuelType, std::vector< std::vector< double > > &matrixFC, std::vector< std::string > &headerLinePollutants, std::vector< std::vector< double > > &matrixPollutants, std::vector< std::vector< double > > &matrixSpeedRotational, std::vector< std::vector< double > > &normedDragTable, double idlingFC, std::vector< double > &idlingPollutants)
double _engineIdlingSpeed
double CalcEngPower(double power)