|
DESERT 3.6.1
|
#include <woss-groupmobility-3d.h>


Classes | |
| class | UpdatePositionTimer |
Public Types | |
| enum | BoundType { SPHERIC = 1 , THOROIDAL , HARDWALL , REBOUNCE } |
Public Member Functions | |
| WossGroupMob3D () | |
| virtual | ~WossGroupMob3D () |
| virtual double | getStartX () |
| virtual double | getStartY () |
| virtual void | setLat (double x_coord, double y_coord) |
| virtual void | setLong (double x_coord, double y_coord) |
| virtual double | getCharge () |
| virtual int | command (int argc, const char *const *argv) |
Public Attributes | |
| double | newx |
| double | newy |
| double | newz |
| double | vx |
| double | vy |
| double | vz |
| double | x_coord |
| double | y_coord |
| double | z_coord |
Protected Member Functions | |
| virtual void | update () |
| double | Gaussian () |
| double | distance (WossPosition *pos1, WossPosition *pos2) |
| double | mirror_posx (double x_coord_node, double x_coord_leader) |
| double | mirror_posy (double y_coord_node, double y_coord_leader) |
| double | mirror_posz (double z_coord_node, double z_coord_leader) |
Protected Attributes | |
| double | xFieldWidth_ |
| double | yFieldWidth_ |
| double | zFieldWidth_ |
| double | alpha_ |
| double | speedMean_ |
| double | directionMean_ |
| double | pitchMean_ |
| double | sigmaPitch_ |
| BoundType | bound_ |
| double | updateTime_ |
| double | speed_ |
| double | direction_ |
| int | wossgroup_debug_ |
| int | maddr |
| double | start_latitude |
| double | start_longitude |
| double | start_x |
| double | start_y |
| int | mtrace_ |
| int | mtrace_of_node_ |
| double | pitch_ |
| double | zmin_ |
| double | speedM_ |
| double | speedS_ |
| double | eta_ |
| double | beta_ |
| double | charge_ |
| double | leaderCharge_ |
| double | galpha_ |
| int | count |
| string | gm3dGroupTraceFile |
| WossPosition * | leader_ |
| UpdatePositionTimer | update_position_timer |
| Uwrandomlib | randlib |
Base class of Group Mobility Model.
This is inherited from WossPosition Class.
Definition at line 58 of file woss-groupmobility-3d.h.
Defines the behaviour of the node when it reaches an edge of the simulation field.
| Enumerator | |
|---|---|
| SPHERIC | |
| THOROIDAL | |
| HARDWALL | |
| REBOUNCE | |
Definition at line 76 of file woss-groupmobility-3d.h.
| WossGroupMob3D::WossGroupMob3D | ( | ) |
Constructor of WossGroupMob3D class.
Definition at line 69 of file woss-groupmobility-3d.cpp.
|
virtual |
Destructor of WossGroupMob3D class.
Definition at line 132 of file woss-groupmobility-3d.cpp.
|
virtual |
TCL command intepreter.
It inherits all the OTcl method of Position
| argc | number of arguments in argv |
| argv | array of strings which are the comand parameters (Note that argv[0] is the name of the object) |
Definition at line 136 of file woss-groupmobility-3d.cpp.
|
protected |
Calculate the distance between two nodes.
| pointer | of node position 1 |
| pointer | of node position 2 |
Definition at line 222 of file woss-groupmobility-3d.cpp.
|
protected |
Method that returns a value from a normal random Gaussian variable (zero mean, unitary viariance)
Definition at line 292 of file woss-groupmobility-3d.cpp.
|
inlinevirtual |
Attraction charge to the leader.
Definition at line 110 of file woss-groupmobility-3d.h.
|
virtual |
Method that return the starting projection of the node on the cartesian x-axis.
If it's necessary (updating time when it is expired), update the position values before returns it.
Definition at line 324 of file woss-groupmobility-3d.cpp.
|
virtual |
Method that return the starting projection of the node on the cartesian y-axis.
If it's necessary (updating time when it is expired), update the position values before returns it.
Definition at line 332 of file woss-groupmobility-3d.cpp.
|
protected |
Approximate position at x-axis.
| x-axis | value of follower |
| x-axis | value of leader |
Definition at line 247 of file woss-groupmobility-3d.cpp.
|
protected |
Approximate position at y-axis.
| y-axis | value of follower |
| y-axis | value of leader |
Definition at line 262 of file woss-groupmobility-3d.cpp.
|
protected |
Approximate position at z-axis.
| z-axis | value of follower |
| z-axis | value of leader |
Definition at line 277 of file woss-groupmobility-3d.cpp.
|
virtual |
Method that sets the latitude of the node after update.
| changes | in x-axis |
| changes | in y-axis |
Definition at line 340 of file woss-groupmobility-3d.cpp.
|
virtual |
Method that sets the longitude of the node after update.
| changes | in x-axis |
| changes | in y-axis |
Definition at line 349 of file woss-groupmobility-3d.cpp.
|
protectedvirtual |
Method that updates both the position coordinates as function of the number of states to be evaluated.
Definition at line 357 of file woss-groupmobility-3d.cpp.
|
protected |
Parameter to be used to vary the randomness.
0: totally random values (Brownian motion). 1: linear motion
Definition at line 206 of file woss-groupmobility-3d.h.
|
protected |
A variable which is employed to calculate attraction force towards the leader.
Definition at line 256 of file woss-groupmobility-3d.h.
|
protected |
Defines the behaviour of the node when it reaches the edge.
SPHERIC: return in the simulation field on the opposite side THOROIDAL: return in the centre of simulation field HARDWALL: the movement is stopped in the edge REBOUNCE: the node rebounce (i.e., the movement that should be outside the simulation field is mirrored inside)
Definition at line 216 of file woss-groupmobility-3d.h.
|
protected |
Attraction charge of the follower.
Definition at line 258 of file woss-groupmobility-3d.h.
|
protected |
A counting variable.
Definition at line 264 of file woss-groupmobility-3d.h.
|
protected |
Current value of the direction.
Definition at line 228 of file woss-groupmobility-3d.h.
|
protected |
Defines the mean value of the direction.
Definition at line 210 of file woss-groupmobility-3d.h.
|
protected |
A tunable variable which is the coefficient of the filter in that range between 0 and 1.
Definition at line 254 of file woss-groupmobility-3d.h.
|
protected |
It tells the intensity of the attraction filed.
Definition at line 262 of file woss-groupmobility-3d.h.
|
protected |
Trace file information.
Definition at line 266 of file woss-groupmobility-3d.h.
|
protected |
Position pointer of the leader.
Definition at line 268 of file woss-groupmobility-3d.h.
|
protected |
Attraction charge of the leader.
Definition at line 260 of file woss-groupmobility-3d.h.
|
protected |
Mac address of the node whose movement we would like to trace.
Definition at line 232 of file woss-groupmobility-3d.h.
|
protected |
Flag to enable trace.
Definition at line 242 of file woss-groupmobility-3d.h.
|
protected |
The node whose movement pattern we want to trace.
Definition at line 244 of file woss-groupmobility-3d.h.
| double WossGroupMob3D::newx |
Definition at line 112 of file woss-groupmobility-3d.h.
| double WossGroupMob3D::newy |
Definition at line 112 of file woss-groupmobility-3d.h.
| double WossGroupMob3D::newz |
new position of a node respectively in x-axis, y-axis and z-axis.
Definition at line 112 of file woss-groupmobility-3d.h.
|
protected |
Current value of the pitch.
Definition at line 246 of file woss-groupmobility-3d.h.
|
protected |
Defines the mean value of the shifting in z-axis.
Definition at line 212 of file woss-groupmobility-3d.h.
|
protected |
Definition at line 272 of file woss-groupmobility-3d.h.
|
protected |
Standard deviation in the z-axis.
Definition at line 214 of file woss-groupmobility-3d.h.
|
protected |
Current value of the speed.
Definition at line 226 of file woss-groupmobility-3d.h.
|
protected |
Mean of the speed which is used to compute a Gaussian random variable.
Definition at line 250 of file woss-groupmobility-3d.h.
|
protected |
Defines the mean value of the speed.
When it is setted to zero the node moves anyway
Definition at line 208 of file woss-groupmobility-3d.h.
|
protected |
Standard deviation of speed which is also used to compute a Gaussian random variable.
Definition at line 252 of file woss-groupmobility-3d.h.
|
protected |
Starting latitude of the simualted area.
Definition at line 234 of file woss-groupmobility-3d.h.
|
protected |
Starting longitude of the simualted area.
Definition at line 236 of file woss-groupmobility-3d.h.
|
protected |
Internal variable.
Definition at line 238 of file woss-groupmobility-3d.h.
|
protected |
Internal variable.
Definition at line 240 of file woss-groupmobility-3d.h.
|
protected |
An object of UpdateTimerPosition class.
Definition at line 270 of file woss-groupmobility-3d.h.
|
protected |
Time between two update computation.
Definition at line 224 of file woss-groupmobility-3d.h.
| double WossGroupMob3D::vx |
Definition at line 113 of file woss-groupmobility-3d.h.
| double WossGroupMob3D::vy |
Definition at line 113 of file woss-groupmobility-3d.h.
| double WossGroupMob3D::vz |
new velocity of a node respectively in x-axis, y-axis and z-axis.
Definition at line 113 of file woss-groupmobility-3d.h.
|
protected |
Debug flag.
Definition at line 230 of file woss-groupmobility-3d.h.
| double WossGroupMob3D::x_coord |
Definition at line 114 of file woss-groupmobility-3d.h.
|
protected |
Range of the x-axis of the field to be simulated.
Definition at line 200 of file woss-groupmobility-3d.h.
| double WossGroupMob3D::y_coord |
Definition at line 114 of file woss-groupmobility-3d.h.
|
protected |
Range of the y-axis of the field to be simulated.
Definition at line 202 of file woss-groupmobility-3d.h.
| double WossGroupMob3D::z_coord |
position of the node.
Definition at line 114 of file woss-groupmobility-3d.h.
|
protected |
Range of the z-axis of the field to be simulated.
Definition at line 204 of file woss-groupmobility-3d.h.
|
protected |
Minimum z-axis value.
Definition at line 248 of file woss-groupmobility-3d.h.