fix error: call of overloaded pow() is ambiguous

This commit is contained in:
Tom Henderson
2012-09-07 12:45:26 -07:00
parent 84b53446ca
commit 7b0697e2b0
5 changed files with 12 additions and 12 deletions

View File

@@ -477,9 +477,9 @@ LteMiErrorModel::GetTbError (const SpectrumValue& sinr, const std::vector<int>&
if (C!=1)
{
double cbler = MappingMiBler (MI, mcs, Kplus);
errorRate *= std::pow (1.0 - cbler, Cplus);
errorRate *= std::pow (1.0 - cbler, static_cast<double> (Cplus));
cbler = MappingMiBler (MI, mcs, Kminus);
errorRate *= std::pow (1.0 - cbler, Cminus);
errorRate *= std::pow (1.0 - cbler, static_cast<double> (Cminus));
errorRate = 1.0 - errorRate;
}
else

View File

@@ -250,7 +250,7 @@ RateErrorModel::DoCorruptByte (Ptr<Packet> p)
{
NS_LOG_FUNCTION_NOARGS ();
// compute pkt error rate, assume uniformly distributed byte error
double per = 1 - std::pow (1.0 - m_rate, p->GetSize ());
double per = 1 - std::pow (1.0 - m_rate, static_cast<double> (p->GetSize ()));
return (m_ranvar->GetValue () < per);
}
@@ -259,7 +259,7 @@ RateErrorModel::DoCorruptBit (Ptr<Packet> p)
{
NS_LOG_FUNCTION_NOARGS ();
// compute pkt error rate, assume uniformly distributed bit error
double per = 1 - std::pow (1.0 - m_rate, (8 * p->GetSize ()) );
double per = 1 - std::pow (1.0 - m_rate, static_cast<double> (8 * p->GetSize ()) );
return (m_ranvar->GetValue () < per);
}

View File

@@ -43,7 +43,7 @@ DsssErrorRateModel::GetDsssDbpskSuccessRate (double sinr, uint32_t nbits)
{
double EbN0 = sinr * 22000000.0 / 1000000.0; // 1 bit per symbol with 1 MSPS
double ber = 0.5 * std::exp (-EbN0);
return std::pow ((1.0 - ber), nbits);
return std::pow ((1.0 - ber), static_cast<double> (nbits));
}
double
@@ -51,7 +51,7 @@ DsssErrorRateModel::GetDsssDqpskSuccessRate (double sinr,uint32_t nbits)
{
double EbN0 = sinr * 22000000.0 / 1000000.0 / 2.0; // 2 bits per symbol, 1 MSPS
double ber = DqpskFunction (EbN0);
return std::pow ((1.0 - ber), nbits);
return std::pow ((1.0 - ber), static_cast<double> (nbits));
}
double
@@ -83,7 +83,7 @@ DsssErrorRateModel::GetDsssDqpskCck5_5SuccessRate (double sinr,uint32_t nbits)
double a4 = 1.0288981434358866e+000;
ber = a1 * std::exp (-std::pow ((sinr - a2) / a3, a4));
}
return std::pow ((1.0 - ber), nbits);
return std::pow ((1.0 - ber), static_cast<double> (nbits));
#endif
}
@@ -118,7 +118,7 @@ DsssErrorRateModel::GetDsssDqpskCck11SuccessRate (double sinr,uint32_t nbits)
double a6 = 2.2032715128698435e+000;
ber = (a1 * sinr * sinr + a2 * sinr + a3) / (sinr * sinr * sinr + a4 * sinr * sinr + a5 * sinr + a6);
}
return std::pow ((1.0 - ber), nbits);
return std::pow ((1.0 - ber), static_cast<double> (nbits));
#endif
}

View File

@@ -172,7 +172,7 @@ NistErrorRateModel::GetFec16QamBer (double snr, uint32_t nbits,
}
double pe = CalculatePe (ber, bValue);
pe = std::min (pe, 1.0);
double pms = std::pow (1 - pe, nbits);
double pms = std::pow (1 - pe, static_cast<double> (nbits));
return pms;
}
double
@@ -186,7 +186,7 @@ NistErrorRateModel::GetFec64QamBer (double snr, uint32_t nbits,
}
double pe = CalculatePe (ber, bValue);
pe = std::min (pe, 1.0);
double pms = std::pow (1 - pe, nbits);
double pms = std::pow (1 - pe, static_cast<double> (nbits));
return pms;
}
double

View File

@@ -83,7 +83,7 @@ YansErrorRateModel::Factorial (uint32_t k) const
double
YansErrorRateModel::Binomial (uint32_t k, double p, uint32_t n) const
{
double retval = Factorial (n) / (Factorial (k) * Factorial (n - k)) * std::pow (p, k) * std::pow (1 - p, n - k);
double retval = Factorial (n) / (Factorial (k) * Factorial (n - k)) * std::pow (p, static_cast<double> (k)) * std::pow (1 - p, static_cast<double> (n - k));
return retval;
}
double
@@ -168,7 +168,7 @@ YansErrorRateModel::GetFecQamBer (double snr, uint32_t nbits,
pd = CalculatePd (ber, dFree + 1);
pmu += adFreePlusOne * pd;
pmu = std::min (pmu, 1.0);
double pms = std::pow (1 - pmu, nbits);
double pms = std::pow (1 - pmu, static_cast<double> (nbits));
return pms;
}