diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 65c2cdefe..84dca07b5 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -34,7 +34,7 @@ Bugs fixed - Bug 1982 - AODV and mesh modules use random variables before seeds can be set - Bug 2058 - TCP window update can shrink left edge of window - Bug 2063 - FdNetDevice::SendFrom assert does not account for headers correctly -- Bug 2082: Empirical RV fails if value provided in CDF function is negative +- Bug 2082 - Empirical RV fails if value provided in CDF function is negative - Bug 2093 - MultiModelSpectrumChannel::GetDevice only works for 0-th index - Bug 2096 - Wrong pcap information when MPDU aggregation is used - Bug 2108 - Erroneous implementation in InterferenceHelper @@ -52,6 +52,7 @@ Bugs fixed - Bug 2153 - Incorrect power limits in wifi power control algorithms - Bug 2154 - Incorrect power calculation in wifi power adaptation examples - Bug 2156 - Duplicate packets when using two level aggregation +- Bug 2166 - SteadyStateRandomWaypointMobilityModel directs the node to the ground Known issues ------------ diff --git a/src/mobility/model/steady-state-random-waypoint-mobility-model.cc b/src/mobility/model/steady-state-random-waypoint-mobility-model.cc index 7b7483966..e73d5a253 100644 --- a/src/mobility/model/steady-state-random-waypoint-mobility-model.cc +++ b/src/mobility/model/steady-state-random-waypoint-mobility-model.cc @@ -115,13 +115,17 @@ SteadyStateRandomWaypointMobilityModel::DoInitializePrivate (void) m_speed->SetAttribute ("Max", DoubleValue (m_maxSpeed)); NS_ASSERT (m_minX < m_maxX); NS_ASSERT (m_minY < m_maxY); - m_position = CreateObject (); + m_position = CreateObject (); m_x->SetAttribute ("Min", DoubleValue (m_minX)); m_x->SetAttribute ("Max", DoubleValue (m_maxX)); m_y->SetAttribute ("Min", DoubleValue (m_minY)); m_y->SetAttribute ("Max", DoubleValue (m_maxY)); m_position->SetX (m_x); m_position->SetY (m_y); + Ptr z = CreateObject (); + z->SetAttribute ("Constant", DoubleValue (m_z)); + m_position->SetZ (z); + NS_ASSERT (m_minPause <= m_maxPause); m_pause->SetAttribute ("Min", DoubleValue (m_minPause)); m_pause->SetAttribute ("Max", DoubleValue (m_maxPause)); diff --git a/src/mobility/model/steady-state-random-waypoint-mobility-model.h b/src/mobility/model/steady-state-random-waypoint-mobility-model.h index 84228660d..281318995 100644 --- a/src/mobility/model/steady-state-random-waypoint-mobility-model.h +++ b/src/mobility/model/steady-state-random-waypoint-mobility-model.h @@ -98,7 +98,7 @@ private: double m_minY; //!< minimum y value of traveling region (m) double m_maxY; //!< maximum y value of traveling region (m) double m_z; //!< z value of traveling region - Ptr m_position; //!< position allocator + Ptr m_position; //!< position allocator double m_minPause; //!< minimum pause value (s) double m_maxPause; //!< maximum pause value (s) Ptr m_pause; //!< random variable for pause values