examples/stats/wifi-example-db.sh
author Tom Henderson <tomh@tomh.org>
Fri, 20 Aug 2010 12:17:19 -0700
changeset 6589 9c325569fb01
parent 5849 74d9ac708677
permissions -rwxr-xr-x
Help waf to guess release versions of nsc and pybindgen
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3570
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
     1
#!/bin/sh
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
     2
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
     3
DISTANCES="25 50 75 100 125 145 147 150 152 155 157 160 162 165 167 170 172 175 177 180"
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
     4
TRIALS="1 2 3 4 5"
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
     5
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
     6
echo WiFi Experiment Example
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
     7
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
     8
pCheck=`which sqlite3`
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
     9
if [ -z "$pCheck" ]
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    10
then
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    11
  echo "ERROR: This script requires sqlite3 (wifi-example-sim does not)."
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    12
  exit 255
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    13
fi
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    14
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    15
pCheck=`which gnuplot`
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    16
if [ -z "$pCheck" ]
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    17
then
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    18
  echo "ERROR: This script requires gnuplot (wifi-example-sim does not)."
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    19
  exit 255
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    20
fi
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    21
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    22
pCheck=`which sed`
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    23
if [ -z "$pCheck" ]
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    24
then
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    25
  echo "ERROR: This script requires sed (wifi-example-sim does not)."
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    26
  exit 255
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    27
fi
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    28
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    29
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:bin/
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    30
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    31
if [ -e ../../data.db ]
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    32
then
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    33
  echo "Kill data.db? (y/n)"
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    34
  read ANS
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    35
  if [ "$ANS" = "yes" -o "$ANS" = "y" ]
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    36
  then
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    37
    echo Deleting database
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    38
    rm ../../data.db
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    39
  fi
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    40
fi
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    41
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    42
for trial in $TRIALS
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    43
do
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    44
  for distance in $DISTANCES
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    45
  do
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    46
    echo Trial $trial, distance $distance
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    47
    ../../waf --run "wifi-example-sim --format=db --distance=$distance --run=run-$distance-$trial"
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    48
  done
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    49
done
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    50
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    51
#
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    52
#Another SQL command which just collects raw numbers of frames receved.
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    53
#
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    54
#CMD="select Experiments.input,avg(Singletons.value) \
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    55
#    from Singletons,Experiments \
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    56
#    where Singletons.run = Experiments.run AND \
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    57
#          Singletons.name='wifi-rx-frames' \
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    58
#    group by Experiments.input \
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    59
#    order by abs(Experiments.input) ASC;"
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    60
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    61
mv ../../data.db .
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    62
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    63
CMD="select exp.input,avg(100-((rx.value*100)/tx.value)) \
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    64
    from Singletons rx, Singletons tx, Experiments exp \
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    65
    where rx.run = tx.run AND \
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    66
          rx.run = exp.run AND \
5849
74d9ac708677 Fixed Bug 765, minor issue in data gathering for example.
tjkopena@cs.drexel.edu
parents: 3570
diff changeset
    67
          rx.variable='receiver-rx-packets' AND \
74d9ac708677 Fixed Bug 765, minor issue in data gathering for example.
tjkopena@cs.drexel.edu
parents: 3570
diff changeset
    68
          tx.variable='sender-tx-packets' \
3570
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    69
    group by exp.input \
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    70
    order by abs(exp.input) ASC;"
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    71
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    72
sqlite3 -noheader data.db "$CMD" > wifi-default.data
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    73
sed -i "s/|/   /" wifi-default.data
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    74
gnuplot wifi-example.gnuplot
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    75
44b0bc6817c6 Stats module and example merged in.
tjkopena@cs.drexel.edu
parents:
diff changeset
    76
echo "Done; data in wifi-default.data, plot in wifi-default.eps"