in lib/model/ModelTypes.cc [849:952]
TDouble1VecDouble1VecPr support(EFeature feature) {
static const double MIN_DOUBLE = -std::numeric_limits<double>::max();
static const double MAX_DOUBLE = std::numeric_limits<double>::max();
std::size_t d = dimension(feature);
switch (feature) {
case E_IndividualCountByBucketAndPerson:
case E_IndividualNonZeroCountByBucketAndPerson:
case E_IndividualTotalBucketCountByPerson:
case E_IndividualIndicatorOfBucketPerson:
case E_IndividualLowCountsByBucketAndPerson:
case E_IndividualHighCountsByBucketAndPerson:
case E_IndividualArrivalTimesByPerson:
case E_IndividualLongArrivalTimesByPerson:
case E_IndividualShortArrivalTimesByPerson:
case E_IndividualLowNonZeroCountByBucketAndPerson:
case E_IndividualHighNonZeroCountByBucketAndPerson:
case E_IndividualUniqueCountByBucketAndPerson:
case E_IndividualLowUniqueCountByBucketAndPerson:
case E_IndividualHighUniqueCountByBucketAndPerson:
case E_IndividualInfoContentByBucketAndPerson:
case E_IndividualHighInfoContentByBucketAndPerson:
case E_IndividualLowInfoContentByBucketAndPerson:
return {TDouble1Vec(d, 0.0), TDouble1Vec(d, MAX_DOUBLE)};
case E_IndividualTimeOfDayByBucketAndPerson:
return {TDouble1Vec(d, 0.0),
TDouble1Vec(d, static_cast<double>(core::constants::DAY))};
case E_IndividualTimeOfWeekByBucketAndPerson:
return {TDouble1Vec(d, 0.0),
TDouble1Vec(d, static_cast<double>(core::constants::WEEK))};
case E_IndividualMeanByPerson:
case E_IndividualLowMeanByPerson:
case E_IndividualHighMeanByPerson:
case E_IndividualMedianByPerson:
case E_IndividualLowMedianByPerson:
case E_IndividualHighMedianByPerson:
case E_IndividualMinByPerson:
case E_IndividualMaxByPerson:
case E_IndividualSumByBucketAndPerson:
case E_IndividualLowSumByBucketAndPerson:
case E_IndividualHighSumByBucketAndPerson:
case E_IndividualNonNullSumByBucketAndPerson:
case E_IndividualLowNonNullSumByBucketAndPerson:
case E_IndividualHighNonNullSumByBucketAndPerson:
case E_IndividualMaxVelocityByPerson:
case E_IndividualMinVelocityByPerson:
case E_IndividualMeanVelocityByPerson:
case E_IndividualSumVelocityByPerson:
return {TDouble1Vec(d, MIN_DOUBLE), TDouble1Vec(d, MAX_DOUBLE)};
case E_IndividualVarianceByPerson:
case E_IndividualLowVarianceByPerson:
case E_IndividualHighVarianceByPerson:
return {TDouble1Vec(d, 0.0), TDouble1Vec(d, MAX_DOUBLE)};
case E_IndividualMeanLatLongByPerson:
return {TDouble1Vec{-90, -180.0}, TDouble1Vec{90, 180.0}};
case E_PopulationAttributeTotalCountByPerson:
case E_PopulationCountByBucketPersonAndAttribute:
case E_PopulationIndicatorOfBucketPersonAndAttribute:
case E_PopulationUniqueCountByBucketPersonAndAttribute:
case E_PopulationLowUniqueCountByBucketPersonAndAttribute:
case E_PopulationHighUniqueCountByBucketPersonAndAttribute:
case E_PopulationUniquePersonCountByAttribute:
case E_PopulationLowCountsByBucketPersonAndAttribute:
case E_PopulationHighCountsByBucketPersonAndAttribute:
case E_PopulationInfoContentByBucketPersonAndAttribute:
case E_PopulationLowInfoContentByBucketPersonAndAttribute:
case E_PopulationHighInfoContentByBucketPersonAndAttribute:
return {TDouble1Vec(d, 0.0), TDouble1Vec(d, MAX_DOUBLE)};
case E_PopulationTimeOfDayByBucketPersonAndAttribute:
return {TDouble1Vec(d, 0.0),
TDouble1Vec(d, static_cast<double>(core::constants::DAY))};
case E_PopulationTimeOfWeekByBucketPersonAndAttribute:
return {TDouble1Vec(d, 0.0),
TDouble1Vec(d, static_cast<double>(core::constants::WEEK))};
case E_PopulationMeanByPersonAndAttribute:
case E_PopulationMedianByPersonAndAttribute:
case E_PopulationLowMedianByPersonAndAttribute:
case E_PopulationHighMedianByPersonAndAttribute:
case E_PopulationMinByPersonAndAttribute:
case E_PopulationMaxByPersonAndAttribute:
case E_PopulationSumByBucketPersonAndAttribute:
case E_PopulationLowMeanByPersonAndAttribute:
case E_PopulationHighMeanByPersonAndAttribute:
case E_PopulationLowSumByBucketPersonAndAttribute:
case E_PopulationHighSumByBucketPersonAndAttribute:
case E_PopulationMaxVelocityByPersonAndAttribute:
case E_PopulationMinVelocityByPersonAndAttribute:
case E_PopulationMeanVelocityByPersonAndAttribute:
case E_PopulationSumVelocityByPersonAndAttribute:
return {TDouble1Vec(d, MIN_DOUBLE), TDouble1Vec(d, MAX_DOUBLE)};
case E_PopulationVarianceByPersonAndAttribute:
case E_PopulationLowVarianceByPersonAndAttribute:
case E_PopulationHighVarianceByPersonAndAttribute:
return {TDouble1Vec(d, 0.0), TDouble1Vec(d, MAX_DOUBLE)};
case E_PopulationMeanLatLongByPersonAndAttribute:
return {TDouble1Vec{-90, -180.0}, TDouble1Vec{90, 180.0}};
}
return {TDouble1Vec(d, MIN_DOUBLE), TDouble1Vec(d, MAX_DOUBLE)};
}