33 #ifndef EMANEFREESPACEPROPAGATIONMODELALGORITHM_HEADER_ 34 #define EMANEFREESPACEPROPAGATIONMODELALGORITHM_HEADER_ 49 const double FSPL_CONST{41.916900439033640};
57 std::vector<double> pathloss(segments.size(),0);
65 for(
const auto & segment : segments)
68 20.0 * log10(FSPL_CONST * (segment.getFrequencyHz() / 1000000.0) * (dDistance / 1000.0));
70 pathloss[i++] = val < 0 ? 0 : val;
74 return {pathloss,
true};
79 #endif // EMANEFREESPACEPROPAGATIONMODELALGORITHM_HEADER_
FreeSpacePropagationModelAlgorithm(NEMId)
std::list< FrequencySegment > FrequencySegments
std::pair< std::vector< double >, bool > operator()(NEMId, const LocationInfo &locationInfo, const FrequencySegments &segments) override
double getDistanceMeters() const