ns-3
ns3::RandomWalk2dMobilityModel Class Reference

2D random walk mobility model. More...

#include <random-walk-2d-mobility-model.h>

Inheritance diagram for ns3::RandomWalk2dMobilityModel:
Collaboration diagram for ns3::RandomWalk2dMobilityModel:

List of all members.

Public Types

enum  Mode { MODE_DISTANCE, MODE_TIME }

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::RandomWalk2dMobilityModel.

Additional Inherited Members

- Public Member Functions inherited from ns3::MobilityModel
Vector GetPosition (void) const
void SetPosition (const Vector &position)
Vector GetVelocity (void) const
double GetDistanceFrom (Ptr< const MobilityModel > position) const
double GetRelativeSpeed (Ptr< const MobilityModel > other) const
- Public Member Functions inherited from ns3::Object
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Dispose (void)
void AggregateObject (Ptr< Object > other)
AggregateIterator GetAggregateIterator (void) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount (const SimpleRefCount &o)
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
uint32_t GetReferenceCount (void) const
- Public Member Functions inherited from ns3::ObjectBase
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
- Protected Member Functions inherited from ns3::MobilityModel
void NotifyCourseChange (void) const
- Protected Member Functions inherited from ns3::Object
virtual void NotifyNewAggregate (void)
 Object (const Object &o)

Detailed Description

2D random walk mobility model.

Each instance moves with a speed and direction choosen at random with the user-provided random variables until either a fixed distance has been walked or until a fixed amount of time. If we hit one of the boundaries (specified by a rectangle), of the model, we rebound on the boundary with a reflexive angle and speed. This model is often identified as a brownian motion model.


Member Function Documentation

TypeId ns3::RandomWalk2dMobilityModel::GetTypeId ( void  )
static

This method returns the TypeId associated to ns3::RandomWalk2dMobilityModel.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/$ns3::MobilityModel/$ns3::RandomWalk2dMobilityModel

Attributes defined for this type:

  • Bounds: Bounds of the area to cruise.
  • Time: Change current direction and speed after moving for this delay.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +1000000000.0ns
    • Flags: construct write read
  • Distance: Change current direction and speed after moving for this distance.
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 1
    • Flags: construct write read
  • Mode: The mode indicates the condition used to change the current speed and direction
    • Set with class: ns3::EnumValue
    • Underlying type: Distance|Time
    • Initial value: Distance
    • Flags: construct write read
  • Direction: A random variable used to pick the direction (gradients).
  • Speed: A random variable used to pick the speed (m/s).

Attributes defined in parent class ns3::MobilityModel:

  • Position: The current position of the mobility model.
  • Velocity: The current velocity of the mobility model.

No TraceSources defined for this type.
TraceSources defined in parent class ns3::MobilityModel:

  • CourseChange: The value of the position and/or velocity vector changed

Reimplemented from ns3::MobilityModel.

References ns3::Seconds(), and ns3::TypeId::SetParent().


The documentation for this class was generated from the following files: