76 double vehicleMass,
double vehicleLoading,
double vehicleMassRot,
77 double crossArea,
double cdValue,
78 double f0,
double f1,
double f2,
double f3,
double f4,
79 double ratedPower,
double pNormV0,
double pNormP0,
double pNormV1,
double pNormP1,
80 double axleRatio,
double engineIdlingSpeed,
double engineRatedSpeed,
double effectiveWheelDiameter,
82 const std::string& vehicleFuelType,
83 const std::vector< std::vector<double> >& matrixFC,
84 const std::vector<std::string>& headerLinePollutants,
85 const std::vector< std::vector<double> >& matrixPollutants,
86 const std::vector< std::vector<double> >& matrixSpeedRotational,
87 const std::vector< std::vector<double> >& normedDragTable,
88 const std::vector<double>& idlingValuesPollutants);
101 double CalcPower(
double v,
double a,
double slope,
double vehicleLoading = 0)
const;
112 double GetMaxAccel(
double v,
double a,
double gradient,
double vehicleLoading = 0)
const;
119 double GetEmission(
const std::string& pollutantIdentifier,
double power,
double speed,
bool normalized =
false)
const;
120 double GetDecelCoast(
double speed,
double acc,
double gradient,
double vehicleLoading)
const;
127 return _emissionClass;
134 double GetResistanceF0()
const {
135 return _resistanceF0;
142 double GetResistanceF1()
const {
143 return _resistanceF1;
150 double GetResistanceF2()
const {
151 return _resistanceF2;
158 double GetResistanceF3()
const {
159 return _resistanceF3;
166 double GetResistanceF4()
const {
167 return _resistanceF4;
175 double GetCdValue()
const {
182 double GetCrossSectionalArea()
const {
183 return _crossSectionalArea;
190 double GetMassVehicle()
const {
197 double GetVehicleLoading()
const {
198 return _vehicleLoading;
205 double GetMassRot()
const {
213 double GetRatedPower()
const {
220 const std::string& GetVehicleFuelType()
const {
221 return _vehicleFuelType;
233 double Interpolate(
double px,
double p1,
double p2,
double e1,
double e2)
const;
241 void FindLowerUpperInPattern(
int& lowerIndex,
int& upperIndex,
const std::vector<double>& pattern,
double value)
const;
246 double GetRotationalCoeffecient(
double speed)
const;
247 double GetGearCoeffecient(
double speed)
const;
248 double GetDragCoeffecient(
double nNorm)
const;
253 double GetPMaxNorm(
double speed)
const;
260 double _resistanceF0;
262 double _resistanceF1;
264 double _resistanceF2;
266 double _resistanceF3;
268 double _resistanceF4;
272 double _crossSectionalArea;
276 double _vehicleLoading;
290 double _engineIdlingSpeed;
291 double _engineRatedSpeed;
292 double _effictiveWheelDiameter;
294 std::string _vehicleFuelType;
295 int _sizeOfPatternFC;
297 int _sizeOfPatternPollutants;
298 double _normalizingPower;
299 double _drivingPower;
301 std::vector<double> _speedPatternRotational;
303 std::vector<double> _powerPatternFC;
305 std::vector<double> _powerPatternPollutants;
306 std::vector<double> _normalizedPowerPatternFC;
307 std::vector<double> _normailzedPowerPatternPollutants;
309 std::vector<double> _cepCurveFC;
311 std::vector<double> _normedCepCurveFC;
312 std::vector<double> _speedCurveRotational;
313 std::vector<double> _gearTransmissionCurve;
314 std::vector<double> _nNormTable;
315 std::vector<double> _dragNormTable;
const std::string invalid_return< std::string >::value
Data Handler for a single CEP emission data set.