44 const double length,
const bool doAdd,
78 meanSpeedVehicleOnLane, a, veh.
getSlope()), timeOnLane);
84 const double ,
const double defaultTravelTime,
const int )
const {
115 }
else if (defaultTravelTime >= 0.) {
139 const bool useLanes,
const bool withEmpty,
140 const bool printDefaults,
141 const bool withInternal,
142 const bool trackVehicles,
143 const double maxTravelTime,
144 const double minSamples,
145 const std::string& vTypes)
146 :
MSMeanData(id, dumpBegin, dumpEnd, useLanes, withEmpty, printDefaults,
147 withInternal, trackVehicles, maxTravelTime, minSamples, vTypes) {
Data collector for edges/lanes.
static Emissions computeAll(const SUMOEmissionClass c, const double v, const double a, const double slope, const std::map< int, double > *param=0)
Returns the amount of all emitted pollutants given the vehicle type and state (in mg/s or ml/s for fu...
MSMeanData_Emissions(const std::string &id, const SUMOTime dumpBegin, const SUMOTime dumpEnd, const bool useLanes, const bool withEmpty, const bool printDefaults, const bool withInternal, const bool trackVehicles, const double minSamples, const double maxTravelTime, const std::string &vTypes)
Constructor.
void reset(bool afterWrite=false)
Resets values so they may be used for the next interval.
Storage for collected values of all emission types.
static MSNet * getInstance()
Returns the pointer to the unique instance of MSNet (singleton).
virtual double getSlope() const =0
Returns the slope of the road at vehicle's position.
PollutantsInterface::Emissions myEmissions
Collected values.
static std::string realString(const double v, const int precision=gPrecision)
Helper method for string formatting.
MSLaneMeanDataValues(MSLane *const lane, const double length, const bool doAdd, const MSMeanData_Emissions *parent)
Constructor.
The car-following model and parameter.
double getMaxAccel() const
Get the vehicle type's maximum acceleration [m/s^2].
double travelledDistance
The sum of the distances the vehicles travelled.
const MSCFModel & getCarFollowModel() const
Returns the vehicle type's car following model definition (const version)
Representation of a vehicle.
Data structure for mean (aggregated) edge/lane values.
MSVehicleControl & getVehicleControl()
Returns the vehicle control.
void addTo(MSMeanData::MeanDataValues &val) const
Add the values of this to the given one and store them there.
double getMaxSpeed() const
Get vehicle's maximum speed [m/s].
void write(OutputDevice &dev, const SUMOTime period, const double numLanes, const double defaultTravelTime, const int numVehicles=-1) const
Writes output values into the given stream.
const double myLaneLength
The length of the lane / edge the data collector is on.
Emission data collector for edges/lanes.
MSMeanData::MeanDataValues * createValues(MSLane *const lane, const double length, const bool doAdd) const
Create an instance of MeanDataValues.
MSVehicleType * getVType(const std::string &id=DEFAULT_VTYPE_ID, std::mt19937 *rng=0)
Returns the named vehicle type or a sample from the named distribution.
const MSMeanData *const myParent
The meandata parent.
void notifyMoveInternal(const SUMOVehicle &veh, const double, const double timeOnLane, const double, const double meanSpeedVehicleOnLane, const double travelledDistanceFrontOnLane, const double travelledDistanceVehicleOnLane, const double)
Internal notification about the vehicle moves.
virtual ~MSMeanData_Emissions()
Destructor.
Static storage of an output device and its base (abstract) implementation.
bool closeTag(const std::string &comment="")
Closes the most recently opened tag and optionally adds a comment.
virtual ~MSLaneMeanDataValues()
Destructor.
static double computeDefault(const SUMOEmissionClass c, const EmissionType e, const double v, const double a, const double slope, const double tt, const std::map< int, double > *param=0)
Returns the amount of emitted pollutant given the vehicle type and default values for the state (in m...
Representation of a lane in the micro simulation.
double getMaxTravelTime() const
SUMOEmissionClass getEmissionClass() const
Get this vehicle type's emission class.
void addScaled(const Emissions &a, const double scale=1.)
Add the values of the other struct to this one, scaling the values if needed.
Data structure for mean (aggregated) edge/lane values.
double getMinSamples() const
virtual double getAcceleration() const =0
Returns the vehicle's acceleration.
virtual const MSVehicleType & getVehicleType() const =0
Returns the vehicle's type.