Update BuildingPropagationLossModel frequency set for updating also lambda and update leha-helper consequently
This commit is contained in:
@@ -97,7 +97,7 @@ BuildingsPropagationLossModel::GetTypeId (void)
|
||||
.AddAttribute ("Frequency",
|
||||
"The Frequency (default is 2.106 GHz).",
|
||||
DoubleValue (2160e6),
|
||||
MakeDoubleAccessor (&BuildingsPropagationLossModel::m_frequency),
|
||||
MakeDoubleAccessor (&BuildingsPropagationLossModel::SetFrequency),
|
||||
MakeDoubleChecker<double> ())
|
||||
|
||||
.AddAttribute ("ShadowSigmaOutdoor",
|
||||
@@ -204,12 +204,25 @@ BuildingsPropagationLossModel::SetLambda (double lambda)
|
||||
m_frequency = 300000000 / lambda;
|
||||
}
|
||||
|
||||
void
|
||||
BuildingsPropagationLossModel::SetFrequency (double freq)
|
||||
{
|
||||
m_frequency = freq;
|
||||
m_lambda = 300000000 * m_frequency;
|
||||
}
|
||||
|
||||
double
|
||||
BuildingsPropagationLossModel::GetLambda (void) const
|
||||
{
|
||||
return m_lambda;
|
||||
}
|
||||
|
||||
double
|
||||
BuildingsPropagationLossModel::GetFrequency (void) const
|
||||
{
|
||||
return m_frequency;
|
||||
}
|
||||
|
||||
void
|
||||
BuildingsPropagationLossModel::SetMinDistance (double minDistance)
|
||||
{
|
||||
|
||||
@@ -84,11 +84,13 @@ public:
|
||||
void SetEnvironment (Environment env);
|
||||
void SetCitySize (CitySize size);
|
||||
void SetLambda (double lambda);
|
||||
void SetFrequency (double freq);
|
||||
void SetMinDistance (double minDistance);
|
||||
Environment GetEnvironment (void) const;
|
||||
CitySize GetCitySize (void) const;
|
||||
double GetMinDistance (void) const;
|
||||
double GetLambda (void) const;
|
||||
double GetFrequency (void) const;
|
||||
// void SetLambda (double frequency, double speed);
|
||||
|
||||
|
||||
|
||||
@@ -290,13 +290,11 @@ LenaHelper::InstallSingleEnbDevice (Ptr<Node> n)
|
||||
{
|
||||
double dlFreq = LteSpectrumValueHelper::GetCarrierFrequency (dev->GetDlEarfcn ());
|
||||
m_downlinkPropagationLossModel->SetAttribute ("Frequency", DoubleValue (dlFreq));
|
||||
m_downlinkPropagationLossModel->SetAttribute ("Lambda", DoubleValue (300000000.0 /dlFreq));
|
||||
}
|
||||
if (m_ulPropagationModelFactory.GetTypeId ().GetName ().compare ( "ns3::BuildingsPropagationLossModel") == 0)
|
||||
{
|
||||
double ulFreq = LteSpectrumValueHelper::GetCarrierFrequency (dev->GetUlEarfcn ());
|
||||
m_uplinkPropagationLossModel->SetAttribute ("Frequency", DoubleValue (ulFreq));
|
||||
m_uplinkPropagationLossModel->SetAttribute ("Lambda", DoubleValue (300000000.0 /ulFreq));
|
||||
}
|
||||
|
||||
dev->Start ();
|
||||
|
||||
Reference in New Issue
Block a user