Finding the Node Position, speed and Velocity of a Node while using AODV

Finding the Node Position, speed and Velocity of a Node while using AODV

Steps
1. ~ns-2.34/aodv/aodv.h
include the following header line in aodv.h

`   1: #include<mobilenode.h>`
2.In protected scope declare the variables you would be using to store the node parameters.

`   1: double xpos;`
`   2: double ypos;`
`   3: double zpos;`
`   4: double iEnergy;`
`   5: int node_speed;`
`   6: MobileNode *iNode;`
`   7: FILE *fp;`

3.In aodv.cc initialize the declared variables.

`   1: xpos = 0.0;`
`   2: ypos = 0.0;`
`   3: zpos = 0.0;`
`   4: node_speed = 0;`
`   5: iEnergy=0.0;`
`   6: fp=fopen("pradeep.csv","w");`
`   7: MobileNode *iNode;`

4.Finally access the required functions from mobilenode.h. Paste the following lines in the AODV::forward() function

`//Code by pradeepkumar`
`/***This code retrieves node `
`position*****/`
`fprintf(fp,"Position is, X, Y, Z, Velocity is, X, Y, Z, `
`Velocity, Node Speed, Energy \n");`
`iNode = (MobileNode*) `
`(Node::get_node_by_address(index));`
`((MobileNode *) `
`iNode)->getLoc(&xpos,&ypos,&zpos);`
`//Position of %d , X, Y, `
`Z`
`fprintf(fp,"%d,%f,%f,%f,", index, xpos, ypos, zpos);`
`/***This code retrieves the nodes velocity*****/`
`iNode = (MobileNode*) `
`(Node::get_node_by_address(index));`
`((MobileNode *) `
`iNode)->getVelo(&xpos, &ypos, &zpos);`
`//Velocity of %d , X, Y, `
`Z`
`fprintf(fp,"%d,%f,%f,%f,", index, xpos, ypos, zpos);`
`/***This code retrieves the nodes speed*****/`
`iNode = (MobileNode*) `
`(Node::get_node_by_address(index));`
`node_speed = ((MobileNode *) `
`iNode)->speed();`
`iEnergy=iNode->energy_model()->energy();`
`//Velocity `
`of %d , Node Speed in m/s Energy in joules `
`fprintf(fp,"%d,%d,%f,", index, `
`node_speed,iEnergy);`