Revision 9110387b

View differences:

documents/old/ExpDefinition.md
1
# Study Pop-Routing in Mobility Scenario
2

  
3
## Goal
4

  
5
Understand if, enabling pop-optimazions of Hello-timers on routers that are not fixed  (they are roaming), we still have a gain in terms of route convergence speed. We want to quantify the convergence speed gain. Moreover, as long as this gain depends on the parameters modelling the mobility scenario (e.g.: average nodes velocity...), characterize the gain in function
6
of the mobility parameters.
7

  
8
## Methodology
9

  
10
The route convergence speed gain will be defined by comparing simulations of the same mobility scenario
11
using either the optimized or the standard model of a chosen routing protocol.
12
For this purpose, Omnet++ toghether with INET offers a simulation engine for message-passing based protocols that comes
13
with support for mobility and includes also advanced channel models. It also provides some well-known 
14
routing protocols implementations that could be customized to model the pop-optimized version of the protocol that we want to use in the comparative analysis. I guess OSPF (or RIP or BGP) could be the best choice. Inetmanet offers also OLSR, nobody provides Babel.
15

  
16
A simulation output should be a collection of timestamped RT dumps for each node. For each timestamp the simulator should also
17
log a snapshot of the physical topology of the network (the physical ntw graph). 
18

  
19
For all smapling instants, we will have the collection of RTs and the topology snapshot: this will let us compute off-line the number of borken paths at that given instant of time. 
20

  
21
In a simulation of:
22

  
23
- 5 minutes of duration
24
- with RT sampling every 1 second
25
- with default Hello timer set to 4 second
26
- modelling the space for roaming, the nodes velocity ecc so to have a "neighbour change event" on average every x in {...} sec.
27
    - x could be the "mobility" characteristic parameter
28

  
29
then we will have a good approximations of the #ofBrokenPahts in function of time for a given x-value of mobility. 
30

  
31
## Possible Conclusions
32

  
33
Comparing the #ofBrokenPahts in functions of time for pop-optimized and a standard simulations we can say lot of things, not only average difference between the two.
34

  
35
After many comparative simulations, for different x-values of mobility, assuming the average difference in the #ofBrokenPahts
36
to be the leading metric, we will be able to determine in which range of the x-values it is worth to apply pop-routing. Moreover
37
we may be even able to understand when mobility is simply too much so that routing never converge...
38

  
documents/old/direzioni/direzioni.md
1
---
2
title: "How to study Pop-Routing with mobility"
3
subtitle: "List of possible experiments with PROs and CONs"
4
author: []
5
date: \today
6
#subject: "Network algorithms"
7
#keywords: [Markdown, Example]
8
titlepage: true
9
#titlepage-color: "06386e"
10
#titlepage-text-color: "FFFFFF"
11
#titlepage-rule-color: "FFFFFF"
12
#titlepage-rule-height: 1
13

  
14
header-includes:
15
    - \usepackage{xspace}
16
    - \usepackage{amsmath}
17
    - \usepackage{amssymb}
18
    - \usepackage{cleveref}
19
    - \usepackage{hyperref}
20
    - \hypersetup{colorlinks=true, linkcolor=blue, filecolor=magenta, urlcolor=cyan}
21
...
22

  
23

  
24

  
25
# Goal
26

  
27
Verify and quantify the **performance gain** we may have introducing POP-routing in mobile wireless networks.
28

  
29
# Performance metric
30

  
31
I believe these could be the possible
32
performance indicators worth to be studied in function of **mobility-characteristic parameters**, this 
33
to compare a mobile POP-network with a non-POP one:
34

  
35
1. Average Non working Path per second
36
2. Throughput
37
3. Logical-to-physical graph distance
38
4. Convergence speed of centrality
39

  
40
## How to compute them
41

  
42
1. *Average Non working Path per second*
43

  
44
- Periodic (and wishfully synchronized) sample of all RTs of all nodes, sample and record also the physical graph with a timestamp.
45
- ==> Offline navigation of RTs, indexed and grouped per timestamp, to count how many routes installed by nodes are physically broken.
46

  
47
EXPECTED RESULT:
48
With POP we have fewer broken-paths per second
49

  
50
2. *Throughput*
51

  
52
- Let all nodes generate continuously broadcast traffic
53
- Measure received/lost traffic over a whole simulation timeframe
54

  
55
EXPECTED RESULT:
56
With POP we have fewer losses / greater throughput
57

  
58
3. *Logical-to-physical graph distance*
59

  
60
- Sample periodically RTs of nodes and the physical network topology 
61
- Build the logical graph mantained by nodes at the routing layer
62
- Compute some graph-distance, e.g.: [Graph edit distance](https://en.wikipedia.org/wiki/Graph_edit_distance)
63

  
64
EXPECTED RESULT:
65
With POP the logical graph is on average more similar to the physical one.
66
If not, at least the graph-distance of the core of both logical and physical graphs are more similar if we use POP.
67

  
68
4. *Convergence speed of centrality*
69

  
70
- Classic convergence study of centrality computation,
71
this time in function of "mobility-characteristic parameters"
72

  
73
EXPECTED RESULT:
74
For not extremely fast networks the computation converges and is stable enough to claim that, for some time after,
75
POP-routing could be used bringing all the advantages already known for static networks.
76

  
77
# Simulation Approach
78

  
79
Candidate tools: custom-Python DES, Omnet...
80

  
81
Many CHALLENGES:
82

  
83
0. *Model Mobility*
84
   a. A nice [python implementation of mobility models](https://github.com/panisson/pymobility)
85
1. *Model the routing protocol*
86
   a. neighbour discovery and management
87
   b. route update propagation (or, in case of LS, TC propagation)
88
2. *Implement POP-routing on top of the modelled Routing Protocol*
89
   a. Implement Load Centrality distributed algortihm
90
   b. or, for LS, Brandes/Prince/[dynamic BTW](http://delivery.acm.org/10.1145/2940000/2939770/p1145-riondato.pdf?ip=193.205.210.74&id=2939770&acc=CHORUS&key=296E2ED678667973%2E532136EDD1F8E584%2E4D4702B0C3E38B35%2E6D218144511F3437&__acm__=1548087694_5659b59dca6726188fcc43e73c8d95aa)
91
   c. Implement dynamic timer adjustments on top of centrality computation
92
3. *Model radio channels*
93
   - [A complicated but python tool](http://pylayers.github.io/pylayers/)
94
   - or some basic self-implemented workaround. Unit-disk model? Or something little better: some prob of failure distribution and some pathloss dependent on link-length
95
   - Or nothing at all, perfect and instantaneous links!
96

  
97
Other candidate tools:
98

  
99
- \url{https://www.gnuradio.org/doc/doxygen/page_channels.html}
100
- \url{https://github.com/intrig-unicamp/mininet-wifi}
101
- \url{https://github.com/bcopeland/wmediumd}
102

  
103
### Considerations on Omnet
104

  
105
Oment for sure provides some mobility libraries and advanced radio channels. The challenges adopting Omnet would be the integration of
106
mobility and radio libaries with a routing protocol (among the many already implemented in Omnet) customized to implement POP-routing.
107
Summing up, I am not an expert of Oment but I should somehow implement POP-routing inside Oment, and mix many "subprojects" of Oment to be able to
108
setup an appropriate enviroments for experiments
109

  
110
## PROs and CONs
111

  
112
The approximations introduced while modelling mobility, the routing protocol and wireless channels can't be neglected. Metrics like AVG broken Paths per second or Throughput are not suited for a simulation study. The other 2 metrics (graph distance and convergence speed [measured in "Virtual time"]), could be instead studied in the flexible environment of a python-simulator, but are less informative metrics. The mobility patterns offered by the python-tool already identified seems to offer very good models.
113

  
114

  
115
# Emulation Approach
116

  
117
The candidate tools are NePa, Mininet-wifi ...
118

  
119
CHALLENGES:
120

  
121
0. How to embed mobility in emulators?
122
1. OLSR + Prince or Babel + LC? For the moment my customBabel only computes LC. LC-Dissemination and timer-tuning still need to be implemented
123
2. Radio modelling? Emulated WiFi drivers available? ...
124

  
125
## PROs and CONs
126

  
127
If we manage to setup things then also the two main metrics could be studied. However, the setup is really hard! No known emulators offer Mobility + radio channels together and, moreover, customBabel is not ready for emulation.
128

  
129

  
130
<!---
131
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr.
132

  
133
![](images/adorf.eps){ width=80% }
134

  
135
![](images/sintExp.pdf){ width=80% }
136

  
137
\begin{longtable}[]{llllllll}
138
\caption[Nam liber tempor cum soluta nobis eleifend option congue.]{Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.} \\
139
\toprule
140
Test Nr. & Position & Radius & Rot & Grün & Blau &
141
beste Fitness & Abweichung\tabularnewline
142
\midrule
143
\endhead
144
1 & 20 \% & 20 \% & 20 \% & 20 \% & 20 \% & 7,5219 &
145
0,9115\tabularnewline
146
2 & 0 \% & 25 \% & 25 \% & 25 \% & 25 \% & 8,0566 &
147
1,4462\tabularnewline
148
3 & 0 \% & 0 \% & 33 \% & 33 \% & 33 \% & 8,7402 & 2,1298\tabularnewline
149
4 & 50 \% & 20 \% & 10 \% & 10 \% & 10 \% & 6,6104 &
150
0,0000\tabularnewline
151
5 & 70 \% & 0 \% & 10 \% & 10 \% & 10 \% & 7,0696 &
152
0,4592\tabularnewline
153
6 & 20 \% & 50 \% & 10 \% & 10 \% & 10 \% & 7,0034 &
154
0,3930\tabularnewline
155
\bottomrule
156
\end{longtable}
157

  
158
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr.
159

  
160
## Image with Caption
161

  
162
![Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.](image.png)
163

  
164
## Markdown Table without Caption
165

  
166
Lorem markdownum Letoia, et alios: figurae flectentem annis aliquid Peneosque abesse, obstat gravitate. Obscura atque coniuge, per de coniunx, sibi medias
167
commentaque virgine anima tamen comitemque petis, sed. In Amphion vestros
168
hamos ire arceor mandere spicula, in licet aliquando.
169

  
170
Test Nr. | Position | Radius | Rot | Grün | Blau | beste Fitness | Abweichung |
171
|---|---|---|---|---|---|---|---|
172
1 |  20 % |  20 % |  20 % |  20 % |  20 % |  7,5219 |  0,9115 |
173
2 |   0 % |  25 % |  25 % |  25 % |  25 % |  8,0566 |  1,4462 |
174
3 |   0 % |   0 % |  33 % |  33 % |  33 % |  8,7402 |  2,1298 |
175
4 |  50 % |  20 % |  10 % |  10 % |  10 % |  6,6104 |  0,0000 |
176
5 |  70 % |   0 % |  10 % |  10 % |  10 % |  7,0696 |  0,4592 |
177
6 |  20 % |  50 % |  10 % |  10 % |  10 % |  7,0034 |  0,3930 |
178
7 |  40 % |  15 % |  15 % |  15 % |  15 % |  6,9122 |  0,3018 |
179

  
180
Porrigitur et Pallas nuper longusque cratere habuisse sepulcro pectore fertur.
181
Laudat ille auditi; vertitur iura tum nepotis causa; motus. Diva virtus! Acrota destruitis vos iubet quo et classis excessere Scyrumve spiro subitusque mente Pirithoi abstulit, lapides.
182

  
183
## Image without Caption
184

  
185
![](image.png)
186
-->
documents/old/mobiCentrality/mobiCentrality.md
1
---
2
title: "Explorative study of the evolution of Centrality indexes in Mobile Networks"
3
subtitle: "List of possible experiments with PROs and CONs"
4
author: []
5
date: \today
6
#subject: "Network algorithms"
7
#keywords: [Markdown, Example]
8
titlepage: true
9
#titlepage-color: "06386e"
10
#titlepage-text-color: "FFFFFF"
11
#titlepage-rule-color: "FFFFFF"
12
#titlepage-rule-height: 1
13

  
14
header-includes:
15
    - \usepackage{xspace}
16
    - \usepackage{amsmath}
17
    - \usepackage{amssymb}
18
    - \usepackage{cleveref}
19
    - \usepackage{hyperref}
20
    - \hypersetup{colorlinks=true, linkcolor=blue, filecolor=magenta, urlcolor=cyan}
21
...
22

  
23

  
24

  
25

  
26

  
27

  
28
<!---
29
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr.
30

  
31
![](images/adorf.eps){ width=80% }
32

  
33
![](images/sintExp.pdf){ width=80% }
34

  
35
\begin{longtable}[]{llllllll}
36
\caption[Nam liber tempor cum soluta nobis eleifend option congue.]{Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.} \\
37
\toprule
38
Test Nr. & Position & Radius & Rot & Grün & Blau &
39
beste Fitness & Abweichung\tabularnewline
40
\midrule
41
\endhead
42
1 & 20 \% & 20 \% & 20 \% & 20 \% & 20 \% & 7,5219 &
43
0,9115\tabularnewline
44
2 & 0 \% & 25 \% & 25 \% & 25 \% & 25 \% & 8,0566 &
45
1,4462\tabularnewline
46
3 & 0 \% & 0 \% & 33 \% & 33 \% & 33 \% & 8,7402 & 2,1298\tabularnewline
47
4 & 50 \% & 20 \% & 10 \% & 10 \% & 10 \% & 6,6104 &
48
0,0000\tabularnewline
49
5 & 70 \% & 0 \% & 10 \% & 10 \% & 10 \% & 7,0696 &
50
0,4592\tabularnewline
51
6 & 20 \% & 50 \% & 10 \% & 10 \% & 10 \% & 7,0034 &
52
0,3930\tabularnewline
53
\bottomrule
54
\end{longtable}
55

  
56
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr.
57

  
58
## Image with Caption
59

  
60
![Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.](image.png)
61

  
62
## Markdown Table without Caption
63

  
64
Lorem markdownum Letoia, et alios: figurae flectentem annis aliquid Peneosque abesse, obstat gravitate. Obscura atque coniuge, per de coniunx, sibi medias
65
commentaque virgine anima tamen comitemque petis, sed. In Amphion vestros
66
hamos ire arceor mandere spicula, in licet aliquando.
67

  
68
Test Nr. | Position | Radius | Rot | Grün | Blau | beste Fitness | Abweichung |
69
|---|---|---|---|---|---|---|---|
70
1 |  20 % |  20 % |  20 % |  20 % |  20 % |  7,5219 |  0,9115 |
71
2 |   0 % |  25 % |  25 % |  25 % |  25 % |  8,0566 |  1,4462 |
72
3 |   0 % |   0 % |  33 % |  33 % |  33 % |  8,7402 |  2,1298 |
73
4 |  50 % |  20 % |  10 % |  10 % |  10 % |  6,6104 |  0,0000 |
74
5 |  70 % |   0 % |  10 % |  10 % |  10 % |  7,0696 |  0,4592 |
75
6 |  20 % |  50 % |  10 % |  10 % |  10 % |  7,0034 |  0,3930 |
76
7 |  40 % |  15 % |  15 % |  15 % |  15 % |  6,9122 |  0,3018 |
77

  
78
Porrigitur et Pallas nuper longusque cratere habuisse sepulcro pectore fertur.
79
Laudat ille auditi; vertitur iura tum nepotis causa; motus. Diva virtus! Acrota destruitis vos iubet quo et classis excessere Scyrumve spiro subitusque mente Pirithoi abstulit, lapides.
80

  
81
## Image without Caption
82

  
83
![](image.png)
84
-->
documents/old/mobilityNODE.txt
1
0. leggere una serie di topologie "evoluzione cronologica" (sono grafi timestamped)
2

  
3
1. un timer per insreire eventi di cambio topologia
4

  
5
2. interfaccia di nodo 
6
    gestire DV
7
    implementare link-sensing
8
    NB: finendo di processare un DV, se ti cambia la centralita' aggiorna anche il tuo
9
    timer di HEllo, opportunamente rischedula il prossimo hello
10

  
11
3. 
12

  
13

  
14

  
15
Evento: 
16
destination
17
class event_body:
18
      tipo: dv, hello, housecleanig
19
      body:..
20

  
21
class node:
22
    real_neighbors
23
    scheduler
24
    neighbors
25

  
26
    def send_broadcast(msg):
27
        for n in real_neighbors:
28
            send(msg, neighbor)
documents/old/simArchitecture.md
1
---
2
header-includes:
3
  - \usepackage{float}
4
  - \usepackage{subcaption}
5
  - \usepackage{float}
6
  - \usepackage{textcomp}
7
  - \usepackage{listings}
8
  - \usepackage{graphicx}
9
  - \usepackage{hyperref}
10
geometry: margin=2cm
11
---
12

  
13
# Architecture of the Simulator for the study of Pop-Routing in Mobility with an abstract DV routing protocol
14

  
15
In this document I want to describe the model of routing protocol that will be "embodied" by
16
the logical architecture of the simulator. I want to add as much details as possible about the
17
implementation of the simulator, so to share a documentation of the tool that will be used to study
18
Pop-Routing in Mobility, thus enabling a later soundly-based interpretation of results.
19

  
20
## Premise
21

  
22
As long as we want to highlight potential differences between a POP and a standard abstract DV routing protocol,
23
the simulator have to embodies the model of a neighbour-discovery process based on periodic timers. Moreover, obviously,
24
mobility should have an impact on this process and on the routing convergence speed (if it converges at all!). This said, the important implementation
25
details are:
26

  
27
- **Message/Channel model**: instantaneous? with probability of failure? tx range? all in broadcast? to physical or logical neigh?
28
- **States of a Node**: neighbour set, RTs, CentralityTable
29
- **Network Graph**: a global state parameter of the simulator?
30
- **Events definition and handling**: Hello and Housecleaning with the same timer? DV are triggered by detected topology change? If I receive a DV
31
from an unknown Node what should I do? Process or ignore?
32

  
33
## Unsorted considerations
34

  
35
### Simulator inputs
36

  
37
- mobility model: ["randomWayPoint", "?"] 
38
  - pymobility offers also others interesting model
39
  Random Walk, Random Waypoint (RWP), Random Direction, Truncated Levy Walk, Gauss-Markov, Reference Point Group Mobility model, **Time-variant Community**
40
  - maximum waiting time: For RWP the mobility package defines this parameter as max time a node can stay in the same position
41
- number of nodes
42
- simulation area: (MAX_X, MAX_Y)
43
- velocity: the mobility package ask for a min and max veloc and then uniformly distributes velocity values among nodes
44
- TXrange: a pure number?
45
- **mobility_timer**: new coordinates for node at every simulator event? better to set a timer that periodically fires
46
mobility events
47
- **hello_Housecleaning_timer**: default timer for hello and housecleaning with the nonPOP protocol. *General question: proportion between hello and housecleaning timer?*
48
- **DV_timer**: should exist? or only triggered DV? or aggregationTimer for new learned routes?
49
- duration: time limit for the simulation
50

  
51
### Simulator fundamentals: main loop and events
52

  
53
Well... A classic DES: events are timestamped and put in a minHeap to be processed as fast as possible.
54
I imagine 2 kind of events: i) mobility events, ii) message/nodes events.
55

  
56
A generic event has these fields:
57

  
58
- type: Mobility (with blank originator), Hello, Housecleaning, DV?
59
- originator: a node identifier
60
- timestamp: float
61

  
62
##### Mobility event
63

  
64
A mobility event (ME) is not processed by Nodes, should be processed "online" at the "global level"
65
of the simulator. In particular, every time a ME is fired, new coordinates for all nodes are generated by the mobility package.
66
Then, according to the TXrange parameter, edges are recomputed and the network_graph (a simulator parameter) is updated.
67

  
68
##### Message/nodes events
69

  
70
3 kind of events: Hello, Housecleaning, DV. The way to process the first two characterize the "neigh-discovery" model. DV event can be
71
removed if we imagine they are always triggered (never periodically fired...at convergence they may be never fired but as long as nodes roam...)
72

  
73
- *Hello*: sent in broadcast to "physical neigh", i.e. to neighs of sender/originator according to the graph maintained at the simulator level.
74
When an Hello is fired, the simulator retrieve the physical neigh of the sender and call on them the "process()" method passing them
75
the event_descriptor. Basically, when processing "Hello from X", a receiver v should:
76
  - add a neigh in its neighTable if X is new, record the last_heard attribute for v in its neighTable
77
  - or just update the last_heard attribute otherwise
78
  - *if new neighbour ==> send DV as response to detected new neigh*
79

  
80
- *Housecleaning*: when a Housecleaning event is fired, the originator inspects its NeighTable and, according to i) current time, ii) the last_heard
81
attributes of its neighs and to iii) **remove_interval**\footnote{IT SHOULD BE POP-OPTIMIZED}, removes old neighs. 
82
  - If some neigh is lost then ==> update RT (delete destination entries with deleted neigh as NH); then triggers sendDV()
83

  
84
- *DV*: is not actually an event. From the sender perspective, the sender should know how to prepare a DV and how to transmit it. The receiver should use it to update its RT and, if learned something new, decide to trigger sendDV().
85
  - *sendDV*: when its triggered\footnote{Look at actions taken upon Hello and Housecleaning}, the sender node simply prepare the usual dictionary that maps each know destination with the known distance and **broadcast** it to physical neighs, potentially including some new neighs that do not know this sender!)
86
  - *receiveDV*: when a node receive a DV...if the sender is known it's fine. If it's unknown we should interpret it as a Hello followed by a DV.
87
  So what we should do only to process a DV is:
88
    - Bellman-Ford to update RTs; **followed by Centrality Computation and Timers recalibration**\footnote{How to do Recalibration?}
89
    - Keep track of new routing choices
90
    - If there are, trigger a DV
91

  
92
### Remarks
93

  
94
At present, I foresee a big effort in implementing all the above and there are for sure many ambiguities that will hamper interpretation/validity of results. Still, it can be done in an adequate amount of time if we agree on the model. The alternatives are:
95

  
96
1. Implement mobility in NePa and repeat "The Pop-Routing experiment", i.e. plainOLSR vs POP-OLSR but with nodes moved by NePa
97
2. Go back to Omnet++, choose a protocol that is implemented in Omnet++ (there is OLSR and now I found also Babel \href{https://arxiv.org/pdf/1609.05215.pdf}{paper}, \href{https://github.com/kvetak/ANSA}{gitRepo}), implement the POP version of the protocol for Omnet and perform "The PopR exp"
98
in Omnet++ 
99

  
100

  
101

  
102

  
103

  
104
<!--
105
\begin{center}
106
\setlength{\unitlength}{1cm}
107
\begin{picture}(6,6)(-3,-3)
108
\put(-1.5,0){\vector(1,0){3}}
109
\put(2.7,-0.1){$\chi$}
110
\put(0,-1.5){\vector(0,1){3}}
111
\multiput(-2.5,1)(0.4,0){13}
112
{\line(1,0){0.2}}
113
\multiput(-2.5,-1)(0.4,0){13}
114
{\line(1,0){0.2}}
115
\put(0.2,1.4)
116
{$\beta=v/c=\tanh\chi$}
117
\qbezier(0,0)(0.8853,0.8853)
118
(2,0.9640)
119
\qbezier(0,0)(-0.8853,-0.8853)
120
(-2,-0.9640)
121
\put(-3,-2){\circle*{0.2}}
122
\end{picture}
123
\end{center}
124

  
125

  
126
\begin{figure}
127
  \caption{A picture of a gull.}
128
  \centering
129
    \includegraphics[width=0.5\textwidth]{gull}
130
\end{figure}
131
-->
readme.md
1
# Study of Graph metrics in dynamic-graphs
2

  
3
Goal of the study is to perform a Time-series-analysis of Centrality metrics.
4
The research can be extended so to study other graph metrics.
varie/popMobility.py
1
import getopt
2
import code  # code.interact(local=dict(globals(), **locals()))
3
from pprint import pprint
4
import sys
5
from simulator import Simulator
6

  
7
if __name__ == '__main__':
8

  
9
    settingsFile = ''
10
    sectionExp = ''
11
    options, remainder = getopt.getopt(sys.argv[1:], '', ['sf=', 'en='])
12
    mand = set(['--sf', '--en'])
13
    opts = [x[0] for x in options]
14
    # print 'OPTIONS   :', opts
15
    if (not mand.issubset(opts)):
16
        print 'Mandatory args are: --sf (settings file) --en (experiment name)'
17
        sys.exit(1)
18
    for opt, arg in options:
19
        if opt in ('--sf'):
20
            settingsFile = arg
21
        if opt in ('--en'):
22
            sectionExp = arg
23

  
24
    sim = Simulator(settingsFile, sectionExp)
25
    code.interact(local=dict(globals(), **locals()))
26

  
varie/settings.ini
1
[exp1]
2
duration = 10s
3
nodes_number = 50
4
min_x = 100
5
min_y = 100
6
min_velocity = 0.1
7
max_velocity = 1.0
8
range = 2.0
9
# attenuationCoef = 2.3
10
mobility_timer = 1s
11
hello = 4s
12
housecleaning = 0.1s
13

  
14

  
15

  
16
[SectionOne]
17
Param1: Hello
18
Param2: World
19

  
20
[SectionTwo]
21
Param1: ${SectionOne:Param1} ${SectionOne:Param2}
22

  
23
[SectionThree]
24
Alpha: One
25
Bravo: Two
26
Charlie: ${Alpha} Mississippi
varie/simulator.py
1
import configparser
2

  
3
class Simulator(object):
4

  
5
    def __init__(self, settingsFile, sectionExp):
6
        self.simParameters = self.getSimulationParameters(settingsFile, sectionExp)
7

  
8
    def getSimulationParameters(self,settingsFile, sectionExp):
9
        retParameters = {}
10
        settings = configparser.ConfigParser()
11
        settings._interpolation = configparser.ExtendedInterpolation()
12
        settings.read(settingsFile)
13
        mand = set([
14
            'min_x', 'min_y', 'housecleaning', 'nodes_number', 'max_velocity',
15
            'range', 'mobility_timer', 'min_velocity', 'duration', 'hello'
16
        ])
17
        opts = dict(settings.items(sectionExp))
18
        if (not mand.issubset(opts.keys())):
19
            sys.exit('You are missing a mandatory parameter!\n'
20
                     'These are required:\n' + ', '.join(mand))
21
        for option in settings.options(sectionExp):
22
            arg = settings.get(sectionExp, option)
23
            if option == 'duration':
24
                retParameters['duration'] = float(arg.strip('s'))
25
            if option == 'min_x':
26
                retParameters['min_x'] = int(arg)
27
            if option == 'min_y':
28
                retParameters['min_y'] = int(arg)
29
            if option == 'housecleaning':
30
                retParameters['housecleaning'] = float(arg.strip('s'))
31
            if option == 'nodes_number':
32
                retParameters['nodes_number'] = int(arg)
33
            if option == 'max_velocity':
34
                retParameters['max_velocity'] = float(arg)
35
            if option == 'min_velocity':
36
                retParameters['min_velocity'] = float(arg)
37
            if option == 'range':
38
                retParameters['range'] = float(arg)
39
            if option == 'mobility_timer':
40
                retParameters['mobility_timer'] = float(arg.strip('s'))
41
            if option == 'hello':
42
                retParameters['hello'] = float(arg.strip('s'))
43
            else:
44
                print 'Unparsed ', option, '=', settings.get(sectionExp, option)
45
        return retParameters
varie/spyderTest/autoCorrPart.py
1
import pandas as pd
2
from matplotlib import pyplot
3
import code
4
from pprint import pprint
5
import numpy as np
6
from statsmodels.graphics.tsaplots import plot_acf
7

  
8
df = pd.read_csv('./daily-minimum-temperatures-in-me.csv', names=['date', 'temp'], parse_dates=['date'], skiprows=1)
9
df = df.apply(pd.to_numeric, errors='coerce')
10
#code.interact(local=dict(globals(), **locals()))
11
# df.plot()
12
# pyplot.show()
13
plot_acf(df.temp, lags=1000)
14
pyplot.show()
varie/spyderTest/daily-minimum-temperatures-in-me.csv
1
"Date","temp"
2
"1981-01-01",20.7
3
"1981-01-02",17.9
4
"1981-01-03",18.8
5
"1981-01-04",14.6
6
"1981-01-05",15.8
7
"1981-01-06",15.8
8
"1981-01-07",15.8
9
"1981-01-08",17.4
10
"1981-01-09",21.8
11
"1981-01-10",20.0
12
"1981-01-11",16.2
13
"1981-01-12",13.3
14
"1981-01-13",16.7
15
"1981-01-14",21.5
16
"1981-01-15",25.0
17
"1981-01-16",20.7
18
"1981-01-17",20.6
19
"1981-01-18",24.8
20
"1981-01-19",17.7
21
"1981-01-20",15.5
22
"1981-01-21",18.2
23
"1981-01-22",12.1
24
"1981-01-23",14.4
25
"1981-01-24",16.0
26
"1981-01-25",16.5
27
"1981-01-26",18.7
28
"1981-01-27",19.4
29
"1981-01-28",17.2
30
"1981-01-29",15.5
31
"1981-01-30",15.1
32
"1981-01-31",15.4
33
"1981-02-01",15.3
34
"1981-02-02",18.8
35
"1981-02-03",21.9
36
"1981-02-04",19.9
37
"1981-02-05",16.6
38
"1981-02-06",16.8
39
"1981-02-07",14.6
40
"1981-02-08",17.1
41
"1981-02-09",25.0
42
"1981-02-10",15.0
43
"1981-02-11",13.7
44
"1981-02-12",13.9
45
"1981-02-13",18.3
46
"1981-02-14",22.0
47
"1981-02-15",22.1
48
"1981-02-16",21.2
49
"1981-02-17",18.4
50
"1981-02-18",16.6
51
"1981-02-19",16.1
52
"1981-02-20",15.7
53
"1981-02-21",16.6
54
"1981-02-22",16.5
55
"1981-02-23",14.4
56
"1981-02-24",14.4
57
"1981-02-25",18.5
58
"1981-02-26",16.9
59
"1981-02-27",17.5
60
"1981-02-28",21.2
61
"1981-03-01",17.8
62
"1981-03-02",18.6
63
"1981-03-03",17.0
64
"1981-03-04",16.0
65
"1981-03-05",13.3
66
"1981-03-06",14.3
67
"1981-03-07",11.4
68
"1981-03-08",16.3
69
"1981-03-09",16.1
70
"1981-03-10",11.8
71
"1981-03-11",12.2
72
"1981-03-12",14.7
73
"1981-03-13",11.8
74
"1981-03-14",11.3
75
"1981-03-15",10.6
76
"1981-03-16",11.7
77
"1981-03-17",14.2
78
"1981-03-18",11.2
79
"1981-03-19",16.9
80
"1981-03-20",16.7
81
"1981-03-21",8.1
82
"1981-03-22",8.0
83
"1981-03-23",8.8
84
"1981-03-24",13.4
85
"1981-03-25",10.9
86
"1981-03-26",13.4
87
"1981-03-27",11.0
88
"1981-03-28",15.0
89
"1981-03-29",15.7
90
"1981-03-30",14.5
91
"1981-03-31",15.8
92
"1981-04-01",16.7
93
"1981-04-02",16.8
94
"1981-04-03",17.5
95
"1981-04-04",17.1
96
"1981-04-05",18.1
97
"1981-04-06",16.6
98
"1981-04-07",10.0
99
"1981-04-08",14.9
100
"1981-04-09",15.9
101
"1981-04-10",13.0
102
"1981-04-11",7.6
103
"1981-04-12",11.5
104
"1981-04-13",13.5
105
"1981-04-14",13.0
106
"1981-04-15",13.3
107
"1981-04-16",12.1
108
"1981-04-17",12.4
109
"1981-04-18",13.2
110
"1981-04-19",13.8
111
"1981-04-20",10.6
112
"1981-04-21",9.0
113
"1981-04-22",10.0
114
"1981-04-23",9.8
115
"1981-04-24",11.5
116
"1981-04-25",8.9
117
"1981-04-26",7.4
118
"1981-04-27",9.9
119
"1981-04-28",9.3
120
"1981-04-29",9.9
121
"1981-04-30",7.4
122
"1981-05-01",8.6
123
"1981-05-02",11.9
124
"1981-05-03",14.0
125
"1981-05-04",8.6
126
"1981-05-05",10.0
127
"1981-05-06",13.5
128
"1981-05-07",12.0
129
"1981-05-08",10.5
130
"1981-05-09",10.7
131
"1981-05-10",8.1
132
"1981-05-11",10.1
133
"1981-05-12",10.6
134
"1981-05-13",5.3
135
"1981-05-14",6.6
136
"1981-05-15",8.5
137
"1981-05-16",11.2
138
"1981-05-17",9.8
139
"1981-05-18",5.9
140
"1981-05-19",3.2
141
"1981-05-20",2.1
142
"1981-05-21",3.4
143
"1981-05-22",5.4
144
"1981-05-23",9.6
145
"1981-05-24",11.5
146
"1981-05-25",12.3
147
"1981-05-26",12.6
148
"1981-05-27",11.0
149
"1981-05-28",11.2
150
"1981-05-29",11.4
151
"1981-05-30",11.8
152
"1981-05-31",12.8
153
"1981-06-01",11.6
154
"1981-06-02",10.6
155
"1981-06-03",9.8
156
"1981-06-04",11.2
157
"1981-06-05",5.7
158
"1981-06-06",7.1
159
"1981-06-07",2.5
160
"1981-06-08",3.5
161
"1981-06-09",4.6
162
"1981-06-10",11.0
163
"1981-06-11",5.7
164
"1981-06-12",7.7
165
"1981-06-13",10.4
166
"1981-06-14",11.4
167
"1981-06-15",9.2
168
"1981-06-16",6.1
169
"1981-06-17",2.7
170
"1981-06-18",4.3
171
"1981-06-19",6.3
172
"1981-06-20",3.8
173
"1981-06-21",4.4
174
"1981-06-22",7.1
175
"1981-06-23",4.8
176
"1981-06-24",5.8
177
"1981-06-25",6.2
178
"1981-06-26",7.3
179
"1981-06-27",9.2
180
"1981-06-28",10.2
181
"1981-06-29",9.5
182
"1981-06-30",9.5
183
"1981-07-01",10.7
184
"1981-07-02",10.0
185
"1981-07-03",6.5
186
"1981-07-04",7.0
187
"1981-07-05",7.4
188
"1981-07-06",8.1
189
"1981-07-07",6.6
190
"1981-07-08",8.3
191
"1981-07-09",8.9
192
"1981-07-10",4.6
193
"1981-07-11",6.8
194
"1981-07-12",5.7
195
"1981-07-13",6.1
196
"1981-07-14",7.0
197
"1981-07-15",7.2
198
"1981-07-16",6.3
199
"1981-07-17",8.8
200
"1981-07-18",5.0
201
"1981-07-19",7.4
202
"1981-07-20",10.1
203
"1981-07-21",12.0
204
"1981-07-22",9.0
205
"1981-07-23",8.9
206
"1981-07-24",9.8
207
"1981-07-25",9.0
208
"1981-07-26",9.2
209
"1981-07-27",7.7
210
"1981-07-28",8.0
211
"1981-07-29",6.1
212
"1981-07-30",3.5
213
"1981-07-31",3.2
214
"1981-08-01",5.7
215
"1981-08-02",7.7
216
"1981-08-03",9.0
217
"1981-08-04",10.0
218
"1981-08-05",6.2
219
"1981-08-06",6.9
220
"1981-08-07",6.5
221
"1981-08-08",6.8
222
"1981-08-09",7.0
223
"1981-08-10",5.2
224
"1981-08-11",3.0
225
"1981-08-12",5.6
226
"1981-08-13",7.9
227
"1981-08-14",9.0
228
"1981-08-15",8.6
229
"1981-08-16",10.3
230
"1981-08-17",10.5
231
"1981-08-18",7.6
232
"1981-08-19",9.7
233
"1981-08-20",12.5
234
"1981-08-21",7.4
235
"1981-08-22",7.9
236
"1981-08-23",3.9
237
"1981-08-24",6.6
238
"1981-08-25",4.6
239
"1981-08-26",7.0
240
"1981-08-27",6.0
241
"1981-08-28",5.5
242
"1981-08-29",8.1
243
"1981-08-30",5.5
244
"1981-08-31",6.2
245
"1981-09-01",8.0
246
"1981-09-02",10.3
247
"1981-09-03",9.8
248
"1981-09-04",9.6
249
"1981-09-05",8.5
250
"1981-09-06",7.5
251
"1981-09-07",11.2
252
"1981-09-08",14.6
253
"1981-09-09",11.7
254
"1981-09-10",7.8
255
"1981-09-11",12.3
256
"1981-09-12",10.1
257
"1981-09-13",11.5
258
"1981-09-14",7.3
259
"1981-09-15",10.9
260
"1981-09-16",14.1
261
"1981-09-17",10.7
262
"1981-09-18",16.9
263
"1981-09-19",10.5
264
"1981-09-20",6.5
265
"1981-09-21",11.0
266
"1981-09-22",6.3
267
"1981-09-23",10.5
268
"1981-09-24",7.2
269
"1981-09-25",7.6
270
"1981-09-26",10.7
271
"1981-09-27",7.8
272
"1981-09-28",9.6
273
"1981-09-29",11.4
274
"1981-09-30",12.4
275
"1981-10-01",8.9
276
"1981-10-02",13.2
277
"1981-10-03",8.6
278
"1981-10-04",6.2
279
"1981-10-05",11.4
280
"1981-10-06",13.2
281
"1981-10-07",14.3
282
"1981-10-08",7.3
283
"1981-10-09",12.9
284
"1981-10-10",7.8
285
"1981-10-11",6.2
286
"1981-10-12",5.6
287
"1981-10-13",10.0
288
"1981-10-14",13.3
289
"1981-10-15",8.3
290
"1981-10-16",10.2
291
"1981-10-17",8.6
292
"1981-10-18",7.3
293
"1981-10-19",10.4
294
"1981-10-20",11.2
295
"1981-10-21",13.2
296
"1981-10-22",11.4
297
"1981-10-23",9.1
298
"1981-10-24",6.6
299
"1981-10-25",8.4
300
"1981-10-26",9.7
301
"1981-10-27",13.2
302
"1981-10-28",12.5
303
"1981-10-29",11.0
304
"1981-10-30",11.0
305
"1981-10-31",11.7
306
"1981-11-01",9.2
307
"1981-11-02",11.5
308
"1981-11-03",13.6
309
"1981-11-04",13.7
310
"1981-11-05",10.4
311
"1981-11-06",11.5
312
"1981-11-07",7.6
313
"1981-11-08",9.6
314
"1981-11-09",14.2
315
"1981-11-10",15.7
316
"1981-11-11",10.5
317
"1981-11-12",10.5
318
"1981-11-13",9.7
319
"1981-11-14",9.5
320
"1981-11-15",11.3
321
"1981-11-16",8.9
322
"1981-11-17",9.4
323
"1981-11-18",11.9
324
"1981-11-19",11.7
325
"1981-11-20",13.4
326
"1981-11-21",12.6
327
"1981-11-22",10.1
328
"1981-11-23",15.8
329
"1981-11-24",13.6
330
"1981-11-25",11.9
331
"1981-11-26",9.9
332
"1981-11-27",12.6
333
"1981-11-28",17.8
334
"1981-11-29",15.0
335
"1981-11-30",13.6
336
"1981-12-01",13.4
337
"1981-12-02",10.5
338
"1981-12-03",14.2
339
"1981-12-04",11.5
340
"1981-12-05",13.0
341
"1981-12-06",15.0
342
"1981-12-07",14.7
343
"1981-12-08",12.6
344
"1981-12-09",12.5
345
"1981-12-10",13.5
346
"1981-12-11",14.8
347
"1981-12-12",17.2
348
"1981-12-13",9.7
349
"1981-12-14",12.1
350
"1981-12-15",12.8
351
"1981-12-16",11.2
352
"1981-12-17",16.4
353
"1981-12-18",15.6
354
"1981-12-19",13.3
355
"1981-12-20",11.0
356
"1981-12-21",11.1
357
"1981-12-22",15.0
358
"1981-12-23",12.8
359
"1981-12-24",15.0
360
"1981-12-25",14.2
361
"1981-12-26",14.0
362
"1981-12-27",15.5
363
"1981-12-28",13.3
364
"1981-12-29",15.6
365
"1981-12-30",15.2
366
"1981-12-31",17.4
367
"1982-01-01",17.0
368
"1982-01-02",15.0
369
"1982-01-03",13.5
370
"1982-01-04",15.2
371
"1982-01-05",13.0
372
"1982-01-06",12.5
373
"1982-01-07",14.1
374
"1982-01-08",14.8
375
"1982-01-09",16.2
376
"1982-01-10",15.8
377
"1982-01-11",19.1
378
"1982-01-12",22.2
379
"1982-01-13",15.9
380
"1982-01-14",13.0
381
"1982-01-15",14.1
382
"1982-01-16",15.8
383
"1982-01-17",24.0
384
"1982-01-18",18.0
385
"1982-01-19",19.7
386
"1982-01-20",25.2
387
"1982-01-21",20.5
388
"1982-01-22",19.3
389
"1982-01-23",15.8
390
"1982-01-24",17.0
391
"1982-01-25",18.4
392
"1982-01-26",13.3
393
"1982-01-27",14.6
394
"1982-01-28",12.5
395
"1982-01-29",17.0
396
"1982-01-30",17.1
397
"1982-01-31",14.0
398
"1982-02-01",14.6
399
"1982-02-02",13.3
400
"1982-02-03",14.8
401
"1982-02-04",15.1
402
"1982-02-05",13.1
403
"1982-02-06",13.6
404
"1982-02-07",19.5
405
"1982-02-08",22.7
406
"1982-02-09",17.2
407
"1982-02-10",13.5
408
"1982-02-11",15.4
409
"1982-02-12",17.0
410
"1982-02-13",19.2
411
"1982-02-14",22.8
412
"1982-02-15",26.3
413
"1982-02-16",18.2
414
"1982-02-17",17.0
415
"1982-02-18",14.8
416
"1982-02-19",12.8
417
"1982-02-20",15.5
418
"1982-02-21",15.6
419
"1982-02-22",13.1
420
"1982-02-23",15.2
421
"1982-02-24",14.1
422
"1982-02-25",12.5
423
"1982-02-26",14.6
424
"1982-02-27",10.4
425
"1982-02-28",13.9
426
"1982-03-01",11.9
427
"1982-03-02",13.5
428
"1982-03-03",9.8
429
"1982-03-04",14.0
430
"1982-03-05",21.5
431
"1982-03-06",19.5
432
"1982-03-07",16.7
433
"1982-03-08",19.1
434
"1982-03-09",11.0
435
"1982-03-10",9.0
436
"1982-03-11",10.0
437
"1982-03-12",14.6
438
"1982-03-13",12.5
439
"1982-03-14",17.2
440
"1982-03-15",19.2
441
"1982-03-16",22.2
442
"1982-03-17",15.7
443
"1982-03-18",14.2
444
"1982-03-19",9.8
445
"1982-03-20",14.0
446
"1982-03-21",17.5
447
"1982-03-22",20.7
448
"1982-03-23",15.6
449
"1982-03-24",13.2
450
"1982-03-25",14.5
451
"1982-03-26",16.8
452
"1982-03-27",17.2
453
"1982-03-28",13.4
454
"1982-03-29",14.2
455
"1982-03-30",14.3
456
"1982-03-31",10.2
457
"1982-04-01",10.4
458
"1982-04-02",12.3
459
"1982-04-03",11.9
460
"1982-04-04",11.2
461
"1982-04-05",8.5
462
"1982-04-06",12.0
463
"1982-04-07",12.4
464
"1982-04-08",12.9
465
"1982-04-09",10.1
466
"1982-04-10",15.0
467
"1982-04-11",13.6
468
"1982-04-12",12.4
469
"1982-04-13",13.6
470
"1982-04-14",16.1
471
"1982-04-15",19.5
472
"1982-04-16",14.2
473
"1982-04-17",9.3
474
"1982-04-18",10.1
475
"1982-04-19",7.4
476
"1982-04-20",8.6
477
"1982-04-21",7.8
478
"1982-04-22",9.1
479
"1982-04-23",13.0
480
"1982-04-24",16.5
481
"1982-04-25",12.9
482
"1982-04-26",6.9
483
"1982-04-27",6.9
484
"1982-04-28",8.7
485
"1982-04-29",10.0
486
"1982-04-30",10.8
487
"1982-05-01",7.5
488
"1982-05-02",6.3
489
"1982-05-03",11.9
490
"1982-05-04",13.8
491
"1982-05-05",11.8
492
"1982-05-06",11.0
493
"1982-05-07",10.1
494
"1982-05-08",8.5
495
"1982-05-09",5.5
496
"1982-05-10",7.6
497
"1982-05-11",8.7
498
"1982-05-12",10.8
499
"1982-05-13",11.2
500
"1982-05-14",9.1
501
"1982-05-15",3.7
502
"1982-05-16",4.6
503
"1982-05-17",6.6
504
"1982-05-18",13.2
505
"1982-05-19",15.2
506
"1982-05-20",7.6
507
"1982-05-21",8.4
508
"1982-05-22",6.0
509
"1982-05-23",8.3
510
"1982-05-24",8.6
511
"1982-05-25",11.1
512
"1982-05-26",12.1
513
"1982-05-27",12.9
514
"1982-05-28",14.0
515
"1982-05-29",12.5
516
"1982-05-30",11.5
517
"1982-05-31",7.0
518
"1982-06-01",7.1
519
"1982-06-02",9.0
520
"1982-06-03",3.1
521
"1982-06-04",2.5
522
"1982-06-05",0.0
523
"1982-06-06",1.6
524
"1982-06-07",2.6
525
"1982-06-08",5.7
526
"1982-06-09",2.3
527
"1982-06-10",4.5
528
"1982-06-11",8.2
529
"1982-06-12",6.9
530
"1982-06-13",7.3
531
"1982-06-14",6.0
532
"1982-06-15",7.3
533
"1982-06-16",7.6
534
"1982-06-17",8.0
535
"1982-06-18",8.0
536
"1982-06-19",6.8
537
"1982-06-20",7.3
538
"1982-06-21",6.2
539
"1982-06-22",6.9
540
"1982-06-23",8.9
541
"1982-06-24",4.0
542
"1982-06-25",1.3
543
"1982-06-26",0.8
544
"1982-06-27",4.3
545
"1982-06-28",7.3
546
"1982-06-29",7.7
547
"1982-06-30",9.0
548
"1982-07-01",4.2
549
"1982-07-02",1.6
550
"1982-07-03",2.6
551
"1982-07-04",3.4
552
"1982-07-05",3.9
553
"1982-07-06",7.0
554
"1982-07-07",7.8
555
"1982-07-08",5.3
556
"1982-07-09",2.4
557
"1982-07-10",2.8
558
"1982-07-11",4.0
559
"1982-07-12",7.5
560
"1982-07-13",7.8
561
"1982-07-14",5.6
562
"1982-07-15",3.3
563
"1982-07-16",5.0
564
"1982-07-17",3.7
565
"1982-07-18",3.9
566
"1982-07-19",5.2
567
"1982-07-22",0.9
568
"1982-07-23",3.5
569
"1982-07-24",6.6
570
"1982-07-25",9.5
571
"1982-07-26",9.0
572
"1982-07-27",3.5
573
"1982-07-28",4.5
574
"1982-07-29",5.7
575
"1982-07-30",5.6
576
"1982-07-31",7.1
577
"1982-08-01",9.7
578
"1982-08-02",8.3
579
"1982-08-03",9.1
580
"1982-08-04",2.8
581
"1982-08-05",2.2
582
"1982-08-06",4.5
583
"1982-08-07",3.8
584
"1982-08-08",3.8
585
"1982-08-09",6.2
586
"1982-08-10",11.5
587
"1982-08-11",10.2
588
"1982-08-12",7.9
589
"1982-08-13",9.0
590
"1982-08-14",9.5
591
"1982-08-15",6.0
592
"1982-08-16",8.2
593
"1982-08-17",9.2
594
"1982-08-18",4.3
595
"1982-08-19",6.6
596
"1982-08-20",9.4
597
"1982-08-21",13.2
598
"1982-08-22",6.6
599
"1982-08-23",5.1
600
"1982-08-24",12.1
601
"1982-08-25",11.2
602
"1982-08-26",8.5
603
"1982-08-27",4.6
604
"1982-08-28",7.0
605
"1982-08-29",14.2
606
"1982-08-30",12.7
607
"1982-08-31",7.6
608
"1982-09-01",4.0
609
"1982-09-02",10.0
610
"1982-09-03",10.5
611
"1982-09-04",5.0
612
"1982-09-05",4.5
613
"1982-09-06",8.2
614
"1982-09-07",4.3
615
"1982-09-08",9.8
616
"1982-09-09",5.8
617
"1982-09-10",5.0
618
"1982-09-11",8.5
619
"1982-09-12",9.0
620
"1982-09-13",3.6
621
"1982-09-14",6.7
622
"1982-09-15",6.7
623
"1982-09-16",10.1
624
"1982-09-17",15.0
625
"1982-09-18",8.9
626
"1982-09-19",5.7
627
"1982-09-20",4.2
628
"1982-09-21",4.0
629
"1982-09-22",5.3
630
"1982-09-23",6.3
631
"1982-09-24",8.5
632
"1982-09-25",11.5
633
"1982-09-26",7.7
634
"1982-09-27",9.2
635
"1982-09-28",7.8
636
"1982-09-29",6.3
637
"1982-09-30",6.3
638
"1982-10-01",8.6
639
"1982-10-02",6.1
640
"1982-10-03",13.2
641
"1982-10-04",9.9
642
"1982-10-05",4.7
643
"1982-10-06",5.8
644
"1982-10-07",14.9
645
"1982-10-08",10.7
646
"1982-10-09",8.6
647
"1982-10-10",9.4
648
"1982-10-11",5.7
649
"1982-10-12",10.9
650
"1982-10-13",13.1
651
"1982-10-14",10.4
652
"1982-10-15",8.2
653
"1982-10-16",9.8
654
"1982-10-17",7.5
655
"1982-10-18",5.8
656
"1982-10-19",9.8
657
"1982-10-20",7.9
658
"1982-10-21",8.7
659
"1982-10-22",10.0
660
"1982-10-23",10.6
661
"1982-10-24",8.0
662
"1982-10-25",10.2
663
"1982-10-26",15.1
664
"1982-10-27",13.9
665
"1982-10-28",9.2
666
"1982-10-29",9.0
667
"1982-10-30",13.2
668
"1982-10-31",7.0
669
"1982-11-01",10.6
670
"1982-11-02",6.9
671
"1982-11-03",9.5
672
"1982-11-04",12.5
673
"1982-11-05",13.6
674
"1982-11-06",17.7
675
"1982-11-07",16.0
676
"1982-11-08",11.3
677
"1982-11-09",10.5
678
"1982-11-10",14.4
679
"1982-11-11",10.3
680
"1982-11-12",9.0
681
"1982-11-13",11.1
682
"1982-11-14",14.5
683
"1982-11-15",18.0
684
"1982-11-16",12.8
685
"1982-11-17",10.7
686
"1982-11-18",9.1
687
"1982-11-19",8.7
688
"1982-11-20",12.4
689
"1982-11-21",12.6
690
"1982-11-22",10.3
691
"1982-11-23",13.7
692
"1982-11-24",16.0
693
"1982-11-25",15.8
694
"1982-11-26",12.1
695
"1982-11-27",12.5
696
"1982-11-28",12.2
697
"1982-11-29",13.7
698
"1982-11-30",16.1
699
"1982-12-01",15.5
700
"1982-12-02",10.3
701
"1982-12-03",10.5
702
"1982-12-04",11.0
703
"1982-12-05",11.9
704
"1982-12-06",13.0
705
"1982-12-07",12.2
706
"1982-12-08",10.6
707
"1982-12-09",13.0
708
"1982-12-10",13.0
709
"1982-12-11",12.2
710
"1982-12-12",12.6
711
"1982-12-13",18.7
712
"1982-12-14",15.2
713
"1982-12-15",15.3
714
"1982-12-16",13.9
715
"1982-12-17",15.8
716
"1982-12-18",13.0
717
"1982-12-19",13.0
718
"1982-12-20",13.7
719
"1982-12-21",12.0
720
"1982-12-22",10.8
721
"1982-12-23",15.6
722
"1982-12-24",15.3
723
"1982-12-25",13.9
724
"1982-12-26",13.0
725
"1982-12-27",15.3
726
"1982-12-28",16.3
727
"1982-12-29",15.8
728
"1982-12-30",17.7
729
"1982-12-31",16.3
730
"1983-01-01",18.4
731
"1983-01-02",15.0
732
"1983-01-03",10.9
733
"1983-01-04",11.4
734
"1983-01-05",14.8
735
"1983-01-06",12.1
736
"1983-01-07",12.8
737
"1983-01-08",16.2
738
"1983-01-09",15.5
739
"1983-01-10",13.0
740
"1983-01-11",10.5
741
"1983-01-12",9.1
742
"1983-01-13",10.5
743
"1983-01-14",11.8
744
"1983-01-15",12.7
745
"1983-01-16",12.7
746
"1983-01-17",11.5
747
"1983-01-18",13.8
748
"1983-01-19",13.3
749
"1983-01-20",11.6
750
"1983-01-21",15.4
751
"1983-01-22",12.4
752
"1983-01-23",16.9
753
"1983-01-24",14.7
754
"1983-01-25",10.6
755
"1983-01-26",15.6
756
"1983-01-27",10.7
757
"1983-01-28",12.6
758
"1983-01-29",13.8
759
"1983-01-30",14.3
760
"1983-01-31",14.0
761
"1983-02-01",18.1
762
"1983-02-02",17.3
763
"1983-02-03",13.0
764
"1983-02-04",16.0
765
"1983-02-05",14.9
766
"1983-02-06",16.2
767
"1983-02-07",20.3
768
"1983-02-08",22.5
769
"1983-02-09",17.2
770
"1983-02-10",15.9
771
"1983-02-11",16.8
772
"1983-02-12",13.8
773
"1983-02-13",12.8
774
"1983-02-14",14.0
775
"1983-02-15",17.5
776
"1983-02-16",21.5
777
"1983-02-17",16.8
778
"1983-02-18",13.6
779
"1983-02-19",14.5
780
"1983-02-20",14.2
781
"1983-02-21",15.7
782
"1983-02-22",19.7
783
"1983-02-23",17.4
784
"1983-02-24",14.4
785
"1983-02-25",16.9
786
"1983-02-26",19.1
787
"1983-02-27",20.4
788
"1983-02-28",20.1
789
"1983-03-01",19.9
790
"1983-03-02",22.0
791
"1983-03-03",20.5
792
"1983-03-04",22.1
793
"1983-03-05",20.6
794
"1983-03-06",15.0
795
"1983-03-07",20.6
796
"1983-03-08",21.5
797
"1983-03-09",16.2
798
"1983-03-10",14.1
799
"1983-03-11",14.5
800
"1983-03-12",21.1
801
"1983-03-13",15.9
802
"1983-03-14",15.2
803
"1983-03-15",13.1
804
"1983-03-16",13.2
805
"1983-03-17",12.5
806
"1983-03-18",15.2
807
"1983-03-19",17.6
808
"1983-03-20",15.5
809
"1983-03-21",16.7
810
"1983-03-22",16.3
811
"1983-03-23",15.1
812
"1983-03-24",12.7
813
"1983-03-25",10.0
814
"1983-03-26",11.4
815
"1983-03-27",12.6
816
"1983-03-28",10.7
817
"1983-03-29",10.0
818
"1983-03-30",13.9
819
"1983-03-31",13.4
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff