8 #include <stdair/stdair_basic_types.hpp> 23 _changeFeeProb (0.5), _changeFeeDisutility (0.0),
24 _nonRefundableProb (0.5), _nonRefundableDisutility (0.0),
33 : _arrivalPattern (iDC._arrivalPattern),
34 _posProbabilityMass (iDC._posProbabilityMass),
35 _channelProbabilityMass (iDC._channelProbabilityMass),
36 _tripTypeProbabilityMass (iDC._tripTypeProbabilityMass),
37 _stayDurationProbabilityMass (iDC._stayDurationProbabilityMass),
38 _frequentFlyerProbabilityMass (iDC._frequentFlyerProbabilityMass),
39 _changeFeeProb (iDC._changeFeeProb),
40 _changeFeeDisutility (iDC._changeFeeDisutility),
41 _nonRefundableProb (iDC._nonRefundableProb),
42 _nonRefundableDisutility (iDC._nonRefundableDisutility),
43 _preferredDepartureTimeCumulativeDistribution (iDC._preferredDepartureTimeCumulativeDistribution),
44 _minWTP (iDC._minWTP), _frat5Pattern (iDC._frat5Pattern),
45 _valueOfTimeCumulativeDistribution (iDC._valueOfTimeCumulativeDistribution) {
56 const stdair::ChangeFeesRatio_T& iChangeFeeProb,
57 const stdair::Disutility_T& iChangeFeeDisutility,
58 const stdair::NonRefundableRatio_T& iNonRefundableProb,
59 const stdair::Disutility_T& iNonRefundableDisutility,
61 const stdair::WTP_T& iMinWTP,
63 : _arrivalPattern (iArrivalPattern),
64 _posProbabilityMass (iPOSProbMass),
65 _channelProbabilityMass (iChannelProbMass),
66 _tripTypeProbabilityMass (iTripTypeProbMass),
67 _stayDurationProbabilityMass (iStayDurationProbMass),
68 _frequentFlyerProbabilityMass (iFrequentFlyerProbMass),
69 _changeFeeProb (iChangeFeeProb),
70 _changeFeeDisutility (iChangeFeeDisutility),
71 _nonRefundableProb (iNonRefundableProb),
72 _nonRefundableDisutility (iNonRefundableDisutility),
73 _preferredDepartureTimeCumulativeDistribution (iPreferredDepartureTimeContinuousDistribution),
75 _valueOfTimeCumulativeDistribution (iValueOfTimeContinuousDistribution) {
84 getPOSValue (
const stdair::Probability_T& iCumulativeProbability)
const {
96 std::ostringstream oStr;
99 oStr <<
"****************** Demand characteristics ******************" 101 oStr <<
"Arrival pattern (days from departure, proportion): ";
103 oStr <<
"POS probability mass (POS, propotion): ";
106 oStr <<
"Channel probability mass (channel, propotion): ";
109 oStr <<
"Trip type probability mass (trip type, propotion): ";
112 oStr <<
"Stay duration probability mass (number of days, propotion): ";
115 oStr <<
"Frequent flyer probability mass (frequent flyer, propotion): ";
118 oStr <<
"Change fee acceptation probability: " 121 oStr <<
"Change fee disutility: " 124 oStr <<
"Non refundable acceptation probability: " 127 oStr <<
"Non refundable disutility: " 130 oStr <<
"Preferred departure time cumulative distribution (time, proportion: ";
132 oStr <<
"min WTP: " <<
_minWTP << std::endl;
133 oStr <<
"Value of time cumulative distribution (value of time, proportion: ";
ChannelProbabilityMass_T::ProbabilityMassFunction_T ChannelProbabilityMassFunction_T
ChannelProbabilityMass_T _channelProbabilityMass
stdair::ChangeFeesRatio_T _changeFeeProb
PreferredDepartureTimeCumulativeDistribution_T _preferredDepartureTimeCumulativeDistribution
stdair::Disutility_T _changeFeeDisutility
bool checkPOSValue(const stdair::AirportCode_T &iPOS) const
POSProbabilityMass_T::ProbabilityMassFunction_T POSProbabilityMassFunction_T
stdair::NonRefundableRatio_T _nonRefundableProb
PreferredDepartureTimeCumulativeDistribution_T::ContinuousDistribution_T PreferredDepartureTimeContinuousDistribution_T
const std::string describe() const
POSProbabilityMass_T _posProbabilityMass
Class modeling the characteristics of a demand type.
const std::string displayProbabilityMass() const
TripTypeProbabilityMass_T::ProbabilityMassFunction_T TripTypeProbabilityMassFunction_T
ValueOfTimeCumulativeDistribution_T::ContinuousDistribution_T ValueOfTimeContinuousDistribution_T
ContinuousFloatDuration_T _arrivalPattern
ValueOfTimeCumulativeDistribution_T _valueOfTimeCumulativeDistribution
const T & getValue(const stdair::Probability_T &iCumulativeProbability) const
stdair::Disutility_T _nonRefundableDisutility
FrequentFlyerProbabilityMass_T::ProbabilityMassFunction_T FrequentFlyerProbabilityMassFunction_T
const std::string displayCumulativeDistribution() const
FrequentFlyerProbabilityMass_T _frequentFlyerProbabilityMass
const stdair::AirportCode_T & getPOSValue(const stdair::Probability_T &iCumulativeProbability) const
bool checkValue(const T &iValue) const
StayDurationProbabilityMass_T::ProbabilityMassFunction_T StayDurationProbabilityMassFunction_T
StayDurationProbabilityMass_T _stayDurationProbabilityMass
const FRAT5Pattern_T DEFAULT_FRAT5_PATTERN
ContinuousFloatDuration_T::ContinuousDistribution_T ArrivalPatternCumulativeDistribution_T
TripTypeProbabilityMass_T _tripTypeProbabilityMass