Eclipse SUMO - Simulation of Urban MObility
PHEMlightdll::CEPHandler Class Reference

#include <CEPHandler.h>

Public Member Functions

 CEPHandler ()
 
 CEPHandler ()
 
 CEPHandler ()
 
bool GetCEP (const std::vector< std::string > &DataPath, Helpers *Helper)
 
bool GetCEP (List< string > DataPath, Helpers Helper, Correction DataCor)
 
bool GetCEP (string DataPath, Helpers Helper)
 
const std::map< std::string, CEP * > & getCEPS () const
 
bool GetFleetCEP (List< string > DataPath, string AggClass, Helpers Helper, Correction DataCor)
 
bool GetFleetCEP (string DataPath, string AggClass, Helpers Helper)
 
bool ReadFleetShares (string DataPath, Helpers Helper)
 
bool ReadFleetShares (string DataPath, Helpers Helper)
 

Properties

Dictionary< string, CEPCEPS [get]
 
Dictionary< string, Dictionary< string, double > > FleetShares [get]
 

Private Member Functions

bool CalcCorrection (Correction DataCor, Helpers Helper, VEHPHEMLightJSON.Vehicle_Data vehicle_Data)
 
 CEP ()
 
bool CorrectEmissionData (Correction DataCor, ref List< string > header, ref List< List< double >> matrix, ref List< double > idlingValues)
 
double GetDetTempCor (Correction DataCor, string Emi)
 
bool Load (const std::vector< std::string > &DataPath, Helpers *Helper)
 
bool Load (List< string > DataPath, Helpers Helper, Correction DataCor, bool fleetMix=false)
 
bool Load (string DataPath, Helpers Helper)
 
bool ReadEmissionData (bool readFC, const std::vector< std::string > &DataPath, const std::string &emissionClass, Helpers *Helper, std::vector< std::string > &header, std::vector< std::vector< double > > &matrix, std::vector< double > &idlingValues)
 
bool ReadEmissionData (bool readFC, string DataPath, Helpers Helper, bool fleetMix, Correction DataCor, out List< string > header, out List< List< double >> matrix, out List< double > idlingValues)
 
bool ReadEmissionData (bool readFC, string DataPath, string emissionClass, Helpers Helper, out List< string > header, out List< List< double >> matrix, out List< double > idlingValues)
 
std::string ReadLine (std::ifstream &s)
 
string ReadLine (StreamReader s)
 
string ReadLine (StreamReader s)
 
bool ReadVehicleFile (const std::vector< std::string > &DataPath, const std::string &emissionClass, Helpers *Helper, double &vehicleMass, double &vehicleLoading, double &vehicleMassRot, double &crossArea, double &cWValue, double &f0, double &f1, double &f2, double &f3, double &f4, double &axleRatio, double &auxPower, double &ratedPower, double &engineIdlingSpeed, double &engineRatedSpeed, double &effectiveWheelDiameter, std::vector< double > &transmissionGearRatios, std::string &vehicleMassType, std::string &vehicleFuelType, double &pNormV0, double &pNormP0, double &pNormV1, double &pNormP1, std::vector< std::vector< double > > &matrixSpeedInertiaTable, std::vector< std::vector< double > > &normedDragTable)
 
bool ReadVehicleFile (string DataPath, Helpers Helper, bool fleetMix, out VEHPHEMLightJSON.VEH Vehicle)
 
bool ReadVehicleFile (string DataPath, string emissionClass, Helpers Helper, out double vehicleMass, out double vehicleLoading, out double vehicleMassRot, out double crossArea, out double cWValue, out double f0, out double f1, out double f2, out double f3, out double f4, out double axleRatio, out double auxPower, out double ratedPower, out double engineIdlingSpeed, out double engineRatedSpeed, out double effectiveWheelDiameter, out List< double > transmissionGearRatios, out string vehicleMassType, out string vehicleFuelType, out double pNormV0, out double pNormP0, out double pNormV1, out double pNormP1, out List< List< double >> matrixSpeedInertiaTable, out List< List< double >> normedDragTable)
 
std::vector< std::string > split (const std::string &s, char delim)
 
List< string > split (string s, char delim)
 
List< string > split (string s, char delim)
 
double todouble (const std::string &s)
 
double todouble (string s)
 
double todouble (string s)
 
std::vector< double > todoubleList (const std::vector< std::string > &s)
 
List< double > todoubleList (List< string > s)
 
List< double > todoubleList (List< string > s)
 

Private Attributes

std::map< std::string, CEP * > _ceps
 
Dictionary< string, CEP_ceps
 
Dictionary< string, Dictionary< string, double > > _fleetShares
 

Detailed Description

Definition at line 39 of file cpp/CEPHandler.h.

Constructor & Destructor Documentation

◆ CEPHandler() [1/3]

PHEMlightdll::CEPHandler::CEPHandler ( )

Definition at line 35 of file cpp/CEPHandler.cpp.

References _ceps.

◆ CEPHandler() [2/3]

PHEMlightdll.CEPHandler.CEPHandler ( )
inline

Definition at line 19 of file dll_code/CEPHandler.cs.

References _ceps.

◆ CEPHandler() [3/3]

PHEMlightdll.CEPHandler.CEPHandler ( )

Member Function Documentation

◆ CalcCorrection()

bool PHEMlightdll.CEPHandler.CalcCorrection ( Correction  DataCor,
Helpers  Helper,
VEHPHEMLightJSON.Vehicle_Data  vehicle_Data 
)
inlineprivate

Definition at line 96 of file V5/cs/CEPHandler.cs.

References PHEMlightdll.Correction.IniDETfactor(), PHEMlightdll.Correction.IniTNOxfactor(), PHEMlightdll.Correction.UseDet, PHEMlightdll.Correction.UseTNOx, and PHEMlightdll.Correction.VehMileage.

Referenced by Load().

Here is the caller graph for this function:

◆ CEP()

PHEMlightdll.CEPHandler.CEP ( )
private

◆ CorrectEmissionData()

bool PHEMlightdll.CEPHandler.CorrectEmissionData ( Correction  DataCor,
ref List< string >  header,
ref List< List< double >>  matrix,
ref List< double >  idlingValues 
)
inlineprivate

Definition at line 355 of file V5/cs/CEPHandler.cs.

References GetDetTempCor().

Referenced by ReadEmissionData().

Here is the caller graph for this function:

◆ GetCEP() [1/3]

bool PHEMlightdll::CEPHandler::GetCEP ( const std::vector< std::string > &  DataPath,
Helpers Helper 
)

Definition at line 43 of file cpp/CEPHandler.cpp.

References getCEPS(), PHEMlightdll::Helpers::getgClass(), and Load().

Referenced by PHEMlightdll.Start::CALC_Array(), PHEMlightdll.Start::CALC_Single(), and HelpersPHEMlight::getClassByName().

Here is the caller graph for this function:

◆ GetCEP() [2/3]

bool PHEMlightdll.CEPHandler.GetCEP ( List< string >  DataPath,
Helpers  Helper,
Correction  DataCor 
)
inline

Definition at line 29 of file V5/cs/CEPHandler.cs.

References CEPS, PHEMlightdll::Helpers.gClass, and Load().

◆ GetCEP() [3/3]

bool PHEMlightdll.CEPHandler.GetCEP ( string  DataPath,
Helpers  Helper 
)
inline

Definition at line 58 of file dll_code/CEPHandler.cs.

References CEPS, PHEMlightdll::Helpers.gClass, and Load().

◆ getCEPS()

const std::map< std::string, CEP * > & PHEMlightdll::CEPHandler::getCEPS ( ) const

Definition at line 39 of file cpp/CEPHandler.cpp.

References _ceps.

Referenced by GetCEP(), and HelpersPHEMlight::getClassByName().

Here is the caller graph for this function:

◆ GetDetTempCor()

double PHEMlightdll.CEPHandler.GetDetTempCor ( Correction  DataCor,
string  Emi 
)
inlineprivate

Definition at line 378 of file V5/cs/CEPHandler.cs.

References PHEMlightdll.Correction.DETFactors, PHEMlightdll.Correction.TNOxFactor, PHEMlightdll.Correction.UseDet, and PHEMlightdll.Correction.UseTNOx.

Referenced by CorrectEmissionData().

Here is the caller graph for this function:

◆ GetFleetCEP() [1/2]

◆ GetFleetCEP() [2/2]

bool PHEMlightdll.CEPHandler.GetFleetCEP ( string  DataPath,
string  AggClass,
Helpers  Helper 
)
inline

Definition at line 73 of file dll_code/CEPHandler.cs.

References _ceps, PHEMlightdll::CEP.AddRangeCeps(), PHEMlightdll::Constants.AGGREGATED_VEHICLECLASSES, CEPS, PHEMlightdll::Helpers.ErrMsg, FleetShares, PHEMlightdll::Helpers.gClass, Load(), and PHEMlightdll::Helpers.setclass().

Referenced by PHEMlightdll.Start.CALC_Array(), and PHEMlightdll.Start.CALC_Single().

Here is the caller graph for this function:

◆ Load() [1/3]

bool PHEMlightdll::CEPHandler::Load ( const std::vector< std::string > &  DataPath,
Helpers Helper 
)
private

Definition at line 52 of file cpp/CEPHandler.cpp.

References _ceps, PHEMlightdll::Helpers::getgClass(), PHEMlightdll::Constants::HeavyVehicle, ReadEmissionData(), and ReadVehicleFile().

Referenced by GetCEP(), and GetFleetCEP().

Here is the caller graph for this function:

◆ Load() [2/3]

bool PHEMlightdll.CEPHandler.Load ( List< string >  DataPath,
Helpers  Helper,
Correction  DataCor,
bool  fleetMix = false 
)
inlineprivate

◆ Load() [3/3]

bool PHEMlightdll.CEPHandler.Load ( string  DataPath,
Helpers  Helper 
)
inlineprivate

◆ ReadEmissionData() [1/3]

bool PHEMlightdll::CEPHandler::ReadEmissionData ( bool  readFC,
const std::vector< std::string > &  DataPath,
const std::string &  emissionClass,
Helpers Helper,
std::vector< std::string > &  header,
std::vector< std::vector< double > > &  matrix,
std::vector< double > &  idlingValues 
)
private

Definition at line 299 of file cpp/CEPHandler.cpp.

References ReadLine(), PHEMlightdll::Helpers::setErrMsg(), split(), and todoubleList().

Referenced by Load().

Here is the caller graph for this function:

◆ ReadEmissionData() [2/3]

bool PHEMlightdll.CEPHandler.ReadEmissionData ( bool  readFC,
string  DataPath,
Helpers  Helper,
bool  fleetMix,
Correction  DataCor,
out List< string >  header,
out List< List< double >>  matrix,
out List< double >  idlingValues 
)
inlineprivate

◆ ReadEmissionData() [3/3]

bool PHEMlightdll.CEPHandler.ReadEmissionData ( bool  readFC,
string  DataPath,
string  emissionClass,
Helpers  Helper,
out List< string >  header,
out List< List< double >>  matrix,
out List< double >  idlingValues 
)
inlineprivate

◆ ReadFleetShares() [1/2]

bool PHEMlightdll.CEPHandler.ReadFleetShares ( string  DataPath,
Helpers  Helper 
)
inline

Definition at line 493 of file dll_code/CEPHandler.cs.

References _fleetShares, PHEMlightdll::Helpers.CommentPrefix, PHEMlightdll::Helpers.ErrMsg, FleetShares, ReadLine(), split(), and todouble().

Referenced by PHEMlightdll.Start.CALC_Array(), and PHEMlightdll.Start.CALC_Single().

Here is the caller graph for this function:

◆ ReadFleetShares() [2/2]

bool PHEMlightdll.CEPHandler.ReadFleetShares ( string  DataPath,
Helpers  Helper 
)
inline

◆ ReadLine() [1/3]

std::string PHEMlightdll::CEPHandler::ReadLine ( std::ifstream &  s)
private

Definition at line 377 of file cpp/CEPHandler.cpp.

Referenced by ReadEmissionData(), ReadFleetShares(), and ReadVehicleFile().

Here is the caller graph for this function:

◆ ReadLine() [2/3]

string PHEMlightdll.CEPHandler.ReadLine ( StreamReader  s)
inlineprivate

Definition at line 552 of file dll_code/CEPHandler.cs.

◆ ReadLine() [3/3]

string PHEMlightdll.CEPHandler.ReadLine ( StreamReader  s)
inlineprivate

Definition at line 464 of file V5/cs/CEPHandler.cs.

◆ ReadVehicleFile() [1/3]

bool PHEMlightdll::CEPHandler::ReadVehicleFile ( const std::vector< std::string > &  DataPath,
const std::string &  emissionClass,
Helpers Helper,
double &  vehicleMass,
double &  vehicleLoading,
double &  vehicleMassRot,
double &  crossArea,
double &  cWValue,
double &  f0,
double &  f1,
double &  f2,
double &  f3,
double &  f4,
double &  axleRatio,
double &  auxPower,
double &  ratedPower,
double &  engineIdlingSpeed,
double &  engineRatedSpeed,
double &  effectiveWheelDiameter,
std::vector< double > &  transmissionGearRatios,
std::string &  vehicleMassType,
std::string &  vehicleFuelType,
double &  pNormV0,
double &  pNormP0,
double &  pNormV1,
double &  pNormP1,
std::vector< std::vector< double > > &  matrixSpeedInertiaTable,
std::vector< std::vector< double > > &  normedDragTable 
)
private

Definition at line 109 of file cpp/CEPHandler.cpp.

References PHEMlightdll::Helpers::getCommentPrefix(), ReadLine(), PHEMlightdll::Helpers::setErrMsg(), split(), todouble(), and todoubleList().

Referenced by Load().

Here is the caller graph for this function:

◆ ReadVehicleFile() [2/3]

bool PHEMlightdll.CEPHandler.ReadVehicleFile ( string  DataPath,
Helpers  Helper,
bool  fleetMix,
out VEHPHEMLightJSON.VEH  Vehicle 
)
inlineprivate

◆ ReadVehicleFile() [3/3]

bool PHEMlightdll.CEPHandler.ReadVehicleFile ( string  DataPath,
string  emissionClass,
Helpers  Helper,
out double  vehicleMass,
out double  vehicleLoading,
out double  vehicleMassRot,
out double  crossArea,
out double  cWValue,
out double  f0,
out double  f1,
out double  f2,
out double  f3,
out double  f4,
out double  axleRatio,
out double  auxPower,
out double  ratedPower,
out double  engineIdlingSpeed,
out double  engineRatedSpeed,
out double  effectiveWheelDiameter,
out List< double >  transmissionGearRatios,
out string  vehicleMassType,
out string  vehicleFuelType,
out double  pNormV0,
out double  pNormP0,
out double  pNormV1,
out double  pNormP1,
out List< List< double >>  matrixSpeedInertiaTable,
out List< List< double >>  normedDragTable 
)
inlineprivate

◆ split() [1/3]

std::vector< std::string > PHEMlightdll::CEPHandler::split ( const std::string &  s,
char  delim 
)
private

Definition at line 352 of file cpp/CEPHandler.cpp.

Referenced by ReadEmissionData(), ReadFleetShares(), and ReadVehicleFile().

Here is the caller graph for this function:

◆ split() [2/3]

List<string> PHEMlightdll.CEPHandler.split ( string  s,
char  delim 
)
inlineprivate

Definition at line 534 of file dll_code/CEPHandler.cs.

◆ split() [3/3]

List<string> PHEMlightdll.CEPHandler.split ( string  s,
char  delim 
)
inlineprivate

Definition at line 446 of file V5/cs/CEPHandler.cs.

◆ todouble() [1/3]

double PHEMlightdll::CEPHandler::todouble ( const std::string &  s)
private

Definition at line 362 of file cpp/CEPHandler.cpp.

Referenced by ReadFleetShares(), ReadVehicleFile(), and todoubleList().

Here is the caller graph for this function:

◆ todouble() [2/3]

double PHEMlightdll.CEPHandler.todouble ( string  s)
inlineprivate

Definition at line 540 of file dll_code/CEPHandler.cs.

◆ todouble() [3/3]

double PHEMlightdll.CEPHandler.todouble ( string  s)
inlineprivate

Definition at line 452 of file V5/cs/CEPHandler.cs.

◆ todoubleList() [1/3]

std::vector< double > PHEMlightdll::CEPHandler::todoubleList ( const std::vector< std::string > &  s)
private

Definition at line 369 of file cpp/CEPHandler.cpp.

References todouble().

Referenced by ReadEmissionData(), and ReadVehicleFile().

Here is the caller graph for this function:

◆ todoubleList() [2/3]

List<double> PHEMlightdll.CEPHandler.todoubleList ( List< string >  s)
inlineprivate

Definition at line 546 of file dll_code/CEPHandler.cs.

References todouble().

◆ todoubleList() [3/3]

List<double> PHEMlightdll.CEPHandler.todoubleList ( List< string >  s)
inlineprivate

Definition at line 458 of file V5/cs/CEPHandler.cs.

References todouble().

Field Documentation

◆ _ceps [1/2]

Dictionary< string, CEP > PHEMlightdll::CEPHandler::_ceps
private

Definition at line 52 of file cpp/CEPHandler.h.

Referenced by CEPHandler(), getCEPS(), GetFleetCEP(), and Load().

◆ _ceps [2/2]

Dictionary<string, CEP> PHEMlightdll.CEPHandler._ceps
private

Definition at line 30 of file dll_code/CEPHandler.cs.

◆ _fleetShares

Dictionary< string, Dictionary< string, double > > PHEMlightdll.CEPHandler._fleetShares
private

Definition at line 42 of file dll_code/CEPHandler.cs.

Referenced by ReadFleetShares().

Property Documentation

◆ CEPS

Dictionary< string, CEP > PHEMlightdll.CEPHandler.CEPS
get

◆ FleetShares

Dictionary< string, Dictionary< string, double > > PHEMlightdll.CEPHandler.FleetShares
get

Definition at line 43 of file dll_code/CEPHandler.cs.

Referenced by GetFleetCEP(), and ReadFleetShares().


The documentation for this class was generated from the following files: