Smart Dust Simulation Specifications

Normal.h is found in week3 subdirectory.

Try Dust std div 100

Try Flechettestd div 100/3

Abstract: A time based simulation that illustrates the relationship between “smart dust” sensors, their associated flechettes and the command processor as various targets move through the sensor field.

Objects:

Attributes (private member data)

Behaviors (public member functions)

Data Structures:

Time step behaviors:

Other functions:

Controls:

Objects:

Smart Dust: Heat, Motion, Radiation, Acoustic, Pressure

: Types: H, M, R, A, P //sample for constructor instantiation of type, random chars

: Private Member Data

char Type;

double x, y; (locations held constant)

doublesignal_strength; //set by referee each time step

Associated “Signal” strengths

Sensor type / Frequency of Sensor / Signal range (inclusive)
H / 25% / 0.0 to 1.0
M / 25% / 2.0 to 3.0
R / 5% / 4.0 to 5.0
A / 25% / 6.0 to 7.0
P / 20% / 8.0 to 9.0

The range of the number of sensors: 1,000<N<10,000, user input

Twodecimal place precision is required of all signals.

All signals are generated as values: (0.0 <= s <= 1.0 ) + and offset of 2, 4, 6, or 8 as above.

Flechette:

The number of Flechettes = .02*Number of Sensors

Private Member Data:

Double x, y; kept as const

List <dust*> my_list; //populated by the ref once dust and flechettes are placed

Optional:

Data[5][4]; //the output..

File output for command would include

Type of sensors and their min, mean, max, and n (GRAND TOTALS)

Public Functions

Sense(){add to a list of signals as long as there is a input stream}

Send(){to command a string of data below}

Compute the frequency N, max, min, and mean values of each signal type.

//left to discuss

Command: receives a signal from each flechette for each time step. This signal may be zero.

Compute the OVER-ALL frequency N, max, min, and mean values of each signal type.

N = sum of individual flechette n values

Min = smallest min of each type reported by the flechettes

Max, same..

Mean = sum(ni* meani)/N

Controls:

Size of the domain: 0 to 1000, in both x and y;

User Input Signal range for all Smart Dust: initially 25 //will probably change

Initial position for target = (0, y_random) final position = (1000, y_random)

User input of target profile data from file .

Target data file = id, H, M, R, A, P, speed (or one per line, comma or space delimited are both acceptable)

Time steps are committed in groups of 5, with user controls for quit or 5 more.

The command will display each flechette data packet then compute and display the smallest min, largest max, mean of flechette means, total N of each sensor type for each time step.

SPEED OF TARGET determines how many time steps in the simulation

Compute dx and dy of the speed.

PATH DISTANCE (D) = Sqrt( 10002 + (yinit –yfinal)2)

Dx (speed in x direction) =(speed*1000)/D

Dy(speed in the y direction) = (speed *(yfinal-yinit))/D

After every 5 time steps, the user is given the option to output all current dust andflechette data

Each of the following should be different in GNUPLOT

Dust signal==0

Dust signal > 0

Flechette

GNU output of the stored data is just the 3 color x,y plots of the data above.