]> AND Private Git Repository - ThesisAli.git/commitdiff
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Update by Ali
authorali <ali@ali>
Sat, 28 Feb 2015 22:58:13 +0000 (23:58 +0100)
committerali <ali@ali>
Sat, 28 Feb 2015 22:58:13 +0000 (23:58 +0100)
81 files changed:
CHAPITRE_03.tex
CHAPITRE_04.tex
CHAPITRE_05.tex
Figures/ch3/FirstModel.pdf [deleted file]
Figures/ch3/R1/ASR.pdf [deleted file]
Figures/ch3/R1/CR.pdf [deleted file]
Figures/ch3/R1/EC50.pdf [deleted file]
Figures/ch3/R1/EC95.pdf [deleted file]
Figures/ch3/R1/LT50.pdf [deleted file]
Figures/ch3/R1/LT95.pdf [deleted file]
Figures/ch3/R1/SR.pdf [deleted file]
Figures/ch3/R1/T.eps [deleted file]
Figures/ch3/R1/T.pdf [deleted file]
Figures/ch3/R1/T.ps [deleted file]
Figures/ch3/R2/ASR.pdf [deleted file]
Figures/ch3/R2/CR.pdf [deleted file]
Figures/ch3/R2/EC50.pdf [deleted file]
Figures/ch3/R2/EC95.pdf [deleted file]
Figures/ch3/R2/LT50.pdf [deleted file]
Figures/ch3/R2/LT95.pdf [deleted file]
Figures/ch3/R2/SR.pdf [deleted file]
Figures/ch3/R2/T.eps [deleted file]
Figures/ch3/R2/T.pdf [deleted file]
Figures/ch3/R2/T.ps [deleted file]
Figures/ch3/R3/ASR.pdf [deleted file]
Figures/ch3/R3/CR.pdf [deleted file]
Figures/ch3/R3/EC50.pdf [deleted file]
Figures/ch3/R3/EC95.pdf [deleted file]
Figures/ch3/R3/LT50.pdf [deleted file]
Figures/ch3/R3/LT95.pdf [deleted file]
Figures/ch3/R3/SR.pdf [deleted file]
Figures/ch3/fig21.pdf [deleted file]
Figures/ch3/fig22.pdf [deleted file]
Figures/ch3/fig23.pdf [deleted file]
Figures/ch3/fig24.pdf [deleted file]
Figures/ch3/fig25.pdf [deleted file]
Figures/ch3/fig26.pdf [deleted file]
Figures/ch3/fig27.pdf [deleted file]
Figures/ch3/principles13.pdf [deleted file]
Figures/ch4/GeneralModel.jpg [deleted file]
Figures/ch4/Modelgeneral.pdf [deleted file]
Figures/ch4/R1/ASR.pdf
Figures/ch4/R1/CR.pdf
Figures/ch4/R1/EC50.pdf
Figures/ch4/R1/EC95.pdf
Figures/ch4/R1/LT50.pdf
Figures/ch4/R1/LT95.pdf
Figures/ch4/R1/SR.pdf
Figures/ch4/R1/T.pdf
Figures/ch5/Model.pdf [deleted file]
Figures/ch5/R/ASR-eps-converted-to.pdf [deleted file]
Figures/ch5/R/ASR.eps [deleted file]
Figures/ch5/R/ASR.pdf [deleted file]
Figures/ch5/R/CR-eps-converted-to.pdf [deleted file]
Figures/ch5/R/CR.eps [deleted file]
Figures/ch5/R/CR.pdf [deleted file]
Figures/ch5/R/EC50-eps-converted-to.pdf [deleted file]
Figures/ch5/R/EC50.eps [deleted file]
Figures/ch5/R/EC50.pdf [deleted file]
Figures/ch5/R/EC95-eps-converted-to.pdf [deleted file]
Figures/ch5/R/EC95.eps [deleted file]
Figures/ch5/R/EC95.pdf [deleted file]
Figures/ch5/R/LT50-eps-converted-to.pdf [deleted file]
Figures/ch5/R/LT50.eps [deleted file]
Figures/ch5/R/LT50.pdf [deleted file]
Figures/ch5/R/LT95-eps-converted-to.pdf [deleted file]
Figures/ch5/R/LT95.eps [deleted file]
Figures/ch5/R/LT95.pdf [deleted file]
Figures/ch5/R/LTa-eps-converted-to.pdf [deleted file]
Figures/ch5/R/LTa.eps [deleted file]
Figures/ch5/R/LTa.pdf [deleted file]
Figures/ch5/ex4pcm.jpg [deleted file]
Figures/ch5/ex5pcm.jpg [deleted file]
Figures/ch5/expcm.pdf [deleted file]
Figures/ch5/expcm2.jpg [deleted file]
Figures/ch5/pcm.jpg [deleted file]
Figures/ch5/twosensors.jpg [deleted file]
Thesis.tex
Thesis.toc
bib.bib
entete.tex

index 0d9bea91d3d700d503d0db6b007cc012e881465f..9c638937c1914eba754cd24dee5a6505abad0ddc 100644 (file)
+
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%                          %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%                          %%
-%%       CHAPTER 03        %%
+%%       CHAPTER 04        %%
 %%                          %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 %%                          %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\chapter{Distributed Lifetime Coverage Optimization Protocol in Wireless Sensor Networks}
-\label{ch3}
-
-
-
-\section{Summary}
-\label{ch3:sec:01}
-In this chapter, a Distributed Lifetime Coverage Optimization protocol (DiLCO) to maintain
-the coverage and to improve  the  lifetime  in  wireless sensor  networks  is
-proposed.   The  area of  interest  is first  divided  into  subregions using  a
-divide-and-conquer  method and  then the  DiLCO protocol  is distributed  on the
-sensor nodes  in each  subregion. The DiLCO  combines two  efficient techniques:
-leader election  for each subregion, followed by  an optimization-based planning
-of activity  scheduling decisions for  each subregion. The proposed  DiLCO works
-into rounds during which a small  number of nodes, remaining active for sensing,
-is selected to ensure coverage so as to maximize the lifetime of wireless sensor
-network.   Each  round  consists   of  four  phases:  (i)~Information  Exchange,
-(ii)~Leader Election, (iii)~Decision, and (iv)~Sensing.  The decision process is
-carried out  by a leader node,  which solves an integer  program.  Compared with
-some existing protocols, simulation results  show that the proposed protocol can
-prolong the network lifetime and improve the coverage performance effectively.
-
-
-\section{Description of the DiLCO Protocol}
-\label{ch3:sec:02}
-
-\noindent In this section, we introduce the DiLCO protocol which is distributed on  each subregion  in  the area  of interest.   It  is based  on two  efficient
-techniques: network leader election and sensor activity scheduling for coverage preservation  and  energy  conservation,  applied  periodically  to  efficiently
-maximize the lifetime in the network.
-
-\subsection{Assumptions and Network Model}
-\label{ch3:sec:02:01}
-\noindent  We consider  a sensor  network composed  of static  nodes distributed independently and uniformly at random.  A high density deployment ensures a high
-coverage ratio of the interested area at the start. The nodes are supposed to have homogeneous characteristics from a communication and a processing point of
-view, whereas they  have heterogeneous energy provisions.  Each  node has access to its location thanks,  either to a hardware component (like a  GPS unit), or a
-location discovery algorithm. Furthermore, we assume that sensor nodes are time synchronized in order to properly coordinate their operations to achieve complex sensing tasks~\cite{ref157}. The two sensor nodes have been supposed a neighbors if the euclidean distance between them is at most equal to 2$R_s$. 
+\chapter{Evaluation Tools and Optimization Solvers}
+\label{ch03}
+
+%%-------------------------------------------------------------------------------------------------------%%
+\section{Introduction}
+ Performance evaluation and optimization solvers are important tools and they are received a great interest by many researchers around the world. In the last few years, several intensive researches have been done about the WSNs, and for a large range of real world applications. Therefore, the performance evaluation of algorithms and protocols becomes challenging at various stages of design, development and implementation. In order to perform an efficient deployment, it is desirable to analyze  the performance of the newly designed algorithms and protocols in WSNs.  Performance evaluation tools are became precious means for evaluating the efficiency of algorithms and protocols in WSNs. 
+On the other side, the main challenges in the design of WSNs have given rise to a new hard and complex theoretical problems in optimization area. These optimization problems are related to several topics in WSNs such as coverage, topology control, scheduling, routing, mobility, etc. So, the optimization is very important in WSNs because the limited resources of the sensor nodes. For this reason, several proposed optimization problems are  mathematically formulated so as to optimize the network lifetime and satisfy the application requirements. Therefore, in order to get the optimal solutions for these mathematical optimization problems, the optimization solver is the best candidate tool to solve them. The optimization solver takes mathematical optimization problem descriptions in a certain file format and calculate their optimal solution. 
+
+
+\section{Evaluation Tools}
+Several proposed works in WSNs require to evaluate the power depletion efficiently and accurately for network lifetime prediction. On the other hand, the wrong energy evaluation leads to waste of energy because the sensor nodes might be rendered useless long time before draining their energy. Furthermore, the sensor nodes might die in advance of the expected lifetime. However, evaluation experiments on actual deployed WSN suffer some constraints because the large number of sensor nodes, which are deployed in a hostile and inaccessible environments. Furthermore, the analytical (or theoretical) models might be unrealistic for real world  systems. 
+Therefore, the energy consumption results by simulation and testbed evaluations give an alternative on time, precision and cost. In addition, the researchers can also evaluate and test their proposed works with simulation tools as well as testbed devices.
  
  
+Two main evaluation tools for evaluating and validating large-scale wireless sensor networks performance: testbeds and simulations~\cite{ref176}.
+
 
 
-\indent We consider a boolean disk coverage model which is the most widely used sensor coverage  model in the  literature. Thus, since  a sensor has  a constant
-sensing range $R_s$, every space points  within a disk centered at a sensor with the radius of  the sensing range is said  to be covered by this  sensor. We also
-assume  that  the communication  range $R_c$ is at least twice the sensing range $R_s$ (i.e., $R_c \geq  2R_s$). In  fact, Zhang and Hou~\cite{ref126} proved  that if the transmission range  fulfills the previous hypothesis, a complete coverage of  a convex area implies connectivity among the working nodes in the active mode. We assume that each sensor node can directly transmit its measurements to a mobile sink node. For example, a sink can be an unmanned aerial vehicle (UAV) is flying regularly over the sensor field to collect measurements from sensor nodes. A mobile sink node collects the measurements and transmits them to the base station.
 
 
-During the execution of the DiLCO protocol, two kinds of packet will be used:
+\subsection{Testbed Tools}  %~\cite{ref180}
+     
+The testbed-based evaluations are necessary before deploying the WSN because it provides more  realistic results for the complex physical phenomena constraints of the real world. In this section, only some testbeds are explained. These testbeds enable researchers and programmers to validate the performance of their algorithms and protocols on a physical network. More extensive details about testbeds are available in~\cite{ref178,ref178}. 
 
 \begin{enumerate} [(i)]
 
 \begin{enumerate} [(i)]
-\item \textbf{INFO  packet:} sent  by each  sensor node to  all the  nodes inside a same subregion for information exchange.
-\item \textbf{ActiveSleep packet:} sent by the leader to all the  nodes in its subregion to inform them to stay Active or to go Sleep during the sensing phase.
-\end{enumerate}
 
 
-There are five possible status for each sensor node in the network: 
-%and each sensor node will have five possible status in the network:
-\begin{enumerate}[(i)] 
-\item \textbf{LISTENING:} sensor is waiting for a decision (to be active or not).
-\item \textbf{COMPUTATION:} sensor applies the optimization process as leader.
-\item \textbf{ACTIVE:} sensor is active.
-\item \textbf{SLEEP:} sensor is turned off.
-\item \textbf{COMMUNICATION:} sensor is transmitting or receiving packet.
+\item \textbf{MoteLab:}
+
+MoteLab~\cite{ref181,ref182} is a WSN testbed developed at the electrical and computer engineering department of Harvard University. It is a public testbed, researchers can execute their WSN systems using a web-based interface.  Authored researchers develop and test their applications and protocols on sensor nodes and visualize sensor nodes output via web-based interface.  They are allowed to upload their executable files to run on real mote. Each mote is wall powered and is connected to a central server that offers scheduling, reprogramming and data logging.  It is composed of 190 TMote Sky wireless sensor nodes. The wireless sensor node specifications are a TI MSP430 processor, 10 KB RAM, 1Mb flash, and Chipcon CC2420 radio. Each node is connected to the Ethernet. The users should  be familiar with  NesC programming language because the MoteLab only supports the TinyOS operating system.
+
+\item \textbf{WISBED:}
+
+The WISEBED~\cite{ref183} is a large-scale WSN testbed  with a hierarchical architecture that consists of four major parts: wireless sensor nodes, gateways, portal server, and overlay network. The lowest level of the hierarchy includes WSN and a set of the these sensor nodes are connected to the gateway to provide access to the attached sensor nodes. The gateways are connected to a portal server which not only  supervises the WSN but it also allows to user interaction with the testbed, where each WISBED site includes separate portal server. The principal objectives of WISEBED are: heterogeneous WSN testbed, WSN testbed virtualization, facilitate the system evaluation by end users via variety of interfaces and software environment.
+
+
+
+\item \textbf{IoT-LAB:}
+
+ IoT-LAB testbed~\cite{ref184,ref185} supplies a very large scale infrastructure service  appropriate for evaluating small wireless sensor devices and heterogeneous communicating objects. IoT-LAB includes more than 2700 wireless sensor nodes deployed over six different regions in France.  A different kinds of wireless sensor nodes are available, with different processor architectures (MSP430, STM32 and Cortex-A8) and different wireless chips (802.15.4 PHY @ 800 MHz or 2.4 GHz). Sensor nodes are either mobile or fixed and can be used in different  topologies throughout all the regions. 
+IoT-LAB provides web-based reservation and tooling for protocols and applications development, along with direct command-line access to the platform.  Wireless sensor nodes firmwares can be constructed from  source and deployed on reserved nodes, application activity can be controlled and observed, power consumption or radio interference can be measured using the offered tools. IoT-LAB is part of the FIT experimental platform, a set of supplementary elements that enable experimentation on innovative services for academic and industrial users.
+
+
 \end{enumerate}
 
 \end{enumerate}
 
-\subsection{Primary Point Coverage Model}
-\label{ch3:sec:02:02}
-\indent Instead of working with the coverage area, we consider for each
-sensor a set of points called primary points. We also assume that the
-sensing disk defined by a sensor is covered if all the primary points of
-this sensor are covered. By  knowing the  position (point  center: ($p_x,p_y$))  of  a wireless
-sensor node  and its $R_s$,  we calculate the primary  points directly
-based on the proposed model. We  use these primary points (that can be
-increased or decreased if necessary)  as references to ensure that the
-monitored  region  of interest  is  covered  by  the selected  set  of
-sensors, instead of using all the points in the area.
-
-\indent  We can  calculate  the positions of the selected primary
-points in the circle disk of the sensing range of a wireless sensor
-node (see figure~\ref{fig1}) as follows:\\
-$(p_x,p_y)$ = point center of wireless sensor node\\  
-$X_1=(p_x,p_y)$ \\ 
-$X_2=( p_x + R_s * (1), p_y + R_s * (0) )$\\           
-$X_3=( p_x + R_s * (-1), p_y + R_s * (0)) $\\
-$X_4=( p_x + R_s * (0), p_y + R_s * (1) )$\\
-$X_5=( p_x + R_s * (0), p_y + R_s * (-1 )) $\\
-$X_6= ( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (0)) $\\
-$X_7=( p_x + R_s *  (\frac{\sqrt{2}}{2}), p_y + R_s * (0))$\\
-$X_8=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
-$X_9=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
-$X_{10}=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
-$X_{11}=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
-$X_{12}=( p_x + R_s * (0), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
-$X_{13}=( p_x + R_s * (0), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
-$X_{14}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (\frac{1}{2})) $\\
-$X_{15}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (\frac{1}{2})) $\\
-$X_{16}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (\frac{- 1}{2})) $\\
-$X_{17}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (\frac{- 1}{2})) $\\
-$X_{18}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (0) $\\
-$X_{19}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (0) $\\
-$X_{20}=( p_x + R_s * (0), p_y + R_s * (\frac{1}{2})) $\\
-$X_{21}=( p_x + R_s * (0), p_y + R_s * (-\frac{1}{2})) $\\
-$X_{22}=( p_x + R_s * (\frac{1}{2}), p_y + R_s * (\frac{\sqrt{3}}{2})) $\\
-$X_{23}=( p_x + R_s * (\frac{- 1}{2}), p_y + R_s * (\frac{\sqrt{3}}{2})) $\\
-$X_{24}=( p_x + R_s * (\frac{- 1}{2}), p_y + R_s * (\frac{-\sqrt{3}}{2})) $\\
-$X_{25}=( p_x + R_s * (\frac{1}{2}), p_y + R_s * (\frac{-\sqrt{3}}{2})) $.
-
-\begin{figure}[h!]
-\centering
- \begin{multicols}{3}
-\centering
-\includegraphics[scale=0.20]{Figures/ch3/fig21.pdf}\\~ ~ ~ ~ ~(a)
-\includegraphics[scale=0.20]{Figures/ch3/fig22.pdf}\\~ ~ ~ ~ ~(b)
-\includegraphics[scale=0.20]{Figures/ch3/principles13.pdf}\\~ ~ ~ ~ ~(c) 
-\hfill
-\includegraphics[scale=0.20]{Figures/ch3/fig24.pdf}\\~ ~ ~(d)
-\includegraphics[scale=0.20]{Figures/ch3/fig25.pdf}\\~ ~ ~(e)
-\includegraphics[scale=0.20]{Figures/ch3/fig26.pdf}\\~ ~ ~(f)
-\end{multicols} 
-\caption{Wireless Sensor Node represented by (a)5, (b)9, (c)13, (d)17, (e)21 and (f)25 primary points respectively}
-\label{fig1}
-\end{figure}
-
-
-
-\subsection{Main Idea}
-\label{ch3:sec:02:03}
-\noindent We start  by applying a divide-and-conquer algorithm  to partition the
-area of interest  into smaller areas called subregions and  then our protocol is
-executed   simultaneously  in   each   subregion.
-
-\begin{figure}[ht!]
-\centering
-\includegraphics[scale=0.60]{Figures/ch3/FirstModel.pdf} % 70mm
-\caption{DiLCO protocol}
-\label{FirstModel}
-\end{figure} 
-
-As shown in Figure~\ref{FirstModel}, the  proposed DiLCO protocol is a periodic
-protocol where  each period is  decomposed into 4~phases:  Information Exchange,
-Leader Election,  Decision, and Sensing. For  each period there  will be exactly
-one  cover  set  in charge  of  the  sensing  task.   A periodic  scheduling  is
-interesting  because it  enhances the  robustness  of the  network against  node
-failures. First,  a node  that has not  enough energy  to complete a  period, or
-which fails before  the decision is taken, will be  excluded from the scheduling
-process. Second,  if a node  fails later, whereas  it was supposed to  sense the
-region of  interest, it will only affect  the quality of the  coverage until the
-definition of  a new  cover set  in the next  period.  Constraints,  like energy
-consumption, can be easily taken into consideration since the sensors can update
-and exchange their  information during the first phase.  Let  us notice that the
-phases  before  the sensing  one  (Information  Exchange,  Leader Election,  and
-Decision) are  energy consuming for all the  nodes, even nodes that  will not be
-retained by the leader to keep watch over the corresponding area.
-
-Below, we describe each phase in more details.
-
-\subsubsection{Information Exchange Phase}
-\label{ch3:sec:02:03:01}
-Each sensor node $j$ sends its position, remaining energy $RE_j$, and the number
-of neighbors $NBR_j$  to all wireless sensor nodes in its  subregion by using an
-INFO packet  (containing information on position  coordinates, current remaining
-energy, sensor node ID, number of its one-hop live neighbors) and then waits for
-packets sent by other nodes.  After  that, each node will have information about
-all  the sensor  nodes in  the subregion.   In our  model, the  remaining energy
-corresponds to the time that a sensor can live in the active mode.
-
-\subsubsection{Leader Election Phase}
-\label{ch3:sec:02:03:02}
-This  step includes choosing  the Wireless  Sensor Node  Leader (WSNL), which  will  be  responsible  for executing  the coverage  algorithm. Each subregion in the area of interest  will select its  own  WSNL independently  for each  round.  All the  sensor  nodes cooperate  to select WSNL. The nodes in the  same subregion will  select the leader based on  the received  information from all  other nodes in  the same subregion.  The selection  criteria are,  in order  of importance: larger  number  of neighbors,  larger  remaining energy,  and  then  in case  of equality, larger index. Observations on  previous simulations suggest to use the number  of  one-hop  neighbors  as   the  primary  criterion  to  reduce  energy consumption due to the communications.  
-
-
-\subsubsection{Decision phase}
-\label{ch3:sec:02:03:03}
-The  WSNL will  solve an  integer  program (see  section~\ref{ch3:sec:03}) to select which sensors will be  activated in the following sensing phase to cover  the subregion.  WSNL will send  Active-Sleep packet  to each sensor in the subregion based on the algorithm's results.
-
-
-\subsubsection{Sensing phase}
-\label{ch3:sec:02:03:04}
-Active  sensors  in the  round  will  execute  their sensing  task  to
-preserve maximal  coverage in the  region of interest. We  will assume
-that the cost  of keeping a node awake (or asleep)  for sensing task is
-the same  for all wireless sensor  nodes in the  network.  Each sensor
-will receive  an Active-Sleep  packet from WSNL  informing it  to stay
-awake or to go to sleep  for a time  equal to  the period of  sensing until
-starting a new round.
-
-An outline of the  protocol implementation is given by Algorithm~\ref{alg:DiLCO}
-which describes the execution of a period  by a node (denoted by $s_j$  for a
-sensor  node indexed by  $j$). At  the beginning  a node  checks whether  it has
-enough energy to stay active during the next sensing phase. If yes, it exchanges
-information  with  all the  other  nodes belonging  to  the  same subregion:  it
-collects from each node its position coordinates, remaining energy ($RE_j$), ID,
-and  the number  of  one-hop neighbors  still  alive. Once  the  first phase  is
-completed, the nodes  of a subregion choose a leader to  take the decision based
-on  the  following  criteria   with  decreasing  importance:  larger  number  of
-neighbors, larger remaining energy, and  then in case of equality, larger index.
-After that,  if the sensor node is  leader, it will execute  the integer program
-algorithm (see Section~\ref{ch3:sec:03})  which provides a set of  sensors planned to be
-active in the next sensing phase. As leader, it will send an Active-Sleep packet
-to each sensor  in the same subregion to  indicate it if it has to  be active or
-not.  Alternately, if  the  sensor  is not  the  leader, it  will  wait for  the
-Active-Sleep packet to know its state for the coming sensing phase.
-
-
-\begin{algorithm}[h!]                
-
-  \BlankLine
-  %\emph{Initialize the sensor node and determine it's position and subregion} \; 
-  
-  \If{ $RE_j \geq E_{th}$ }{
-      \emph{$s_j.status$ = COMMUNICATION}\;
-      \emph{Send $INFO()$ packet to other nodes in the subregion}\;
-      \emph{Wait $INFO()$ packet from other nodes in the subregion}\; 
-      %\emph{UPDATE $RE_j$ for every sent or received INFO Packet}\;
-      %\emph{ Collect information and construct the list L for all nodes in the subregion}\;
-      
-      %\If{ the received INFO Packet = No. of nodes in it's subregion -1  }{
-      \emph{LeaderID = Leader election}\;
-      \If{$ s_j.ID = LeaderID $}{
-        \emph{$s_j.status$ = COMPUTATION}\;
-        \emph{$\left\{\left(X_{1},\dots,X_{k},\dots,X_{J}\right)\right\}$ =
-          Execute Integer Program Algorithm($J$)}\;
-        \emph{$s_j.status$ = COMMUNICATION}\;
-        \emph{Send $ActiveSleep()$ to each node $k$ in subregion} \;
-        \emph{Update $RE_j $}\;
-      }          
-      \Else{
-        \emph{$s_j.status$ = LISTENING}\;
-        \emph{Wait $ActiveSleep()$ packet from the Leader}\;
-
-        \emph{Update $RE_j $}\;
-      }  
-      %  }
-  }
-  \Else { Exclude $s_j$ from entering in the current sensing phase}
-  
- %   \emph{return X} \;
-\caption{DiLCO($s_j$)}
-\label{alg:DiLCO}
-
-\end{algorithm}
-
-
-
-\section{Primary Points based Coverage Problem Formulation}
-\label{ch3:sec:03}
-\indent Our model is based on the model proposed by \cite{ref156} where the
-objective is  to find a  maximum number of  disjoint cover sets.   To accomplish
-this goal,  the authors proposed  an integer program which  forces undercoverage
-and overcoverage of targets to become minimal at the same time.  They use binary
-variables $x_{jl}$ to  indicate if sensor $j$ belongs to cover  set $l$.  In our
-model, we consider that the binary variable $X_{j}$ determines the activation of
-sensor $j$  in the sensing  phase. We also  consider primary points  as targets.
-The set of primary points is denoted by $P$ and the set of sensors by $J$.
-
-\noindent Let $\alpha_{jp}$ denote the indicator function of whether the primary
-point $p$ is covered, that is:
-\begin{equation}
-\alpha_{jp} = \left \{ 
-\begin{array}{l l}
-  1 & \mbox{if the primary point $p$ is covered} \\
- & \mbox{by sensor node $j$}, \\
-  0 & \mbox{otherwise.}\\
-\end{array} \right.
-%\label{eq12} 
-\end{equation}
-The  number of  active sensors  that cover  the primary  point $p$  can  then be
-computed by $\sum_{j \in J} \alpha_{jp} * X_{j}$ where:
-\begin{equation}
-X_{j} = \left \{ 
-\begin{array}{l l}
-  1& \mbox{if sensor $j$  is active,} \\
-  0 &  \mbox{otherwise.}\\
-\end{array} \right.
-%\label{eq11} 
-\end{equation}
-We define the Overcoverage variable $\Theta_{p}$ as:
-\begin{equation}
- \Theta_{p} = \left \{ 
-\begin{array}{l l}
-  0 & \mbox{if the primary point}\\
-    & \mbox{$p$ is not covered,}\\
-  \left( \sum_{j \in J} \alpha_{jp} * X_{j} \right)- 1 & \mbox{otherwise.}\\
-\end{array} \right.
-\label{eq13} 
-\end{equation}
-\noindent More  precisely, $\Theta_{p}$ represents  the number of  active sensor
-nodes minus  one that  cover the primary  point~$p$. The  Undercoverage variable
-$U_{p}$ of the primary point $p$ is defined by:
-\begin{equation}
-U_{p} = \left \{ 
-\begin{array}{l l}
-  1 &\mbox{if the primary point $p$ is not covered,} \\
-  0 & \mbox{otherwise.}\\
-\end{array} \right.
-\label{eq14} 
-\end{equation}
-
-\noindent Our coverage optimization problem can then be formulated as follows:
-\begin{equation} \label{eq:ip2r}
-\left \{
-\begin{array}{ll}
-\min \sum_{p \in P} (w_{\theta} \Theta_{p} + w_{U} U_{p})&\\
-\textrm{subject to :}&\\
-\sum_{j \in J}  \alpha_{jp} X_{j} - \Theta_{p}+ U_{p} =1, &\forall p \in P\\
-%\label{c1} 
-%\sum_{t \in T} X_{j,t} \leq \frac{RE_j}{e_t} &\forall j \in J \\
-%\label{c2}
-\Theta_{p}\in \mathbb{N}, &\forall p \in P\\
-U_{p} \in \{0,1\}, &\forall p \in P \\
-X_{j} \in \{0,1\}, &\forall j \in J
-\end{array}
-\right.
-\end{equation}
 
 
-\begin{itemize}
-\item $X_{j}$ :  indicates whether or not the sensor $j$  is actively sensing (1
-  if yes and 0 if not);
-\item $\Theta_{p}$  : {\it overcoverage}, the  number of sensors  minus one that
-  are covering the primary point $p$;
-\item $U_{p}$ : {\it undercoverage},  indicates whether or not the primary point
-  $p$ is being covered (1 if not covered and 0 if covered).
-\end{itemize}
+A testbed is a large evaluation tool. However, to construct a suitable tool with capable architecture,  the information about  wanted requirement is required. Many existing testbeds are developed without obvious definition of requirements. Therefore, the research efforts maybe halted due to the lack in the precisely defined requirements~\cite{ref186}. The tests and experiments on a large number of sensor nodes lead to a scalability challenges and a large amount of data for logging, debugging and measurement output. There are no enough tools so as to deal  (semi-)automatically with the amount of data and supporting the researchers to evaluate their systems.  For evaluating the systems and protocols on a large sensor networks, the simulation tools are the better choice due to the costs for hardware and maintenance~\cite{ref186}.
 
 
-The first group  of constraints indicates that some primary  point $p$ should be
-covered by at least  one sensor and, if it is not  always the case, overcoverage
-and undercoverage  variables help balancing the restriction  equations by taking
-positive values. Two objectives can be noticed in our model. First, we limit the
-overcoverage of primary  points to activate as few  sensors as possible. Second,
-to  avoid   a  lack  of  area   monitoring  in  a  subregion   we  minimize  the
-undercoverage. Both  weights $w_\theta$  and $w_U$ must  be carefully  chosen in
-order to  guarantee that the  maximum number of  points are covered  during each
-period.
-\section{Simulation Results and Analysis}
-\label{ch3:sec:04}
-
-\subsection{Simulation Framework}
-\label{ch3:sec:04:01}
-
-To assess the performance of DiLCO protocol, we have used the discrete event simulator OMNeT++ \cite{ref158} to run different series of simulations. Table~\ref{tablech3} gives the chosen parameters setting.
-
-\begin{table}[ht]
-\caption{Relevant parameters for network initializing.}
-% title of Table
-\centering
-% used for centering table
-\begin{tabular}{c|c}
-% centered columns (4 columns)
-      \hline
-%inserts double horizontal lines
-Parameter & Value  \\ [0.5ex]
-   
+Several sensor nodes testbeds are found  in order to support WSNs research efforts, but only few of them provide a common evaluation goals for  a large number of users~\cite{ref187,ref181}. However, all the WSN testbeds are shared in general properties such as: the number of sensors are at most hundreds and sometimes only tens of nodes are involved in the typical testbeds; the sensor nodes are placed in a static grid topology; metrics and debug information are obtained via wired connections. Therefore, the WSN testbeds impose strong limitations on the WSNs in terms of size and topology.  Moreover, the cost of performing an experiment on a testbed is much higher than on a simulation because setting-up the experiments, instrumenting the nodes, gathering the metrics on the performance, and so on are so expensive. Therefore, the  simulation tools stay the most practical tools to obtain a feedback on the performance of a new solution~\cite{ref180}.
 
 
-\hline
-% inserts single horizontal line
-Sensing  Field  & $(50 \times 25)~m^2 $   \\
-% inserting body of the table
-%\hline
-Nodes Number &  50, 100, 150, 200 and 250~nodes   \\
-%\hline
-Initial Energy  & 500-700~joules  \\  
-%\hline
-Sensing Period & 60 Minutes \\
-$E_{th}$ & 36 Joules\\
-$R_s$ & 5~m   \\     
-%\hline
-$w_{\Theta}$ & 1   \\
-% [1ex] adds vertical space
-%\hline
-$w_{U}$ & $|P|^2$
-%inserts single line
-\end{tabular}
-\label{tablech3}
-% is used to refer this table in the text
-\end{table}
 
 
-Simulations with five  different node densities going from  50 to 250~nodes were
-performed  considering  each  time  25~randomly generated  networks,  to  obtain
-experimental results  which are relevant. The  nodes are deployed on  a field of
-interest of $(50 \times 25)~m^2 $ in such a way that they cover the field with a
-high coverage ratio.
 
 
+\subsection{Simulation Tools}
+% take the simulators from paper "Limitations of simulation tools for large-scale wireless sensor networks" \cite{ref179}
 
 
-\subsection{Modeling  Language and Optimization Solver}
-\label{ch3:sec:04:02}
-The modeling  language for Mathematical Programming (AMPL)~\cite{AMPL} is  employed to generate the integer program instance  in a  standard format, which  is then read  and solved  by the optimization solver  GLPK (GNU  linear Programming Kit  available in  the public domain) \cite{glpk} through a Branch-and-Bound method.
+The simulation tools are widely used due to the complexity and difficulty to apply real testbed for WSNs experiments. The simulation tools permit users to evaluate and validate their systems and protocols on WSNs before the deployment, so that  the correction actions are reduced before operating  the WSN, and the large scale evaluation of systems, applications, and protocols are  practicable in a flexible environment~\cite{ref180}.
+Most of the papers on the wireless sensor networks use the simulation tools to evaluate the performance of their algorithms and protocols and this is a confirmation to consider them as predominant techniques used to study and analyze the performance and potency of a wireless senor networks. Several variety of simulation tools are available for WSNs, which vary in their characteristics and capabilities, so in this section, only some simulators are explained, and for more details about simulators are available in~\cite{ref188,ref189,ref190}.
 
 
-\subsection{Energy Consumption Model}
-\label{ch3:sec:04:03}
+\begin{enumerate} [(i)]
 
 
-\indent In this dissertation, we used an energy consumption model proposed by~\cite{ref111} and based on \cite{ref112} with slight  modifications.  The energy consumption for  sending/receiving the packets is added, whereas the  part related to the sensing range is removed because we consider a fixed sensing range.
+\item \textbf{NS2:} 
 
 
-\indent For our energy consumption model, we refer to the sensor node Medusa~II which uses an Atmels  AVR ATmega103L microcontroller~\cite{ref112}. The typical architecture  of a  sensor  is composed  of four  subsystems: the  MCU subsystem which is capable of computation, communication subsystem (radio) which is responsible  for transmitting/receiving messages, the  sensing subsystem that collects  data, and  the  power supply  which  powers the  complete sensor  node \cite{ref112}. Each  of the first three subsystems  can be turned on or  off depending on  the current status  of the sensor.   Energy consumption (expressed in  milliWatt per second) for  the different status of  the sensor is summarized in Table~\ref{table1}.
+The Network Simulator-2 (ns-2)~\cite{ref191,ref192} is an open source, discrete event network simulator. The major goal of ns-2 is to provide a simulation environment to wired as well as wireless networks to simulate a different protocols with different network topologies. The ns-2 is constructed using C++ and the simulation interface is provided via OTcl, an object-oriented dialect of Tcl. The network topology is determined by writing OTcl scripts by the users, and then the main program of ns-2 simulates that topology with a fixed parameters.  ns-2 provides a graphical view of the network by using network animator(NAM). NAM interface includes control features that permit to the researchers to forward, pause, stop and control the simulation. ns-2 is the most common and widely used network simulator for scientific  research work.   
 
 
-\begin{table}[ht]
-\caption{The Energy Consumption Model}
-% title of Table
-\centering
-% used for centering table
-\begin{tabular}{|c|c|c|c|c|}
-% centered columns (4 columns)
-      \hline
-%inserts double horizontal lines
-Sensor status & MCU & Radio & Sensing & Power (mW) \\ [0.5ex]
-\hline
-% inserts single horizontal line
-LISTENING & on & on & on & 20.05 \\
-% inserting body of the table
-\hline
-ACTIVE & on & off & on & 9.72 \\
-\hline
-SLEEP & off & off & off & 0.02 \\
-\hline
-COMPUTATION & on & on & on & 26.83 \\
-%\hline
-%\multicolumn{4}{|c|}{Energy needed to send/receive a 1-bit} & 0.2575\\
- \hline
-\end{tabular}
+The ns-3 project~\cite{ref193} was started in mid 2006 and is still under intensive development. Like ns-2, ns-3 is an open source, discrete-event network simulator targeted essentially for research and educational use~\cite{ref195}. The ns-3, is a new simulator that is considered as  a final replacement of ns-2, not an extension~\cite{ref194}. The ns-3 supports both simulation and emulation using sockets. It also provides a tracing facility in order to help users in debugging.
 
 
-\label{table1}
-% is used to refer this table in the text
-\end{table}
 
 
-\indent For the sake of simplicity we ignore  the energy needed to turn on the radio, to start up the sensor node, to move from one status to another, etc. Thus, when a sensor becomes active (i.e., it has already chosen its status), it can turn  its radio  off to  save battery. The value of energy spent to send a 1-bit-content message is  obtained by using  the equation in ~\cite{ref112} to calculate  the energy cost for transmitting  messages and  we propose  the same value for receiving the packets. The energy  needed to send or receive a 1-bit packet is equal to $0.2575~mW$.
 
 
+\item \textbf{OMNeT++:}
 
 
-%We have used an energy consumption model, which is presented in chapter 1, section \ref{ch1:sec9:subsec2}. 
+OMNeT++ (Objective Modular Network Test-bed) is an open-source, free, discrete-event, component-based C++ simulation library, modular simulation framework for building network simulators~\cite{ref196,ref203}. In spite of OMNeT++ is not a network simulator itself, it is acquired a global popularity as a network simulation platform in both scientific and industrial communities. The major goal behind development of OMNeT++ is to provide a strong simulation tool which can be used by the academic and commercial researchers for simulating different types of networks in a distributed and parallel way~\cite{ref197}. OMNeT++ has extensive graphical user interface (GUI), intelligence support, and it runs on Windows, Linux, Mac OS X, and other Unix-like systems. It provides a component architecture for models. Components (modules) are programmed in C++, then assembled into larger components and models using a high-level language (NED)~\cite{ref198}. Several simulation frameworks can be used with OMNeT++ such as INET, INETMANET, MiXiM, and Castalia, where each of them provides a set of simulation facilities and can be used for a specific applications.  
 
 
-The initial energy of each node  is randomly set in the interval $[500;700]$.  A sensor node  will not participate in the  next round if its  remaining energy is less than $E_{th}=36~\mbox{Joules}$, the minimum  energy needed for the  node to stay alive  during one round.  This value has  been computed by  multiplying the energy consumed in  active state (9.72 mW) by the time in second  for one round (3600 seconds), and  adding  the energy  for  the pre-sensing  phases. According to the  interval of initial energy, a sensor may be alive during at most 20 rounds.
+\item \textbf{OPNET:}
 
 
+OPNET (Optimized Network Engineering tool)~\cite{ref199,ref200,ref201} is the first commercial simulation tool that developed in 1987 for communication networks. It is a discrete event, object-oriented, general purpose network simulator, which is widely used in industry. It uses C and Java languages. It provides a comprehensive development environment for the specification, simulation, configuration, and performance analysis of communication network. OPNET permits researchers in developing the various models by means of a graphical interface and provides different types of tools such as Probe Editor, Filter Tool, and Animation Viewer for data collection to model graph, and animate the resulting output. Unlike NS-2 , OPNET provides modeling for different sensor-specific hardware, such as physical-link transceivers and antennas. It includes sensor-specific models such as ad-hoc connectivity, mobility of nodes, node failure models, modeling of power-consumption, etc. The major drawback of OPENT is that it is commercial and the license is very expensive. 
 
 
-\subsection{Performance Metrics}
-\label{ch3:sec:04:04}  
-In the simulations,  we introduce the following performance metrics to evaluate
-the efficiency of our approach:
 
 
-\begin{enumerate}[i)]
-%\begin{itemize}
-\item {{\bf Network Lifetime}:} we define the network lifetime as the time until
-  the  coverage  ratio  drops  below  a  predefined  threshold.   We  denote  by
-  $Lifetime_{95}$ (respectively $Lifetime_{50}$) the amount of time during which
-  the  network can  satisfy an  area coverage  greater than  $95\%$ (respectively
-  $50\%$). We assume that the sensor  network can fulfill its task until all its
-  nodes have  been drained of their  energy or it  becomes disconnected. Network
-  connectivity  is crucial because  an active  sensor node  without connectivity
-  towards a base  station cannot transmit any information  regarding an observed
-  event in the area that it monitors.
-     
-\item {{\bf Coverage Ratio (CR)}:} it measures how well the WSN is able to 
-  observe the area of interest. In our case, we discretized the sensor field
-  as a regular grid, which yields the following equation to compute the
-  coverage ratio: 
-\begin{equation*}
-\scriptsize
-\mbox{CR}(\%) = \frac{\mbox{$n$}}{\mbox{$N$}} \times 100.
-\end{equation*}
-where  $n$ is  the number  of covered  grid points  by active  sensors  of every
-subregions during  the current  sensing phase  and $N$ is the total number  of grid
-points in  the sensing field. In  our simulations, we have  a layout of  $N = 51
-\times 26 = 1326$ grid points.
-
-\item {{\bf  Energy Consumption}:}  energy consumption (EC)  can be seen  as the
-  total amount of  energy   consumed   by   the   sensors   during   $Lifetime_{95}$   
-  or $Lifetime_{50}$, divided  by the number of periods.  Formally, the computation
-  of EC can be expressed as follows:
-  \begin{equation*}
-    \scriptsize
-    \mbox{EC} = \frac{\sum\limits_{m=1}^{M} \left( E^{\mbox{com}}_m+E^{\mbox{list}}_m+E^{\mbox{comp}}_m  
-      + E^{a}_m+E^{s}_m \right)}{M},
-  \end{equation*}
-
-where $M$  corresponds to  the number  of periods.  The  total amount  of energy
-consumed by the  sensors (EC) comes through taking  into consideration four main
-energy   factors.  The  first   one,  denoted   $E^{\scriptsize  \mbox{com}}_m$,
-represents  the  energy  consumption  spent   by  all  the  nodes  for  wireless
-communications  during period  $m$.  $E^{\scriptsize  \mbox{list}}_m$,  the next
-factor, corresponds  to the energy consumed  by the sensors  in LISTENING status
-before  receiving   the  decision  to  go   active  or  sleep   in  period  $m$.
-$E^{\scriptsize \mbox{comp}}_m$  refers to the  energy needed by all  the leader
-nodes  to solve the  integer program  during a  period.  Finally,  $E^a_{m}$ and
-$E^s_{m}$ indicate the energy consumed by the whole network in the sensing phase
-(active and sleeping nodes).
-
-\item{{\bf Number of Active Sensors Ratio(ASR)}:} It is important to have as few active nodes as possible in each round,
-in  order to  minimize  the communication  overhead  and maximize  the
-network lifetime. The Active Sensors Ratio is defined as follows:
-\begin{equation*}
-\scriptsize
-\mbox{ASR}(\%) =  \frac{\sum\limits_{r=1}^R \mbox{$A_r$}}{\mbox{$S$}} \times 100 .
-\end{equation*}
-Where: $A_r$ is the number of active sensors in the subregion $r$ during current period, $S$ is the total number of sensors in the network, and $R$ is the total number of the subregions in the network.
-
-\item {{\bf Execution Time}:} a  sensor  node has  limited  energy  resources  and computing  power, therefore it is important that the proposed algorithm has the shortest possible execution  time. The energy of  a sensor node  must be mainly used   for  the  sensing   phase,  not   for  the   pre-sensing  ones. In this dissertation, the original execution time  is computed on a laptop  DELL with Intel Core~i3~2370~M (2.4 GHz)  processor (2  cores) and the  MIPS (Million Instructions  Per Second) rate equal to 35330. To be consistent  with the use of a sensor node with Atmels AVR ATmega103L  microcontroller (6 MHz) and  a MIPS rate  equal to 6 to  run the optimization   resolution,   this  time   is   multiplied   by  2944.2   $\left( \frac{35330}{2} \times  \frac{1}{6} \right)$.  
-  
-\item {{\bf Stopped simulation runs}:} A simulation ends  when the  sensor network becomes disconnected (some nodes are dead and are not able to send information to the base station). We report the number of simulations that are stopped due to network disconnections and for which round it occurs ( in chapter 3, period consists of one round).
+\item \textbf{GloMoSim:}  
 
 
-\end{enumerate}
+GloMoSim(Global Mobile System Simulator)~\cite{ref202,ref204,ref205} is an open source, well documented source code, and scalable simulation environment developed in 1998 for mobile wireless networks. It is used a Parsec, which is an extension of C for parallel programming. The main feature of GloMoSim simulator that differentiate it from other WSN simulators in that it uses parallel environment. The parallel network simulation is hard due to the communication among the simulated nodes on different machines. Several types of protocols and models are found in GloMoSim including TCP,
+IEEE 802.11 CSMA/CA, MAC, UDP, HTTP, FTP, CBR, ODMRP, WRP, DSR, MACA, Telnet, AODV, etc. It uses a VT visualization tool to observe and debug these protocols. GloMoSim is designed to be extensible, with all protocols implemented as modules in the GloMoSim library.  It also uses an object-oriented approach; where, it dividing the nodes, and each object is responsible for executing one layer in the protocol stack of every node for its given division. This mechanism minimizes the overhead of a large scale sensor network.
 
 
+GloMoSim supports a wide range of protocols and its configuration is easy. Due to the parallel processing nature, It supplies a fast simulation. GloMoSim provides efficient simulation for IP networks whilst it does not support accurate simulation for many sensor network applications. Since 2000, GloMoSim has been stopping releasing updates. It is currently updated as a commercial product called QualNet.      
+      
 
 
+      
+ \item \textbf{SENSE:}  
+The SENSE (Sensor Network Simulator and Emulator)~\cite{ref206} is an open source, general purpose, discrete event, efficient, easy to use, and powerful network simulator. The main objective of designing this simulator is to support the various requirements of the users by taking into consideration the extensibility, reusability, and scalability. The SENSE  uses object-oriented approach and J-Sim's simulator component based architecture. It support the parallelization with a poor support for users.
+The simulation models are released from interdependency that usually found in an object-oriented architecture by a component-port model, which is provided by SENSE. This permits independence among components and enables the extensibility and reusability. An another level of reusability by the extensive use of C++ template, where a component is usually declared as a template class so that it handles different types of data. The designers are improved the scalability through using the same packet in the memories of all sensors, assuming that the packet should not be changed. The core of the simulator still lacks a general set of models, routing protocols and a wide variety of configuration templates for WSNs. In addition, visualization tool is desirable, which can quickly discover the bugs during the simulation.
 
 
-\subsection{Performance Analysis for Different Subregions}
-\label{ch3:sec:04:05}
-  
-In this subsection, we are studied the performance of our DiLCO protocol for a different number of subregions (Leaders).
-The DiLCO-1 protocol is a centralized approach on all the area of the interest, while  DiLCO-2, DiLCO-4, DiLCO-8, DiLCO-16 and DiLCO-32 are distributed on two, four, eight, sixteen, and thirty-two subregions respectively. We did not take the DiLCO-1 protocol in our simulation results because it need high execution time to give the decision leading to consume all it's energy before producing the solution for optimization problem.
-
-\begin{enumerate}[i)]
-\item {{\bf Coverage Ratio}}
-%\subsubsection{Coverage Ratio} 
-%\label{ch3:sec:04:02:01}
-In this experiment, Figure~\ref{Figures/ch3/R1/CR} shows the average coverage ratio for 150 deployed nodes.  
-\parskip 0pt    
-\begin{figure}[h!]
-\centering
- \includegraphics[scale=0.6] {Figures/ch3/R1/CR.pdf} 
-\caption{Coverage ratio for 150 deployed nodes}
-\label{Figures/ch3/R1/CR}
-\end{figure} 
-It can be seen that DiLCO protocol (with 4, 8, 16 and 32 subregions) gives nearly similar coverage ratios during the first thirty rounds.  
-DiLCO-2 protocol gives near similar coverage ratio with other ones for first 10 rounds and then decreased until the died of the network in the round $18^{th}$ because it consumes more energy with the effect of the network disconnection. 
-As shown in the figure ~\ref{Figures/ch3/R1/CR}, as the number of subregions increases,  the coverage preservation for area of interest increases for a larger number of rounds. Coverage ratio decreases when the number of rounds increases due to dead nodes. Although some nodes are dead, thanks to  DiLCO-8,  DiLCO-16 and  DiLCO-32 protocols,  other nodes are  preserved to ensure the coverage. Moreover, when we have a dense sensor network, it leads to maintain the  coverage for a larger number of rounds. DiLCO-8,  DiLCO-16 and  DiLCO-32 protocols are slightly more efficient than other protocols, because they subdivide the area of interest into 8, 16 and 32~subregions; if one of the subregions becomes disconnected, the coverage may be still ensured in the remaining subregions.
-
-\item {{\bf Active Sensors Ratio}}
-%\subsubsection{Active Sensors Ratio} 
- Figure~\ref{Figures/ch3/R1/ASR} shows the average active nodes ratio for 150 deployed nodes.
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R1/ASR.pdf}  
-\caption{Active sensors ratio for 150 deployed nodes }
-\label{Figures/ch3/R1/ASR}
-\end{figure} 
-The results presented in figure~\ref{Figures/ch3/R1/ASR} show the increase in the number of subregions led to increase in the number of active nodes. The DiLCO-16 and DiLCO-32 protocols have a larger number of active nodes but it preserve the coverage for a larger number of rounds. The advantage of the DiLCO-16 and DiLCO-32 protocols are that even if a network is disconnected in one subregion, the other ones usually continues the optimization process, and this extends the lifetime of the network.
-
-\item {{\bf The percentage of stopped simulation runs}}
-%\subsubsection{The percentage of stopped simulation runs}
-Figure~\ref{Figures/ch3/R1/SR} illustrates the percentage of stopped simulation runs per round for 150 deployed nodes. 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R1/SR.pdf} 
-\caption{Percentage of stopped simulation runs for 150 deployed nodes }
-\label{Figures/ch3/R1/SR}
-\end{figure} 
+\item \textbf{TOSSIM:}  
+TOSSIM~\cite{ref205,ref207,ref208} is a discrete event simulator for TinyOS sensor networks, where the TinyOS application can be compiled on the TOSSIM framework, which executes on a computer rather than on the mote. This permits to the users to test, debug, and analyze their algorithms and protocols in a controlled and repeatable environment. The users can check up their codes using debuggers and other development tools during executing them on the computer. TOSSIM is regarded as an emulator rather than a simulator because its ability to simulate both the software and hardware of the mote. TOSSIM is especially designed for TinyOS applications to be run on Berkeley MICA Motes. TOSSIM have to develop four requirements:  scalability, completeness, fidelity and bridging. It should be manage a large number of sensor nodes with different configurations to be scalable. For completeness, it has to capture behavior and interactions of a system at a different of levels.  The simulator should capture behavior of a network  with accurate timing of interactions on a mote and among motes for fidelity. Due to the simulated code executes directly in a real mote, therefore the bridging requirement is met. Two programming interfaces are supported by TOSSIM: Python and C++.  C++ interface transforms the code easily from one form to another. Python permits interacting with a executing simulation dynamically, like a powerful debugger.  TOSSIM provides a high fidelity and scalable simulation of a complete TinyOS sensor network. It visualizes and interacts with executing simulations using GUI tool and TinyViz . The users can develop new visualizations and interfaces for TinyViz using simple plug-in model.  The simulator's effectiveness for analyzing low level protocols is decreased due to inaccuracies of probabilistic bit error model. Moreover, TOSSIM is only supported by MICA motes platform.
 
 
-It can be observed that the DiLCO-2  is the approach which stops first because it applied the optimization on only two subregions for the area of interest that is why it is first exhibits network disconnections.
-Thus, as explained previously, in case of the DiLCO-16 and DiLCO-32 with several subregions, the optimization effectively continues as long as a network in a subregion is still connected. This longer partial coverage optimization participates in extending the network lifetime. 
 
 
-\item {{\bf The Energy Consumption}}
-%\subsubsection{The Energy Consumption}
-We measure the energy consumed by the sensors during the communication, listening, computation, active, and sleep modes for different network densities and compare it for different subregions.  Figures~\ref{Figures/ch3/R1/EC95} and ~\ref{Figures/ch3/R1/EC50} illustrate the energy consumption for different network sizes for $Lifetime95$ and $Lifetime50$. 
+\item \textbf{GTSNetS:}  
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R1/EC95.pdf} 
-\caption{Energy Consumption for Lifetime95}
-\label{Figures/ch3/R1/EC95}
-\end{figure} 
+GTSNetS (Georgia Tech Sensor Network Simulator)~\cite{ref209,ref210} is an open-source, C++, large scale, event-driven simulation tool to evaluate the applications, algorithms and protocols. It is  capable of  evaluating  the impact of various architectural choices and designs on the lifetime and performance of a particular sensor network. GTSNetS is constructed on the top of the Georgia Tech Network Simulator (GTNetS), where it uses and expands all the design choices of the existing GTNetS simulator. The main feature of GTSNetS simulator in that it is support several thousand nodes.
+It is organized efficiently in a modular to support large scale WSNs. It is designed to be easy to use by the users in order to simulate a certain sensor network. Several choices is provided by GTSNetS to users to select from different alternatives such as: network protocols, energy models, applications, and tracing options. Furthermore, the existing models of the simulator can simply extended or replaced according to user need. The network lifetime can be tracked by GTSNetS and the energy consumption of each unit can be evaluated. Therefore, the users can study the impact of different architectural choices on lifetime and energy consumption.  The mobility is inherited from GTNetS simulator, so it provides a specification of mobile sensor nodes, moving sensed objects, as well as a mobile base station.
+GTSNetS provides graphical user interface and extensive packet tracing. The stopped updating and maintaining the project since Oct, 2008 represents the main disadvantage of this simulator.
+
+
+
+\end{enumerate}
 
 
-The results show that DiLCO-16 and DiLCO-32 are the most competitive from the energy consumption point of view but as the network size increase the energy consumption increase compared with DiLCO-2,  DiLCO-4, and DiLCO-8. The other approaches have a high energy consumption due to the energy consumed during the different modes of the sensor node.\\
  
  
-As shown in Figures~\ref{Figures/ch3/R1/EC95} and ~\ref{Figures/ch3/R1/EC50}, DiLCO-2 consumes more energy than the other versions of DiLCO, especially for large sizes of network. This is easy to understand since the bigger the number of sensors involved in the integer program, the larger the time computation to solve the optimization problem as well as the higher energy consumed during the communication.  
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R1/EC50.pdf} 
-\caption{Energy Consumption for Lifetime50}
-\label{Figures/ch3/R1/EC50}
-\end{figure} 
-In fact,  a distributed method on the subregions greatly reduces the number of communications, the time of listening and computation so thanks to the partitioning of the initial network in several independent subnetworks. 
-
-\item {{\bf Execution Time}}
-%\subsubsection{Execution Time}
-In this experiment, the execution time of the our distributed optimization approach has been studied. Figure~\ref{Figures/ch3/R1/T} gives the average execution times in seconds for the decision phase (solving of the optimization problem) during one round. They are given for the different approaches and various numbers of sensors. The original execution time is computed as described in section \ref{ch3:sec:04:02}.
-%The original execution time is computed on a laptop DELL with intel Core i3 2370 M (2.4 GHz) processor (2 cores) and the MIPS (Million Instructions Per Second) rate equal to 35330. To be consistent with the use of a sensor node with Atmels AVR ATmega103L microcontroller (6 MHz) and a MIPS rate equal to 6 to run the optimization resolution, this time is multiplied by 2944.2 $\left( \frac{35330}{2} \times 6\right)$ and reported on Figure~\ref{fig8} for different network sizes.
-
-\begin{figure}[h!]
+In this section, we investigated some simulation tools for WSNs. Since  a large number of simulation tools available for WSNs, which have different characteristics and capabilities,  so it seems to be hard to decide which simulation tool to choose and which one is more appropriate for large-scale WSNs. Table~\ref{table:1} illustrates a comparison among some simulation tools~\cite{ref179}.  According to the table~\ref{table:1}, OMNeT++ seems to be a good candidate to be used as an evaluation tool for our proposed protocols in this dissertation. OMNeT++ is a free, extensible, and scalable simulator. It provides an easy-to-use interface using C++ language. Furthermore, several frameworks can be used with OMNeT++ such as INET, INETMANET, Veins, MiXiM, and castalia to support various needs of users like  mobility, Internet, vehicular, and sensor networks.
+
+
+
+\begin{table}[h!]
 \centering
 \centering
-\includegraphics[scale=0.6]{Figures/ch3/R1/T.pdf}  
-\caption{Execution Time (in seconds)}
-\label{Figures/ch3/R1/T}
-\end{figure} 
+\caption{Comparison among some simulation tools}
 
 
-We can see from figure~\ref{Figures/ch3/R1/T}, that the DiLCO-32 has very low execution times in comparison with other DiLCO versions, because it distributed on larger number of small subregions.  Conversely, DiLCO-2 requires to solve an optimization problem considering half the nodes in each subregion presents high execution times.
+\begin{tabular}{ |>{\centering\arraybackslash}m{0.7in}||>{\centering\arraybackslash}m{0.8in}|>{\centering\arraybackslash}m{1in}|>{\centering\arraybackslash}m{1.2in}|>{\centering\arraybackslash}m{0.8in}|>{\centering\arraybackslash}m{0.8in}|  }
+ \hline
+ \multirow{2}{*} {\begin{minipage}{0.7in}\centering \textbf{Simulation Tool}\end{minipage}} %{\textbf{Simulation Tool} } 
+ &\multicolumn{5}{|c|}{\textbf{Features of Simulation Tool}} \\
+ \cline{2-6}
+   &\textbf{Interface} &\textbf{Accessibility \& User Support}&\textbf{Availability of WSNs Modules}&\textbf{Extensibility}&\textbf{Scalability}\\
+ \hline   \hline
+ \textbf{ns -2} & C++/OTcl with limited visual support & Open source with Good user support & Energy Model, battery model, Mobility & Excellent & Limited \\  
 
 
-The DiLCO-32 protocol has more suitable times at the same time it turn on redundant nodes more.  We think that in distributed fashion the solving of the  optimization problem in a subregion can be tackled by sensor nodes. Overall, to be able to deal with very large networks,  a distributed method is clearly required.
+\hline
 
 
-\item {{\bf The Network Lifetime}}
-%\subsubsection{The Network Lifetime}
-In figure~\ref{Figures/ch3/R1/LT95} and \ref{Figures/ch3/R1/LT50}, network lifetime, $Lifetime95$ and $Lifetime50$ respectively, are illustrated for different network sizes. 
+ \textbf{OMNeT++} & C++/NED with good GUI and debugging support & Free for academic use, license for commercial use with Good user support & Energy Model, battery model, accurate wireless channel and radio modeling & Excellent & Large-scale \\  
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R1/LT95.pdf}  
-\caption{Network Lifetime for $Lifetime95$}
-\label{Figures/ch3/R1/LT95}
-\end{figure} 
-We see that DiLCO-2 protocol results in execution times that quickly become unsuitable for a sensor network as well as the energy consumed during the communication seems to be huge because it is distributed over only two subregions.
+\hline
 
 
-As highlighted by figures~\ref{Figures/ch3/R1/LT95} and \ref{Figures/ch3/R1/LT50}, the network lifetime obviously increases when the size of the network increases, with DiLCO-16 protocol that leads to the larger lifetime improvement. By choosing the best suited nodes, for each round, to cover the area of interest and by
-letting the other ones sleep in order to be used later in next rounds, DiLCO-16 protocol efficiently extends the network lifetime because the benefit from the optimization with 16 subregions is better than DiLCO-32 protocol with 32 subregion. DilCO-32 protocol puts in active mode a larger number of sensor nodes especially near the borders of the subdivisions.
+ \textbf{OPNET} & C or C++/Java with Excellent GUI and debugging support & Free for academic use, license for commercial use with Excellent user support & Energy model, battery model, Routing protocols (directed diffusion), Mobility, node failure model & Excellent & Moderate \\  
 
 
-Comparison shows that DiLCO-16 protocol, which uses 16 leaders, is the best one because it is used less number of active nodes during the network lifetime compared with DiLCO-32 protocol. It also means that distributing the protocol in each node and subdividing the sensing field into many subregions, which are managed independently and simultaneously, is the most relevant way to maximize the lifetime of a network.
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R1/LT50.pdf}  
-\caption{Network Lifetime for $Lifetime50$}
-\label{Figures/ch3/R1/LT50}
-\end{figure} 
 
 
-\end{enumerate}
+\hline
 
 
-\subsection{Performance Analysis for Primary Point Models}
-\label{ch3:sec:04:06}
+ \textbf{GloMoSim} & Parsec (C-Based) with limited visual support & Open source with Poor user support & Sensor network specific MAC and network protocols, mobility model & Good & Large-scale \\  
 
 
-In this section, we are studied the performance of DiLCO~16 approach for a different primary point models. The objective of this comparison is to select the suitable primary point model to be used by DiLCO protocol. 
+\hline
 
 
-In this comparisons, DiLCO-16 protocol are used with five models which are called Model~1( With 5 Primary Points), Model~2 ( With 9 Primary Points), Model~3 ( With 13 Primary Points), Model~4 ( With 17 Primary Points), and Model~5 ( With 21 Primary Points). 
+ \textbf{SENSE} & C++ with good GUI support & Open source with Poor user support & Energy models, battery models, Mobility, modeling of physical environment & Excellent & Large-scale \\  
 
 
+\hline
 
 
-\begin{enumerate}[i)]
+ \textbf{GTSNetS} & C++ with good user interface \& visual support & Open source with good user support & Energy model, battery model, accuracy model, model applications, Mobility & Excellent & Very large-scale \\
 
 
-\item {{\bf Coverage Ratio}}
-%\subsubsection{Coverage Ratio} 
-In this experiment, we Figure~\ref{Figures/ch3/R2/CR} shows the average coverage ratio for 150 deployed nodes.  
-\parskip 0pt    
-\begin{figure}[h!]
-\centering
- \includegraphics[scale=0.6] {Figures/ch3/R2/CR.pdf} 
-\caption{Coverage ratio for 150 deployed nodes}
-\label{Figures/ch3/R2/CR}
-\end{figure} 
-It is shown that all models provide a very near coverage ratios during the network lifetime, with very small superiority for the models with higher number of primary points. Moreover, when the number of rounds increases, coverage ratio produced by Model~3, Model~4, and Model~5 decreases in comparison with Model~1 and Model~2 due to the high energy consumption during the listening to take the decision after finishing optimization process for larger number of primary points. As shown in figure ~\ref{Figures/ch3/R2/CR}, Coverage ratio decreases when the number of rounds increases due to dead nodes. Although  some nodes are dead,
-thanks to  Model~2, which is slightly more efficient than other Models, because it is balanced between the number of rounds and the better coverage ratio in comparison with other Models.
-
-\item {{\bf Active Sensors Ratio}}
-%\subsubsection{Active Sensors Ratio} 
- Figure~\ref{Figures/ch3/R2/ASR} shows the average active nodes ratio for 150 deployed nodes.
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R2/ASR.pdf}  
-\caption{Active sensors ratio for 150 deployed nodes }
-\label{Figures/ch3/R2/ASR}
-\end{figure} 
+\hline
 
 
-The results presented in figure~\ref{Figures/ch3/R2/ASR} show the superiority of the proposed  Model 1, in comparison with the other Models. The
-model with less number of primary points uses less active nodes than the other models, which uses a more number of primary points to represent the area of the sensor. According to the results that presented in figure~\ref{Figures/ch3/R2/CR}, we observe that although the Model~1 continue to a larger number of rounds, but it has less coverage ratio compared with other models. The advantage of the Model~2 approach is to use less number of active nodes for each round compared with Model~3,  Model~4, and Model~5; and this led to continue for a larger number of rounds with extending the network lifetime. Model~2 has a better coverage ratio compared to Model~1 and acceptable number of rounds.
+ \textbf{TOSSIM} & C++/Python with good GUI support & Open source (BSD) with Excellent user support & Energy models with power TOSSIM ads-on, Bit-level radio model & Good & Large-scale \\  
 
 
+\hline
+\end{tabular}
 
 
-\item {{\bf he percentage of stopped simulation runs}}
-%\subsubsection{The percentage of stopped simulation runs}
-In this study, we want to show the effect of increasing the primary points on the number of stopped simulation runs for each round. Figure~\ref{Figures/ch3/R2/SR} illustrates the percentage of stopped simulation runs per round for 150 deployed nodes. 
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R2/SR.pdf} 
-\caption{Percentage of stopped simulation runs for 150 deployed nodes }
-\label{Figures/ch3/R2/SR}
-\end{figure} 
+\label{table:1}
+\end{table}
 
 
-As shown in Figure~\ref{Figures/ch3/R2/SR}, when the number of primary points are increased, the percentage of the stopped simulation runs per round is increased. The reason behind the increase is the increase in the sensors dead when the primary points increases. We are observed that the Model~1 is a better than other models because it conserve more energy by turn on less number of sensors during the sensing phase, but in the same time it preserve the coverage with a less coverage ratio in comparison with other models. Model~2 seems to be more suitable to be used in wireless sensor networks.
 
 
 
 
-\item {{\bf The Energy Consumption}}
-%\subsubsection{The Energy Consumption}
-In this experiment, we study the effect of increasing the primary points to represent the area of the sensor on the energy consumed by the wireless sensor network for different network densities.  Figures~\ref{Figures/ch3/R2/EC95} and ~\ref{Figures/ch3/R2/EC50} illustrate the energy consumption for different network sizes for $Lifetime95$ and $Lifetime50$.
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R2/EC95.pdf} 
-\caption{Energy Consumption with $95\%-Lifetime$}
-\label{Figures/ch3/R2/EC95}
-\end{figure} 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R2/EC50.pdf} 
-\caption{Energy Consumption with $Lifetime50$}
-\label{Figures/ch3/R2/EC50}
-\end{figure} 
 
 
-We see from the results presented in Figures~\ref{Figures/ch3/R2/EC95} and \ref{Figures/ch3/R2/EC50}, The energy consumed by the network for each round increases when the primary points increases, because the decision for optimization process will takes more time leads to consume more energy during the listening mode. The results show that Model~1 is the most competitive from the energy consumption point of view but the worst one from coverage ratio point of view. The other Models have a high energy consumption  due  to the increase in the primary points, which are led to increase the energy consumption during the listening mode before producing the solution by solving the optimization process. In fact, we see that Model~2 is a good candidate to be used by wireless sensor network because it preserve a good coverage ratio and a suitable energy consumption in comparison with other models. 
+\section{Optimization Solvers}
 
 
-\item {{\bf Execution Time}}
-%\subsubsection{Execution Time}
-In this experiment, we have studied the impact of the increase in primary points on the execution time of DiLCO protocol. Figure~\ref{Figures/ch3/R2/T} gives the average execution times in seconds for the decision phase (solving of the optimization problem) during one round. The original execution time is computed as described in section \ref{ch3:sec:04:02}. 
+  Several optimization solvers are exist, which are able to solve the linear optimization problems. Linear Optimization ( or Linear programming)~\cite{ref211} is a technique for determining the maximum or minimum of a linear function of non-negative variables subject to constraints expressed as linear equalities or inequalities. Linear programming is a special case of mathematical programming (mathematical optimization).
+Linear programs are problems that can be expressed in canonical form:
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R2/T.pdf}  
-\caption{Execution Time(s) vs The Number of Sensors }
-\label{Figures/ch3/R2/T}
-\end{figure} 
+    \begin{align} & \text{Maximize}~ (or ~\text{Minimize})~ && \mathbf{c}^\mathrm{T} \mathbf{x}\\ & \text{Subject to} && A \mathbf{x} \leq \mathbf{b} \\ & \text{and} && \mathbf{x} \ge \mathbf{0} \end{align} 
+  
+ where x represents the vector of variables (to be determined), c and b are vectors of (known) coefficients, A is a (known) matrix of coefficients, and $\left( \cdot \right) ^\mathrm{T}$ is the matrix transpose. The term to be maximized or minimized is called the objective function ($c^Tx$ in this case). The inequalities $Ax \leqslant b$ and $x \geqslant 0$ are the constraints which specify a convex polytope over which the objective function is to be optimized. 
+In linear programming problem, if  some or all of the unknown variables are restricted to be integers, it is called an integer programming (IP) problem. IP problems are a special cases of optimization problems where the variables can only assume integer values, where the IP problems are NP-hard. Mixed integer linear programming (MIP) problems are also special cases where only some of the variables are restricted to integer values. Optimization problems with integer variables can also be linear or nonlinear, depending on the terms of their objective function and their constraints.  However, generally, the terms IP and MIP are almost always associated with problems that have linear features. 
 
 
-They are given for the different primary point models and various numbers of sensors. We can see from Figure~\ref{Figures/ch3/R2/T}, that Model~1 has lower execution time in comparison with other Models, because it used smaller number of primary points to represent the area of the sensor.  Conversely, the other primary point models  have been presented  a higher execution times.
-Moreover, Model~2 has more suitable times and coverage ratio that lead to continue for a larger number of rounds extending the network lifetime. We  think that a good primary point model, this one that balances between the coverage ratio and the number of rounds during the lifetime of the network.
+Linear optimization is used to solve different problems in various fields of study. It is applied for economic, business, and Industry.  Several linear optimization models are proposed in Industry such as,  transportation, energy, telecommunications, and manufacturing. Linear optimization is succeeded in modeling different types of problems like planning, routing, scheduling, assignment, and design. 
 
 
-\item {{\bf The Network Lifetime}}
-%\subsubsection{The Network Lifetime}
-Finally, we will study the effect of increasing the primary points on the lifetime of the network. In Figure~\ref{Figures/ch3/R2/LT95} and in Figure~\ref{Figures/ch3/R2/LT50}, network lifetime, $Lifetime95$ and $Lifetime50$ respectively, are illustrated for different network sizes. 
+Many approaches have been used to solve the linear programming (IP or MIP) problems and they are classified into two main groups~\cite{ref221}:  
+\begin{itemize}
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R2/LT95.pdf}  
-\caption{Network Lifetime for $Lifetime95$}
-\label{Figures/ch3/R2/LT95}
-\end{figure} 
+\item \textbf{Heuristic Optimization:} provides a good solutions for the problems that can not be solved efficiently in classical optimization methods. On the other hand, there is no guarantee for optimal solution. Examples of such approaches are genetic algorithms, swarm intelligence, neural network, and tabu search.
 
 
+\item \textbf{Classical Optimization:} provides and guarantees optimal solutions for the convex problems. Examples of such methods are zero-one enumeration algorithm and branch-and-bound algorithm, which are provided by linear optimization solvers. 
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R2/LT50.pdf}  
-\caption{Network Lifetime for $Lifetime50$}
-\label{Figures/ch3/R2/LT50}
-\end{figure} 
 
 
+\end{itemize}
 
 
-As highlighted by figures~\ref{Figures/ch3/R2/LT95} and \ref{Figures/ch3/R2/LT50}, the network lifetime obviously increases when the size of the network increases, with  Model~1 that leads to the larger lifetime improvement.
-Comparison shows that the Model~1, which uses less number of primary points, is the best one because it is less energy consumption during the network lifetime. It is also the worst one from the point of view of coverage ratio. Our proposed Model~2 efficiently prolongs the network lifetime with a good coverage ratio in comparison with other models.
-\end{enumerate}
+Several variety of linear optimization solvers are available, which vary in their characteristics and capabilities, so in this section, we explain the most popular free and commercial liner optimization solvers~\cite{ref212}.
 
 
-\subsection{Performance Comparison with other Approaches}
-\label{ch3:sec:04:07}
-Based on the results, which are conducted from previous two subsections, \ref{ch3:sec:04:02} and \ref{ch3:sec:04:03}, we have found that DiLCO-16 protocol and DiLCO-32 protocol with Model~2 are the best candidates to be compared with other two approaches. The first approach, called DESK that proposed by ~\cite{DESK}, which is a full distributed coverage algorithm. The second approach, called GAF~\cite{GAF}, consists in dividing the region into fixed squares.   During the decision phase, in each square, one sensor is chosen to remain on during the sensing phase time. 
+\begin{enumerate} [(i)]
 
 
-\begin{enumerate}[i)]
+\item \textbf{GNU Linear Programming Kit (GLPK):} 
 
 
-\item {{\bf Coverage Ratio}}
-%\subsubsection{Coverage Ratio} 
-In this experiment, the average coverage ratio for 150 deployed nodes has been demonstrated figure~\ref{Figures/ch3/R3/CR}. 
-\parskip 0pt    
-\begin{figure}[h!]
-\centering
- \includegraphics[scale=0.6] {Figures/ch3/R3/CR.pdf} 
-\caption{Coverage ratio for 150 deployed nodes}
-\label{Figures/ch3/R3/CR}
-\end{figure} 
+The GLPK~\cite{ref214,ref213,AMPL} is a free and open source software written in C programming language, which  is presented for solving large-scale linear programming (LP), mixed integer programming (MIP), and other related problems. It is a mathematical programming project that is a part of the GNU project. GLPK uses the revised simplex method and the primal-dual interior point method for non-integer problems and the branch-and-bound algorithm together with Gomory's mixed integer cuts for (mixed) integer problems.
+The users use either an interactive command line or a C++ application programming interface (API) in order to interact with GLPK, where a C and java API are available with GLPK. Several input file formats are accepted by GLPK such as: MPS (Mathematical Programming System), Free MPS, LP, GLPK, and MathProg format. The major components of the GLPK package are primal and dual simplex methods, primal-dual interior-point method, branch-and-cut method, translator for GNU MathProg, API, and stand-alone LP/MIP solver.
 
 
-It has been shown that DESK and GAF provide a little better coverage ratio with 99.99\% and 99.91\% against 99.1\% and 99.2\% produced by DiLCO-16 and DiLCO-32 for the lowest number of rounds. This is due to the fact that DiLCO protocol versions put in sleep mode redundant sensors using optimization (which lightly decreases the coverage ratio) while there are more nodes are active in the case of DESK and GAF.
 
 
-Moreover, when the number of rounds increases, coverage ratio produced by DESK and GAF protocols decreases. This is due to dead nodes. However, DiLCO-16 protocol and DiLCO-32 protocol maintain almost a good coverage. This is because they optimized the coverage and the lifetime in wireless sensor network by selecting the best representative sensor nodes to take the responsibility of coverage during the sensing phase and this will leads to continue for a larger number of rounds and prolonging the network lifetime; although some nodes are dead, sensor activity scheduling of our protocol chooses other nodes to ensure the coverage of the area of interest. 
+\item \textbf{lp$\_$solve:} 
 
 
-\item {{\bf Active Sensors Ratio}}
-%\subsubsection{Active Sensors Ratio} 
-It is important to have as few active nodes as possible in each round, in  order to  minimize the energy consumption and maximize the network lifetime. Figure~\ref{Figures/ch3/R3/ASR} shows the average active nodes ratio for 150 deployed nodes. 
+The lp$\textunderscore$solve~\cite{ref215,ref213} is a free linear (integer) programming solver based on the revised simplex method and the Branch-and-bound method for the integers.  It is freely available under the GNU Lesser General Public License. The Primal and Dual Simplex algorithms are used by lp$\textunderscore$solve for solving LP models.  lp$\textunderscore$solve is written using C programming language and can be compiled on many different platforms like linux and Windows. The users interact with it using either a command line or an API. It provides  a C, C$\#$, C++, Java, and .NET API. lp$\textunderscore$solve can read the input MPS, Free MPS and LP file format. The pure linear, (mixed) integer/binary, semi-continuous and special ordered sets (SOS) models are solved. It handles integer variables, semi-continuous variables, and Special Ordered Sets by means of Branch-and-bound algorithm.
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R3/ASR.pdf}  
-\caption{Active sensors ratio for 150 deployed nodes }
-\label{Figures/ch3/R3/ASR}
-\end{figure} 
 
 
-The results presented in figure~\ref{Figures/ch3/R3/ASR} show the superiority of the proposed DiLCO-16 protocol and DiLCO-32 protocol, in comparison with the other approaches.  We have observed that DESK and GAF have 37.5 \% and 44.5 \% active nodes and DiLCO-16 protocol and DiLCO-32 protocol compete perfectly with only 17.4 \%, 24.8 \% and 26.8 \%  active nodes for the first 14 rounds. Then as the number of rounds increases DiLCO-16 protocol and DiLCO-32 protocol have larger number of active nodes in comparison with DESK and GAF, especially from round $35^{th}$ because they give a better coverage ratio than other approaches. We see that DESK and GAF have less number of active nodes beginning at the rounds $35^{th}$ and $32^{th}$ because there are many nodes are died due to the high energy consumption by the redundant nodes during the sensing phase. 
+\item \textbf{CLP:} 
 
 
+COIN-OR Linear Programming (CLP)~\cite{ref216,ref217} is a free, open-source linear programming solver written in C++ programming language. CLP is reliable and able to tackle the very large linear optimization problems. The  CLP is a part of the Coin-OR project that aims at creating open software for the operations research community. An other COIN-OR projects such as SYMPHONY, BCP (Branch Cut and Price),  and CBC (COIN-OR Branch and Cut) are used CLP. It includes Dual and Primal Simplex algorithms,  but it also contains an Interior Point algorithm.
+CLP is available under the Eclipse Public License version 1.0, and the users interact with
+it through either an interactive command line or through a C++ API. CLP is able to use the input MPS, Free MPS and LP file formats.
 
 
-\item {{\bf The percentage of stopped simulation runs}}
-%\subsubsection{The percentage of stopped simulation runs}
-The results presented in this experiment, is to show the comparison of DiLCO-16 protocol and DiLCO-32 protocol with other two approaches from point of view of stopped simulation runs per round.
-Figure~\ref{Figures/ch3/R3/SR} illustrates the percentage of stopped simulation
-runs per round for 150 deployed nodes. 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R3/SR.pdf} 
-\caption{Percentage of stopped simulation runs for 150 deployed nodes }
-\label{Figures/ch3/R3/SR}
-\end{figure} 
-It has been observed that DESK is the approach, which stops first because it consumes more energy for communication as well as it turn on a large number of redundant nodes during the sensing phase. On the other  hand DiLCO-16 protocol and DiLCO-32 protocol have less stopped simulation runs in comparison with DESK and GAF because it distributed the optimization on several subregions in order to optimizes the coverage and the lifetime of the network by activating a less number of nodes during the sensing phase leading to extend the network lifetime and coverage preservation. The optimization effectively continues as long as a network in a subregion is still connected.
 
 
+\item \textbf{CPLEX:} 
 
 
-\item {{\bf The Energy Consumption}}
-%\subsubsection{The Energy Consumption}
-In this experiment, we have studied the effect of the energy consumed by the wireless sensor network during the communication, computation, listening, active, and sleep modes for different network densities and compare it with other approaches. Figures~\ref{Figures/ch3/R3/EC95} and ~\ref{Figures/ch3/R3/EC50} illustrate the energy consumption for different network sizes for $Lifetime95$ and $Lifetime50$. 
+IBM ILOG CPLEX Optimization Studio (often informally referred to simply as CPLEX)~\cite{ref218,ref211} is a commercial, analytical decision support, and optimization software toolkit for fast development of optimization models using mathematical and constraint programming. It combines an integrated development environment (IDE) with the powerful Optimization Programming Language (OPL) and high-performance ILOG CPLEX optimizer solvers. CPLEX is developed by IBM and is designed to tackle the large scale (mixed integer) linear problems. The CPLEX optimizer includes a modeling layer called concert that provides interfaces to the C++, C$\#$, Python,  and Java languages. Furthermore, it provides a connection to Microsoft Excel and MATLAB.
+CPLEX is capable of optimize the business decisions with high-performance optimization engines, develop and deploy optimization models quickly by using flexible interfaces and pre-constructed deployment scenarios, and create real-world applications 
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R3/EC95.pdf} 
-\caption{Energy Consumption with $95\%-Lifetime$}
-\label{Figures/ch3/R3/EC95}
-\end{figure} 
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R3/EC50.pdf} 
-\caption{Energy Consumption with $Lifetime50$}
-\label{Figures/ch3/R3/EC50}
-\end{figure} 
+\item \textbf{Gurobi:} 
 
 
-The results show that DiLCO-16 protocol and DiLCO-32 protocol are the most competitive from the energy consumption point of view. The other approaches have a high energy consumption due to activating a larger number of redundant nodes as well as the energy consumed during the different modes of sensor nodes. In fact,  a distributed method on the subregions greatly reduces the number of communications and the time of listening so thanks to the partitioning of the initial network into several independent subnetworks
+The Gurobi Optimizer~\cite{ref219,ref220,ref211} is a commercial optimization solver for LP, quadratic programming (QP), quadratically constrained programming (QCP), mixed integer linear programming (MILP), mixed-integer quadratic programming (MIQP), and mixed-integer quadratically constrained programming (MIQCP). The Gurobi optimizer is written in C and it is available on all computing platforms and accessible from several programming languages. The Gurobi optimizer supports interfaces for various programming and modeling languages including: object-oriented interfaces for C++, Java, .NET, and Python; matrix-oriented interfaces for C, MATLAB, and R; Links to standard modeling languages like AIMMS, AMPL, GAMS, and MPL; and Links to Excel through Premium Solver Platform and Risk Solver Platform
 
 
 
 
-\item {{\bf The Network Lifetime}}
-%\subsubsection{The Network Lifetime}
-In this experiment, we have observed the superiority of DiLCO-16 protocol and DiLCO-32 protocol against other two approaches in prolonging the network lifetime. In figures~\ref{Figures/ch3/R3/LT95} and \ref{Figures/ch3/R3/LT50}, network lifetime, $Lifetime95$ and $Lifetime50$ respectively, are illustrated for different network sizes.  
+\end{enumerate}
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R3/LT95.pdf}  
-\caption{Network Lifetime for $Lifetime95$}
-\label{Figures/ch3/R3/LT95}
-\end{figure}
 
 
+B. Meindl and M. Templ~\cite{ref212} studied the efficiency of above optimization solvers and they are used the attacker problems in order to achieve the performance comparison of GLPK, lp$\_$solve, CLP, GUROBI, and CPLEX optimization solvers. They are considered a total of 200 problem instances for this study, 100 of these problem instances are based on problems with two dimensions, and 100 problem instances are three-dimensional.
+Tables~\ref{my-label1}, \ref{my-label2}, and \ref{my-label3} compares the running times that it took each of the five linear program solvers to find solutions to the 200 two-dimensional, 200 three-dimensional and all 400 problem instances.  In order to solve  the attacker’s problem for a given problem instance, it is needed to both minimize and maximize any given problem. Therefore, a total of 400  problem instances had  been solved when only 200 problem instances have been generated.
 
 
-\begin{figure}[h!]
-\centering
-\includegraphics[scale=0.6]{Figures/ch3/R3/LT50.pdf}  
-\caption{Network Lifetime for $Lifetime50$}
-\label{Figures/ch3/R3/LT50}
-\end{figure} 
 
 
-As highlighted by figures~\ref{Figures/ch3/R3/LT95} and \ref{Figures/ch3/R3/LT50}, the network lifetime obviously increases when the size of the network increases, with DiLCO-16 protocol and DiLCO-32 protocol that leads to maximize the lifetime of the network compared with other approaches. 
-By choosing the best suited nodes, for each round, by optimizing the coverage and lifetime of the network to cover the area of interest and by letting the other ones sleep in order to be used later in next periods, DiLCO-16 protocol and DiLCO-32 protocol efficiently prolonged the network lifetime. 
-Comparison shows that DiLCO-16 protocol and DiLCO-32 protocol, which are used distributed optimization over the subregions, is the best one because it is robust to network disconnection during the network lifetime as well as it consumes less energy in comparison with other approaches. It also means that distributing the algorithm in each node and subdividing the sensing field into many subregions, which are managed independently and simultaneously, is the most relevant way to maximize the lifetime of a network.
+\begin{table}[h]
+\caption{Scaled running times for 2-dimensional problem instances}
+\label{my-label1}
+\resizebox{\textwidth}{!}{%
+\begin{tabular}{|c|c|c|c|c|c|}
+\hline
+\textbf{Optimization Solvers} & \textbf{GLPK} & \textbf{lp\_solve} & \textbf{CLP} & \textbf{Gurobi} & \textbf{CPLEX} \\ \hline
+\textbf{Scaled Running Times} & 9.00 & 137.00 & 13.00 & 4.00 & 1.00 \\ \hline
+\end{tabular}
+}
+\end{table}
 
 
 
 
+\begin{table}[h]
+\caption{Scaled running times for 3-dimensional problem instances}
+\label{my-label2}
+\resizebox{\textwidth}{!}{%
+\begin{tabular}{|c|c|c|c|c|c|}
+\hline
+\textbf{Optimization Solvers} & \textbf{GLPK} & \textbf{lp\_solve} & \textbf{CLP} & \textbf{Gurobi} & \textbf{CPLEX} \\ \hline
+\textbf{Scaled Running Times} & 205.00 & 4149.00 & 2823.00 & 164.00 & 1.00 \\ \hline
+\end{tabular}
+}
+\end{table}
+
+
+\begin{table}[h]
+\caption{Scaled running times for all problems}
+\label{my-label3}
+\resizebox{\textwidth}{!}{%
+\begin{tabular}{|c|c|c|c|c|c|}
+\hline
+\textbf{Optimization Solvers} & \textbf{GLPK} & \textbf{lp\_solve} & \textbf{CLP} & \textbf{Gurobi} & \textbf{CPLEX} \\ \hline
+\textbf{Scaled Running Times} & 189.00 & 3822.00 & 2594.00 & 151.00 & 1.00 \\ \hline
+\end{tabular}
+}
+\end{table}
+
+
+The results that illustrated in tables~\ref{my-label1}, \ref{my-label2}, and \ref{my-label3}  indicate that open source solvers perform worse than standard commercial solvers when applied to instances of the attacker’s problem. GLPK outperforms the free and open source solvers,  but still is slower than CPLEX and GUROBI. We are used the GLPK as an optimization solver in this dissertation so as to solve the proposed integer programs during the decision phase of the network lifetime. 
+Several reasons have been led us to use the GLPK optimization solver including: 
+
+\begin{enumerate} [(i)]
+\item It is free and it's installation is easy.
+\item GLPK does not lead to a fast solution of a large problem as in commercial optimization solvers, but it solves the smaller problems with a reasonable time. In this dissertation, we are used divide-and-conquer method so as to divide the large problem into smaller instances and then the GLPK optimization solver is used to solve the smaller problem.
+\item It is easy to use the GLPK  solver and it is possible to call it's routines within the simulator.
+\item GLPK comes with a stand-alone solver, a callable library, and the modeling language GMPL which is compatible with AMPL. GMPL is extremely easy to learn.
+\item  Modeling language and solver can be used independently.
+
+\item GUI for Windows, Mac OS X, and Linux available. 
+\item Database support and formatted text output.
+\item Java, python, matlab interface available.
+\item Exact simplex algorithm and branch-and-bound method are integrated with GLPK.
 \end{enumerate}
 
 \end{enumerate}
 
-\section{Conclusion}
-\label{ch3:sec:05}
-A crucial problem in WSN is to schedule the sensing activities of the different nodes  in order to  ensure both  coverage of  the area  of interest  and longer
-network lifetime. The inherent limitations of sensor nodes, in energy provision, communication and computing capacities,  require protocols that optimize the use
-of the  available resources  to  fulfill the sensing  task. To address  this problem, this chapter proposes a  two-step approach. Firstly, the field of sensing
-is  divided into  smaller  subregions using  the  concept of  divide-and-conquer method. Secondly,  a distributed  protocol called Distributed  Lifetime Coverage
-Optimization is applied in each  subregion to optimize the coverage and lifetime performances. In a subregion,  our protocol  consists in  electing a  leader node
-which will then perform a sensor activity scheduling. The challenges include how to  select the most efficient leader in each  subregion and  the  best representative set of active nodes to ensure a high level of coverage. To assess the performance of our approach, we  compared it with two other approaches using many performance metrics  like coverage ratio or network  lifetime. We have also studied the  impact of the  number of subregions  chosen to subdivide the  area of interest, considering  different  network  sizes. The  experiments  show  that increasing the  number of subregions improves  the lifetime. The  more subregions there are, the  more robust the network is against random disconnection resulting from dead nodes.  However, for  a given sensing field and network size there is an optimal number of  subregions. Therefore, in case of our simulation context  a subdivision in  $16$~subregions seems to be the most relevant.
 
 
 
 
+\section{Conclusion}
+\indent In this chapter, an overview about the evaluation tools and optimization solvers for wireless sensor networks have been presented. The testbed for wireless sensor network and some major types have been demonstrated. We have found that most researchers in the field of WSNs used the simulators to evaluate their works because they are free, easy to use, and more flexible and scalable for a large WSNs. The simulation tools and several types of wireless sensor network simulators are described. The comparison among some types of network simulators has nominated OMNeT++ simulator as a good candidate to be used as performance evaluation tool so as to evaluate the efficiency of our protocols in this dissertation. This chapter highlights the optimization problem in WSNs and the most popular free and commercial liner optimization solvers. The performance of the commercial optimization solvers outperform the free optimization solvers. GLPK has chosen as a good candidate to solve the proposed optimization problems in this dissertation because it is free, easy to use, and better than some other free optimization solvers.
index d09e8b34eb46ae66635ff6f3244e868c8d993141..ac6a480911152917f7f499aea3b06127f677f216 100644 (file)
 %%                          %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 %%                          %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\chapter{Multiround Distributed Lifetime Coverage Optimization Protocol in Wireless Sensor Networks}
+\chapter{Distributed Lifetime Coverage Optimization Protocol in Wireless Sensor Networks}
 \label{ch4}
 
 \label{ch4}
 
+
+
 \section{Summary}
 \label{ch4:sec:01}
 \section{Summary}
 \label{ch4:sec:01}
-Coverage and lifetime are two paramount problems in Wireless  Sensor Networks (WSNs). In this paper, a method called Multiround Distributed Lifetime Coverage
-Optimization  protocol (MuDiLCO)  is proposed  to maintain  the coverage  and to improve the lifetime in wireless sensor  networks. The area of interest is first
-divided  into subregions and  then the  MuDiLCO protocol  is distributed  on the sensor nodes in each subregion. The proposed MuDiLCO protocol works in periods
-during which sets of sensor nodes are scheduled to remain active for a number of rounds  during the  sensing phase,  to ensure coverage  so as  to maximize the
-lifetime of  WSN. The decision process is  carried out by a  leader node, which solves an  integer program to  produce the best  representative sets to  be used
-during the rounds  of the sensing phase. Compared  with some existing protocols, simulation  results based  on  multiple criteria  (energy consumption,  coverage
-ratio, and  so on) show that  the proposed protocol can  prolong efficiently the network lifetime and improve the coverage performance.
-
-\section{MuDiLCO Protocol Description}
+In this chapter, a Distributed Lifetime Coverage Optimization protocol (DiLCO) to maintain
+the coverage and to improve  the  lifetime  in  wireless sensor  networks  is
+proposed.   The  area of  interest  is first  divided  into  subregions using  a
+divide-and-conquer  method and  then the  DiLCO protocol  is distributed  on the
+sensor nodes  in each  subregion. The DiLCO  combines two  efficient techniques:
+leader election  for each subregion, followed by  an optimization-based planning
+of activity  scheduling decisions for  each subregion. The proposed  DiLCO works
+into rounds during which a small  number of nodes, remaining active for sensing,
+is selected to ensure coverage so as to maximize the lifetime of wireless sensor
+network.   Each  round  consists   of  four  phases:  (i)~Information  Exchange,
+(ii)~Leader Election, (iii)~Decision, and (iv)~Sensing.  The decision process is
+carried out  by a leader node,  which solves an integer  program.  Compared with
+some existing protocols, simulation results  show that the proposed protocol can
+prolong the network lifetime and improve the coverage performance effectively.
+
+
+\section{Description of the DiLCO Protocol}
 \label{ch4:sec:02}
 \label{ch4:sec:02}
-\noindent In this section, we introduce the MuDiLCO protocol which is distributed on each subregion in the area of interest. It is based on two energy-efficient
-mechanisms: subdividing the area of interest into several subregions (like cluster architecture) using divide and conquer method, where the sensor nodes cooperate within each subregion as independent group in order to achieve a network leader election; and sensor activity scheduling for maintaining the coverage and prolonging the network lifetime, which are applied periodically. MuDiLCO protocol uses the same assumptions and network model that presented in chapter 3, section \ref{ch3:sec:02:01} and it has been used the primary point coverage model which is described in the same chapter, section \ref{ch3:sec:02:02}.
 
 
+\noindent In this section, we introduce the DiLCO protocol which is distributed on  each subregion  in  the area  of interest.   It  is based  on two  efficient
+techniques: network leader election and sensor activity scheduling for coverage preservation  and  energy  conservation,  applied  periodically  to  efficiently
+maximize the lifetime in the network.
+
+\subsection{Assumptions and Network Model}
+\label{ch4:sec:02:01}
+\noindent  We consider  a sensor  network composed  of static  nodes distributed independently and uniformly at random.  A high density deployment ensures a high
+coverage ratio of the interested area at the start. The nodes are supposed to have homogeneous characteristics from a communication and a processing point of
+view, whereas they  have heterogeneous energy provisions.  Each  node has access to its location thanks,  either to a hardware component (like a  GPS unit), or a
+location discovery algorithm. Furthermore, we assume that sensor nodes are time synchronized in order to properly coordinate their operations to achieve complex sensing tasks~\cite{ref157}. The two sensor nodes have been supposed a neighbors if the euclidean distance between them is at most equal to 2$R_s$. 
  
  
-\subsection{Background Idea and Algorithm}
+
+\indent We consider a boolean disk coverage model which is the most widely used sensor coverage  model in the  literature. Thus, since  a sensor has  a constant
+sensing range $R_s$, every space points  within a disk centered at a sensor with the radius of  the sensing range is said  to be covered by this  sensor. We also
+assume  that  the communication  range $R_c$ is at least twice the sensing range $R_s$ (i.e., $R_c \geq  2R_s$). In  fact, Zhang and Hou~\cite{ref126} proved  that if the transmission range  fulfills the previous hypothesis, a complete coverage of  a convex area implies connectivity among the working nodes in the active mode. We assume that each sensor node can directly transmit its measurements to a mobile sink node. For example, a sink can be an unmanned aerial vehicle (UAV) is flying regularly over the sensor field to collect measurements from sensor nodes. A mobile sink node collects the measurements and transmits them to the base station.
+
+During the execution of the DiLCO protocol, two kinds of packet will be used:
+
+\begin{enumerate} [(i)]
+\item \textbf{INFO  packet:} sent  by each  sensor node to  all the  nodes inside a same subregion for information exchange.
+\item \textbf{ActiveSleep packet:} sent by the leader to all the  nodes in its subregion to inform them to stay Active or to go Sleep during the sensing phase.
+\end{enumerate}
+
+There are five possible status for each sensor node in the network: 
+%and each sensor node will have five possible status in the network:
+\begin{enumerate}[(i)] 
+\item \textbf{LISTENING:} sensor is waiting for a decision (to be active or not).
+\item \textbf{COMPUTATION:} sensor applies the optimization process as leader.
+\item \textbf{ACTIVE:} sensor is active.
+\item \textbf{SLEEP:} sensor is turned off.
+\item \textbf{COMMUNICATION:} sensor is transmitting or receiving packet.
+\end{enumerate}
+
+\subsection{Primary Point Coverage Model}
 \label{ch4:sec:02:02}
 \label{ch4:sec:02:02}
-The area of  interest can be divided using  the divide-and-conquer strategy into
-smaller  areas,  called  subregions,  and  then our MuDiLCO  protocol will be
-implemented in each subregion in a distributed way.
-
-As can be seen  in Figure~\ref{fig2},  our protocol  works in  periods fashion,
-where  each is  divided  into 4  phases: Information~Exchange,  Leader~Election,
-Decision, and Sensing. The information exchange among wireless sensor nodes is described in chapter 3, section \ref{ch3:sec:02:03:01}. The leader election in each subregion is explained in chapter 3, section \ref{ch3:sec:02:03:02}, but the difference in that the elected leader in each subregion is for each period. In decision phase, each WSNL will solve an integer  program to select which  cover sets  will be
-activated in  the following  sensing phase  to cover the  subregion to  which it belongs.  The integer  program will produce $T$ cover sets,  one for each round. The WSNL will send an Active-Sleep  packet to each sensor in the subregion based on the algorithm's results, indicating if the sensor should be active or not in
-each round  of the  sensing phase. Each sensing phase may be itself divided into $T$ rounds
-and for each round a set of sensors (a cover set) is responsible for the sensing
-task. Each sensor node in the subregion will
-receive an Active-Sleep packet from WSNL, informing it to stay awake or to go to
-sleep for  each round of the sensing  phase.  Algorithm~\ref{alg:MuDiLCO}, which
-will be  executed by each node  at the beginning  of a period, explains  how the
-Active-Sleep packet is obtained. In this way a multiround optimization  process is performed  during each
-period  after  Information~Exchange  and  Leader~Election phases,  in  order  to
-produce $T$ cover sets that will take the mission of sensing for $T$ rounds.
-\begin{figure}[ht!]
-\centering \includegraphics[width=160mm]{Figures/ch4/GeneralModel.jpg} % 70mm  Modelgeneral.pdf
-\caption{The MuDiLCO protocol scheme executed on each node}
-\label{fig2}
-\end{figure} 
+\indent Instead of working with the coverage area, we consider for each
+sensor a set of points called primary points. We also assume that the
+sensing disk defined by a sensor is covered if all the primary points of
+this sensor are covered. By  knowing the  position (point  center: ($p_x,p_y$))  of  a wireless
+sensor node  and its $R_s$,  we calculate the primary  points directly
+based on the proposed model. We  use these primary points (that can be
+increased or decreased if necessary)  as references to ensure that the
+monitored  region  of interest  is  covered  by  the selected  set  of
+sensors, instead of using all the points in the area.
+
+\indent  We can  calculate  the positions of the selected primary
+points in the circle disk of the sensing range of a wireless sensor
+node (see figure~\ref{fig1}) as follows:\\
+$(p_x,p_y)$ = point center of wireless sensor node\\  
+$X_1=(p_x,p_y)$ \\ 
+$X_2=( p_x + R_s * (1), p_y + R_s * (0) )$\\           
+$X_3=( p_x + R_s * (-1), p_y + R_s * (0)) $\\
+$X_4=( p_x + R_s * (0), p_y + R_s * (1) )$\\
+$X_5=( p_x + R_s * (0), p_y + R_s * (-1 )) $\\
+$X_6= ( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (0)) $\\
+$X_7=( p_x + R_s *  (\frac{\sqrt{2}}{2}), p_y + R_s * (0))$\\
+$X_8=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
+$X_9=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
+$X_{10}=( p_x + R_s * (\frac{-\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
+$X_{11}=( p_x + R_s * (\frac{\sqrt{2}}{2}), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
+$X_{12}=( p_x + R_s * (0), p_y + R_s * (\frac{\sqrt{2}}{2})) $\\
+$X_{13}=( p_x + R_s * (0), p_y + R_s * (\frac{-\sqrt{2}}{2})) $\\
+$X_{14}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (\frac{1}{2})) $\\
+$X_{15}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (\frac{1}{2})) $\\
+$X_{16}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (\frac{- 1}{2})) $\\
+$X_{17}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (\frac{- 1}{2})) $\\
+$X_{18}=( p_x + R_s * (\frac{\sqrt{3}}{2}), p_y + R_s * (0) $\\
+$X_{19}=( p_x + R_s * (\frac{-\sqrt{3}}{2}), p_y + R_s * (0) $\\
+$X_{20}=( p_x + R_s * (0), p_y + R_s * (\frac{1}{2})) $\\
+$X_{21}=( p_x + R_s * (0), p_y + R_s * (-\frac{1}{2})) $\\
+$X_{22}=( p_x + R_s * (\frac{1}{2}), p_y + R_s * (\frac{\sqrt{3}}{2})) $\\
+$X_{23}=( p_x + R_s * (\frac{- 1}{2}), p_y + R_s * (\frac{\sqrt{3}}{2})) $\\
+$X_{24}=( p_x + R_s * (\frac{- 1}{2}), p_y + R_s * (\frac{-\sqrt{3}}{2})) $\\
+$X_{25}=( p_x + R_s * (\frac{1}{2}), p_y + R_s * (\frac{-\sqrt{3}}{2})) $.
+
+\begin{figure}[h!]
+\centering
+ \begin{multicols}{3}
+\centering
+\includegraphics[scale=0.20]{Figures/ch4/fig21.pdf}\\~ ~ ~ ~ ~(a)
+\includegraphics[scale=0.20]{Figures/ch4/fig22.pdf}\\~ ~ ~ ~ ~(b)
+\includegraphics[scale=0.20]{Figures/ch4/principles13.pdf}\\~ ~ ~ ~ ~(c) 
+\hfill
+\includegraphics[scale=0.20]{Figures/ch4/fig24.pdf}\\~ ~ ~(d)
+\includegraphics[scale=0.20]{Figures/ch4/fig25.pdf}\\~ ~ ~(e)
+\includegraphics[scale=0.20]{Figures/ch4/fig26.pdf}\\~ ~ ~(f)
+\end{multicols} 
+\caption{Wireless Sensor Node represented by (a)5, (b)9, (c)13, (d)17, (e)21 and (f)25 primary points respectively}
+\label{fig1}
+\end{figure}
 
 
 
 
-This protocol minimizes the impact of unexpected node failure (not due to batteries running out of energy), because it works in periods. 
 
 
-On the one hand, if a node failure is detected before making the decision, the node will not participate to this phase, and, on the other hand, if the node failure occurs after the decision, the sensing  task of the network will be temporarily affected:  only during  the period of sensing until a new period starts.
+\subsection{Main Idea}
+\label{ch4:sec:02:03}
+\noindent We start  by applying a divide-and-conquer algorithm  to partition the
+area of interest  into smaller areas called subregions and  then our protocol is
+executed   simultaneously  in   each   subregion.
 
 
-The  energy consumption  and some  other constraints  can easily  be  taken into account,  since the  sensors  can  update and  then  exchange their  information (including their residual energy) at the beginning of each period.  However, the pre-sensing  phases (Information  Exchange, Leader  Election, and  Decision) are energy  consuming for some  nodes, even  when they  do not  join the  network to monitor the area.
+\begin{figure}[ht!]
+\centering
+\includegraphics[scale=0.60]{Figures/ch4/FirstModel.pdf} % 70mm
+\caption{DiLCO protocol}
+\label{FirstModel}
+\end{figure} 
+
+As shown in Figure~\ref{FirstModel}, the  proposed DiLCO protocol is a periodic
+protocol where  each period is  decomposed into 4~phases:  Information Exchange,
+Leader Election,  Decision, and Sensing. For  each period there  will be exactly
+one  cover  set  in charge  of  the  sensing  task.   A periodic  scheduling  is
+interesting  because it  enhances the  robustness  of the  network against  node
+failures. First,  a node  that has not  enough energy  to complete a  period, or
+which fails before  the decision is taken, will be  excluded from the scheduling
+process. Second,  if a node  fails later, whereas  it was supposed to  sense the
+region of  interest, it will only affect  the quality of the  coverage until the
+definition of  a new  cover set  in the next  period.  Constraints,  like energy
+consumption, can be easily taken into consideration since the sensors can update
+and exchange their  information during the first phase.  Let  us notice that the
+phases  before  the sensing  one  (Information  Exchange,  Leader Election,  and
+Decision) are  energy consuming for all the  nodes, even nodes that  will not be
+retained by the leader to keep watch over the corresponding area.
+
+Below, we describe each phase in more details.
+
+\subsubsection{Information Exchange Phase}
+\label{ch4:sec:02:03:01}
+Each sensor node $j$ sends its position, remaining energy $RE_j$, and the number
+of neighbors $NBR_j$  to all wireless sensor nodes in its  subregion by using an
+INFO packet  (containing information on position  coordinates, current remaining
+energy, sensor node ID, number of its one-hop live neighbors) and then waits for
+packets sent by other nodes.  After  that, each node will have information about
+all  the sensor  nodes in  the subregion.   In our  model, the  remaining energy
+corresponds to the time that a sensor can live in the active mode.
+
+\subsubsection{Leader Election Phase}
+\label{ch4:sec:02:03:02}
+This  step includes choosing  the Wireless  Sensor Node  Leader (WSNL), which  will  be  responsible  for executing  the coverage  algorithm. Each subregion in the area of interest  will select its  own  WSNL independently  for each  round.  All the  sensor  nodes cooperate  to select WSNL. The nodes in the  same subregion will  select the leader based on  the received  information from all  other nodes in  the same subregion.  The selection  criteria are,  in order  of importance: larger  number  of neighbors,  larger  remaining energy,  and  then  in case  of equality, larger index. Observations on  previous simulations suggest to use the number  of  one-hop  neighbors  as   the  primary  criterion  to  reduce  energy consumption due to the communications.  
+
+
+\subsubsection{Decision phase}
+\label{ch4:sec:02:03:03}
+The  WSNL will  solve an  integer  program (see  section~\ref{ch4:sec:03}) to select which sensors will be  activated in the following sensing phase to cover  the subregion.  WSNL will send  Active-Sleep packet  to each sensor in the subregion based on the algorithm's results.
+
+
+\subsubsection{Sensing phase}
+\label{ch4:sec:02:03:04}
+Active  sensors  in the  round  will  execute  their sensing  task  to
+preserve maximal  coverage in the  region of interest. We  will assume
+that the cost  of keeping a node awake (or asleep)  for sensing task is
+the same  for all wireless sensor  nodes in the  network.  Each sensor
+will receive  an Active-Sleep  packet from WSNL  informing it  to stay
+awake or to go to sleep  for a time  equal to  the period of  sensing until
+starting a new round.
+
+An outline of the  protocol implementation is given by Algorithm~\ref{alg:DiLCO}
+which describes the execution of a period  by a node (denoted by $s_j$  for a
+sensor  node indexed by  $j$). At  the beginning  a node  checks whether  it has
+enough energy to stay active during the next sensing phase. If yes, it exchanges
+information  with  all the  other  nodes belonging  to  the  same subregion:  it
+collects from each node its position coordinates, remaining energy ($RE_j$), ID,
+and  the number  of  one-hop neighbors  still  alive. Once  the  first phase  is
+completed, the nodes  of a subregion choose a leader to  take the decision based
+on  the  following  criteria   with  decreasing  importance:  larger  number  of
+neighbors, larger remaining energy, and  then in case of equality, larger index.
+After that,  if the sensor node is  leader, it will execute  the integer program
+algorithm (see Section~\ref{ch4:sec:03})  which provides a set of  sensors planned to be
+active in the next sensing phase. As leader, it will send an Active-Sleep packet
+to each sensor  in the same subregion to  indicate it if it has to  be active or
+not.  Alternately, if  the  sensor  is not  the  leader, it  will  wait for  the
+Active-Sleep packet to know its state for the coming sensing phase.
 
 
 
 \begin{algorithm}[h!]                
 
 \begin{algorithm}[h!]                
- % \KwIn{all the parameters related to information exchange}
-%  \KwOut{$winer-node$ (: the id of the winner sensor node, which is the leader of current round)}
+
   \BlankLine
   %\emph{Initialize the sensor node and determine it's position and subregion} \; 
   
   \BlankLine
   %\emph{Initialize the sensor node and determine it's position and subregion} \; 
   
-  \If{ $RE_j \geq E_{R}$ }{
+  \If{ $RE_j \geq E_{th}$ }{
       \emph{$s_j.status$ = COMMUNICATION}\;
       \emph{Send $INFO()$ packet to other nodes in the subregion}\;
       \emph{Wait $INFO()$ packet from other nodes in the subregion}\; 
       \emph{$s_j.status$ = COMMUNICATION}\;
       \emph{Send $INFO()$ packet to other nodes in the subregion}\;
       \emph{Wait $INFO()$ packet from other nodes in the subregion}\; 
@@ -74,17 +218,16 @@ The  energy consumption  and some  other constraints  can easily  be  taken into
       \emph{LeaderID = Leader election}\;
       \If{$ s_j.ID = LeaderID $}{
         \emph{$s_j.status$ = COMPUTATION}\;
       \emph{LeaderID = Leader election}\;
       \If{$ s_j.ID = LeaderID $}{
         \emph{$s_j.status$ = COMPUTATION}\;
-        \emph{$\left\{\left(X_{1,k},\dots,X_{T,k}\right)\right\}_{k \in J}$ =
-          Execute Integer Program Algorithm($T,J$)}\;
+        \emph{$\left\{\left(X_{1},\dots,X_{k},\dots,X_{J}\right)\right\}$ =
+          Execute Integer Program Algorithm($J$)}\;
         \emph{$s_j.status$ = COMMUNICATION}\;
         \emph{$s_j.status$ = COMMUNICATION}\;
-        \emph{Send $ActiveSleep()$ to each node $k$ in subregion a packet \\
-          with vector of activity scheduling $(X_{1,k},\dots,X_{T,k})$}\;
+        \emph{Send $ActiveSleep()$ to each node $k$ in subregion} \;
         \emph{Update $RE_j $}\;
       }          
       \Else{
         \emph{$s_j.status$ = LISTENING}\;
         \emph{Wait $ActiveSleep()$ packet from the Leader}\;
         \emph{Update $RE_j $}\;
       }          
       \Else{
         \emph{$s_j.status$ = LISTENING}\;
         \emph{Wait $ActiveSleep()$ packet from the Leader}\;
-        % \emph{After receiving Packet, Retrieve the schedule and the $T$ rounds}\;
+
         \emph{Update $RE_j $}\;
       }  
       %  }
         \emph{Update $RE_j $}\;
       }  
       %  }
@@ -92,34 +235,28 @@ The  energy consumption  and some  other constraints  can easily  be  taken into
   \Else { Exclude $s_j$ from entering in the current sensing phase}
   
  %   \emph{return X} \;
   \Else { Exclude $s_j$ from entering in the current sensing phase}
   
  %   \emph{return X} \;
-\caption{MuDiLCO($s_j$)}
-\label{alg:MuDiLCO}
+\caption{DiLCO($s_j$)}
+\label{alg:DiLCO}
 
 \end{algorithm}
 
 
 
 
 \end{algorithm}
 
 
 
-
-\subsection{Primary Points based Multiround Coverage Problem Formulation}
-%\label{ch4:sec:02:02}
-
-According to our algorithm~\ref{alg:MuDiLCO}, the integer program is based on the model
-proposed by  \cite{ref156} with some modifications, where  the objective is
-to find  a maximum number of disjoint cover sets. To fulfill this  goal, the
-authors proposed an integer  program which forces undercoverage and overcoverage
-of  targets to  become minimal  at  the same  time.  They  use binary  variables
-$x_{jl}$ to indicate if  sensor $j$ belongs to cover set $l$. In our model, we
-consider binary  variables $X_{t,j}$ to determine the  possibility of activating
-sensor $j$ during round $t$ of  a given sensing phase.  We also consider primary
-points as targets.  The  set of primary points is denoted by  $P$ and the set of
-sensors by  $J$. Only sensors  able to  be alive during  at least one  round are
-involved in the integer program.
-
-
-For a  primary point  $p$, let $\alpha_{j,p}$  denote the indicator  function of
-whether the point $p$ is covered, that is:
+\section{Primary Points based Coverage Problem Formulation}
+\label{ch4:sec:03}
+\indent Our model is based on the model proposed by \cite{ref156} where the
+objective is  to find a  maximum number of  disjoint cover sets.   To accomplish
+this goal,  the authors proposed  an integer program which  forces undercoverage
+and overcoverage of targets to become minimal at the same time.  They use binary
+variables $x_{jl}$ to  indicate if sensor $j$ belongs to cover  set $l$.  In our
+model, we consider that the binary variable $X_{j}$ determines the activation of
+sensor $j$  in the sensing  phase. We also  consider primary points  as targets.
+The set of primary points is denoted by $P$ and the set of sensors by $J$.
+
+\noindent Let $\alpha_{jp}$ denote the indicator function of whether the primary
+point $p$ is covered, that is:
 \begin{equation}
 \begin{equation}
-\alpha_{j,p} = \left \{ 
+\alpha_{jp} = \left \{ 
 \begin{array}{l l}
   1 & \mbox{if the primary point $p$ is covered} \\
  & \mbox{by sensor node $j$}, \\
 \begin{array}{l l}
   1 & \mbox{if the primary point $p$ is covered} \\
  & \mbox{by sensor node $j$}, \\
@@ -127,117 +264,80 @@ whether the point $p$ is covered, that is:
 \end{array} \right.
 %\label{eq12} 
 \end{equation}
 \end{array} \right.
 %\label{eq12} 
 \end{equation}
-The number of  active sensors that cover the  primary point $p$ during
-round $t$ is equal to $\sum_{j \in J} \alpha_{j,p} * X_{t,j}$ where:
+The  number of  active sensors  that cover  the primary  point $p$  can  then be
+computed by $\sum_{j \in J} \alpha_{jp} * X_{j}$ where:
 \begin{equation}
 \begin{equation}
-X_{t,j} = \left \{ 
+X_{j} = \left \{ 
 \begin{array}{l l}
 \begin{array}{l l}
-  1& \mbox{if sensor $j$  is active during round $t$,} \\
+  1& \mbox{if sensor $j$  is active,} \\
   0 &  \mbox{otherwise.}\\
 \end{array} \right.
 %\label{eq11} 
 \end{equation}
   0 &  \mbox{otherwise.}\\
 \end{array} \right.
 %\label{eq11} 
 \end{equation}
-We define the Overcoverage variable $\Theta_{t,p}$ as:
+We define the Overcoverage variable $\Theta_{p}$ as:
 \begin{equation}
 \begin{equation}
- \Theta_{t,p} = \left \{ 
+ \Theta_{p} = \left \{ 
 \begin{array}{l l}
 \begin{array}{l l}
-  0 & \mbox{if the primary point $p$}\\
-    & \mbox{is not covered during round $t$,}\\
-  \left( \sum_{j \in J} \alpha_{jp} * X_{tj} \right)- 1 & \mbox{otherwise.}\\
+  0 & \mbox{if the primary point}\\
+    & \mbox{$p$ is not covered,}\\
+  \left( \sum_{j \in J} \alpha_{jp} * X_{j} \right)- 1 & \mbox{otherwise.}\\
 \end{array} \right.
 \label{eq13} 
 \end{equation}
 \end{array} \right.
 \label{eq13} 
 \end{equation}
-More  precisely, $\Theta_{t,p}$  represents the  number of  active  sensor nodes
-minus  one  that  cover  the  primary  point $p$  during  round  $t$.   The
-Undercoverage variable  $U_{t,p}$ of the primary  point $p$ during  round $t$ is
-defined by:
+\noindent More  precisely, $\Theta_{p}$ represents  the number of  active sensor
+nodes minus  one that  cover the primary  point~$p$. The  Undercoverage variable
+$U_{p}$ of the primary point $p$ is defined by:
 \begin{equation}
 \begin{equation}
-U_{t,p} = \left \{ 
+U_{p} = \left \{ 
 \begin{array}{l l}
 \begin{array}{l l}
-  1 &\mbox{if the primary point $p$ is not covered during round $t$,} \\
+  1 &\mbox{if the primary point $p$ is not covered,} \\
   0 & \mbox{otherwise.}\\
 \end{array} \right.
 \label{eq14} 
 \end{equation}
 
   0 & \mbox{otherwise.}\\
 \end{array} \right.
 \label{eq14} 
 \end{equation}
 
-Our coverage optimization problem can then be formulated as follows:
-\begin{equation}
- \min \sum_{t=1}^{T} \sum_{p=1}^{P} \left(W_{\theta}* \Theta_{t,p} + W_{U} * U_{t,p}  \right)  \label{eq15} 
-\end{equation}
-
-Subject to
-\begin{equation}
-  \sum_{j=1}^{|J|} \alpha_{j,p} * X_{t,j}   = \Theta_{t,p} - U_{t,p} + 1 \label{eq16} \hspace{6 mm} \forall p \in P, t = 1,\dots,T
-\end{equation}
-
-\begin{equation}
-  \sum_{t=1}^{T}  X_{t,j}   \leq  \lfloor {RE_{j}/E_{R}} \rfloor \hspace{6 mm} \forall j \in J, t = 1,\dots,T
-  \label{eq144} 
-\end{equation}
-
-\begin{equation}
-X_{t,j} \in \lbrace0,1\rbrace,   \hspace{10 mm} \forall j \in J, t = 1,\dots,T \label{eq17} 
-\end{equation}
-
-\begin{equation}
-U_{t,p} \in \lbrace0,1\rbrace, \hspace{10 mm}\forall p \in P, t = 1,\dots,T  \label{eq18} 
+\noindent Our coverage optimization problem can then be formulated as follows:
+\begin{equation} \label{eq:ip2r}
+\left \{
+\begin{array}{ll}
+\min \sum_{p \in P} (w_{\theta} \Theta_{p} + w_{U} U_{p})&\\
+\textrm{subject to :}&\\
+\sum_{j \in J}  \alpha_{jp} X_{j} - \Theta_{p}+ U_{p} =1, &\forall p \in P\\
+%\label{c1} 
+%\sum_{t \in T} X_{j,t} \leq \frac{RE_j}{e_t} &\forall j \in J \\
+%\label{c2}
+\Theta_{p}\in \mathbb{N}, &\forall p \in P\\
+U_{p} \in \{0,1\}, &\forall p \in P \\
+X_{j} \in \{0,1\}, &\forall j \in J
+\end{array}
+\right.
 \end{equation}
 
 \end{equation}
 
-\begin{equation}
- \Theta_{t,p} \geq 0 \hspace{10 mm}\forall p \in P, t = 1,\dots,T \label{eq178}
-\end{equation}
-
-
-
 \begin{itemize}
 \begin{itemize}
-\item $X_{t,j}$:  indicates whether  or not the  sensor $j$ is  actively sensing
-  during round $t$ (1 if yes and 0 if not);
-\item $\Theta_{t,p}$ - {\it overcoverage}:  the number of sensors minus one that
-  are covering the primary point $p$ during round $t$;
-\item  $U_{t,p}$ -  {\it undercoverage}:  indicates whether  or not  the primary
-  point $p$  is being covered during round $t$ (1  if not covered  and 0 if
-  covered).
+\item $X_{j}$ :  indicates whether or not the sensor $j$  is actively sensing (1
+  if yes and 0 if not);
+\item $\Theta_{p}$  : {\it overcoverage}, the  number of sensors  minus one that
+  are covering the primary point $p$;
+\item $U_{p}$ : {\it undercoverage},  indicates whether or not the primary point
+  $p$ is being covered (1 if not covered and 0 if covered).
 \end{itemize}
 
 The first group  of constraints indicates that some primary  point $p$ should be
 covered by at least  one sensor and, if it is not  always the case, overcoverage
 and undercoverage  variables help balancing the restriction  equations by taking
 \end{itemize}
 
 The first group  of constraints indicates that some primary  point $p$ should be
 covered by at least  one sensor and, if it is not  always the case, overcoverage
 and undercoverage  variables help balancing the restriction  equations by taking
-positive values. The constraint  given by equation~(\ref{eq144}) guarantees that
-the sensor has enough energy ($RE_j$  corresponds to its remaining energy) to be
-alive during  the selected rounds knowing  that $E_{R}$ is the  amount of energy
-required to be alive during one round.
-
-There  are two main  objectives.  First,  we limit  the overcoverage  of primary
-points in order to activate a  minimum number of sensors.  Second we prevent the
-absence  of  monitoring  on  some  parts  of the  subregion  by  minimizing  the
-undercoverage.  The weights  $W_\theta$ and $W_U$ must be  properly chosen so as
-to guarantee that the maximum number of points are covered during each round. 
-%% MS W_theta is smaller than W_u => problem with the following sentence
-In our simulations priority is given  to the coverage by choosing $W_{U}$ very
-large compared to $W_{\theta}$.
-
-
+positive values. Two objectives can be noticed in our model. First, we limit the
+overcoverage of primary  points to activate as few  sensors as possible. Second,
+to  avoid   a  lack  of  area   monitoring  in  a  subregion   we  minimize  the
+undercoverage. Both  weights $w_\theta$  and $w_U$ must  be carefully  chosen in
+order to  guarantee that the  maximum number of  points are covered  during each
+period.
+\section{Simulation Results and Analysis}
+\label{ch4:sec:04}
 
 
-\section{Experimental Study and Analysis}
-\label{ch4:sec:03}
+\subsection{Simulation Framework}
+\label{ch4:sec:04:01}
 
 
-\subsection{Simulation Setup}
-\label{ch4:sec:03:01}
-We  conducted  a  series of  simulations  to  evaluate  the efficiency  and  the
-relevance  of our  approach,  using  the  discrete   event  simulator  OMNeT++
-\cite{ref158}. The simulation  parameters are summarized in Table~\ref{table3}.  Each experiment  for  a network  is  run over  25~different random topologies and  the results presented hereafter are  the average of these
-25 runs.
-%Based on the results of our proposed work in~\cite{idrees2014coverage}, we found as the region of interest are divided into larger subregions as the network lifetime increased. In this simulation, the network are divided into 16 subregions. 
-We  performed  simulations for  five  different  densities  varying from  50  to
-250~nodes deployed  over  a  $50 \times  25~m^2  $  sensing field.  More
-precisely, the  deployment is controlled  at a coarse  scale in order  to ensure
-that  the deployed  nodes can  cover the  sensing field  with the  given sensing
-range.
-
-%%RC these parameters are realistic?
-%% maybe we can increase the field and sensing range. 5mfor Rs it seems very small... what do the other good papers consider ?
+To assess the performance of DiLCO protocol, we have used the discrete event simulator OMNeT++ \cite{ref158} to run different series of simulations. Table~\ref{tablech4} gives the chosen parameters setting.
 
 \begin{table}[ht]
 \caption{Relevant parameters for network initializing.}
 
 \begin{table}[ht]
 \caption{Relevant parameters for network initializing.}
@@ -250,334 +350,476 @@ range.
 %inserts double horizontal lines
 Parameter & Value  \\ [0.5ex]
    
 %inserts double horizontal lines
 Parameter & Value  \\ [0.5ex]
    
-%Case & Strategy (with Two Leaders) & Strategy (with One Leader) & Simple Heuristic \\ [0.5ex]
-% inserts table
-%heading
+
 \hline
 % inserts single horizontal line
 \hline
 % inserts single horizontal line
-Sensing field size & $(50 \times 25)~m^2 $   \\
+Sensing  Field  & $(50 \times 25)~m^2 $   \\
 % inserting body of the table
 %\hline
 % inserting body of the table
 %\hline
-Network size &  50, 100, 150, 200 and 250~nodes   \\
+Nodes Number &  50, 100, 150, 200 and 250~nodes   \\
 %\hline
 %\hline
-Initial energy  & 500-700~joules  \\  
+Initial Energy  & 500-700~joules  \\  
 %\hline
 %\hline
-Sensing time for one round & 60 Minutes \\
-$E_{R}$ & 36 Joules\\
+Sensing Period & 60 Minutes \\
+$E_{th}$ & 36 Joules\\
 $R_s$ & 5~m   \\     
 %\hline
 $R_s$ & 5~m   \\     
 %\hline
-$W_{\Theta}$ & 1   \\
+$w_{\Theta}$ & 1   \\
 % [1ex] adds vertical space
 %\hline
 % [1ex] adds vertical space
 %\hline
-$W_{U}$ & $|P|^2$
+$w_{U}$ & $|P|^2$
 %inserts single line
 \end{tabular}
 %inserts single line
 \end{tabular}
-\label{table3}
+\label{tablech4}
 % is used to refer this table in the text
 \end{table}
 % is used to refer this table in the text
 \end{table}
-  
-Our protocol  is declined into  four versions: MuDiLCO-1,  MuDiLCO-3, MuDiLCO-5,
-and  MuDiLCO-7, corresponding  respectively to  $T=1,3,5,7$ ($T$  the  number of
-rounds in one sensing period).  In  the following, we will make comparisons with
-two other methods. The first method, called DESK and proposed by \cite{DESK},
-is  a   full  distributed  coverage   algorithm.   The  second   method,  called
-GAF~\cite{GAF}, consists in dividing  the region into fixed squares.
-During the decision  phase, in each square, one sensor is  then chosen to remain
-active during the sensing phase time.
-
-Some preliminary experiments were performed in chapter 3 to study the choice of the number of
-subregions  which subdivides  the  sensing field,  considering different  network
-sizes. They show that as the number of subregions increases, so does the network
-lifetime. Moreover,  it makes  the MuDiLCO protocol  more robust  against random
-network  disconnection due  to node  failures.  However,  too  many subdivisions
-reduce the advantage  of the optimization. In fact, there  is a balance between
-the  benefit  from the  optimization  and the  execution  time  needed to  solve
-it. Therefore, we have set the number of subregions to 16 rather than 32.
-
-We used the modeling language and the optimization solver which are mentioned in chapter 3, section \ref{ch3:sec:04:02}. In addition, we employed an energy consumption model, which is presented in chapter 3, section \ref{ch3:sec:04:03}. 
-
-%The initial energy of each node  is randomly set in the interval $[500;700]$.  A sensor node  will not participate in the  next round if its  remaining energy is less than  $E_{R}=36~\mbox{Joules}$, the minimum  energy needed for the  node to stay alive  during one round.  This value has  been computed by  multiplying the energy consumed in  active state (9.72 mW) by the time in second  for one round (3600 seconds). According to the  interval of initial energy, a sensor may be alive during at most 20 rounds.
-
-\subsection{Metrics}
-\label{ch4:sec:03:02}
-To evaluate our approach we consider the following performance metrics:
-
-\begin{enumerate}[i]
-  
-\item {{\bf Coverage Ratio (CR)}:} the coverage ratio measures how much of the area
-  of a sensor field is covered. In our case, the sensing field is represented as
-  a connected grid  of points and we use  each grid point as a  sample point to
-  compute the coverage. The coverage ratio can be calculated by:
+
+Simulations with five  different node densities going from  50 to 250~nodes were
+performed  considering  each  time  25~randomly generated  networks,  to  obtain
+experimental results  which are relevant. The  nodes are deployed on  a field of
+interest of $(50 \times 25)~m^2 $ in such a way that they cover the field with a
+high coverage ratio.
+
+
+\subsection{Modeling  Language and Optimization Solver}
+\label{ch4:sec:04:02}
+The modeling  language for Mathematical Programming (AMPL)~\cite{AMPL} is  employed to generate the integer program instance  in a  standard format, which  is then read  and solved  by the optimization solver  GLPK (GNU  linear Programming Kit  available in  the public domain) \cite{glpk} through a Branch-and-Bound method.
+
+\subsection{Energy Consumption Model}
+\label{ch4:sec:04:03}
+
+\indent In this dissertation, we used an energy consumption model proposed by~\cite{ref111} and based on \cite{ref112} with slight  modifications.  The energy consumption for  sending/receiving the packets is added, whereas the  part related to the sensing range is removed because we consider a fixed sensing range.
+
+\indent For our energy consumption model, we refer to the sensor node Medusa~II which uses an Atmels  AVR ATmega103L microcontroller~\cite{ref112}. The typical architecture  of a  sensor  is composed  of four  subsystems: the  MCU subsystem which is capable of computation, communication subsystem (radio) which is responsible  for transmitting/receiving messages, the  sensing subsystem that collects  data, and  the  power supply  which  powers the  complete sensor  node \cite{ref112}. Each  of the first three subsystems  can be turned on or  off depending on  the current status  of the sensor.   Energy consumption (expressed in  milliWatt per second) for  the different status of  the sensor is summarized in Table~\ref{table1}.
+
+\begin{table}[ht]
+\caption{The Energy Consumption Model}
+% title of Table
+\centering
+% used for centering table
+\begin{tabular}{|c|c|c|c|c|}
+% centered columns (4 columns)
+      \hline
+%inserts double horizontal lines
+Sensor status & MCU & Radio & Sensing & Power (mW) \\ [0.5ex]
+\hline
+% inserts single horizontal line
+LISTENING & on & on & on & 20.05 \\
+% inserting body of the table
+\hline
+ACTIVE & on & off & on & 9.72 \\
+\hline
+SLEEP & off & off & off & 0.02 \\
+\hline
+COMPUTATION & on & on & on & 26.83 \\
+%\hline
+%\multicolumn{4}{|c|}{Energy needed to send/receive a 1-bit} & 0.2575\\
+ \hline
+\end{tabular}
+
+\label{table1}
+% is used to refer this table in the text
+\end{table}
+
+\indent For the sake of simplicity we ignore  the energy needed to turn on the radio, to start up the sensor node, to move from one status to another, etc. Thus, when a sensor becomes active (i.e., it has already chosen its status), it can turn  its radio  off to  save battery. The value of energy spent to send a 1-bit-content message is  obtained by using  the equation in ~\cite{ref112} to calculate  the energy cost for transmitting  messages and  we propose  the same value for receiving the packets. The energy  needed to send or receive a 1-bit packet is equal to $0.2575~mW$.
+
+
+%We have used an energy consumption model, which is presented in chapter 1, section \ref{ch1:sec9:subsec2}. 
+
+The initial energy of each node  is randomly set in the interval $[500;700]$.  A sensor node  will not participate in the  next round if its  remaining energy is less than $E_{th}=36~\mbox{Joules}$, the minimum  energy needed for the  node to stay alive  during one round.  This value has  been computed by  multiplying the energy consumed in  active state (9.72 mW) by the time in second  for one round (3600 seconds), and  adding  the energy  for  the pre-sensing  phases. According to the  interval of initial energy, a sensor may be alive during at most 20 rounds.
+
+
+\subsection{Performance Metrics}
+\label{ch4:sec:04:04}  
+In the simulations,  we introduce the following performance metrics to evaluate
+the efficiency of our approach:
+
+\begin{enumerate}[i)]
+%\begin{itemize}
+\item {{\bf Network Lifetime}:} we define the network lifetime as the time until
+  the  coverage  ratio  drops  below  a  predefined  threshold.   We  denote  by
+  $Lifetime_{95}$ (respectively $Lifetime_{50}$) the amount of time during which
+  the  network can  satisfy an  area coverage  greater than  $95\%$ (respectively
+  $50\%$). We assume that the sensor  network can fulfill its task until all its
+  nodes have  been drained of their  energy or it  becomes disconnected. Network
+  connectivity  is crucial because  an active  sensor node  without connectivity
+  towards a base  station cannot transmit any information  regarding an observed
+  event in the area that it monitors.
+     
+\item {{\bf Coverage Ratio (CR)}:} it measures how well the WSN is able to 
+  observe the area of interest. In our case, we discretized the sensor field
+  as a regular grid, which yields the following equation to compute the
+  coverage ratio: 
 \begin{equation*}
 \scriptsize
 \begin{equation*}
 \scriptsize
-\mbox{CR}(\%) = \frac{\mbox{$n^t$}}{\mbox{$N$}} \times 100,
+\mbox{CR}(\%) = \frac{\mbox{$n$}}{\mbox{$N$}} \times 100.
 \end{equation*}
 \end{equation*}
-where $n^t$ is  the number of covered  grid points by the active  sensors of all
-subregions during round $t$ in the current sensing phase and $N$ is the total number
-of grid points  in the sensing field of  the network. In our simulations $N = 51
+where  $n$ is  the number  of covered  grid points  by active  sensors  of every
+subregions during  the current  sensing phase  and $N$ is the total number  of grid
+points in  the sensing field. In  our simulations, we have  a layout of  $N = 51
 \times 26 = 1326$ grid points.
 
 \times 26 = 1326$ grid points.
 
-\item{{\bf Number  of Active Sensors Ratio  (ASR)}:} it is important  to have as
-  few  active  nodes  as  possible  in  each  round, in  order  to  minimize  the
-  communication overhead  and maximize the network lifetime.  The Active Sensors
-  Ratio is defined as follows:
-\begin{equation*}
-\scriptsize  \mbox{ASR}(\%) = \frac{\sum\limits_{r=1}^R
-  \mbox{$A_r^t$}}{\mbox{$|J|$}} \times 100,
-\end{equation*}
-where $A_r^t$ is the number of  active sensors in the subregion $r$ during round
-$t$ in the  current sensing phase, $|J|$  is the total number of  sensors in the
-network, and $R$ is the total number of subregions in the network.
-
-\item {{\bf Network Lifetime}:} is described in chapter 3, section \ref{ch3:sec:04:04}.
-
-\item {{\bf  Energy Consumption  (EC)}:} the average energy consumption  can be
-  seen as the total energy consumed by the sensors during the $Lifetime_{95}$ or
-  $Lifetime_{50}$  divided  by the  number  of rounds.  EC  can  be computed  as
-  follows:
-
- % New version with global loops on period
+\item {{\bf  Energy Consumption}:}  energy consumption (EC)  can be seen  as the
+  total amount of  energy   consumed   by   the   sensors   during   $Lifetime_{95}$   
+  or $Lifetime_{50}$, divided  by the number of periods.  Formally, the computation
+  of EC can be expressed as follows:
   \begin{equation*}
     \scriptsize
   \begin{equation*}
     \scriptsize
-    \mbox{EC} = \frac{\sum\limits_{m=1}^{M_L} \left[ \left( E^{\mbox{com}}_m+E^{\mbox{list}}_m+E^{\mbox{comp}}_m \right) +\sum\limits_{t=1}^{T_m} \left( E^{a}_t+E^{s}_t \right) \right]}{\sum\limits_{m=1}^{M_L} T_m},
+    \mbox{EC} = \frac{\sum\limits_{m=1}^{M} \left( E^{\mbox{com}}_m+E^{\mbox{list}}_m+E^{\mbox{comp}}_m  
+      + E^{a}_m+E^{s}_m \right)}{M},
   \end{equation*}
 
   \end{equation*}
 
-
-where  $M_L$ is  the number  of periods  and  $T_m$ the  number of rounds in  a
-period~$m$, both  during $Lifetime_{95}$  or $Lifetime_{50}$. The total energy
+where $M$  corresponds to  the number  of periods.  The  total amount  of energy
 consumed by the  sensors (EC) comes through taking  into consideration four main
 consumed by the  sensors (EC) comes through taking  into consideration four main
-energy  factors.   The  first  one  ,  denoted  $E^{\scriptsize  \mbox{com}}_m$,
-represents  the  energy   consumption  spent  by  all  the   nodes  for  wireless
+energy   factors.  The  first   one,  denoted   $E^{\scriptsize  \mbox{com}}_m$,
+represents  the  energy  consumption  spent   by  all  the  nodes  for  wireless
 communications  during period  $m$.  $E^{\scriptsize  \mbox{list}}_m$,  the next
 factor, corresponds  to the energy consumed  by the sensors  in LISTENING status
 before  receiving   the  decision  to  go   active  or  sleep   in  period  $m$.
 $E^{\scriptsize \mbox{comp}}_m$  refers to the  energy needed by all  the leader
 communications  during period  $m$.  $E^{\scriptsize  \mbox{list}}_m$,  the next
 factor, corresponds  to the energy consumed  by the sensors  in LISTENING status
 before  receiving   the  decision  to  go   active  or  sleep   in  period  $m$.
 $E^{\scriptsize \mbox{comp}}_m$  refers to the  energy needed by all  the leader
-nodes to solve the integer program during a period. Finally, $E^a_t$ and $E^s_t$
-indicate the energy consumed by the whole network in round $t$.
+nodes  to solve the  integer program  during a  period.  Finally,  $E^a_{m}$ and
+$E^s_{m}$ indicate the energy consumed by the whole network in the sensing phase
+(active and sleeping nodes).
 
 
+\item{{\bf Number of Active Sensors Ratio(ASR)}:} It is important to have as few active nodes as possible in each round,
+in  order to  minimize  the communication  overhead  and maximize  the
+network lifetime. The Active Sensors Ratio is defined as follows:
+\begin{equation*}
+\scriptsize
+\mbox{ASR}(\%) =  \frac{\sum\limits_{r=1}^R \mbox{$A_r$}}{\mbox{$S$}} \times 100 .
+\end{equation*}
+Where: $A_r$ is the number of active sensors in the subregion $r$ during current period, $S$ is the total number of sensors in the network, and $R$ is the total number of the subregions in the network.
 
 
-\item {{\bf Execution Time}:} is described in chapter 3, section \ref{ch3:sec:04:04}.
+\item {{\bf Execution Time}:} a  sensor  node has  limited  energy  resources  and computing  power, therefore it is important that the proposed algorithm has the shortest possible execution  time. The energy of  a sensor node  must be mainly used   for  the  sensing   phase,  not   for  the   pre-sensing  ones. In this dissertation, the original execution time  is computed on a laptop  DELL with Intel Core~i3~2370~M (2.4 GHz)  processor (2  cores) and the  MIPS (Million Instructions  Per Second) rate equal to 35330. To be consistent  with the use of a sensor node with Atmels AVR ATmega103L  microcontroller (6 MHz) and  a MIPS rate  equal to 6 to  run the optimization   resolution,   this  time   is   multiplied   by  2944.2   $\left( \frac{35330}{2} \times  \frac{1}{6} \right)$.  
   
   
-\item {{\bf Stopped simulation runs}:} is described in chapter 3, section \ref{ch3:sec:04:04}.
+\item {{\bf Stopped simulation runs}:} A simulation ends  when the  sensor network becomes disconnected (some nodes are dead and are not able to send information to the base station). We report the number of simulations that are stopped due to network disconnections and for which round it occurs ( in chapter 3, period consists of one round).
 
 \end{enumerate}
 
 
 
 
 \end{enumerate}
 
 
 
-\subsection{Results Analysis and Comparison }
-\label{ch4:sec:03:02}
+\subsection{Performance Analysis for Different Subregions}
+\label{ch4:sec:04:05}
+  
+In this subsection, we are studied the performance of our DiLCO protocol for a different number of subregions (Leaders).
+The DiLCO-1 protocol is a centralized approach on all the area of the interest, while  DiLCO-2, DiLCO-4, DiLCO-8, DiLCO-16 and DiLCO-32 are distributed on two, four, eight, sixteen, and thirty-two subregions respectively. We did not take the DiLCO-1 protocol in our simulation results because it need high execution time to give the decision leading to consume all it's energy before producing the solution for optimization problem.
+
+\begin{enumerate}[i)]
+\item {{\bf Coverage Ratio}}
+%\subsubsection{Coverage Ratio} 
+%\label{ch4:sec:04:02:01}
+In this experiment, Figure~\ref{Figures/ch4/R1/CR} shows the average coverage ratio for 150 deployed nodes.  
+\parskip 0pt    
+\begin{figure}[h!]
+\centering
+ \includegraphics[scale=0.6] {Figures/ch4/R1/CR.pdf} 
+\caption{Coverage ratio for 150 deployed nodes}
+\label{Figures/ch4/R1/CR}
+\end{figure} 
+It can be seen that DiLCO protocol (with 4, 8, 16 and 32 subregions) gives nearly similar coverage ratios during the first thirty rounds.  
+DiLCO-2 protocol gives near similar coverage ratio with other ones for first 10 rounds and then decreased until the died of the network in the round $18^{th}$ because it consumes more energy with the effect of the network disconnection. 
+As shown in the figure ~\ref{Figures/ch4/R1/CR}, as the number of subregions increases,  the coverage preservation for area of interest increases for a larger number of rounds. Coverage ratio decreases when the number of rounds increases due to dead nodes. Although some nodes are dead, thanks to  DiLCO-8,  DiLCO-16 and  DiLCO-32 protocols,  other nodes are  preserved to ensure the coverage. Moreover, when we have a dense sensor network, it leads to maintain the  coverage for a larger number of rounds. DiLCO-8,  DiLCO-16 and  DiLCO-32 protocols are slightly more efficient than other protocols, because they subdivide the area of interest into 8, 16 and 32~subregions; if one of the subregions becomes disconnected, the coverage may be still ensured in the remaining subregions.
+
+\item {{\bf Active Sensors Ratio}}
+%\subsubsection{Active Sensors Ratio} 
+ Figure~\ref{Figures/ch4/R1/ASR} shows the average active nodes ratio for 150 deployed nodes.
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R1/ASR.pdf}  
+\caption{Active sensors ratio for 150 deployed nodes }
+\label{Figures/ch4/R1/ASR}
+\end{figure} 
+The results presented in figure~\ref{Figures/ch4/R1/ASR} show the increase in the number of subregions led to increase in the number of active nodes. The DiLCO-16 and DiLCO-32 protocols have a larger number of active nodes but it preserve the coverage for a larger number of rounds. The advantage of the DiLCO-16 and DiLCO-32 protocols are that even if a network is disconnected in one subregion, the other ones usually continues the optimization process, and this extends the lifetime of the network.
+
+\item {{\bf The percentage of stopped simulation runs}}
+%\subsubsection{The percentage of stopped simulation runs}
+Figure~\ref{Figures/ch4/R1/SR} illustrates the percentage of stopped simulation runs per round for 150 deployed nodes. 
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R1/SR.pdf} 
+\caption{Percentage of stopped simulation runs for 150 deployed nodes }
+\label{Figures/ch4/R1/SR}
+\end{figure} 
+
+It can be observed that the DiLCO-2  is the approach which stops first because it applied the optimization on only two subregions for the area of interest that is why it is first exhibits network disconnections.
+Thus, as explained previously, in case of the DiLCO-16 and DiLCO-32 with several subregions, the optimization effectively continues as long as a network in a subregion is still connected. This longer partial coverage optimization participates in extending the network lifetime. 
+
+\item {{\bf The Energy Consumption}}
+%\subsubsection{The Energy Consumption}
+We measure the energy consumed by the sensors during the communication, listening, computation, active, and sleep modes for different network densities and compare it for different subregions.  Figures~\ref{Figures/ch4/R1/EC95} and ~\ref{Figures/ch4/R1/EC50} illustrate the energy consumption for different network sizes for $Lifetime95$ and $Lifetime50$. 
 
 
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R1/EC95.pdf} 
+\caption{Energy Consumption for Lifetime95}
+\label{Figures/ch4/R1/EC95}
+\end{figure} 
 
 
-\begin{enumerate}[(i)]
+The results show that DiLCO-16 and DiLCO-32 are the most competitive from the energy consumption point of view but as the network size increase the energy consumption increase compared with DiLCO-2,  DiLCO-4, and DiLCO-8. The other approaches have a high energy consumption due to the energy consumed during the different modes of the sensor node.\\
+As shown in Figures~\ref{Figures/ch4/R1/EC95} and ~\ref{Figures/ch4/R1/EC50}, DiLCO-2 consumes more energy than the other versions of DiLCO, especially for large sizes of network. This is easy to understand since the bigger the number of sensors involved in the integer program, the larger the time computation to solve the optimization problem as well as the higher energy consumed during the communication.  
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R1/EC50.pdf} 
+\caption{Energy Consumption for Lifetime50}
+\label{Figures/ch4/R1/EC50}
+\end{figure} 
+In fact,  a distributed method on the subregions greatly reduces the number of communications, the time of listening and computation so thanks to the partitioning of the initial network in several independent subnetworks. 
 
 
-\item {{\bf Coverage Ratio}}
-%\subsection{Coverage ratio} 
-%\label{ch4:sec:03:02:01}
-
-Figure~\ref{fig3} shows  the average coverage  ratio for 150 deployed  nodes. We
-can notice that for the first thirty rounds both DESK and GAF provide a coverage
-which is a little bit better than the one of MuDiLCO.  
-
-This is due  to the fact that, in comparison with  MuDiLCO which uses optimization
-to put in  SLEEP status redundant sensors, more sensor  nodes remain active with
-DESK and GAF.   As a consequence, when the number of  rounds increases, a larger
-number of node failures  can be observed in DESK and GAF,  resulting in a faster
-decrease of the coverage ratio.   Furthermore, our protocol allows to maintain a
-coverage ratio  greater than  50\% for far  more rounds.  Overall,  the proposed
-sensor  activity scheduling based  on optimization  in MuDiLCO  maintains higher
-coverage ratios of the  area of interest for a larger number  of rounds. It also
-means that MuDiLCO saves more energy,  with less dead nodes, at most for several
-rounds, and thus should extend the network lifetime.
+\item {{\bf Execution Time}}
+%\subsubsection{Execution Time}
+In this experiment, the execution time of the our distributed optimization approach has been studied. Figure~\ref{Figures/ch4/R1/T} gives the average execution times in seconds for the decision phase (solving of the optimization problem) during one round. They are given for the different approaches and various numbers of sensors. The original execution time is computed as described in section \ref{ch4:sec:04:02}.
+%The original execution time is computed on a laptop DELL with intel Core i3 2370 M (2.4 GHz) processor (2 cores) and the MIPS (Million Instructions Per Second) rate equal to 35330. To be consistent with the use of a sensor node with Atmels AVR ATmega103L microcontroller (6 MHz) and a MIPS rate equal to 6 to run the optimization resolution, this time is multiplied by 2944.2 $\left( \frac{35330}{2} \times 6\right)$ and reported on Figure~\ref{fig8} for different network sizes.
 
 
-\begin{figure}[ht!]
+\begin{figure}[h!]
 \centering
 \centering
- \includegraphics[scale=0.6] {Figures/ch4/R1/CR.pdf}   
-\caption{Average coverage ratio for 150 deployed nodes}
-\label{fig3}
+\includegraphics[scale=0.6]{Figures/ch4/R1/T.pdf}  
+\caption{Execution Time (in seconds)}
+\label{Figures/ch4/R1/T}
 \end{figure} 
 
 \end{figure} 
 
+We can see from figure~\ref{Figures/ch4/R1/T}, that the DiLCO-32 has very low execution times in comparison with other DiLCO versions, because it distributed on larger number of small subregions.  Conversely, DiLCO-2 requires to solve an optimization problem considering half the nodes in each subregion presents high execution times.
 
 
-\item {{\bf Active sensors ratio}}
-%\subsection{Active sensors ratio} 
-%\label{ch4:sec:03:02:02}
+The DiLCO-32 protocol has more suitable times at the same time it turn on redundant nodes more.  We think that in distributed fashion the solving of the  optimization problem in a subregion can be tackled by sensor nodes. Overall, to be able to deal with very large networks,  a distributed method is clearly required.
 
 
-It is crucial to have as few active nodes as possible in each round, in order to 
-minimize    the    communication    overhead    and   maximize    the    network
-lifetime. Figure~\ref{fig4}  presents the active  sensor ratio for  150 deployed
-nodes all along the network lifetime. It appears that up to round thirteen, DESK
-and GAF have  respectively 37.6\% and 44.8\% of nodes  in ACTIVE status, whereas
-MuDiLCO clearly  outperforms them  with only 24.8\%  of active nodes.  After the
-thirty-fifth round, MuDiLCO exhibits larger numbers of active nodes, which agrees
-with  the  dual  observation  of  higher  level  of  coverage  made  previously.
-Obviously, in  that case DESK  and GAF have  less active nodes, since  they have
-activated many nodes  at the beginning. Anyway, MuDiLCO  activates the available
-nodes in a more efficient manner.
+\item {{\bf The Network Lifetime}}
+%\subsubsection{The Network Lifetime}
+In figure~\ref{Figures/ch4/R1/LT95} and \ref{Figures/ch4/R1/LT50}, network lifetime, $Lifetime95$ and $Lifetime50$ respectively, are illustrated for different network sizes. 
 
 
-\begin{figure}[ht!]
+\begin{figure}[h!]
 \centering
 \centering
-\includegraphics[scale=0.6]{Figures/ch4/R1/ASR.pdf}  
-\caption{Active sensors ratio for 150 deployed nodes}
-\label{fig4}
+\includegraphics[scale=0.6]{Figures/ch4/R1/LT95.pdf}  
+\caption{Network Lifetime for $Lifetime95$}
+\label{Figures/ch4/R1/LT95}
 \end{figure} 
 \end{figure} 
+We see that DiLCO-2 protocol results in execution times that quickly become unsuitable for a sensor network as well as the energy consumed during the communication seems to be huge because it is distributed over only two subregions.
 
 
-\item {{\bf Stopped simulation runs}}
-%\subsection{Stopped simulation runs}
-%\label{ch4:sec:03:02:03}
+As highlighted by figures~\ref{Figures/ch4/R1/LT95} and \ref{Figures/ch4/R1/LT50}, the network lifetime obviously increases when the size of the network increases, with DiLCO-16 protocol that leads to the larger lifetime improvement. By choosing the best suited nodes, for each round, to cover the area of interest and by
+letting the other ones sleep in order to be used later in next rounds, DiLCO-16 protocol efficiently extends the network lifetime because the benefit from the optimization with 16 subregions is better than DiLCO-32 protocol with 32 subregion. DilCO-32 protocol puts in active mode a larger number of sensor nodes especially near the borders of the subdivisions.
 
 
-Figure~\ref{fig6} reports the cumulative  percentage of stopped simulations runs
-per round for 150 deployed nodes. This figure gives the  breakpoint for each method.  DESK stops first,  after approximately 45~rounds, because it consumes the
-more energy by  turning on a large number of redundant  nodes during the sensing
-phase. GAF  stops secondly for the  same reason than  DESK.  MuDiLCO overcomes
-DESK and GAF because the  optimization process distributed on several subregions
-leads  to coverage  preservation and  so extends  the network  lifetime.  Let us
-emphasize that the  simulation continues as long as a network  in a subregion is
-still connected.
+Comparison shows that DiLCO-16 protocol, which uses 16 leaders, is the best one because it is used less number of active nodes during the network lifetime compared with DiLCO-32 protocol. It also means that distributing the protocol in each node and subdividing the sensing field into many subregions, which are managed independently and simultaneously, is the most relevant way to maximize the lifetime of a network.
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R1/LT50.pdf}  
+\caption{Network Lifetime for $Lifetime50$}
+\label{Figures/ch4/R1/LT50}
+\end{figure} 
 
 
+\end{enumerate}
 
 
-\begin{figure}[ht!]
+\subsection{Performance Analysis for Primary Point Models}
+\label{ch4:sec:04:06}
+
+In this section, we are studied the performance of DiLCO~16 approach for a different primary point models. The objective of this comparison is to select the suitable primary point model to be used by DiLCO protocol. 
+
+In this comparisons, DiLCO-16 protocol are used with five models which are called Model~1( With 5 Primary Points), Model~2 ( With 9 Primary Points), Model~3 ( With 13 Primary Points), Model~4 ( With 17 Primary Points), and Model~5 ( With 21 Primary Points). 
+
+
+\begin{enumerate}[i)]
+
+\item {{\bf Coverage Ratio}}
+%\subsubsection{Coverage Ratio} 
+In this experiment, we Figure~\ref{Figures/ch4/R2/CR} shows the average coverage ratio for 150 deployed nodes.  
+\parskip 0pt    
+\begin{figure}[h!]
 \centering
 \centering
-\includegraphics[scale=0.6]{Figures/ch4/R1/SR.pdf} 
-\caption{Cumulative percentage of stopped simulation runs for 150 deployed nodes }
-\label{fig6}
+ \includegraphics[scale=0.6] {Figures/ch4/R2/CR.pdf} 
+\caption{Coverage ratio for 150 deployed nodes}
+\label{Figures/ch4/R2/CR}
 \end{figure} 
 \end{figure} 
+It is shown that all models provide a very near coverage ratios during the network lifetime, with very small superiority for the models with higher number of primary points. Moreover, when the number of rounds increases, coverage ratio produced by Model~3, Model~4, and Model~5 decreases in comparison with Model~1 and Model~2 due to the high energy consumption during the listening to take the decision after finishing optimization process for larger number of primary points. As shown in figure ~\ref{Figures/ch4/R2/CR}, Coverage ratio decreases when the number of rounds increases due to dead nodes. Although  some nodes are dead,
+thanks to  Model~2, which is slightly more efficient than other Models, because it is balanced between the number of rounds and the better coverage ratio in comparison with other Models.
 
 
+\item {{\bf Active Sensors Ratio}}
+%\subsubsection{Active Sensors Ratio} 
+ Figure~\ref{Figures/ch4/R2/ASR} shows the average active nodes ratio for 150 deployed nodes.
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R2/ASR.pdf}  
+\caption{Active sensors ratio for 150 deployed nodes }
+\label{Figures/ch4/R2/ASR}
+\end{figure} 
+
+The results presented in figure~\ref{Figures/ch4/R2/ASR} show the superiority of the proposed  Model 1, in comparison with the other Models. The
+model with less number of primary points uses less active nodes than the other models, which uses a more number of primary points to represent the area of the sensor. According to the results that presented in figure~\ref{Figures/ch4/R2/CR}, we observe that although the Model~1 continue to a larger number of rounds, but it has less coverage ratio compared with other models. The advantage of the Model~2 approach is to use less number of active nodes for each round compared with Model~3,  Model~4, and Model~5; and this led to continue for a larger number of rounds with extending the network lifetime. Model~2 has a better coverage ratio compared to Model~1 and acceptable number of rounds.
 
 
-\item {{\bf Energy consumption}} \label{subsec:EC} 
-%\subsection{Energy consumption} 
-%\label{ch4:sec:03:02:04}
 
 
-We  measure  the  energy  consumed  by the  sensors  during  the  communication,
-listening, computation, active, and sleep status for different network densities
-and   compare   it   with   the  two   other   methods.  Figures~\ref{fig7}(a)
-and~\ref{fig7}(b)  illustrate  the  energy  consumption,  considering  different
-network sizes, for $Lifetime_{95}$ and $Lifetime_{50}$.
+\item {{\bf he percentage of stopped simulation runs}}
+%\subsubsection{The percentage of stopped simulation runs}
+In this study, we want to show the effect of increasing the primary points on the number of stopped simulation runs for each round. Figure~\ref{Figures/ch4/R2/SR} illustrates the percentage of stopped simulation runs per round for 150 deployed nodes. 
 
 
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R2/SR.pdf} 
+\caption{Percentage of stopped simulation runs for 150 deployed nodes }
+\label{Figures/ch4/R2/SR}
+\end{figure} 
+
+As shown in Figure~\ref{Figures/ch4/R2/SR}, when the number of primary points are increased, the percentage of the stopped simulation runs per round is increased. The reason behind the increase is the increase in the sensors dead when the primary points increases. We are observed that the Model~1 is a better than other models because it conserve more energy by turn on less number of sensors during the sensing phase, but in the same time it preserve the coverage with a less coverage ratio in comparison with other models. Model~2 seems to be more suitable to be used in wireless sensor networks.
+
+
+\item {{\bf The Energy Consumption}}
+%\subsubsection{The Energy Consumption}
+In this experiment, we study the effect of increasing the primary points to represent the area of the sensor on the energy consumed by the wireless sensor network for different network densities.  Figures~\ref{Figures/ch4/R2/EC95} and ~\ref{Figures/ch4/R2/EC50} illustrate the energy consumption for different network sizes for $Lifetime95$ and $Lifetime50$.
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R2/EC95.pdf} 
+\caption{Energy Consumption with $95\%-Lifetime$}
+\label{Figures/ch4/R2/EC95}
+\end{figure} 
  
 \begin{figure}[h!]
 \centering
  
 \begin{figure}[h!]
 \centering
- %\begin{multicols}{1}
+\includegraphics[scale=0.6]{Figures/ch4/R2/EC50.pdf} 
+\caption{Energy Consumption with $Lifetime50$}
+\label{Figures/ch4/R2/EC50}
+\end{figure} 
+
+We see from the results presented in Figures~\ref{Figures/ch4/R2/EC95} and \ref{Figures/ch4/R2/EC50}, The energy consumed by the network for each round increases when the primary points increases, because the decision for optimization process will takes more time leads to consume more energy during the listening mode. The results show that Model~1 is the most competitive from the energy consumption point of view but the worst one from coverage ratio point of view. The other Models have a high energy consumption  due  to the increase in the primary points, which are led to increase the energy consumption during the listening mode before producing the solution by solving the optimization process. In fact, we see that Model~2 is a good candidate to be used by wireless sensor network because it preserve a good coverage ratio and a suitable energy consumption in comparison with other models. 
+
+\item {{\bf Execution Time}}
+%\subsubsection{Execution Time}
+In this experiment, we have studied the impact of the increase in primary points on the execution time of DiLCO protocol. Figure~\ref{Figures/ch4/R2/T} gives the average execution times in seconds for the decision phase (solving of the optimization problem) during one round. The original execution time is computed as described in section \ref{ch4:sec:04:02}. 
+
+\begin{figure}[h!]
 \centering
 \centering
-\includegraphics[scale=0.6]{Figures/ch4/R1/EC95.pdf}\\~ ~ ~ ~ ~(a) \\
-%\vfill
-\includegraphics[scale=0.6]{Figures/ch4/R1/EC50.pdf}\\~ ~ ~ ~ ~(b)
+\includegraphics[scale=0.6]{Figures/ch4/R2/T.pdf}  
+\caption{Execution Time(s) vs The Number of Sensors }
+\label{Figures/ch4/R2/T}
+\end{figure} 
 
 
-%\end{multicols} 
-\caption{Energy consumption for (a) $Lifetime_{95}$ and (b) $Lifetime_{50}$}
-\label{fig7}
-\end{figure}
+They are given for the different primary point models and various numbers of sensors. We can see from Figure~\ref{Figures/ch4/R2/T}, that Model~1 has lower execution time in comparison with other Models, because it used smaller number of primary points to represent the area of the sensor.  Conversely, the other primary point models  have been presented  a higher execution times.
+Moreover, Model~2 has more suitable times and coverage ratio that lead to continue for a larger number of rounds extending the network lifetime. We  think that a good primary point model, this one that balances between the coverage ratio and the number of rounds during the lifetime of the network.
+
+\item {{\bf The Network Lifetime}}
+%\subsubsection{The Network Lifetime}
+Finally, we will study the effect of increasing the primary points on the lifetime of the network. In Figure~\ref{Figures/ch4/R2/LT95} and in Figure~\ref{Figures/ch4/R2/LT50}, network lifetime, $Lifetime95$ and $Lifetime50$ respectively, are illustrated for different network sizes. 
 
 
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R2/LT95.pdf}  
+\caption{Network Lifetime for $Lifetime95$}
+\label{Figures/ch4/R2/LT95}
+\end{figure} 
 
 
-The  results  show  that  MuDiLCO  is  the  most  competitive  from  the  energy
-consumption point of view.  The  other approaches have a high energy consumption
-due  to activating a  larger number  of redundant  nodes as  well as  the energy
-consumed during  the different  status of the  sensor node. Among  the different
-versions of our protocol, the MuDiLCO-7  one consumes more energy than the other
-versions. This is  easy to understand since the bigger the  number of rounds and
-the number of  sensors involved in the integer program are,  the larger the time
-computation to solve the optimization problem is. To improve the performances of
-MuDiLCO-7, we  should increase the  number of subregions  in order to  have less
-sensors to consider in the integer program.
 
 
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R2/LT50.pdf}  
+\caption{Network Lifetime for $Lifetime50$}
+\label{Figures/ch4/R2/LT50}
+\end{figure} 
 
 
 
 
- \item {{\bf Execution time}}
-%\subsection{Execution time}
-%\label{ch4:sec:03:02:05}
+As highlighted by figures~\ref{Figures/ch4/R2/LT95} and \ref{Figures/ch4/R2/LT50}, the network lifetime obviously increases when the size of the network increases, with  Model~1 that leads to the larger lifetime improvement.
+Comparison shows that the Model~1, which uses less number of primary points, is the best one because it is less energy consumption during the network lifetime. It is also the worst one from the point of view of coverage ratio. Our proposed Model~2 efficiently prolongs the network lifetime with a good coverage ratio in comparison with other models.
+\end{enumerate}
 
 
-We observe  the impact of the  network size and of  the number of  rounds on the
-computation  time.   Figure~\ref{fig77} gives  the  average  execution times  in
-seconds (needed to solve optimization problem) for different values of $T$. The original execution time is computed as described in chapter 3, section \ref{ch3:sec:04:02}.
+\subsection{Performance Comparison with other Approaches}
+\label{ch4:sec:04:07}
+Based on the results, which are conducted from previous two subsections, \ref{ch4:sec:04:02} and \ref{ch4:sec:04:03}, we have found that DiLCO-16 protocol and DiLCO-32 protocol with Model~2 are the best candidates to be compared with other two approaches. The first approach, called DESK that proposed by ~\cite{DESK}, which is a full distributed coverage algorithm. The second approach, called GAF~\cite{GAF}, consists in dividing the region into fixed squares.   During the decision phase, in each square, one sensor is chosen to remain on during the sensing phase time. 
 
 
-%The original execution time  is computed on a laptop  DELL with Intel Core~i3~2370~M (2.4 GHz)  processor (2  cores) and the  MIPS (Million Instructions  Per Second) rate equal to 35330. To be consistent  with the use of a sensor node with Atmels AVR ATmega103L  microcontroller (6 MHz) and  a MIPS rate  equal to 6 to  run the optimization   resolution,   this  time   is   multiplied   by  2944.2   $\left( \frac{35330}{2} \times  \frac{1}{6} \right)$ and  reported on Figure~\ref{fig77} for different network sizes.
+\begin{enumerate}[i)]
 
 
-\begin{figure}[ht!]
+\item {{\bf Coverage Ratio}}
+%\subsubsection{Coverage Ratio} 
+In this experiment, the average coverage ratio for 150 deployed nodes has been demonstrated figure~\ref{Figures/ch4/R3/CR}. 
+\parskip 0pt    
+\begin{figure}[h!]
 \centering
 \centering
-\includegraphics[scale=0.6]{Figures/ch4/R1/T.pdf}  
-\caption{Execution Time (in seconds)}
-\label{fig77}
+ \includegraphics[scale=0.6] {Figures/ch4/R3/CR.pdf} 
+\caption{Coverage ratio for 150 deployed nodes}
+\label{Figures/ch4/R3/CR}
+\end{figure} 
+
+It has been shown that DESK and GAF provide a little better coverage ratio with 99.99\% and 99.91\% against 99.1\% and 99.2\% produced by DiLCO-16 and DiLCO-32 for the lowest number of rounds. This is due to the fact that DiLCO protocol versions put in sleep mode redundant sensors using optimization (which lightly decreases the coverage ratio) while there are more nodes are active in the case of DESK and GAF.
+
+Moreover, when the number of rounds increases, coverage ratio produced by DESK and GAF protocols decreases. This is due to dead nodes. However, DiLCO-16 protocol and DiLCO-32 protocol maintain almost a good coverage. This is because they optimized the coverage and the lifetime in wireless sensor network by selecting the best representative sensor nodes to take the responsibility of coverage during the sensing phase and this will leads to continue for a larger number of rounds and prolonging the network lifetime; although some nodes are dead, sensor activity scheduling of our protocol chooses other nodes to ensure the coverage of the area of interest. 
+
+\item {{\bf Active Sensors Ratio}}
+%\subsubsection{Active Sensors Ratio} 
+It is important to have as few active nodes as possible in each round, in  order to  minimize the energy consumption and maximize the network lifetime. Figure~\ref{Figures/ch4/R3/ASR} shows the average active nodes ratio for 150 deployed nodes. 
+
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R3/ASR.pdf}  
+\caption{Active sensors ratio for 150 deployed nodes }
+\label{Figures/ch4/R3/ASR}
 \end{figure} 
 
 \end{figure} 
 
-As expected,  the execution time increases  with the number of  rounds $T$ taken
-into account to schedule the sensing phase. The times obtained for $T=1,3$
-or $5$ seem bearable, but for $T=7$ they become quickly unsuitable for a sensor
-node, especially when  the sensor network size increases.   Again, we can notice
-that if we want  to schedule the nodes activities for a  large number of rounds,
-we need to choose a relevant number of subregions in order to avoid a complicated
-and cumbersome optimization.  On the one hand, a large value  for $T$ permits to
-reduce the  energy-overhead due  to the three  pre-sensing phases, on  the other
-hand  a leader  node may  waste a  considerable amount  of energy  to  solve the
-optimization problem.
-
-
-
-\item {{\bf Network lifetime}}
-%\subsection{Network lifetime}
-%\label{ch4:sec:03:02:06}
-
-The next  two figures,  Figures~\ref{fig8}(a) and \ref{fig8}(b),  illustrate the
-network lifetime  for different network sizes,  respectively for $Lifetime_{95}$
-and  $Lifetime_{50}$.  Both  figures show  that the  network  lifetime increases
-together with the  number of sensor nodes, whatever the  protocol, thanks to the
-node  density  which  results in  more  and  more  redundant  nodes that  can  be
-deactivated and thus save energy.  Compared to the other approaches, our MuDiLCO
-protocol  maximizes the  lifetime of  the network.   In particular  the  gain in
-lifetime for a  coverage over 95\% is greater than 38\%  when switching from GAF
-to MuDiLCO-3.  The  slight decrease that can be observed  for MuDiLCO-7 in case
-of  $Lifetime_{95}$  with  large  wireless  sensor  networks  results  from  the
-difficulty  of the optimization  problem to  be solved  by the  integer program.
-This  point was  already noticed  in \ref{subsec:EC} devoted  to the
-energy consumption,  since network lifetime and energy  consumption are directly
-linked.
+The results presented in figure~\ref{Figures/ch4/R3/ASR} show the superiority of the proposed DiLCO-16 protocol and DiLCO-32 protocol, in comparison with the other approaches.  We have observed that DESK and GAF have 37.5 \% and 44.5 \% active nodes and DiLCO-16 protocol and DiLCO-32 protocol compete perfectly with only 17.4 \%, 24.8 \% and 26.8 \%  active nodes for the first 14 rounds. Then as the number of rounds increases DiLCO-16 protocol and DiLCO-32 protocol have larger number of active nodes in comparison with DESK and GAF, especially from round $35^{th}$ because they give a better coverage ratio than other approaches. We see that DESK and GAF have less number of active nodes beginning at the rounds $35^{th}$ and $32^{th}$ because there are many nodes are died due to the high energy consumption by the redundant nodes during the sensing phase. 
 
 
 
 
+\item {{\bf The percentage of stopped simulation runs}}
+%\subsubsection{The percentage of stopped simulation runs}
+The results presented in this experiment, is to show the comparison of DiLCO-16 protocol and DiLCO-32 protocol with other two approaches from point of view of stopped simulation runs per round.
+Figure~\ref{Figures/ch4/R3/SR} illustrates the percentage of stopped simulation
+runs per round for 150 deployed nodes. 
 \begin{figure}[h!]
 \centering
 \begin{figure}[h!]
 \centering
-% \begin{multicols}{0}
+\includegraphics[scale=0.6]{Figures/ch4/R3/SR.pdf} 
+\caption{Percentage of stopped simulation runs for 150 deployed nodes }
+\label{Figures/ch4/R3/SR}
+\end{figure} 
+It has been observed that DESK is the approach, which stops first because it consumes more energy for communication as well as it turn on a large number of redundant nodes during the sensing phase. On the other  hand DiLCO-16 protocol and DiLCO-32 protocol have less stopped simulation runs in comparison with DESK and GAF because it distributed the optimization on several subregions in order to optimizes the coverage and the lifetime of the network by activating a less number of nodes during the sensing phase leading to extend the network lifetime and coverage preservation. The optimization effectively continues as long as a network in a subregion is still connected.
+
+
+\item {{\bf The Energy Consumption}}
+%\subsubsection{The Energy Consumption}
+In this experiment, we have studied the effect of the energy consumed by the wireless sensor network during the communication, computation, listening, active, and sleep modes for different network densities and compare it with other approaches. Figures~\ref{Figures/ch4/R3/EC95} and ~\ref{Figures/ch4/R3/EC50} illustrate the energy consumption for different network sizes for $Lifetime95$ and $Lifetime50$. 
+
+\begin{figure}[h!]
 \centering
 \centering
-\includegraphics[scale=0.6]{Figures/ch4/R1/LT95.pdf}\\~ ~ ~ ~ ~(a) \\
-%\hfill 
-\includegraphics[scale=0.6]{Figures/ch4/R1/LT50.pdf}\\~ ~ ~ ~ ~(b)
+\includegraphics[scale=0.6]{Figures/ch4/R3/EC95.pdf} 
+\caption{Energy Consumption with $95\%-Lifetime$}
+\label{Figures/ch4/R3/EC95}
+\end{figure} 
 
 
-%\end{multicols} 
-\caption{Network lifetime for (a) $Lifetime_{95}$ and (b) $Lifetime_{50}$}
-  \label{fig8}
-\end{figure}
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R3/EC50.pdf} 
+\caption{Energy Consumption with $Lifetime50$}
+\label{Figures/ch4/R3/EC50}
+\end{figure} 
 
 
+The results show that DiLCO-16 protocol and DiLCO-32 protocol are the most competitive from the energy consumption point of view. The other approaches have a high energy consumption due to activating a larger number of redundant nodes as well as the energy consumed during the different modes of sensor nodes. In fact,  a distributed method on the subregions greatly reduces the number of communications and the time of listening so thanks to the partitioning of the initial network into several independent subnetworks. 
 
 
 
 
-\end{enumerate}
+\item {{\bf The Network Lifetime}}
+%\subsubsection{The Network Lifetime}
+In this experiment, we have observed the superiority of DiLCO-16 protocol and DiLCO-32 protocol against other two approaches in prolonging the network lifetime. In figures~\ref{Figures/ch4/R3/LT95} and \ref{Figures/ch4/R3/LT50}, network lifetime, $Lifetime95$ and $Lifetime50$ respectively, are illustrated for different network sizes.  
 
 
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R3/LT95.pdf}  
+\caption{Network Lifetime for $Lifetime95$}
+\label{Figures/ch4/R3/LT95}
+\end{figure}
 
 
-\section{Conclusion}
-\label{ch4:sec:04}
 
 
-We have addressed  the problem of the coverage and of the lifetime optimization in
-wireless  sensor networks.  This is  a key  issue as  sensor nodes  have limited
-resources in terms of memory, energy, and computational power. To cope with this
-problem,  the field  of sensing  is divided  into smaller  subregions  using the
-concept  of divide-and-conquer  method, and  then  we propose  a protocol  which
-optimizes coverage  and lifetime performances in each  subregion.  Our protocol,
-called MuDiLCO (Multiround  Distributed Lifetime Coverage Optimization) combines
-two  efficient   techniques:  network   leader  election  and   sensor  activity
-scheduling.
+\begin{figure}[h!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch4/R3/LT50.pdf}  
+\caption{Network Lifetime for $Lifetime50$}
+\label{Figures/ch4/R3/LT50}
+\end{figure} 
 
 
-The activity  scheduling in each subregion  works in periods,  where each period
-consists of four  phases: (i) Information Exchange, (ii)  Leader Election, (iii)
-Decision Phase to plan the activity  of the sensors over $T$ rounds, (iv) Sensing
-Phase itself divided into T rounds.
+As highlighted by figures~\ref{Figures/ch4/R3/LT95} and \ref{Figures/ch4/R3/LT50}, the network lifetime obviously increases when the size of the network increases, with DiLCO-16 protocol and DiLCO-32 protocol that leads to maximize the lifetime of the network compared with other approaches. 
+By choosing the best suited nodes, for each round, by optimizing the coverage and lifetime of the network to cover the area of interest and by letting the other ones sleep in order to be used later in next periods, DiLCO-16 protocol and DiLCO-32 protocol efficiently prolonged the network lifetime. 
+Comparison shows that DiLCO-16 protocol and DiLCO-32 protocol, which are used distributed optimization over the subregions, is the best one because it is robust to network disconnection during the network lifetime as well as it consumes less energy in comparison with other approaches. It also means that distributing the algorithm in each node and subdividing the sensing field into many subregions, which are managed independently and simultaneously, is the most relevant way to maximize the lifetime of a network.
 
 
-Simulations  results show the  relevance of  the proposed  protocol in  terms of
-lifetime, coverage  ratio, active  sensors ratio, energy  consumption, execution
-time. Indeed,  when dealing with  large wireless sensor networks,  a distributed
-approach, like  the one we  propose, allows to  reduce the difficulty of  a single
-global optimization problem by partitioning it in many smaller problems, one per
-subregion, that can be solved  more easily. Nevertheless, results also show that
-it is not possible to plan the activity of sensors over too many rounds, because
-the resulting optimization problem leads to too high resolution times and thus to
-an excessive energy consumption.
 
 
+\end{enumerate}
 
 
+\section{Conclusion}
+\label{ch4:sec:05}
+A crucial problem in WSN is to schedule the sensing activities of the different nodes  in order to  ensure both  coverage of  the area  of interest  and longer
+network lifetime. The inherent limitations of sensor nodes, in energy provision, communication and computing capacities,  require protocols that optimize the use
+of the  available resources  to  fulfill the sensing  task. To address  this problem, this chapter proposes a  two-step approach. Firstly, the field of sensing
+is  divided into  smaller  subregions using  the  concept of  divide-and-conquer method. Secondly,  a distributed  protocol called Distributed  Lifetime Coverage
+Optimization is applied in each  subregion to optimize the coverage and lifetime performances. In a subregion,  our protocol  consists in  electing a  leader node
+which will then perform a sensor activity scheduling. The challenges include how to  select the most efficient leader in each  subregion and  the  best representative set of active nodes to ensure a high level of coverage. To assess the performance of our approach, we  compared it with two other approaches using many performance metrics  like coverage ratio or network  lifetime. We have also studied the  impact of the  number of subregions  chosen to subdivide the  area of interest, considering  different  network  sizes. The  experiments  show  that increasing the  number of subregions improves  the lifetime. The  more subregions there are, the  more robust the network is against random disconnection resulting from dead nodes.  However, for  a given sensing field and network size there is an optimal number of  subregions. Therefore, in case of our simulation context  a subdivision in  $16$~subregions seems to be the most relevant.
 
 
 
 
\ No newline at end of file
index 01d5dbe080588f817368bd1ea2c693729d121747..9afbba18901e288537df7df3d84af65aab97df55 100644 (file)
 %%                          %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 %%                          %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\chapter{Perimeter-based Coverage Optimization to Improve Lifetime in Wireless Sensor Networks}
+\chapter{Multiround Distributed Lifetime Coverage Optimization Protocol in Wireless Sensor Networks}
 \label{ch5}
 
 \label{ch5}
 
-
-\section{summary}
+\section{Summary}
 \label{ch5:sec:01}
 \label{ch5:sec:01}
-
-The most important problem in a Wireless Sensor Network (WSN) is to optimize the
-use of its limited energy provision, so that it can fulfill its monitoring task
-as long as  possible. Among  known  available approaches  that can  be used  to
-improve  power  management,  lifetime coverage  optimization  provides  activity
-scheduling which ensures sensing coverage while minimizing the energy cost. In
-this paper,  we propose such an approach called Perimeter-based Coverage Optimization
-protocol (PeCO). It is a  hybrid of centralized and distributed methods: the
-region of interest is first subdivided into subregions and our protocol is then
-distributed among sensor nodes in each  subregion.
-The novelty of our approach lies essentially in the formulation of a new
-mathematical optimization  model based on the  perimeter coverage level  to schedule
-sensors' activities.  Extensive simulation experiments have been performed using
-OMNeT++, the  discrete event simulator, to  demonstrate that PeCO  can
-offer longer lifetime coverage for WSNs in comparison with some other protocols.
-
-\section{THE PeCO PROTOCOL DESCRIPTION}
+Coverage and lifetime are two paramount problems in Wireless  Sensor Networks (WSNs). In this paper, a method called Multiround Distributed Lifetime Coverage
+Optimization  protocol (MuDiLCO)  is proposed  to maintain  the coverage  and to improve the lifetime in wireless sensor  networks. The area of interest is first
+divided  into subregions and  then the  MuDiLCO protocol  is distributed  on the sensor nodes in each subregion. The proposed MuDiLCO protocol works in periods
+during which sets of sensor nodes are scheduled to remain active for a number of rounds  during the  sensing phase,  to ensure coverage  so as  to maximize the
+lifetime of  WSN. The decision process is  carried out by a  leader node, which solves an  integer program to  produce the best  representative sets to  be used
+during the rounds  of the sensing phase. Compared  with some existing protocols, simulation  results based  on  multiple criteria  (energy consumption,  coverage
+ratio, and  so on) show that  the proposed protocol can  prolong efficiently the network lifetime and improve the coverage performance.
+
+\section{MuDiLCO Protocol Description}
 \label{ch5:sec:02}
 \label{ch5:sec:02}
+\noindent In this section, we introduce the MuDiLCO protocol which is distributed on each subregion in the area of interest. It is based on two energy-efficient
+mechanisms: subdividing the area of interest into several subregions (like cluster architecture) using divide and conquer method, where the sensor nodes cooperate within each subregion as independent group in order to achieve a network leader election; and sensor activity scheduling for maintaining the coverage and prolonging the network lifetime, which are applied periodically. MuDiLCO protocol uses the same assumptions and network model that presented in chapter 4, section \ref{ch4:sec:02:01} and it has been used the primary point coverage model which is described in the same chapter, section \ref{ch4:sec:02:02}.
 
 
-\noindent  In  this  section,  we  describe in  details  our  Lifetime  Coverage
-Optimization protocol.  First we present the  assumptions we made and the models
-we considered (in particular the perimeter coverage one), second we describe the
-background idea of our protocol, and third  we give the outline of the algorithm
-executed by each node.
-
-
-
-\subsection{Assumptions and Models}
-\label{ch5:sec:02:01}
-PeCO protocol uses the same assumptions and network model that presented in chapter 3, section \ref{ch3:sec:02:01}.
-
-The PeCO protocol  uses the  same perimeter-coverage  model as  Huang and
-Tseng in~\cite{ref133}. It  can be expressed as follows:  a sensor is
-said to be perimeter  covered if all the points on its  perimeter are covered by
-at least  one sensor  other than  itself.  They  proved that  a network  area is
-$k$-covered if and only if each sensor in the network is $k$-perimeter-covered (perimeter covered by at least $k$ sensors).
-  
-Figure~\ref{pcm2sensors}(a)  shows  the coverage  of  sensor  node~$0$. On  this
-figure, we can  see that sensor~$0$ has  nine neighbors and we  have reported on
-its  perimeter (the  perimeter  of the  disk  covered by  the  sensor) for  each
-neighbor  the  two  points  resulting  from  intersection  of  the  two  sensing
-areas. These points are denoted for  neighbor~$i$ by $iL$ and $iR$, respectively
-for  left and  right from  neighbor  point of  view.  The  resulting couples  of
-intersection points subdivide the perimeter of sensor~$0$ into portions called
-arcs.
-
-\begin{figure}[ht!]
-  \centering
-  \begin{tabular}{@{}cr@{}}
-    \includegraphics[width=95mm]{Figures/ch5/pcm.jpg} & \raisebox{3.25cm}{(a)} \\
-    \includegraphics[width=95mm]{Figures/ch5/twosensors.jpg} & \raisebox{2.75cm}{(b)}
-  \end{tabular}
-  \caption{(a) Perimeter  coverage of sensor node  0 and (b) finding  the arc of
-    $u$'s perimeter covered by $v$.}
-  \label{pcm2sensors}
-\end{figure} 
-
-Figure~\ref{pcm2sensors}(b) describes the geometric information used to find the
-locations of the  left and right points of  an arc on the perimeter  of a sensor
-node~$u$ covered by a sensor node~$v$. Node~$v$ is supposed to be located on the
-west  side of  sensor~$u$,  with  the following  respective  coordinates in  the
-sensing area~: $(v_x,v_y)$ and $(u_x,u_y)$. From the previous coordinates we can
-compute the euclidean distance between nodes~$u$ and $v$: $Dist(u,v)=\sqrt{\vert
-  u_x  - v_x  \vert^2 +  \vert u_y-v_y  \vert^2}$, while  the angle~$\alpha$  is
-obtained through  the formula: $$\alpha =  \arccos \left(\dfrac{Dist(u,v)}{2R_s}
-\right).$$ The arc on the perimeter of~$u$ defined by the angular interval $[\pi
-  - \alpha,\pi + \alpha]$ is said to be perimeter-covered by sensor~$v$.
-
-Every couple of intersection points is placed on the angular interval $[0,2\pi]$
-in  a  counterclockwise manner,  leading  to  a  partitioning of  the  interval.
-Figure~\ref{pcm2sensors}(a)  illustrates  the arcs  for  the  nine neighbors  of
-sensor $0$ and  Figure~\ref{expcm} gives the position of  the corresponding arcs
-in  the interval  $[0,2\pi]$. More  precisely, we  can see  that the  points are
-ordered according  to the  measures of  the angles  defined by  their respective
-positions. The intersection points are  then visited one after another, starting
-from the first  intersection point  after  point~zero,  and  the maximum  level  of
-coverage is determined  for each interval defined by two  successive points. The
-maximum  level of  coverage is  equal to  the number  of overlapping  arcs.  For
-example, 
-between~$5L$  and~$6L$ the maximum  level of  coverage is equal  to $3$
-(the value is highlighted in yellow  at the bottom of Figure~\ref{expcm}), which
-means that at most 2~neighbors can cover  the perimeter in addition to node $0$. 
-Table~\ref{my-label} summarizes for each coverage  interval the maximum level of
-coverage and  the sensor  nodes covering the  perimeter.  The  example discussed
-above is thus given by the sixth line of the table.
-
-
-\begin{figure*}[t!]
-\centering
-\includegraphics[width=150.5mm]{Figures/ch5/expcm2.jpg}  
-\caption{Maximum coverage levels for perimeter of sensor node $0$.}
-\label{expcm}
-\end{figure*} 
-
-
- \begin{table}[h!]
- \caption{Coverage intervals and contributing sensors for sensor node 0.}
- \centering
-\begin{tabular}{|c|c|c|c|c|c|c|c|c|}
-\hline
-\begin{tabular}[c]{@{}c@{}}Left \\ point \\ angle~$\alpha$ \end{tabular} & \begin{tabular}[c]{@{}c@{}}Interval \\ left \\ point\end{tabular} & \begin{tabular}[c]{@{}c@{}}Interval \\ right \\ point\end{tabular} & \begin{tabular}[c]{@{}c@{}}Maximum \\ coverage\\  level\end{tabular} & \multicolumn{5}{c|}{\begin{tabular}[c]{@{}c@{}}Set of sensors\\ involved \\ in coverage interval\end{tabular}} \\ \hline
-0.0291    & 1L                                                                        & 2L                                                        & 4                                                                     & 0                     & 1                     & 3                    & 4                    &                      \\ \hline
-0.104     & 2L                                                                        & 3R                                                        & 5                                                                     & 0                     & 1                     & 3                    & 4                    & 2                    \\ \hline
-0.3168    & 3R                                                                        & 4R                                                        & 4                                                                     & 0                     & 1                     & 4                    & 2                    &                      \\ \hline
-0.6752    & 4R                                                                        & 1R                                                        & 3                                                                     & 0                     & 1                     & 2                    &                      &                      \\ \hline
-1.8127    & 1R                                                                        & 5L                                                        & 2                                                                     & 0                     & 2                     &                      &                      &                      \\ \hline
-1.9228    & 5L                                                                        & 6L                                                        & 3                                                                     & 0                     & 2                     & 5                    &                      &                      \\ \hline
-2.3959    & 6L                                                                        & 2R                                                        & 4                                                                     & 0                     & 2                     & 5                    & 6                    &                      \\ \hline
-2.4258    & 2R                                                                        & 7L                                                        & 3                                                                     & 0                     & 5                     & 6                    &                      &                      \\ \hline
-2.7868    & 7L                                                                        & 8L                                                        & 4                                                                     & 0                     & 5                     & 6                    & 7                    &                      \\ \hline
-2.8358    & 8L                                                                        & 5R                                                        & 5                                                                     & 0                     & 5                     & 6                    & 7                    & 8                    \\ \hline
-2.9184    & 5R                                                                        & 7R                                                        & 4                                                                     & 0                     & 6                     & 7                    & 8                    &                      \\ \hline
-3.3301    & 7R                                                                        & 9R                                                        & 3                                                                     & 0                     & 6                     & 8                    &                      &                      \\ \hline
-3.9464    & 9R                                                                        & 6R                                                        & 4                                                                     & 0                     & 6                     & 8                    & 9                    &                      \\ \hline
-4.767     & 6R                                                                        & 3L                                                        & 3                                                                     & 0                     & 8                     & 9                    &                      &                      \\ \hline
-4.8425    & 3L                                                                        & 8R                                                        & 4                                                                     & 0                     & 3                     & 8                    & 9                    &                      \\ \hline
-4.9072    & 8R                                                                        & 4L                                                        & 3                                                                     & 0                     & 3                     & 9                    &                      &                      \\ \hline
-5.3804    & 4L                                                                        & 9R                                                        & 4                                                                     & 0                     & 3                     & 4                    & 9                    &                      \\ \hline
-5.9157    & 9R                                                                        & 1L                                                        & 3                                                                     & 0                     & 3                     & 4                    &                      &                      \\ \hline
-\end{tabular}
-
-\label{my-label}
-\end{table}
-
-
-In the PeCO  protocol, the scheduling of the sensor  nodes' activities is formulated  with an
-integer program  based on  coverage intervals. The  formulation of  the coverage
-optimization problem is  detailed in~section~\ref{ch5:sec:03}.  Note that  when a sensor
-node  has a  part of  its sensing  range outside  the WSN  sensing field,  as in
-Figure~\ref{ex4pcm}, the maximum coverage level for  this arc is set to $\infty$
-and  the  corresponding  interval  will  not   be  taken  into  account  by  the
-optimization algorithm.
-
-
-\begin{figure}[h!]
-\centering
-\includegraphics[width=95.5mm]{Figures/ch5/ex4pcm.jpg}  
-\caption{Sensing range outside the WSN's area of interest.}
-\label{ex4pcm}
-\end{figure} 
-
-
-
-
-
-\subsection{The Main Idea}
+\subsection{Background Idea and Algorithm}
 \label{ch5:sec:02:02}
 \label{ch5:sec:02:02}
-
-\noindent The  WSN area of interest is, in a  first step, divided  into regular
-homogeneous subregions  using a divide-and-conquer  algorithm. In a  second step
-our  protocol  will  be  executed  in a distributed way in each subregion
-simultaneously to schedule nodes' activities for one sensing period.
-
-As  shown in  Figure~\ref{fig2}, node  activity  scheduling is  produced by  our
-protocol in a periodic manner. Each period is divided into 4 stages: Information
-(INFO)  Exchange,  Leader Election,  Decision  (the  result of  an  optimization
-problem),  and  Sensing.   For  each  period there  is  exactly  one  set  cover
-responsible for  the sensing task.  Protocols  based on a periodic  scheme, like
-PeCO, are more  robust against an unexpected  node failure. On the  one hand, if
-a node failure is discovered before  taking the decision, the corresponding sensor
-node will  not be considered  by the optimization  algorithm. On  the other
-hand, if the sensor failure happens after  the decision, the sensing task of the
-network will be temporarily affected: only  during the period of sensing until a
-new period starts, since a new set cover will take charge of the sensing task in
-the next period. The energy consumption and some other constraints can easily be
-taken  into  account since  the  sensors  can  update  and then  exchange  their
-information (including their  residual energy) at the beginning  of each period.
-However, the pre-sensing  phases (INFO Exchange, Leader  Election, and Decision)
-are energy consuming, even for nodes that will not join the set cover to monitor
-the area.
-
-\begin{figure}[t!]
-\centering
-\includegraphics[width=95.5mm]{Figures/ch5/Model.pdf}  
-\caption{PeCO protocol.}
+The area of  interest can be divided using  the divide-and-conquer strategy into
+smaller  areas,  called  subregions,  and  then our MuDiLCO  protocol will be
+implemented in each subregion in a distributed way.
+
+As can be seen  in Figure~\ref{fig2},  our protocol  works in  periods fashion,
+where  each is  divided  into 4  phases: Information~Exchange,  Leader~Election,
+Decision, and Sensing. The information exchange among wireless sensor nodes is described in chapter 4, section \ref{ch4:sec:02:03:01}. The leader election in each subregion is explained in chapter 4, section \ref{ch4:sec:02:03:02}, but the difference in that the elected leader in each subregion is for each period. In decision phase, each WSNL will solve an integer  program to select which  cover sets  will be
+activated in  the following  sensing phase  to cover the  subregion to  which it belongs.  The integer  program will produce $T$ cover sets,  one for each round. The WSNL will send an Active-Sleep  packet to each sensor in the subregion based on the algorithm's results, indicating if the sensor should be active or not in
+each round  of the  sensing phase. Each sensing phase may be itself divided into $T$ rounds
+and for each round a set of sensors (a cover set) is responsible for the sensing
+task. Each sensor node in the subregion will
+receive an Active-Sleep packet from WSNL, informing it to stay awake or to go to
+sleep for  each round of the sensing  phase.  Algorithm~\ref{alg:MuDiLCO}, which
+will be  executed by each node  at the beginning  of a period, explains  how the
+Active-Sleep packet is obtained. In this way a multiround optimization  process is performed  during each
+period  after  Information~Exchange  and  Leader~Election phases,  in  order  to
+produce $T$ cover sets that will take the mission of sensing for $T$ rounds.
+\begin{figure}[ht!]
+\centering \includegraphics[width=160mm]{Figures/ch5/GeneralModel.jpg} % 70mm  Modelgeneral.pdf
+\caption{The MuDiLCO protocol scheme executed on each node}
 \label{fig2}
 \end{figure} 
 
 
 \label{fig2}
 \end{figure} 
 
 
+This protocol minimizes the impact of unexpected node failure (not due to batteries running out of energy), because it works in periods. 
 
 
+On the one hand, if a node failure is detected before making the decision, the node will not participate to this phase, and, on the other hand, if the node failure occurs after the decision, the sensing  task of the network will be temporarily affected:  only during  the period of sensing until a new period starts.
 
 
-\subsection{PeCO Protocol Algorithm}
-\label{ch5:sec:02:03}
+The  energy consumption  and some  other constraints  can easily  be  taken into account,  since the  sensors  can  update and  then  exchange their  information (including their residual energy) at the beginning of each period.  However, the pre-sensing  phases (Information  Exchange, Leader  Election, and  Decision) are energy  consuming for some  nodes, even  when they  do not  join the  network to monitor the area.
 
 
-
-\noindent The  pseudocode implementing the protocol on a node is  given below.
-More  precisely,  Algorithm~\ref{alg:PeCO}  gives  a brief  description  of  the
-protocol applied by a sensor node $s_k$ where $k$ is the node index in the WSN.
 
 \begin{algorithm}[h!]                
  % \KwIn{all the parameters related to information exchange}
 
 \begin{algorithm}[h!]                
  % \KwIn{all the parameters related to information exchange}
@@ -205,364 +63,521 @@ protocol applied by a sensor node $s_k$ where $k$ is the node index in the WSN.
   \BlankLine
   %\emph{Initialize the sensor node and determine it's position and subregion} \; 
   
   \BlankLine
   %\emph{Initialize the sensor node and determine it's position and subregion} \; 
   
-  \If{ $RE_k \geq E_{th}$ }{
-      \emph{$s_k.status$ = COMMUNICATION}\;
-      \emph{Send $INFO()$ packet to other nodes in subregion}\;
-      \emph{Wait $INFO()$ packet from other nodes in subregion}\; 
-      \emph{Update K.CurrentSize}\;
-      \emph{LeaderID = Leader election}\;
-      \If{$ s_k.ID = LeaderID $}{
-         \emph{$s_k.status$ = COMPUTATION}\;
-         
-      \If{$ s_k.ID $ is Not previously selected as a Leader }{
-          \emph{ Execute the perimeter coverage model}\;
-         % \emph{ Determine the segment points using perimeter coverage model}\;
-      }
+  \If{ $RE_j \geq E_{R}$ }{
+      \emph{$s_j.status$ = COMMUNICATION}\;
+      \emph{Send $INFO()$ packet to other nodes in the subregion}\;
+      \emph{Wait $INFO()$ packet from other nodes in the subregion}\; 
+      %\emph{UPDATE $RE_j$ for every sent or received INFO Packet}\;
+      %\emph{ Collect information and construct the list L for all nodes in the subregion}\;
       
       
-      \If{$ (s_k.ID $ is the same Previous Leader) And (K.CurrentSize = K.PreviousSize)}{
-      
-        \emph{ Use the same previous cover set for current sensing stage}\;
-      }
-      \Else{
-            \emph{Update $a^j_{ik}$; prepare data for IP~Algorithm}\;
-            \emph{$\left\{\left(X_{1},\dots,X_{l},\dots,X_{K}\right)\right\}$ = Execute Integer Program Algorithm($K$)}\;
-            \emph{K.PreviousSize = K.CurrentSize}\;
-           }
-      
-        \emph{$s_k.status$ = COMMUNICATION}\;
-        \emph{Send $ActiveSleep()$ to each node $l$ in subregion}\;
-        \emph{Update $RE_k $}\;
+      %\If{ the received INFO Packet = No. of nodes in it's subregion -1  }{
+      \emph{LeaderID = Leader election}\;
+      \If{$ s_j.ID = LeaderID $}{
+        \emph{$s_j.status$ = COMPUTATION}\;
+        \emph{$\left\{\left(X_{1,k},\dots,X_{T,k}\right)\right\}_{k \in J}$ =
+          Execute Integer Program Algorithm($T,J$)}\;
+        \emph{$s_j.status$ = COMMUNICATION}\;
+        \emph{Send $ActiveSleep()$ to each node $k$ in subregion a packet \\
+          with vector of activity scheduling $(X_{1,k},\dots,X_{T,k})$}\;
+        \emph{Update $RE_j $}\;
       }          
       \Else{
       }          
       \Else{
-        \emph{$s_k.status$ = LISTENING}\;
+        \emph{$s_j.status$ = LISTENING}\;
         \emph{Wait $ActiveSleep()$ packet from the Leader}\;
         \emph{Wait $ActiveSleep()$ packet from the Leader}\;
-        \emph{Update $RE_k $}\;
+        % \emph{After receiving Packet, Retrieve the schedule and the $T$ rounds}\;
+        \emph{Update $RE_j $}\;
       }  
       }  
+      %  }
   }
   }
-  \Else { Exclude $s_k$ from entering in the current sensing stage}
-\caption{PeCO($s_k$)}
-\label{alg:PeCO}
+  \Else { Exclude $s_j$ from entering in the current sensing phase}
+  
+ %   \emph{return X} \;
+\caption{MuDiLCO($s_j$)}
+\label{alg:MuDiLCO}
+
 \end{algorithm}
 
 \end{algorithm}
 
-In this  algorithm, K.CurrentSize and K.PreviousSize  respectively represent the
-current number and  the previous number of living nodes in  the subnetwork of the
-subregion.  Initially, the sensor node checks its remaining energy $RE_k$, which
-must be greater than a threshold $E_{th}$ in order to participate in the current
-period.  Each  sensor node  determines its position  and its subregion  using an
-embedded  GPS or a  location discovery  algorithm. After  that, all  the sensors
-collect position coordinates,  remaining energy, sensor node ID,  and the number
-of their  one-hop live  neighbors during the  information exchange.  The sensors
-inside a same region cooperate to elect a leader. The selection criteria for the
-leader, in order of priority,  are: larger numbers of neighbors, larger remaining
-energy, and  then in case  of equality, larger  index.  Once chosen,  the leader
-collects information to formulate and  solve the integer program which allows to
-construct the set of active sensors in the sensing stage.
 
 
 
 
 
 
-\section{Perimeter-based Coverage Problem Formulation}
-\label{ch5:sec:03}
+\subsection{Primary Points based Multiround Coverage Problem Formulation}
+%\label{ch5:sec:02:02}
 
 
+According to our algorithm~\ref{alg:MuDiLCO}, the integer program is based on the model
+proposed by  \cite{ref156} with some modifications, where  the objective is
+to find  a maximum number of disjoint cover sets. To fulfill this  goal, the
+authors proposed an integer  program which forces undercoverage and overcoverage
+of  targets to  become minimal  at  the same  time.  They  use binary  variables
+$x_{jl}$ to indicate if  sensor $j$ belongs to cover set $l$. In our model, we
+consider binary  variables $X_{t,j}$ to determine the  possibility of activating
+sensor $j$ during round $t$ of  a given sensing phase.  We also consider primary
+points as targets.  The  set of primary points is denoted by  $P$ and the set of
+sensors by  $J$. Only sensors  able to  be alive during  at least one  round are
+involved in the integer program.
 
 
-\noindent In this  section, the coverage model is  mathematically formulated. We
-start  with a  description of  the notations  that will  be used  throughout the
-section.
 
 
-First, we have the following sets:
-\begin{itemize}
-\item $S$ represents the set of WSN sensor nodes;
-\item $A \subseteq S $ is the subset of alive sensors;
-\item  $I_j$  designates  the  set  of  coverage  intervals  (CI)  obtained  for
-  sensor~$j$.
-\end{itemize}
-$I_j$ refers to the set of  coverage intervals which have been defined according
-to the  method introduced in  subsection~\ref{ch5:sec:02:01}. For a coverage  interval $i$,
-let $a^j_{ik}$ denotes  the indicator function of whether  sensor~$k$ is involved
-in coverage interval~$i$ of sensor~$j$, that is:
+For a  primary point  $p$, let $\alpha_{j,p}$  denote the indicator  function of
+whether the point $p$ is covered, that is:
 \begin{equation}
 \begin{equation}
-a^j_{ik} = \left \{ 
-\begin{array}{lll}
-  1 & \mbox{if sensor $k$ is involved in the } \\
      &       \mbox{coverage interval $i$ of sensor $j$}, \\
+\alpha_{j,p} = \left \{ 
+\begin{array}{l l}
+  1 & \mbox{if the primary point $p$ is covered} \\
& \mbox{by sensor node $j$}, \\
   0 & \mbox{otherwise.}\\
 \end{array} \right.
 %\label{eq12} 
   0 & \mbox{otherwise.}\\
 \end{array} \right.
 %\label{eq12} 
-\notag
 \end{equation}
 \end{equation}
-Note that $a^k_{ik}=1$ by definition of the interval.
-
-Second,  we define  several binary  and integer  variables.  Hence,  each binary
-variable $X_{k}$  determines the activation of  sensor $k$ in the  sensing phase
-($X_k=1$ if  the sensor $k$  is active or 0  otherwise).  $M^j_i$ is  an integer
-variable  which  measures  the  undercoverage  for  the  coverage  interval  $i$
-corresponding to  sensor~$j$. In  the same  way, the  overcoverage for  the same
-coverage interval is given by the variable $V^j_i$.
-
-If we decide to sustain a level of coverage equal to $l$ all along the perimeter
-of sensor  $j$, we have  to ensure  that at least  $l$ sensors involved  in each
-coverage  interval $i  \in I_j$  of  sensor $j$  are active.   According to  the
-previous notations, the number of active sensors in the coverage interval $i$ of
-sensor $j$  is given by  $\sum_{k \in A} a^j_{ik}  X_k$.  To extend  the network
-lifetime,  the objective  is to  activate a  minimal number  of sensors  in each
-period to  ensure the  desired coverage  level. As the  number of  alive sensors
-decreases, it becomes impossible to reach  the desired level of coverage for all
-coverage intervals. Therefore we use variables  $M^j_i$ and $V^j_i$ as a measure
-of the  deviation between  the desired  number of active  sensors in  a coverage
-interval and  the effective  number. And  we try  to minimize  these deviations,
-first to  force the  activation of  a minimal  number of  sensors to  ensure the
-desired coverage level, and if the desired level cannot be completely satisfied,
-to reach a coverage level as close as possible to the desired one.
-
-
-Our coverage optimization problem can then be mathematically expressed as follows: 
-%Objective:
-\begin{equation} %\label{eq:ip2r}
-\left \{
-\begin{array}{ll}
-\min \sum_{j \in S} \sum_{i \in I_j} (\alpha^j_i ~ M^j_i + \beta^j_i ~ V^j_i )&\\
-\textrm{subject to :}&\\
-\sum_{k \in A} ( a^j_{ik} ~ X_{k}) + M^j_i  \geq l \quad \forall i \in I_j, \forall j \in S\\
-%\label{c1} 
-\sum_{k \in A} ( a^j_{ik} ~ X_{k}) - V^j_i  \leq l \quad \forall i \in I_j, \forall j \in S\\
-% \label{c2}
-% \Theta_{p}\in \mathbb{N}, &\forall p \in P\\
-% U_{p} \in \{0,1\}, &\forall p \in P\\
-X_{k} \in \{0,1\}, \forall k \in A
-\end{array}
-\right.
-\notag
+The number of  active sensors that cover the  primary point $p$ during
+round $t$ is equal to $\sum_{j \in J} \alpha_{j,p} * X_{t,j}$ where:
+\begin{equation}
+X_{t,j} = \left \{ 
+\begin{array}{l l}
+  1& \mbox{if sensor $j$  is active during round $t$,} \\
+  0 &  \mbox{otherwise.}\\
+\end{array} \right.
+%\label{eq11} 
+\end{equation}
+We define the Overcoverage variable $\Theta_{t,p}$ as:
+\begin{equation}
+ \Theta_{t,p} = \left \{ 
+\begin{array}{l l}
+  0 & \mbox{if the primary point $p$}\\
+    & \mbox{is not covered during round $t$,}\\
+  \left( \sum_{j \in J} \alpha_{jp} * X_{tj} \right)- 1 & \mbox{otherwise.}\\
+\end{array} \right.
+\label{eq13} 
 \end{equation}
 \end{equation}
-$\alpha^j_i$ and $\beta^j_i$  are nonnegative weights selected  according to the
-relative importance of satisfying the associated level of coverage. For example,
-weights associated with  coverage intervals of a specified part  of a region may
-be  given by a  relatively larger  magnitude than  weights associated  with another
-region. This  kind of integer program  is inspired from the  model developed for
-brachytherapy treatment planning  for optimizing dose  distribution
-\cite{0031-9155-44-1-012}. The integer  program must be solved by  the leader in
-each subregion at the beginning of  each sensing phase, whenever the environment
-has  changed (new  leader,  death of  some  sensors). Note  that  the number  of
-constraints in the model is constant  (constraints of coverage expressed for all
-sensors), whereas the number of variables $X_k$ decreases over periods, since we
-consider only alive  sensors (sensors with enough energy to  be alive during one
-sensing phase) in the model.
-
-\section{Performance Evaluation and Analysis}
-\label{ch5:sec:04}
+More  precisely, $\Theta_{t,p}$  represents the  number of  active  sensor nodes
+minus  one  that  cover  the  primary  point $p$  during  round  $t$.   The
+Undercoverage variable  $U_{t,p}$ of the primary  point $p$ during  round $t$ is
+defined by:
+\begin{equation}
+U_{t,p} = \left \{ 
+\begin{array}{l l}
+  1 &\mbox{if the primary point $p$ is not covered during round $t$,} \\
+  0 & \mbox{otherwise.}\\
+\end{array} \right.
+\label{eq14} 
+\end{equation}
+
+Our coverage optimization problem can then be formulated as follows:
+\begin{equation}
+ \min \sum_{t=1}^{T} \sum_{p=1}^{P} \left(W_{\theta}* \Theta_{t,p} + W_{U} * U_{t,p}  \right)  \label{eq15} 
+\end{equation}
+
+Subject to
+\begin{equation}
+  \sum_{j=1}^{|J|} \alpha_{j,p} * X_{t,j}   = \Theta_{t,p} - U_{t,p} + 1 \label{eq16} \hspace{6 mm} \forall p \in P, t = 1,\dots,T
+\end{equation}
+
+\begin{equation}
+  \sum_{t=1}^{T}  X_{t,j}   \leq  \lfloor {RE_{j}/E_{R}} \rfloor \hspace{6 mm} \forall j \in J, t = 1,\dots,T
+  \label{eq144} 
+\end{equation}
+
+\begin{equation}
+X_{t,j} \in \lbrace0,1\rbrace,   \hspace{10 mm} \forall j \in J, t = 1,\dots,T \label{eq17} 
+\end{equation}
+
+\begin{equation}
+U_{t,p} \in \lbrace0,1\rbrace, \hspace{10 mm}\forall p \in P, t = 1,\dots,T  \label{eq18} 
+\end{equation}
+
+\begin{equation}
+ \Theta_{t,p} \geq 0 \hspace{10 mm}\forall p \in P, t = 1,\dots,T \label{eq178}
+\end{equation}
+
+
+
+\begin{itemize}
+\item $X_{t,j}$:  indicates whether  or not the  sensor $j$ is  actively sensing
+  during round $t$ (1 if yes and 0 if not);
+\item $\Theta_{t,p}$ - {\it overcoverage}:  the number of sensors minus one that
+  are covering the primary point $p$ during round $t$;
+\item  $U_{t,p}$ -  {\it undercoverage}:  indicates whether  or not  the primary
+  point $p$  is being covered during round $t$ (1  if not covered  and 0 if
+  covered).
+\end{itemize}
 
 
-\subsection{Simulation Settings}
-\label{ch5:sec:04:01}
+The first group  of constraints indicates that some primary  point $p$ should be
+covered by at least  one sensor and, if it is not  always the case, overcoverage
+and undercoverage  variables help balancing the restriction  equations by taking
+positive values. The constraint  given by equation~(\ref{eq144}) guarantees that
+the sensor has enough energy ($RE_j$  corresponds to its remaining energy) to be
+alive during  the selected rounds knowing  that $E_{R}$ is the  amount of energy
+required to be alive during one round.
 
 
-The WSN  area of interest is  supposed to be divided  into 16~regular subregions. %and we use the same energy consumption than in our previous work~\cite{Idrees2}.
-Table~\ref{table3} gives the chosen parameters settings.
+There  are two main  objectives.  First,  we limit  the overcoverage  of primary
+points in order to activate a  minimum number of sensors.  Second we prevent the
+absence  of  monitoring  on  some  parts  of the  subregion  by  minimizing  the
+undercoverage.  The weights  $W_\theta$ and $W_U$ must be  properly chosen so as
+to guarantee that the maximum number of points are covered during each round. 
+%% MS W_theta is smaller than W_u => problem with the following sentence
+In our simulations priority is given  to the coverage by choosing $W_{U}$ very
+large compared to $W_{\theta}$.
+
+
+
+\section{Experimental Study and Analysis}
+\label{ch5:sec:03}
+
+\subsection{Simulation Setup}
+\label{ch5:sec:03:01}
+We  conducted  a  series of  simulations  to  evaluate  the efficiency  and  the
+relevance  of our  approach,  using  the  discrete   event  simulator  OMNeT++
+\cite{ref158}. The simulation  parameters are summarized in Table~\ref{table3}.  Each experiment  for  a network  is  run over  25~different random topologies and  the results presented hereafter are  the average of these
+25 runs.
+%Based on the results of our proposed work in~\cite{idrees2014coverage}, we found as the region of interest are divided into larger subregions as the network lifetime increased. In this simulation, the network are divided into 16 subregions. 
+We  performed  simulations for  five  different  densities  varying from  50  to
+250~nodes deployed  over  a  $50 \times  25~m^2  $  sensing field.  More
+precisely, the  deployment is controlled  at a coarse  scale in order  to ensure
+that  the deployed  nodes can  cover the  sensing field  with the  given sensing
+range.
+
+%%RC these parameters are realistic?
+%% maybe we can increase the field and sensing range. 5mfor Rs it seems very small... what do the other good papers consider ?
 
 \begin{table}[ht]
 
 \begin{table}[ht]
-\caption{Relevant parameters for network initialization.}
+\caption{Relevant parameters for network initializing.}
 % title of Table
 \centering
 % used for centering table
 \begin{tabular}{c|c}
 % centered columns (4 columns)
 % title of Table
 \centering
 % used for centering table
 \begin{tabular}{c|c}
 % centered columns (4 columns)
-\hline
+      \hline
+%inserts double horizontal lines
 Parameter & Value  \\ [0.5ex]
    
 Parameter & Value  \\ [0.5ex]
    
+%Case & Strategy (with Two Leaders) & Strategy (with One Leader) & Simple Heuristic \\ [0.5ex]
+% inserts table
+%heading
 \hline
 % inserts single horizontal line
 \hline
 % inserts single horizontal line
-Sensing field & $(50 \times 25)~m^2 $   \\
-
-WSN size &  100, 150, 200, 250, and 300~nodes   \\
+Sensing field size & $(50 \times 25)~m^2 $   \\
+% inserting body of the table
+%\hline
+Network size &  50, 100, 150, 200 and 250~nodes   \\
 %\hline
 %\hline
-Initial energy  & in range 500-700~Joules  \\  
+Initial energy  & 500-700~joules  \\  
 %\hline
 %\hline
-Sensing period & duration of 60 minutes \\
-$E_{th}$ & 36~Joules\\
+Sensing time for one round & 60 Minutes \\
+$E_{R}$ & 36 Joules\\
 $R_s$ & 5~m   \\     
 %\hline
 $R_s$ & 5~m   \\     
 %\hline
-$\alpha^j_i$ & 0.6   \\
+$W_{\Theta}$ & 1   \\
 % [1ex] adds vertical space
 %\hline
 % [1ex] adds vertical space
 %\hline
-$\beta^j_i$ & 0.4
+$W_{U}$ & $|P|^2$
 %inserts single line
 \end{tabular}
 \label{table3}
 % is used to refer this table in the text
 \end{table}
 %inserts single line
 \end{tabular}
 \label{table3}
 % is used to refer this table in the text
 \end{table}
+  
+Our protocol  is declined into  four versions: MuDiLCO-1,  MuDiLCO-3, MuDiLCO-5,
+and  MuDiLCO-7, corresponding  respectively to  $T=1,3,5,7$ ($T$  the  number of
+rounds in one sensing period).  In  the following, we will make comparisons with
+two other methods. The first method, called DESK and proposed by \cite{DESK},
+is  a   full  distributed  coverage   algorithm.   The  second   method,  called
+GAF~\cite{GAF}, consists in dividing  the region into fixed squares.
+During the decision  phase, in each square, one sensor is  then chosen to remain
+active during the sensing phase time.
+
+Some preliminary experiments were performed in chapter 4 to study the choice of the number of
+subregions  which subdivides  the  sensing field,  considering different  network
+sizes. They show that as the number of subregions increases, so does the network
+lifetime. Moreover,  it makes  the MuDiLCO protocol  more robust  against random
+network  disconnection due  to node  failures.  However,  too  many subdivisions
+reduce the advantage  of the optimization. In fact, there  is a balance between
+the  benefit  from the  optimization  and the  execution  time  needed to  solve
+it. Therefore, we have set the number of subregions to 16 rather than 32.
+
+We used the modeling language and the optimization solver which are mentioned in chapter 4, section \ref{ch4:sec:04:02}. In addition, we employed an energy consumption model, which is presented in chapter 4, section \ref{ch4:sec:04:03}. 
+
+%The initial energy of each node  is randomly set in the interval $[500;700]$.  A sensor node  will not participate in the  next round if its  remaining energy is less than  $E_{R}=36~\mbox{Joules}$, the minimum  energy needed for the  node to stay alive  during one round.  This value has  been computed by  multiplying the energy consumed in  active state (9.72 mW) by the time in second  for one round (3600 seconds). According to the  interval of initial energy, a sensor may be alive during at most 20 rounds.
+
+\subsection{Metrics}
+\label{ch5:sec:03:02}
+To evaluate our approach we consider the following performance metrics:
+
+\begin{enumerate}[i]
+  
+\item {{\bf Coverage Ratio (CR)}:} the coverage ratio measures how much of the area
+  of a sensor field is covered. In our case, the sensing field is represented as
+  a connected grid  of points and we use  each grid point as a  sample point to
+  compute the coverage. The coverage ratio can be calculated by:
+\begin{equation*}
+\scriptsize
+\mbox{CR}(\%) = \frac{\mbox{$n^t$}}{\mbox{$N$}} \times 100,
+\end{equation*}
+where $n^t$ is  the number of covered  grid points by the active  sensors of all
+subregions during round $t$ in the current sensing phase and $N$ is the total number
+of grid points  in the sensing field of  the network. In our simulations $N = 51
+\times 26 = 1326$ grid points.
+
+\item{{\bf Number  of Active Sensors Ratio  (ASR)}:} it is important  to have as
+  few  active  nodes  as  possible  in  each  round, in  order  to  minimize  the
+  communication overhead  and maximize the network lifetime.  The Active Sensors
+  Ratio is defined as follows:
+\begin{equation*}
+\scriptsize  \mbox{ASR}(\%) = \frac{\sum\limits_{r=1}^R
+  \mbox{$A_r^t$}}{\mbox{$|J|$}} \times 100,
+\end{equation*}
+where $A_r^t$ is the number of  active sensors in the subregion $r$ during round
+$t$ in the  current sensing phase, $|J|$  is the total number of  sensors in the
+network, and $R$ is the total number of subregions in the network.
+
+\item {{\bf Network Lifetime}:} is described in chapter 4, section \ref{ch4:sec:04:04}.
+
+\item {{\bf  Energy Consumption  (EC)}:} the average energy consumption  can be
+  seen as the total energy consumed by the sensors during the $Lifetime_{95}$ or
+  $Lifetime_{50}$  divided  by the  number  of rounds.  EC  can  be computed  as
+  follows:
+
+ % New version with global loops on period
+  \begin{equation*}
+    \scriptsize
+    \mbox{EC} = \frac{\sum\limits_{m=1}^{M_L} \left[ \left( E^{\mbox{com}}_m+E^{\mbox{list}}_m+E^{\mbox{comp}}_m \right) +\sum\limits_{t=1}^{T_m} \left( E^{a}_t+E^{s}_t \right) \right]}{\sum\limits_{m=1}^{M_L} T_m},
+  \end{equation*}
+
+
+where  $M_L$ is  the number  of periods  and  $T_m$ the  number of rounds in  a
+period~$m$, both  during $Lifetime_{95}$  or $Lifetime_{50}$. The total energy
+consumed by the  sensors (EC) comes through taking  into consideration four main
+energy  factors.   The  first  one  ,  denoted  $E^{\scriptsize  \mbox{com}}_m$,
+represents  the  energy   consumption  spent  by  all  the   nodes  for  wireless
+communications  during period  $m$.  $E^{\scriptsize  \mbox{list}}_m$,  the next
+factor, corresponds  to the energy consumed  by the sensors  in LISTENING status
+before  receiving   the  decision  to  go   active  or  sleep   in  period  $m$.
+$E^{\scriptsize \mbox{comp}}_m$  refers to the  energy needed by all  the leader
+nodes to solve the integer program during a period. Finally, $E^a_t$ and $E^s_t$
+indicate the energy consumed by the whole network in round $t$.
+
+
+\item {{\bf Execution Time}:} is described in chapter 4, section \ref{ch4:sec:04:04}.
+  
+\item {{\bf Stopped simulation runs}:} is described in chapter 4, section \ref{ch4:sec:04:04}.
 
 
+\end{enumerate}
 
 
-To obtain experimental results which are relevant,  simulations  with  five
-different node densities going from  100 to 300~nodes were performed considering
-each time 25~randomly  generated networks. The nodes are deployed  on a field of
-interest of $(50 \times 25)~m^2 $ in such a way that they cover the field with a
-high coverage ratio. Each node has an  initial energy level, in Joules, which is
-randomly drawn in the interval $[500-700]$. If its energy provision reaches a
-value below  the threshold $E_{th}=36$~Joules,  the minimum energy needed  for a
-node  to stay  active during  one period,  it will no more  participate in the
-coverage task. This value corresponds to the energy needed by the sensing phase,
-obtained by multiplying the energy consumed in active state (9.72 mW) with the
-time in seconds for one  period (3600 seconds), and  adding the energy  for the
-pre-sensing phases. According  to the interval of initial energy,  a sensor may
-be active during at most 20 periods.
 
 
 
 
-The values  of $\alpha^j_i$ and  $\beta^j_i$ have been  chosen to ensure  a good
-network coverage and a longer WSN lifetime.  We have given a higher priority to
-the  undercoverage  (by  setting  the  $\alpha^j_i$ with  a  larger  value  than
-$\beta^j_i$)  so as  to prevent  the non-coverage  for the  interval~$i$ of  the
-sensor~$j$.  On the  other hand,  we have assigned to
-$\beta^j_i$ a value which is slightly lower so as to minimize the number of active sensor nodes which contribute
-in covering the interval.
+\subsection{Results Analysis and Comparison }
+\label{ch5:sec:03:02}
 
 
-We applied the performance metrics, which are described in chapter 3, section \ref{ch3:sec:04:04} in order to evaluate the efficiency of our approach. We used the modeling language and the optimization solver which are mentioned in chapter 3, section \ref{ch3:sec:04:02}. In addition, we employed an energy consumption model, which is presented in chapter 3, section \ref{ch3:sec:04:03}.
 
 
+\begin{enumerate}[(i)]
 
 
-\subsection{Simulation Results}
-\label{ch5:sec:04:02}
+\item {{\bf Coverage Ratio}}
+%\subsection{Coverage ratio} 
+%\label{ch5:sec:03:02:01}
 
 
-In  order  to  assess and  analyze  the  performance  of  our protocol  we  have implemented PeCO protocol in  OMNeT++~\cite{ref158} simulator.  Besides PeCO, three other protocols,  described in  the next paragraph,  will  be  evaluated for comparison purposes. 
-%The simulations were run  on a laptop DELL with an Intel Core~i3~2370~M (2.4~GHz) processor (2  cores) whose MIPS  (Million Instructions Per Second) rate  is equal to 35330. To  be consistent with the use  of a sensor node based on  Atmels AVR ATmega103L microcontroller (6~MHz) having  a MIPS rate equal to 6, the original execution time  on the laptop is  multiplied by 2944.2 $\left(\frac{35330}{2} \times  \frac{1}{6} \right)$.  The modeling  language for Mathematical Programming (AMPL)~\cite{AMPL} is  employed to generate the integer program instance  in a  standard format, which  is then read  and solved  by the optimization solver  GLPK (GNU  linear Programming Kit  available in  the public domain) \cite{glpk} through a Branch-and-Bound method.
-As said previously, the PeCO is  compared with three other approaches. The first one,  called  DESK,  is  a  fully distributed  coverage  algorithm  proposed  by \cite{DESK}. The second one,  called GAF~\cite{GAF}, consists in dividing  the monitoring  area into  fixed  squares. Then,  during the  decision phase, in each square, one sensor is  chosen to remain active during the sensing phase. The last  one, the DiLCO protocol~\cite{Idrees2}, is  an improved version of a research work we presented in~\cite{ref159}. Let us notice that PeCO and  DiLCO protocols are  based on the  same framework. In  particular, the choice for the simulations of a partitioning in 16~subregions was chosen because it corresponds to the configuration producing the better results for DiLCO. The protocols are distinguished from one another by the formulation  of the integer program providing the set of sensors which have to be activated in each sensing phase. DiLCO protocol tries to satisfy the coverage of a set of primary points, whereas PeCO protocol objective is to reach a desired level of coverage for each sensor perimeter. In our experimentations, we chose a level of coverage equal to one ($l=1$).
+Figure~\ref{fig3} shows  the average coverage  ratio for 150 deployed  nodes. We
+can notice that for the first thirty rounds both DESK and GAF provide a coverage
+which is a little bit better than the one of MuDiLCO.  
 
 
+This is due  to the fact that, in comparison with  MuDiLCO which uses optimization
+to put in  SLEEP status redundant sensors, more sensor  nodes remain active with
+DESK and GAF.   As a consequence, when the number of  rounds increases, a larger
+number of node failures  can be observed in DESK and GAF,  resulting in a faster
+decrease of the coverage ratio.   Furthermore, our protocol allows to maintain a
+coverage ratio  greater than  50\% for far  more rounds.  Overall,  the proposed
+sensor  activity scheduling based  on optimization  in MuDiLCO  maintains higher
+coverage ratios of the  area of interest for a larger number  of rounds. It also
+means that MuDiLCO saves more energy,  with less dead nodes, at most for several
+rounds, and thus should extend the network lifetime.
 
 
+\begin{figure}[ht!]
+\centering
+ \includegraphics[scale=0.6] {Figures/ch5/R1/CR.pdf}   
+\caption{Average coverage ratio for 150 deployed nodes}
+\label{fig3}
+\end{figure} 
 
 
-\subsubsection{Coverage Ratio}
-\label{ch5:sec:04:02:01}
 
 
-Figure~\ref{fig333}  shows the  average coverage  ratio for  200 deployed  nodes
-obtained with the  four protocols. DESK, GAF, and DiLCO  provide a slightly better
-coverage ratio with respectively 99.99\%,  99.91\%, and 99.02\%, compared to the 98.76\%
-produced by  PeCO for the  first periods. This  is due to  the fact that  at the
-beginning the DiLCO protocol  puts to  sleep status  more redundant  sensors (which
-slightly decreases the coverage ratio), while the three other protocols activate
-more sensor  nodes. Later, when the  number of periods is  beyond~70, it clearly
-appears that  PeCO provides a better  coverage ratio and keeps  a coverage ratio
-greater  than 50\%  for  longer periods  (15  more compared  to  DiLCO, 40  more
-compared to DESK). The energy saved by  PeCO in the early periods allows later a
-substantial increase of the coverage performance.
+\item {{\bf Active sensors ratio}}
+%\subsection{Active sensors ratio} 
+%\label{ch5:sec:03:02:02}
 
 
-\parskip 0pt    
-\begin{figure}[h!]
+It is crucial to have as few active nodes as possible in each round, in order to 
+minimize    the    communication    overhead    and   maximize    the    network
+lifetime. Figure~\ref{fig4}  presents the active  sensor ratio for  150 deployed
+nodes all along the network lifetime. It appears that up to round thirteen, DESK
+and GAF have  respectively 37.6\% and 44.8\% of nodes  in ACTIVE status, whereas
+MuDiLCO clearly  outperforms them  with only 24.8\%  of active nodes.  After the
+thirty-fifth round, MuDiLCO exhibits larger numbers of active nodes, which agrees
+with  the  dual  observation  of  higher  level  of  coverage  made  previously.
+Obviously, in  that case DESK  and GAF have  less active nodes, since  they have
+activated many nodes  at the beginning. Anyway, MuDiLCO  activates the available
+nodes in a more efficient manner.
+
+\begin{figure}[ht!]
 \centering
 \centering
- \includegraphics[scale=0.5] {Figures/ch5/R/CR.eps} 
-\caption{Coverage ratio for 200 deployed nodes.}
-\label{fig333}
+\includegraphics[scale=0.6]{Figures/ch5/R1/ASR.pdf}  
+\caption{Active sensors ratio for 150 deployed nodes}
+\label{fig4}
 \end{figure} 
 
 \end{figure} 
 
+\item {{\bf Stopped simulation runs}}
+%\subsection{Stopped simulation runs}
+%\label{ch5:sec:03:02:03}
 
 
+Figure~\ref{fig6} reports the cumulative  percentage of stopped simulations runs
+per round for 150 deployed nodes. This figure gives the  breakpoint for each method.  DESK stops first,  after approximately 45~rounds, because it consumes the
+more energy by  turning on a large number of redundant  nodes during the sensing
+phase. GAF  stops secondly for the  same reason than  DESK.  MuDiLCO overcomes
+DESK and GAF because the  optimization process distributed on several subregions
+leads  to coverage  preservation and  so extends  the network  lifetime.  Let us
+emphasize that the  simulation continues as long as a network  in a subregion is
+still connected.
 
 
-\subsubsection{Active Sensors Ratio}
-\label{ch5:sec:04:02:02}
 
 
-Having the less active sensor nodes in  each period is essential to minimize the
-energy consumption  and thus to  maximize the network  lifetime.  Figure~\ref{fig444}
-shows the  average active nodes ratio  for 200 deployed nodes.   We observe that
-DESK and  GAF have 30.36  \% and  34.96 \% active  nodes for the  first fourteen
-rounds and  DiLCO and PeCO  protocols compete perfectly  with only 17.92  \% and
-20.16 \% active  nodes during the same  time interval. As the  number of periods
-increases, PeCO protocol  has a lower number of active  nodes in comparison with
-the three other approaches, while keeping a greater coverage ratio as shown in
-Figure \ref{fig333}.
-
-\begin{figure}[h!]
+\begin{figure}[ht!]
 \centering
 \centering
-\includegraphics[scale=0.5]{Figures/ch5/R/ASR.eps}  
-\caption{Active sensors ratio for 200 deployed nodes.}
-\label{fig444}
+\includegraphics[scale=0.6]{Figures/ch5/R1/SR.pdf} 
+\caption{Cumulative percentage of stopped simulation runs for 150 deployed nodes }
+\label{fig6}
 \end{figure} 
 
 \end{figure} 
 
-\subsubsection{The Energy Consumption}
-\label{ch5:sec:04:02:03}
-
-We studied the effect of the energy  consumed by the WSN during the communication,
-computation, listening, active, and sleep status for different network densities
-and  compared  it for  the  four  approaches.  Figures~\ref{fig3EC}(a)  and  (b)
-illustrate  the  energy   consumption  for  different  network   sizes  and  for
-$Lifetime95$ and  $Lifetime50$. The results show  that our PeCO protocol  is the
-most competitive  from the energy  consumption point of  view. As shown  in both
-figures, PeCO consumes much less energy than the three other methods.  One might
-think that the  resolution of the integer  program is too costly  in energy, but
-the  results show  that it  is very  beneficial to  lose a  bit of  time in  the
-selection of  sensors to  activate.  Indeed the  optimization program  allows to
-reduce significantly the number of active  sensors and so the energy consumption
-while keeping a good coverage level.
 
 
+\item {{\bf Energy consumption}} \label{subsec:EC} 
+%\subsection{Energy consumption} 
+%\label{ch5:sec:03:02:04}
+
+We  measure  the  energy  consumed  by the  sensors  during  the  communication,
+listening, computation, active, and sleep status for different network densities
+and   compare   it   with   the  two   other   methods.  Figures~\ref{fig7}(a)
+and~\ref{fig7}(b)  illustrate  the  energy  consumption,  considering  different
+network sizes, for $Lifetime_{95}$ and $Lifetime_{50}$.
+
 \begin{figure}[h!]
 \begin{figure}[h!]
-  \centering
-  \begin{tabular}{@{}cr@{}}
-    \includegraphics[scale=0.475]{Figures/ch5/R/EC95.eps} & \raisebox{2.75cm}{(a)} \\
-    \includegraphics[scale=0.475]{Figures/ch5/R/EC50.eps} & \raisebox{2.75cm}{(b)}
-  \end{tabular}
-  \caption{Energy consumption per period for (a)~$Lifetime_{95}$ and (b)~$Lifetime_{50}$.}
-  \label{fig3EC}
-\end{figure} 
+\centering
+ %\begin{multicols}{1}
+\centering
+\includegraphics[scale=0.6]{Figures/ch5/R1/EC95.pdf}\\~ ~ ~ ~ ~(a) \\
+%\vfill
+\includegraphics[scale=0.6]{Figures/ch5/R1/EC50.pdf}\\~ ~ ~ ~ ~(b)
 
 
+%\end{multicols} 
+\caption{Energy consumption for (a) $Lifetime_{95}$ and (b) $Lifetime_{50}$}
+\label{fig7}
+\end{figure}
 
 
 
 
-\subsubsection{The Network Lifetime}
-\label{ch5:sec:04:02:04}
+The  results  show  that  MuDiLCO  is  the  most  competitive  from  the  energy
+consumption point of view.  The  other approaches have a high energy consumption
+due  to activating a  larger number  of redundant  nodes as  well as  the energy
+consumed during  the different  status of the  sensor node. Among  the different
+versions of our protocol, the MuDiLCO-7  one consumes more energy than the other
+versions. This is  easy to understand since the bigger the  number of rounds and
+the number of  sensors involved in the integer program are,  the larger the time
+computation to solve the optimization problem is. To improve the performances of
+MuDiLCO-7, we  should increase the  number of subregions  in order to  have less
+sensors to consider in the integer program.
 
 
-We observe the superiority of PeCO and DiLCO protocols in comparison with the
-two    other   approaches    in    prolonging   the    network   lifetime.    In
-Figures~\ref{fig3LT}(a)  and (b),  $Lifetime95$ and  $Lifetime50$ are  shown for
-different  network  sizes.   As  highlighted  by  these  figures,  the  lifetime
-increases with the size  of the network, and it is clearly   largest for DiLCO
-and PeCO  protocols.  For instance,  for a  network of 300~sensors  and coverage
-ratio greater than 50\%, we can  see on Figure~\ref{fig3LT}(b) that the lifetime
-is about twice longer with  PeCO compared to DESK protocol.  The performance
-difference    is    more    obvious   in    Figure~\ref{fig3LT}(b)    than    in
-Figure~\ref{fig3LT}(a) because the gain induced  by our protocols increases with
- time, and the lifetime with a coverage  of 50\% is far  longer than with
-95\%.
 
 
-\begin{figure}[h!]
-  \centering
-  \begin{tabular}{@{}cr@{}}
-    \includegraphics[scale=0.475]{Figures/ch5/R/LT95.eps} & \raisebox{2.75cm}{(a)} \\  
-    \includegraphics[scale=0.475]{Figures/ch5/R/LT50.eps} & \raisebox{2.75cm}{(b)}
-  \end{tabular}
-  \caption{Network Lifetime for (a)~$Lifetime_{95}$ and (b)~$Lifetime_{50}$.}
-  \label{fig3LT}
+
+ \item {{\bf Execution time}}
+%\subsection{Execution time}
+%\label{ch5:sec:03:02:05}
+
+We observe  the impact of the  network size and of  the number of  rounds on the
+computation  time.   Figure~\ref{fig77} gives  the  average  execution times  in
+seconds (needed to solve optimization problem) for different values of $T$. The original execution time is computed as described in chapter 4, section \ref{ch4:sec:04:02}.
+
+%The original execution time  is computed on a laptop  DELL with Intel Core~i3~2370~M (2.4 GHz)  processor (2  cores) and the  MIPS (Million Instructions  Per Second) rate equal to 35330. To be consistent  with the use of a sensor node with Atmels AVR ATmega103L  microcontroller (6 MHz) and  a MIPS rate  equal to 6 to  run the optimization   resolution,   this  time   is   multiplied   by  2944.2   $\left( \frac{35330}{2} \times  \frac{1}{6} \right)$ and  reported on Figure~\ref{fig77} for different network sizes.
+
+\begin{figure}[ht!]
+\centering
+\includegraphics[scale=0.6]{Figures/ch5/R1/T.pdf}  
+\caption{Execution Time (in seconds)}
+\label{fig77}
 \end{figure} 
 
 \end{figure} 
 
-Figure~\ref{figLTALL}  compares  the  lifetime  coverage of  our  protocols  for
-different coverage  ratios. We denote by  Protocol/50, Protocol/80, Protocol/85,
-Protocol/90, and  Protocol/95 the amount  of time  during which the  network can
-satisfy an area coverage greater than $50\%$, $80\%$, $85\%$, $90\%$, and $95\%$
-respectively, where the term Protocol refers to  DiLCO  or PeCO.  Indeed there  are applications
-that do not require a 100\% coverage of  the area to be monitored. PeCO might be
-an interesting  method since  it achieves  a good balance  between a  high level
-coverage ratio and network lifetime. PeCO always outperforms DiLCO for the three
-lower  coverage  ratios,  moreover  the   improvements  grow  with  the  network
-size. DiLCO is better  for coverage ratios near 100\%, but in  that case PeCO is
-not ineffective for the smallest network sizes.
+As expected,  the execution time increases  with the number of  rounds $T$ taken
+into account to schedule the sensing phase. The times obtained for $T=1,3$
+or $5$ seem bearable, but for $T=7$ they become quickly unsuitable for a sensor
+node, especially when  the sensor network size increases.   Again, we can notice
+that if we want  to schedule the nodes activities for a  large number of rounds,
+we need to choose a relevant number of subregions in order to avoid a complicated
+and cumbersome optimization.  On the one hand, a large value  for $T$ permits to
+reduce the  energy-overhead due  to the three  pre-sensing phases, on  the other
+hand  a leader  node may  waste a  considerable amount  of energy  to  solve the
+optimization problem.
+
+
+
+\item {{\bf Network lifetime}}
+%\subsection{Network lifetime}
+%\label{ch5:sec:03:02:06}
+
+The next  two figures,  Figures~\ref{fig8}(a) and \ref{fig8}(b),  illustrate the
+network lifetime  for different network sizes,  respectively for $Lifetime_{95}$
+and  $Lifetime_{50}$.  Both  figures show  that the  network  lifetime increases
+together with the  number of sensor nodes, whatever the  protocol, thanks to the
+node  density  which  results in  more  and  more  redundant  nodes that  can  be
+deactivated and thus save energy.  Compared to the other approaches, our MuDiLCO
+protocol  maximizes the  lifetime of  the network.   In particular  the  gain in
+lifetime for a  coverage over 95\% is greater than 38\%  when switching from GAF
+to MuDiLCO-3.  The  slight decrease that can be observed  for MuDiLCO-7 in case
+of  $Lifetime_{95}$  with  large  wireless  sensor  networks  results  from  the
+difficulty  of the optimization  problem to  be solved  by the  integer program.
+This  point was  already noticed  in \ref{subsec:EC} devoted  to the
+energy consumption,  since network lifetime and energy  consumption are directly
+linked.
+
 
 \begin{figure}[h!]
 
 \begin{figure}[h!]
-\centering \includegraphics[scale=0.5]{Figures/ch5/R/LTa.eps}
-\caption{Network lifetime for different coverage ratios.}
-\label{figLTALL}
-\end{figure} 
+\centering
+% \begin{multicols}{0}
+\centering
+\includegraphics[scale=0.6]{Figures/ch5/R1/LT95.pdf}\\~ ~ ~ ~ ~(a) \\
+%\hfill 
+\includegraphics[scale=0.6]{Figures/ch5/R1/LT50.pdf}\\~ ~ ~ ~ ~(b)
+
+%\end{multicols} 
+\caption{Network lifetime for (a) $Lifetime_{95}$ and (b) $Lifetime_{50}$}
+  \label{fig8}
+\end{figure}
+
 
 
 
 
+\end{enumerate}
+
 
 \section{Conclusion}
 \label{ch5:sec:04}
 
 
 \section{Conclusion}
 \label{ch5:sec:04}
 
-In this chapter, we have studied the problem of  Perimeter-based Coverage Optimization in
-WSNs. We have designed  a new protocol, called Perimeter-based  Coverage Optimization, which
-schedules nodes'  activities (wake up  and sleep  stages) with the  objective of
-maintaining a  good coverage ratio  while maximizing the network  lifetime. This
-protocol is  applied in a distributed  way in regular subregions  obtained after
-partitioning the area of interest in a preliminary step. It works in periods and
-is based on the resolution of an integer program to select the subset of sensors
-operating in active status for each period. Our work is original in so far as it
-proposes for  the first  time an  integer program  scheduling the  activation of
-sensors  based on  their perimeter  coverage level,  instead of  using a  set of
-targets/points to be covered. We  have carried out  several simulations  to  evaluate the  proposed protocol. The simulation  results  show   that  PeCO  is  more   energy-efficient  than  other approaches, with respect to lifetime,  coverage ratio, active sensors ratio, and
-energy consumption.
-
-We plan to extend our framework so that the schedules are planned for multiple
-sensing periods.
-%in order to compute all active sensor schedules in only one step for many periods;
-We also want  to improve our integer program to  take into account heterogeneous
-sensors  from both  energy  and node  characteristics point of views.
-%the third, we are investigating new optimization model based on the sensing range so as to maximize the lifetime coverage in WSN;
-Finally,  it   would  be   interesting  to  implement   our  protocol   using  a
-sensor-testbed to evaluate it in real world applications.
+We have addressed  the problem of the coverage and of the lifetime optimization in
+wireless  sensor networks.  This is  a key  issue as  sensor nodes  have limited
+resources in terms of memory, energy, and computational power. To cope with this
+problem,  the field  of sensing  is divided  into smaller  subregions  using the
+concept  of divide-and-conquer  method, and  then  we propose  a protocol  which
+optimizes coverage  and lifetime performances in each  subregion.  Our protocol,
+called MuDiLCO (Multiround  Distributed Lifetime Coverage Optimization) combines
+two  efficient   techniques:  network   leader  election  and   sensor  activity
+scheduling.
+
+The activity  scheduling in each subregion  works in periods,  where each period
+consists of four  phases: (i) Information Exchange, (ii)  Leader Election, (iii)
+Decision Phase to plan the activity  of the sensors over $T$ rounds, (iv) Sensing
+Phase itself divided into T rounds.
+
+Simulations  results show the  relevance of  the proposed  protocol in  terms of
+lifetime, coverage  ratio, active  sensors ratio, energy  consumption, execution
+time. Indeed,  when dealing with  large wireless sensor networks,  a distributed
+approach, like  the one we  propose, allows to  reduce the difficulty of  a single
+global optimization problem by partitioning it in many smaller problems, one per
+subregion, that can be solved  more easily. Nevertheless, results also show that
+it is not possible to plan the activity of sensors over too many rounds, because
+the resulting optimization problem leads to too high resolution times and thus to
+an excessive energy consumption.
+
+
+
+
\ No newline at end of file
diff --git a/Figures/ch3/FirstModel.pdf b/Figures/ch3/FirstModel.pdf
deleted file mode 100644 (file)
index 4ff568a..0000000
Binary files a/Figures/ch3/FirstModel.pdf and /dev/null differ
diff --git a/Figures/ch3/R1/ASR.pdf b/Figures/ch3/R1/ASR.pdf
deleted file mode 100644 (file)
index e609915..0000000
Binary files a/Figures/ch3/R1/ASR.pdf and /dev/null differ
diff --git a/Figures/ch3/R1/CR.pdf b/Figures/ch3/R1/CR.pdf
deleted file mode 100644 (file)
index 2b21742..0000000
Binary files a/Figures/ch3/R1/CR.pdf and /dev/null differ
diff --git a/Figures/ch3/R1/EC50.pdf b/Figures/ch3/R1/EC50.pdf
deleted file mode 100644 (file)
index 33f45c4..0000000
Binary files a/Figures/ch3/R1/EC50.pdf and /dev/null differ
diff --git a/Figures/ch3/R1/EC95.pdf b/Figures/ch3/R1/EC95.pdf
deleted file mode 100644 (file)
index 77743c7..0000000
Binary files a/Figures/ch3/R1/EC95.pdf and /dev/null differ
diff --git a/Figures/ch3/R1/LT50.pdf b/Figures/ch3/R1/LT50.pdf
deleted file mode 100644 (file)
index 7fc256e..0000000
Binary files a/Figures/ch3/R1/LT50.pdf and /dev/null differ
diff --git a/Figures/ch3/R1/LT95.pdf b/Figures/ch3/R1/LT95.pdf
deleted file mode 100644 (file)
index 3603834..0000000
Binary files a/Figures/ch3/R1/LT95.pdf and /dev/null differ
diff --git a/Figures/ch3/R1/SR.pdf b/Figures/ch3/R1/SR.pdf
deleted file mode 100644 (file)
index 4b56c5a..0000000
Binary files a/Figures/ch3/R1/SR.pdf and /dev/null differ
diff --git a/Figures/ch3/R1/T.eps b/Figures/ch3/R1/T.eps
deleted file mode 100644 (file)
index 07c60cd..0000000
+++ /dev/null
@@ -1,913 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 53 53 545 402
-%%HiResBoundingBox: 54 53.5 544.5 401.5
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Sat Jun 14 03:19:11 2014
-%%EndComments
-% EPSF created by ps2eps 1.68
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Sat Jun 14 03:19:11 2014)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-671 352 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 1)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 544 M
-31 0 V
-4139 0 R
--31 0 V
-671 797 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 797 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 5)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 989 M
-31 0 V
-4139 0 R
--31 0 V
-671 1242 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 1242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 25)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 1434 M
-31 0 V
-4139 0 R
--31 0 V
-671 1687 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 1687 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 1879 M
-31 0 V
-4139 0 R
--31 0 V
-671 2133 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 2133 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 625)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 2324 M
-31 0 V
-4139 0 R
--31 0 V
-671 2578 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 2578 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 3125)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 2769 M
-31 0 V
-4139 0 R
--31 0 V
-671 3023 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 3023 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 15625)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 3215 M
-31 0 V
-4139 0 R
--31 0 V
-671 3468 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 78125)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-671 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 25)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1088 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1088 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1505 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1505 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 75)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1922 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1922 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2339 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2339 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2756 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2756 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3173 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3173 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 175)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3590 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3590 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 200)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4007 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4007 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 225)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4424 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4424 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 250)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4841 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4841 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 275)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-671 3468 N
-671 352 L
-4170 0 V
-0 3116 V
--4170 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Execution Time \(s\) )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2756 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Wireless Sensor Nodes)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-1380 3402 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-2)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 1446 3402 M
-327 0 V
-1088 1727 M
-834 407 V
-834 313 V
-834 333 V
-834 260 V
-1088 1727 TriUF
-1922 2134 TriUF
-2756 2447 TriUF
-3590 2780 TriUF
-4424 3040 TriUF
-1609 3402 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.50 0.00 0.00 C LCb setrgbcolor
-1380 3292 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-4)]
-] -36.7 MRshow
-LT1
-0.50 0.00 0.00 C 1446 3292 M
-327 0 V
-1088 1334 M
-834 367 V
-834 227 V
-834 183 V
-834 142 V
-1088 1334 Star
-1922 1701 Star
-2756 1928 Star
-3590 2111 Star
-4424 2253 Star
-1609 3292 Star
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.00 0.00 0.55 C LCb setrgbcolor
-1380 3182 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-8)]
-] -36.7 MRshow
-LT2
-0.00 0.00 0.55 C 1446 3182 M
-327 0 V
-1088 1000 M
-834 310 V
-834 215 V
-834 155 V
-834 118 V
-1088 1000 CircleF
-1922 1310 CircleF
-2756 1525 CircleF
-3590 1680 CircleF
-4424 1798 CircleF
-1609 3182 CircleF
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.39 0.00 C LCb setrgbcolor
-1380 3072 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-16)]
-] -36.7 MRshow
-LT3
-0.00 0.39 0.00 C 1446 3072 M
-327 0 V
-1088 921 M
-834 85 V
-834 134 V
-834 113 V
-834 93 V
-1088 921 DiaF
-1922 1006 DiaF
-2756 1140 DiaF
-3590 1253 DiaF
-4424 1346 DiaF
-1609 3072 DiaF
-% End plot #4
-% Begin plot #5
-1.000 UP
-2.000 UL
-LT4
-0.50 0.00 0.50 C LCb setrgbcolor
-1380 2962 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-32)]
-] -36.7 MRshow
-LT4
-0.50 0.00 0.50 C 1446 2962 M
-327 0 V
-1088 659 M
-834 91 V
-834 86 V
-834 65 V
-834 74 V
-1088 659 BoxF
-1922 750 BoxF
-2756 836 BoxF
-3590 901 BoxF
-4424 975 BoxF
-1609 2962 BoxF
-% End plot #5
-1.000 UL
-LTb
-671 3468 N
-671 352 L
-4170 0 V
-0 3116 V
--4170 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
diff --git a/Figures/ch3/R1/T.pdf b/Figures/ch3/R1/T.pdf
deleted file mode 100644 (file)
index 81a93e8..0000000
Binary files a/Figures/ch3/R1/T.pdf and /dev/null differ
diff --git a/Figures/ch3/R1/T.ps b/Figures/ch3/R1/T.ps
deleted file mode 100644 (file)
index 8becb38..0000000
+++ /dev/null
@@ -1,899 +0,0 @@
-%!PS-Adobe-2.0
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Sat Jun 14 03:19:11 2014
-%%DocumentFonts: (atend)
-%%BoundingBox: 50 50 554 410
-%%Orientation: Portrait
-%%Pages: (atend)
-%%EndComments
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Sat Jun 14 03:19:11 2014)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-671 352 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 1)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 544 M
-31 0 V
-4139 0 R
--31 0 V
-671 797 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 797 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 5)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 989 M
-31 0 V
-4139 0 R
--31 0 V
-671 1242 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 1242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 25)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 1434 M
-31 0 V
-4139 0 R
--31 0 V
-671 1687 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 1687 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 1879 M
-31 0 V
-4139 0 R
--31 0 V
-671 2133 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 2133 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 625)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 2324 M
-31 0 V
-4139 0 R
--31 0 V
-671 2578 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 2578 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 3125)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 2769 M
-31 0 V
-4139 0 R
--31 0 V
-671 3023 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 3023 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 15625)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 3215 M
-31 0 V
-4139 0 R
--31 0 V
-671 3468 M
-63 0 V
-4107 0 R
--63 0 V
-stroke
-605 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 78125)]
-] -36.7 MRshow
-1.000 UL
-LTb
-671 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-671 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 25)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1088 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1088 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1505 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1505 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 75)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1922 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1922 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2339 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2339 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2756 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2756 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3173 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3173 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 175)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3590 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3590 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 200)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4007 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4007 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 225)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4424 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4424 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 250)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4841 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4841 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 275)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-671 3468 N
-671 352 L
-4170 0 V
-0 3116 V
--4170 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Execution Time \(s\) )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2756 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Wireless Sensor Nodes)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-1380 3402 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-2)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 1446 3402 M
-327 0 V
-1088 1727 M
-834 407 V
-834 313 V
-834 333 V
-834 260 V
-1088 1727 TriUF
-1922 2134 TriUF
-2756 2447 TriUF
-3590 2780 TriUF
-4424 3040 TriUF
-1609 3402 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.50 0.00 0.00 C LCb setrgbcolor
-1380 3292 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-4)]
-] -36.7 MRshow
-LT1
-0.50 0.00 0.00 C 1446 3292 M
-327 0 V
-1088 1334 M
-834 367 V
-834 227 V
-834 183 V
-834 142 V
-1088 1334 Star
-1922 1701 Star
-2756 1928 Star
-3590 2111 Star
-4424 2253 Star
-1609 3292 Star
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.00 0.00 0.55 C LCb setrgbcolor
-1380 3182 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-8)]
-] -36.7 MRshow
-LT2
-0.00 0.00 0.55 C 1446 3182 M
-327 0 V
-1088 1000 M
-834 310 V
-834 215 V
-834 155 V
-834 118 V
-1088 1000 CircleF
-1922 1310 CircleF
-2756 1525 CircleF
-3590 1680 CircleF
-4424 1798 CircleF
-1609 3182 CircleF
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.39 0.00 C LCb setrgbcolor
-1380 3072 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-16)]
-] -36.7 MRshow
-LT3
-0.00 0.39 0.00 C 1446 3072 M
-327 0 V
-1088 921 M
-834 85 V
-834 134 V
-834 113 V
-834 93 V
-1088 921 DiaF
-1922 1006 DiaF
-2756 1140 DiaF
-3590 1253 DiaF
-4424 1346 DiaF
-1609 3072 DiaF
-% End plot #4
-% Begin plot #5
-1.000 UP
-2.000 UL
-LT4
-0.50 0.00 0.50 C LCb setrgbcolor
-1380 2962 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO-32)]
-] -36.7 MRshow
-LT4
-0.50 0.00 0.50 C 1446 2962 M
-327 0 V
-1088 659 M
-834 91 V
-834 86 V
-834 65 V
-834 74 V
-1088 659 BoxF
-1922 750 BoxF
-2756 836 BoxF
-3590 901 BoxF
-4424 975 BoxF
-1609 2962 BoxF
-% End plot #5
-1.000 UL
-LTb
-671 3468 N
-671 352 L
-4170 0 V
-0 3116 V
--4170 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
diff --git a/Figures/ch3/R2/ASR.pdf b/Figures/ch3/R2/ASR.pdf
deleted file mode 100644 (file)
index 4e1160a..0000000
Binary files a/Figures/ch3/R2/ASR.pdf and /dev/null differ
diff --git a/Figures/ch3/R2/CR.pdf b/Figures/ch3/R2/CR.pdf
deleted file mode 100644 (file)
index dedc1e8..0000000
Binary files a/Figures/ch3/R2/CR.pdf and /dev/null differ
diff --git a/Figures/ch3/R2/EC50.pdf b/Figures/ch3/R2/EC50.pdf
deleted file mode 100644 (file)
index 281d3d7..0000000
Binary files a/Figures/ch3/R2/EC50.pdf and /dev/null differ
diff --git a/Figures/ch3/R2/EC95.pdf b/Figures/ch3/R2/EC95.pdf
deleted file mode 100644 (file)
index a6ba510..0000000
Binary files a/Figures/ch3/R2/EC95.pdf and /dev/null differ
diff --git a/Figures/ch3/R2/LT50.pdf b/Figures/ch3/R2/LT50.pdf
deleted file mode 100644 (file)
index 4b1901a..0000000
Binary files a/Figures/ch3/R2/LT50.pdf and /dev/null differ
diff --git a/Figures/ch3/R2/LT95.pdf b/Figures/ch3/R2/LT95.pdf
deleted file mode 100644 (file)
index 63796ee..0000000
Binary files a/Figures/ch3/R2/LT95.pdf and /dev/null differ
diff --git a/Figures/ch3/R2/SR.pdf b/Figures/ch3/R2/SR.pdf
deleted file mode 100644 (file)
index 8b90364..0000000
Binary files a/Figures/ch3/R2/SR.pdf and /dev/null differ
diff --git a/Figures/ch3/R2/T.eps b/Figures/ch3/R2/T.eps
deleted file mode 100644 (file)
index a9a0fb7..0000000
+++ /dev/null
@@ -1,945 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 53 53 545 402
-%%HiResBoundingBox: 54 53.5 544.5 401.5
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Tue Jun 10 02:12:25 2014
-%%EndComments
-% EPSF created by ps2eps 1.68
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Tue Jun 10 02:12:25 2014)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-473 352 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 0)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 592 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 592 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 5)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 831 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 831 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 10)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1071 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1071 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 15)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1311 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1311 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 20)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1550 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1550 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 25)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1790 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1790 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 30)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2030 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2030 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 35)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2270 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2270 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 40)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2509 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2509 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 45)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2749 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2749 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2989 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2989 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 55)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 3228 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 3228 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 60)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 3468 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 65)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-473 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 25)]
-] -36.7 MCshow
-1.000 UL
-LTb
-910 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-910 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1347 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1347 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 75)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1783 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1783 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2220 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2220 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2657 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2657 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3094 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3094 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 175)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3531 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3531 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 200)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3967 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3967 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 225)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4404 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4404 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 250)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4841 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4841 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 275)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-473 3468 N
-473 352 L
-4368 0 V
-0 3116 V
--4368 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Execution Time \(s\) )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2657 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Wireless Sensor Nodes)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-1150 3317 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-5)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 1216 3317 M
-327 0 V
-910 655 M
-873 135 V
-874 91 V
-874 106 V
-873 239 V
-910 655 TriUF
-1783 790 TriUF
-2657 881 TriUF
-3531 987 TriUF
-4404 1226 TriUF
-1379 3317 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.50 0.00 0.00 C LCb setrgbcolor
-1150 3207 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-9)]
-] -36.7 MRshow
-LT1
-0.50 0.00 0.00 C 1216 3207 M
-327 0 V
-910 680 M
-873 117 V
-874 275 V
-874 208 V
-873 348 V
-910 680 Star
-1783 797 Star
-2657 1072 Star
-3531 1280 Star
-4404 1628 Star
-1379 3207 Star
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.00 0.00 0.55 C LCb setrgbcolor
-1150 3097 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-13)]
-] -36.7 MRshow
-LT2
-0.00 0.00 0.55 C 1216 3097 M
-327 0 V
-910 727 M
-873 136 V
-874 318 V
-874 417 V
-873 495 V
-910 727 CircleF
-1783 863 CircleF
-2657 1181 CircleF
-3531 1598 CircleF
-4404 2093 CircleF
-1379 3097 CircleF
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.39 0.00 C LCb setrgbcolor
-1150 2987 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-17)]
-] -36.7 MRshow
-LT3
-0.00 0.39 0.00 C 1216 2987 M
-327 0 V
-910 737 M
-873 261 V
-874 489 V
-874 341 V
-873 717 V
-910 737 DiaF
-1783 998 DiaF
-2657 1487 DiaF
-3531 1828 DiaF
-4404 2545 DiaF
-1379 2987 DiaF
-% End plot #4
-% Begin plot #5
-1.000 UP
-2.000 UL
-LT4
-0.50 0.00 0.50 C LCb setrgbcolor
-1150 2877 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-21)]
-] -36.7 MRshow
-LT4
-0.50 0.00 0.50 C 1216 2877 M
-327 0 V
-910 714 M
-873 389 V
-874 460 V
-874 860 V
-873 881 V
-910 714 BoxF
-1783 1103 BoxF
-2657 1563 BoxF
-3531 2423 BoxF
-4404 3304 BoxF
-1379 2877 BoxF
-% End plot #5
-1.000 UL
-LTb
-473 3468 N
-473 352 L
-4368 0 V
-0 3116 V
--4368 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
diff --git a/Figures/ch3/R2/T.pdf b/Figures/ch3/R2/T.pdf
deleted file mode 100644 (file)
index 7ab1b00..0000000
Binary files a/Figures/ch3/R2/T.pdf and /dev/null differ
diff --git a/Figures/ch3/R2/T.ps b/Figures/ch3/R2/T.ps
deleted file mode 100644 (file)
index bcc1198..0000000
+++ /dev/null
@@ -1,931 +0,0 @@
-%!PS-Adobe-2.0
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Tue Jun 10 02:12:25 2014
-%%DocumentFonts: (atend)
-%%BoundingBox: 50 50 554 410
-%%Orientation: Portrait
-%%Pages: (atend)
-%%EndComments
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Tue Jun 10 02:12:25 2014)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-473 352 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 0)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 592 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 592 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 5)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 831 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 831 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 10)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1071 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1071 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 15)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1311 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1311 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 20)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1550 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1550 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 25)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1790 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1790 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 30)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2030 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2030 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 35)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2270 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2270 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 40)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2509 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2509 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 45)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2749 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2749 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2989 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2989 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 55)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 3228 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 3228 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 60)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 3468 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 65)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-473 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 25)]
-] -36.7 MCshow
-1.000 UL
-LTb
-910 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-910 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1347 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1347 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 75)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1783 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1783 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2220 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2220 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2657 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2657 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3094 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3094 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 175)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3531 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3531 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 200)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3967 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3967 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 225)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4404 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4404 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 250)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4841 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4841 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 275)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-473 3468 N
-473 352 L
-4368 0 V
-0 3116 V
--4368 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Execution Time \(s\) )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2657 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Wireless Sensor Nodes)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-1150 3317 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-5)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 1216 3317 M
-327 0 V
-910 655 M
-873 135 V
-874 91 V
-874 106 V
-873 239 V
-910 655 TriUF
-1783 790 TriUF
-2657 881 TriUF
-3531 987 TriUF
-4404 1226 TriUF
-1379 3317 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.50 0.00 0.00 C LCb setrgbcolor
-1150 3207 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-9)]
-] -36.7 MRshow
-LT1
-0.50 0.00 0.00 C 1216 3207 M
-327 0 V
-910 680 M
-873 117 V
-874 275 V
-874 208 V
-873 348 V
-910 680 Star
-1783 797 Star
-2657 1072 Star
-3531 1280 Star
-4404 1628 Star
-1379 3207 Star
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.00 0.00 0.55 C LCb setrgbcolor
-1150 3097 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-13)]
-] -36.7 MRshow
-LT2
-0.00 0.00 0.55 C 1216 3097 M
-327 0 V
-910 727 M
-873 136 V
-874 318 V
-874 417 V
-873 495 V
-910 727 CircleF
-1783 863 CircleF
-2657 1181 CircleF
-3531 1598 CircleF
-4404 2093 CircleF
-1379 3097 CircleF
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.39 0.00 C LCb setrgbcolor
-1150 2987 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-17)]
-] -36.7 MRshow
-LT3
-0.00 0.39 0.00 C 1216 2987 M
-327 0 V
-910 737 M
-873 261 V
-874 489 V
-874 341 V
-873 717 V
-910 737 DiaF
-1783 998 DiaF
-2657 1487 DiaF
-3531 1828 DiaF
-4404 2545 DiaF
-1379 2987 DiaF
-% End plot #4
-% Begin plot #5
-1.000 UP
-2.000 UL
-LT4
-0.50 0.00 0.50 C LCb setrgbcolor
-1150 2877 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Model-21)]
-] -36.7 MRshow
-LT4
-0.50 0.00 0.50 C 1216 2877 M
-327 0 V
-910 714 M
-873 389 V
-874 460 V
-874 860 V
-873 881 V
-910 714 BoxF
-1783 1103 BoxF
-2657 1563 BoxF
-3531 2423 BoxF
-4404 3304 BoxF
-1379 2877 BoxF
-% End plot #5
-1.000 UL
-LTb
-473 3468 N
-473 352 L
-4368 0 V
-0 3116 V
--4368 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
diff --git a/Figures/ch3/R3/ASR.pdf b/Figures/ch3/R3/ASR.pdf
deleted file mode 100644 (file)
index 3776113..0000000
Binary files a/Figures/ch3/R3/ASR.pdf and /dev/null differ
diff --git a/Figures/ch3/R3/CR.pdf b/Figures/ch3/R3/CR.pdf
deleted file mode 100644 (file)
index d16ce25..0000000
Binary files a/Figures/ch3/R3/CR.pdf and /dev/null differ
diff --git a/Figures/ch3/R3/EC50.pdf b/Figures/ch3/R3/EC50.pdf
deleted file mode 100644 (file)
index 3402514..0000000
Binary files a/Figures/ch3/R3/EC50.pdf and /dev/null differ
diff --git a/Figures/ch3/R3/EC95.pdf b/Figures/ch3/R3/EC95.pdf
deleted file mode 100644 (file)
index 7afaf94..0000000
Binary files a/Figures/ch3/R3/EC95.pdf and /dev/null differ
diff --git a/Figures/ch3/R3/LT50.pdf b/Figures/ch3/R3/LT50.pdf
deleted file mode 100644 (file)
index cd842ea..0000000
Binary files a/Figures/ch3/R3/LT50.pdf and /dev/null differ
diff --git a/Figures/ch3/R3/LT95.pdf b/Figures/ch3/R3/LT95.pdf
deleted file mode 100644 (file)
index 9313bf6..0000000
Binary files a/Figures/ch3/R3/LT95.pdf and /dev/null differ
diff --git a/Figures/ch3/R3/SR.pdf b/Figures/ch3/R3/SR.pdf
deleted file mode 100644 (file)
index ccfbc9a..0000000
Binary files a/Figures/ch3/R3/SR.pdf and /dev/null differ
diff --git a/Figures/ch3/fig21.pdf b/Figures/ch3/fig21.pdf
deleted file mode 100644 (file)
index 1d32fcc..0000000
Binary files a/Figures/ch3/fig21.pdf and /dev/null differ
diff --git a/Figures/ch3/fig22.pdf b/Figures/ch3/fig22.pdf
deleted file mode 100644 (file)
index 7cc4a50..0000000
Binary files a/Figures/ch3/fig22.pdf and /dev/null differ
diff --git a/Figures/ch3/fig23.pdf b/Figures/ch3/fig23.pdf
deleted file mode 100644 (file)
index 8d0b430..0000000
Binary files a/Figures/ch3/fig23.pdf and /dev/null differ
diff --git a/Figures/ch3/fig24.pdf b/Figures/ch3/fig24.pdf
deleted file mode 100644 (file)
index d774bcd..0000000
Binary files a/Figures/ch3/fig24.pdf and /dev/null differ
diff --git a/Figures/ch3/fig25.pdf b/Figures/ch3/fig25.pdf
deleted file mode 100644 (file)
index 5e50035..0000000
Binary files a/Figures/ch3/fig25.pdf and /dev/null differ
diff --git a/Figures/ch3/fig26.pdf b/Figures/ch3/fig26.pdf
deleted file mode 100644 (file)
index f369523..0000000
Binary files a/Figures/ch3/fig26.pdf and /dev/null differ
diff --git a/Figures/ch3/fig27.pdf b/Figures/ch3/fig27.pdf
deleted file mode 100644 (file)
index 1e748ea..0000000
Binary files a/Figures/ch3/fig27.pdf and /dev/null differ
diff --git a/Figures/ch3/principles13.pdf b/Figures/ch3/principles13.pdf
deleted file mode 100644 (file)
index 9d30005..0000000
Binary files a/Figures/ch3/principles13.pdf and /dev/null differ
diff --git a/Figures/ch4/GeneralModel.jpg b/Figures/ch4/GeneralModel.jpg
deleted file mode 100644 (file)
index acd556d..0000000
Binary files a/Figures/ch4/GeneralModel.jpg and /dev/null differ
diff --git a/Figures/ch4/Modelgeneral.pdf b/Figures/ch4/Modelgeneral.pdf
deleted file mode 100644 (file)
index a0e5cbf..0000000
Binary files a/Figures/ch4/Modelgeneral.pdf and /dev/null differ
index 92df87a76d46383d8a33b3ff01f6d0026e783cea..e609915795c2c9075dbafff3e2e22cea5daa47cf 100644 (file)
Binary files a/Figures/ch4/R1/ASR.pdf and b/Figures/ch4/R1/ASR.pdf differ
index 4c58490bdf918a5f6ce61aea550ba7fdd6eedda0..2b2174274cb102ef46b01d06fe0b01793bce2c69 100644 (file)
Binary files a/Figures/ch4/R1/CR.pdf and b/Figures/ch4/R1/CR.pdf differ
index d8baf9b9d47675eff21e1d828a2d6187ff40b8f0..33f45c4feb3ab4b0064eca9cb430bfa8c0925190 100644 (file)
Binary files a/Figures/ch4/R1/EC50.pdf and b/Figures/ch4/R1/EC50.pdf differ
index 0e3c9e4cf4fe76f74e61f9bbba528bca86538053..77743c7aee977dcc2214afb5c315a16b0260216a 100644 (file)
Binary files a/Figures/ch4/R1/EC95.pdf and b/Figures/ch4/R1/EC95.pdf differ
index 498b7f64ecdacdde21feb7fb877fd0cb2fc536df..7fc256e696f9a6e1a56a281ae24962155107ac50 100644 (file)
Binary files a/Figures/ch4/R1/LT50.pdf and b/Figures/ch4/R1/LT50.pdf differ
index 696b72fe2cc55fd9fa3db6b17c8731e37c184954..3603834404c883567a0070f195606028b9e68830 100644 (file)
Binary files a/Figures/ch4/R1/LT95.pdf and b/Figures/ch4/R1/LT95.pdf differ
index f26a2a06d72531530121bc9fb4dee94734935ee4..4b56c5a74b624472b067e64e4f7585b474f3b235 100644 (file)
Binary files a/Figures/ch4/R1/SR.pdf and b/Figures/ch4/R1/SR.pdf differ
index 8de9d3a09ee70d6bd94a3d263e08b8c881528bdc..81a93e8ebe7dbb66dae49be377c1dda2c7d86c5d 100644 (file)
Binary files a/Figures/ch4/R1/T.pdf and b/Figures/ch4/R1/T.pdf differ
diff --git a/Figures/ch5/Model.pdf b/Figures/ch5/Model.pdf
deleted file mode 100644 (file)
index ef17825..0000000
Binary files a/Figures/ch5/Model.pdf and /dev/null differ
diff --git a/Figures/ch5/R/ASR-eps-converted-to.pdf b/Figures/ch5/R/ASR-eps-converted-to.pdf
deleted file mode 100644 (file)
index 2a1cadb..0000000
Binary files a/Figures/ch5/R/ASR-eps-converted-to.pdf and /dev/null differ
diff --git a/Figures/ch5/R/ASR.eps b/Figures/ch5/R/ASR.eps
deleted file mode 100644 (file)
index 46e075d..0000000
+++ /dev/null
@@ -1,1472 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 53 53 536 402
-%%HiResBoundingBox: 54 53.5 535 401.5
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Mon Feb  2 16:06:45 2015
-%%EndComments
-% EPSF created by ps2eps 1.68
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Mon Feb  2 16:06:45 2015)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-473 352 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 0)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 664 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 664 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 5)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 975 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 975 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 10)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1287 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1287 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 15)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1598 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1598 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 20)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1910 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1910 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 25)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2222 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2222 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 30)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2533 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2533 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 35)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2845 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2845 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 40)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 3156 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 3156 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 45)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 3468 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-473 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 0)]
-] -36.7 MCshow
-1.000 UL
-LTb
-825 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-825 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 10)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1178 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1178 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 20)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1530 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1530 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 30)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1882 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1882 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 40)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2234 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2234 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2587 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2587 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 60)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2939 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2939 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 70)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3291 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3291 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 80)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3643 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3643 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 90)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3996 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3996 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4348 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4348 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 110)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4700 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4700 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 120)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-473 3468 N
-473 352 L
-4368 0 V
-0 3116 V
--4368 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Active Sensor Ratio \(%\) )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2657 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Periods)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-4316 3350 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 4382 3350 M
-327 0 V
-508 1469 M
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 4 V
-35 32 V
-36 30 V
-35 29 V
-35 36 V
-35 25 V
-36 8 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 2 V
-35 6 V
-36 16 V
-35 11 V
-35 19 V
-35 20 V
-35 20 V
-36 9 V
-35 12 V
-35 1 V
-35 8 V
-36 0 V
-35 0 V
-35 0 V
-35 1 V
-35 1 V
-36 -1 V
-35 -4 V
-35 6 V
-35 0 V
-36 3 V
-35 -23 V
-35 -6 V
-35 -7 V
-36 -23 V
-35 -2 V
-35 -10 V
-35 -10 V
-35 -6 V
-36 -2 V
-35 -7 V
-35 -13 V
-35 -21 V
-36 -26 V
-35 -29 V
-35 -48 V
-35 -44 V
-35 -73 V
-36 -45 V
-35 -51 V
-35 -44 V
-35 -31 V
-36 -39 V
-35 -22 V
-35 -20 V
-35 -23 V
-35 -54 V
-36 -41 V
-35 -57 V
-35 -56 V
-35 -69 V
-36 -47 V
-35 -47 V
-35 -69 V
-35 -41 V
-36 -33 V
-35 -28 V
-35 -18 V
-35 -22 V
-35 -15 V
-36 -22 V
-35 -11 V
-35 -20 V
-35 -16 V
-36 -23 V
-35 -12 V
-35 -19 V
-35 -12 V
-35 -9 V
-36 -13 V
-35 -5 V
-35 -1 V
-35 -2 V
-36 -3 V
-35 -5 V
-35 -1 V
-35 -4 V
-stroke 4101 363 M
-35 0 V
-36 -1 V
-35 -3 V
-35 -1 V
-35 -1 V
-36 -1 V
-35 -2 V
-35 0 V
-35 0 V
-36 0 V
-35 -1 V
-35 -1 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-508 1469 TriUF
-684 1469 TriUF
-860 1469 TriUF
-1037 1535 TriUF
-1213 1633 TriUF
-1389 1633 TriUF
-1565 1687 TriUF
-1741 1749 TriUF
-1917 1758 TriUF
-2093 1760 TriUF
-2270 1704 TriUF
-2446 1674 TriUF
-2622 1578 TriUF
-2798 1317 TriUF
-2974 1161 TriUF
-3150 930 TriUF
-3326 657 TriUF
-3502 541 TriUF
-3679 449 TriUF
-3855 384 TriUF
-4031 368 TriUF
-4207 359 TriUF
-4383 354 TriUF
-4559 352 TriUF
-4735 352 TriUF
-4545 3350 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.00 0.39 0.00 C LCb setrgbcolor
-4316 3240 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DESK)]
-] -36.7 MRshow
-LT1
-0.00 0.39 0.00 C 4382 3240 M
-327 0 V
-508 2244 M
-35 0 V
-36 0 V
-35 1 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 -1 V
-35 3 V
-36 -3 V
-35 1 V
-35 -22 V
-35 41 V
-36 -8 V
-35 20 V
-35 -44 V
-35 -73 V
-36 -7 V
-35 -1 V
-35 0 V
-35 2 V
-35 0 V
-36 0 V
-35 0 V
-35 3 V
-35 13 V
-36 3 V
-35 -19 V
-35 -22 V
-35 -30 V
-35 -7 V
-36 -34 V
-35 -33 V
-35 -1 V
-35 1 V
-36 3 V
-35 -5 V
-35 3 V
-35 -6 V
-35 6 V
-36 -39 V
-35 -34 V
-35 -85 V
-35 -159 V
-36 -133 V
-35 -134 V
-35 -100 V
-35 -98 V
-36 -61 V
-35 -61 V
-35 -57 V
-35 -88 V
-35 -106 V
-36 -125 V
-35 -150 V
-35 -145 V
-35 -56 V
-36 -29 V
-35 -6 V
-35 -10 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-stroke 4101 352 M
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-508 2244 DiaF
-684 2245 DiaF
-860 2247 DiaF
-1037 2256 DiaF
-1213 2151 DiaF
-1389 2153 DiaF
-1565 2131 DiaF
-1741 2026 DiaF
-1917 2022 DiaF
-2093 1711 DiaF
-2270 1185 DiaF
-2446 748 DiaF
-2622 362 DiaF
-2798 352 DiaF
-2974 352 DiaF
-3150 352 DiaF
-3326 352 DiaF
-3502 352 DiaF
-3679 352 DiaF
-3855 352 DiaF
-4031 352 DiaF
-4207 352 DiaF
-4383 352 DiaF
-4559 352 DiaF
-4735 352 DiaF
-4545 3240 DiaF
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.50 0.00 0.00 C LCb setrgbcolor
-4316 3130 M
-[ [(Helvetica) 110.0 0.0 true true 0 (GAF)]
-] -36.7 MRshow
-LT2
-0.50 0.00 0.00 C 4382 3130 M
-327 0 V
-508 2531 M
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 -29 V
-36 -57 V
-35 -49 V
-35 -56 V
-35 -49 V
-36 -49 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 -17 V
-35 -23 V
-35 -40 V
-35 -66 V
-35 -75 V
-36 -106 V
-35 -85 V
-35 -60 V
-35 -46 V
-36 -31 V
-35 -10 V
-35 0 V
-35 0 V
-35 0 V
-36 -1 V
-35 -15 V
-35 -22 V
-35 -44 V
-36 -60 V
-35 -66 V
-35 -82 V
-35 -92 V
-36 -78 V
-35 -77 V
-35 -59 V
-35 -35 V
-35 -33 V
-36 -11 V
-35 -10 V
-35 -3 V
-35 -7 V
-36 -13 V
-35 -16 V
-35 -29 V
-35 -52 V
-35 -49 V
-36 -49 V
-35 -62 V
-35 -73 V
-35 -44 V
-36 -32 V
-35 -25 V
-35 -19 V
-35 -13 V
-35 -10 V
-36 -7 V
-35 -7 V
-35 -10 V
-35 -10 V
-36 -10 V
-35 -11 V
-35 -11 V
-35 -9 V
-36 -13 V
-35 -11 V
-35 -5 V
-35 -6 V
-35 -4 V
-36 -1 V
-35 -1 V
-35 -2 V
-35 -2 V
-36 -1 V
-35 -3 V
-35 -2 V
-35 -3 V
-35 -2 V
-36 -3 V
-35 -2 V
-35 -7 V
-35 -2 V
-36 -1 V
-35 0 V
-35 -2 V
-35 0 V
-stroke 4101 354 M
-35 -1 V
-36 0 V
-35 0 V
-35 -1 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-508 2531 Star
-684 2531 Star
-860 2531 Star
-1037 2445 Star
-1213 2242 Star
-1389 2242 Star
-1565 2162 Star
-1741 1770 Star
-1917 1683 Star
-2093 1601 Star
-2270 1223 Star
-2446 1008 Star
-2622 959 Star
-2798 718 Star
-2974 525 Star
-3150 478 Star
-3326 427 Star
-3502 388 Star
-3679 381 Star
-3855 368 Star
-4031 356 Star
-4207 353 Star
-4383 352 Star
-4559 352 Star
-4735 352 Star
-4545 3130 Star
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.00 0.55 C LCb setrgbcolor
-4316 3020 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO)]
-] -36.7 MRshow
-LT3
-0.00 0.00 0.55 C 4382 3020 M
-327 0 V
-508 1608 M
-35 3 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 -4 V
-35 3 V
-36 0 V
-35 -10 V
-35 8 V
-35 -5 V
-36 -10 V
-35 0 V
-35 -2 V
-35 0 V
-35 0 V
-36 0 V
-35 0 V
-35 0 V
-35 -1 V
-36 -14 V
-35 -12 V
-35 -10 V
-35 -10 V
-35 -27 V
-36 -15 V
-35 -1 V
-35 -10 V
-35 -7 V
-36 -2 V
-35 -2 V
-35 0 V
-35 1 V
-35 -6 V
-36 -5 V
-35 -4 V
-35 -7 V
-35 -18 V
-36 -12 V
-35 -18 V
-35 -1 V
-35 -12 V
-36 -11 V
-35 -13 V
-35 -9 V
-35 -7 V
-35 -5 V
-36 0 V
-35 -5 V
-35 -10 V
-35 -1 V
-36 -19 V
-35 -21 V
-35 -30 V
-35 -15 V
-35 -21 V
-36 -29 V
-35 -22 V
-35 -20 V
-35 -15 V
-36 -16 V
-35 -8 V
-35 -15 V
-35 -9 V
-35 -11 V
-36 -16 V
-35 -10 V
-35 -20 V
-35 -17 V
-36 -22 V
-35 -18 V
-35 -26 V
-35 -28 V
-36 -34 V
-35 -22 V
-35 -15 V
-35 -10 V
-35 -17 V
-36 -4 V
-35 -1 V
-35 -10 V
-35 -17 V
-36 -17 V
-35 -20 V
-35 -25 V
-35 -30 V
-35 -22 V
-36 -18 V
-35 -20 V
-35 -23 V
-35 -15 V
-36 -8 V
-35 -8 V
-35 -9 V
-35 -16 V
-stroke 4101 568 M
-35 -18 V
-36 -12 V
-35 -9 V
-35 -12 V
-35 -22 V
-36 -17 V
-35 -19 V
-35 -10 V
-35 -25 V
-36 -17 V
-35 -3 V
-35 -15 V
-35 -12 V
-35 0 V
-36 -3 V
-35 -7 V
-35 -6 V
-35 -9 V
-36 0 V
-35 0 V
-35 0 V
-508 1608 CircleF
-684 1611 CircleF
-860 1611 CircleF
-1037 1610 CircleF
-1213 1593 CircleF
-1389 1591 CircleF
-1565 1554 CircleF
-1741 1491 CircleF
-1917 1481 CircleF
-2093 1441 CircleF
-2270 1387 CircleF
-2446 1353 CircleF
-2622 1297 CircleF
-2798 1180 CircleF
-2974 1106 CircleF
-3150 1040 CircleF
-3326 929 CircleF
-3502 831 CircleF
-3679 782 CircleF
-3855 667 CircleF
-4031 593 CircleF
-4207 529 CircleF
-4383 449 CircleF
-4559 377 CircleF
-4735 352 CircleF
-4545 3020 CircleF
-% End plot #4
-1.000 UL
-LTb
-473 3468 N
-473 352 L
-4368 0 V
-0 3116 V
--4368 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
diff --git a/Figures/ch5/R/ASR.pdf b/Figures/ch5/R/ASR.pdf
deleted file mode 100644 (file)
index 0f7ed03..0000000
Binary files a/Figures/ch5/R/ASR.pdf and /dev/null differ
diff --git a/Figures/ch5/R/CR-eps-converted-to.pdf b/Figures/ch5/R/CR-eps-converted-to.pdf
deleted file mode 100644 (file)
index f30a132..0000000
Binary files a/Figures/ch5/R/CR-eps-converted-to.pdf and /dev/null differ
diff --git a/Figures/ch5/R/CR.eps b/Figures/ch5/R/CR.eps
deleted file mode 100644 (file)
index 7c055d8..0000000
+++ /dev/null
@@ -1,1472 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 53 53 536 402
-%%HiResBoundingBox: 54 53.5 535 401.5
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Mon Feb  2 16:07:58 2015
-%%EndComments
-% EPSF created by ps2eps 1.68
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Mon Feb  2 16:07:58 2015)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-539 352 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 0)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 664 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 664 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 10)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 975 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 975 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 20)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1287 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1287 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 30)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1598 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1598 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 40)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1910 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1910 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2222 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2222 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 60)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2533 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2533 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 70)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2845 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2845 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 80)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 3156 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 3156 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 90)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 3468 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-539 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 0)]
-] -36.7 MCshow
-1.000 UL
-LTb
-886 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-886 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 10)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1233 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1233 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 20)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1580 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1580 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 30)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1927 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1927 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 40)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2274 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2274 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2621 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2621 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 60)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2968 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2968 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 70)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3314 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3314 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 80)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3661 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3661 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 90)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4008 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4008 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4355 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4355 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 110)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4702 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4702 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 120)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-539 3468 N
-539 352 L
-4302 0 V
-0 3116 V
--4302 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Coverage Ratio \(%\) )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2690 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Periods)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-4382 3351 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 4448 3351 M
-327 0 V
-574 3440 M
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 2 V
-34 1 V
-35 4 V
-35 -1 V
-34 -3 V
-35 2 V
-35 1 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 1 V
-35 0 V
-35 0 V
-35 2 V
-34 2 V
-35 -1 V
-35 -1 V
-34 -2 V
-35 0 V
-35 -1 V
-34 0 V
-35 0 V
-35 1 V
-34 0 V
-35 -1 V
-35 -1 V
-35 -4 V
-34 0 V
-35 1 V
-35 -4 V
-34 -5 V
-35 -9 V
-35 -16 V
-34 -5 V
-35 -6 V
-35 -3 V
-34 -4 V
-35 -2 V
-35 -3 V
-35 -2 V
-34 -6 V
-35 -15 V
-35 -21 V
-34 -29 V
-35 -46 V
-35 -64 V
-34 -74 V
-35 -49 V
-35 -100 V
-34 -61 V
-35 -34 V
-35 -68 V
-35 -31 V
-34 -20 V
-35 -47 V
-35 -95 V
-34 -88 V
-35 -104 V
-35 -122 V
-34 -182 V
-35 -143 V
-35 -145 V
-34 -190 V
-35 -107 V
-35 -100 V
-35 -110 V
-34 -63 V
-35 -83 V
-35 -53 V
-34 -77 V
-35 -25 V
-35 -75 V
-34 -57 V
-35 -87 V
-35 -46 V
-35 -86 V
-34 -58 V
-35 -48 V
-35 -55 V
-34 -25 V
-35 -7 V
-35 -14 V
-34 -9 V
-35 -24 V
-35 -8 V
-34 -22 V
-stroke 4112 410 M
-35 0 V
-35 -7 V
-35 -9 V
-34 -7 V
-35 -7 V
-35 -6 V
-34 -7 V
-35 0 V
-35 0 V
-34 0 V
-35 -8 V
-35 -7 V
-34 0 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-574 3440 TriUF
-747 3440 TriUF
-921 3440 TriUF
-1094 3447 TriUF
-1268 3446 TriUF
-1441 3446 TriUF
-1615 3449 TriUF
-1788 3447 TriUF
-1961 3447 TriUF
-2135 3442 TriUF
-2308 3403 TriUF
-2482 3385 TriUF
-2655 3312 TriUF
-2829 2979 TriUF
-3002 2765 TriUF
-3176 2309 TriUF
-3349 1542 TriUF
-3523 1133 TriUF
-3696 812 TriUF
-3870 519 TriUF
-4043 440 TriUF
-4217 394 TriUF
-4390 367 TriUF
-4563 352 TriUF
-4737 352 TriUF
-4611 3351 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.00 0.39 0.00 C LCb setrgbcolor
-4382 3241 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DESK)]
-] -36.7 MRshow
-LT1
-0.00 0.39 0.00 C 4448 3241 M
-327 0 V
-574 3468 M
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 -1 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 -1 V
-35 0 V
-34 -6 V
-35 -6 V
-35 -5 V
-34 -5 V
-35 -5 V
-35 -1 V
-34 0 V
-35 -1 V
-35 0 V
-34 -1 V
-35 -9 V
-35 -5 V
-35 -20 V
-34 -32 V
-35 -121 V
-35 -64 V
-34 -169 V
-35 -105 V
-35 -188 V
-34 -138 V
-35 -82 V
-35 -125 V
-34 -227 V
-35 -237 V
-35 -291 V
-35 -416 V
-34 -469 V
-35 -205 V
-35 -122 V
-34 -21 V
-35 -38 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-stroke 4112 352 M
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-574 3468 DiaF
-747 3468 DiaF
-921 3468 DiaF
-1094 3468 DiaF
-1268 3467 DiaF
-1441 3467 DiaF
-1615 3466 DiaF
-1788 3439 DiaF
-1961 3436 DiaF
-2135 3249 DiaF
-2308 2585 DiaF
-2482 1623 DiaF
-2655 390 DiaF
-2829 352 DiaF
-3002 352 DiaF
-3176 352 DiaF
-3349 352 DiaF
-3523 352 DiaF
-3696 352 DiaF
-3870 352 DiaF
-4043 352 DiaF
-4217 352 DiaF
-4390 352 DiaF
-4563 352 DiaF
-4737 352 DiaF
-4611 3241 DiaF
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.50 0.00 0.00 C LCb setrgbcolor
-4382 3131 M
-[ [(Helvetica) 110.0 0.0 true true 0 (GAF)]
-] -36.7 MRshow
-LT2
-0.50 0.00 0.00 C 4448 3131 M
-327 0 V
-574 3467 M
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 -1 V
-35 0 V
-34 -2 V
-35 0 V
-35 -2 V
-35 -1 V
-34 1 V
-35 1 V
-35 0 V
-34 1 V
-35 -5 V
-35 5 V
-34 -4 V
-35 0 V
-35 -5 V
-35 -1 V
-34 -1 V
-35 -11 V
-35 -16 V
-34 -4 V
-35 -18 V
-35 11 V
-34 -30 V
-35 -6 V
-35 20 V
-34 -10 V
-35 -9 V
-35 14 V
-35 -15 V
-34 -9 V
-35 -31 V
-35 -17 V
-34 -30 V
-35 -66 V
-35 -70 V
-34 -121 V
-35 -72 V
-35 -88 V
-34 -57 V
-35 -47 V
-35 -18 V
-35 -16 V
-34 -11 V
-35 -28 V
-35 -3 V
-34 -42 V
-35 -59 V
-35 -147 V
-34 -151 V
-35 -116 V
-35 -187 V
-34 -274 V
-35 -175 V
-35 -141 V
-35 -96 V
-34 -82 V
-35 -55 V
-35 -68 V
-34 -25 V
-35 -36 V
-35 -44 V
-34 -33 V
-35 -55 V
-35 -66 V
-34 -54 V
-35 -42 V
-35 -56 V
-35 -64 V
-34 -25 V
-35 -29 V
-35 -19 V
-34 -14 V
-35 -2 V
-35 -3 V
-34 -21 V
-35 -4 V
-35 -9 V
-35 -22 V
-34 -11 V
-35 -8 V
-35 -18 V
-34 -12 V
-35 -36 V
-35 -16 V
-34 -6 V
-35 0 V
-35 -6 V
-34 0 V
-stroke 4112 366 M
-35 -9 V
-35 1 V
-35 1 V
-34 -7 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-574 3467 Star
-747 3467 Star
-921 3467 Star
-1094 3466 Star
-1268 3461 Star
-1441 3459 Star
-1615 3454 Star
-1788 3404 Star
-1961 3389 Star
-2135 3339 Star
-2308 3035 Star
-2482 2753 Star
-2655 2653 Star
-2829 1993 Star
-3002 1225 Star
-3176 997 Star
-3349 747 Star
-3523 554 Star
-3696 510 Star
-3870 442 Star
-4043 372 Star
-4217 359 Star
-4390 352 Star
-4563 352 Star
-4737 352 Star
-4611 3131 Star
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.00 0.55 C LCb setrgbcolor
-4382 3021 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO)]
-] -36.7 MRshow
-LT3
-0.00 0.00 0.55 C 4448 3021 M
-327 0 V
-574 3429 M
-34 0 V
-35 0 V
-35 0 V
-34 1 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 -1 V
-34 0 V
-35 -6 V
-35 5 V
-34 -4 V
-35 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 0 V
-35 0 V
-35 0 V
-34 -1 V
-35 -4 V
-35 1 V
-35 -1 V
-34 0 V
-35 -10 V
-35 0 V
-34 -9 V
-35 -2 V
-35 -4 V
-34 2 V
-35 0 V
-35 0 V
-34 2 V
-35 -4 V
-35 1 V
-35 -3 V
-34 -3 V
-35 -5 V
-35 -10 V
-34 -7 V
-35 -7 V
-35 -14 V
-34 -7 V
-35 -9 V
-35 0 V
-34 -4 V
-35 -2 V
-35 0 V
-35 -5 V
-34 -15 V
-35 -10 V
-35 -12 V
-34 -18 V
-35 -39 V
-35 -26 V
-34 -33 V
-35 -37 V
-35 -18 V
-34 -28 V
-35 -27 V
-35 -32 V
-35 -9 V
-34 -20 V
-35 -11 V
-35 -19 V
-34 -23 V
-35 -27 V
-35 -34 V
-34 -49 V
-35 -41 V
-35 -26 V
-34 -57 V
-35 -60 V
-35 -77 V
-35 -53 V
-34 -60 V
-35 -38 V
-35 -49 V
-34 -24 V
-35 -2 V
-35 -35 V
-34 -46 V
-35 -50 V
-35 -70 V
-35 -90 V
-34 -107 V
-35 -79 V
-35 -73 V
-34 -81 V
-35 -98 V
-35 -64 V
-34 -20 V
-35 -34 V
-35 -31 V
-34 -78 V
-stroke 4112 1389 M
-35 -67 V
-35 -74 V
-35 -38 V
-34 -51 V
-35 -96 V
-35 -93 V
-34 -90 V
-35 -43 V
-35 -123 V
-34 -90 V
-35 -15 V
-35 -69 V
-34 -67 V
-35 0 V
-35 -16 V
-35 -35 V
-34 -26 V
-35 -44 V
-35 0 V
-34 0 V
-35 0 V
-574 3429 CircleF
-747 3430 CircleF
-921 3430 CircleF
-1094 3423 CircleF
-1268 3424 CircleF
-1441 3424 CircleF
-1615 3419 CircleF
-1788 3398 CircleF
-1961 3398 CircleF
-2135 3384 CircleF
-2308 3339 CircleF
-2482 3324 CircleF
-2655 3264 CircleF
-2829 3111 CircleF
-3002 2995 CircleF
-3176 2881 CircleF
-3349 2648 CircleF
-3523 2371 CircleF
-3696 2214 CircleF
-3870 1795 CircleF
-4043 1498 CircleF
-4217 1210 CircleF
-4390 837 CircleF
-4563 473 CircleF
-4737 352 CircleF
-4611 3021 CircleF
-% End plot #4
-1.000 UL
-LTb
-539 3468 N
-539 352 L
-4302 0 V
-0 3116 V
--4302 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
diff --git a/Figures/ch5/R/CR.pdf b/Figures/ch5/R/CR.pdf
deleted file mode 100644 (file)
index c2742d6..0000000
Binary files a/Figures/ch5/R/CR.pdf and /dev/null differ
diff --git a/Figures/ch5/R/EC50-eps-converted-to.pdf b/Figures/ch5/R/EC50-eps-converted-to.pdf
deleted file mode 100644 (file)
index ea5fabe..0000000
Binary files a/Figures/ch5/R/EC50-eps-converted-to.pdf and /dev/null differ
diff --git a/Figures/ch5/R/EC50.eps b/Figures/ch5/R/EC50.eps
deleted file mode 100644 (file)
index 8953c78..0000000
+++ /dev/null
@@ -1,882 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 53 53 545 402
-%%HiResBoundingBox: 54 53.5 544.5 401.5
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Mon Feb  2 16:08:57 2015
-%%EndComments
-% EPSF created by ps2eps 1.68
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Mon Feb  2 16:08:57 2015)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-605 352 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 1000)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 698 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 698 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 1250)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 1044 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 1044 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 1500)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 1391 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 1391 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 1750)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 1737 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 1737 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 2000)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 2083 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 2083 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 2250)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 2429 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 2429 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 2500)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 2776 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 2776 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 2750)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 3122 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 3122 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 3000)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 3468 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 3250)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-605 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 75)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1029 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1029 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1452 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1452 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1876 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1876 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2299 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2299 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 175)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2723 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2723 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 200)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3147 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3147 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 225)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3570 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3570 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 250)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3994 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3994 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 275)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4417 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4417 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 300)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4841 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4841 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 325)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-605 3468 N
-605 352 L
-4236 0 V
-0 3116 V
--4236 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Energy Consumption Per Period \(Joules\) )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2723 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Wireless Sensor Nodes)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-1163 3275 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 1229 3275 M
-327 0 V
-1029 603 M
-847 263 V
-847 201 V
-847 210 V
-847 260 V
-1029 603 TriUF
-1876 866 TriUF
-2723 1067 TriUF
-3570 1277 TriUF
-4417 1537 TriUF
-1392 3275 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.00 0.39 0.00 C LCb setrgbcolor
-1163 3165 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DESK)]
-] -36.7 MRshow
-LT1
-0.00 0.39 0.00 C 1229 3165 M
-327 0 V
-1029 1513 M
-847 293 V
-847 327 V
-847 578 V
-847 522 V
-1029 1513 DiaF
-1876 1806 DiaF
-2723 2133 DiaF
-3570 2711 DiaF
-4417 3233 DiaF
-1392 3165 DiaF
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.50 0.00 0.00 C LCb setrgbcolor
-1163 3055 M
-[ [(Helvetica) 110.0 0.0 true true 0 (GAF)]
-] -36.7 MRshow
-LT2
-0.50 0.00 0.00 C 1229 3055 M
-327 0 V
-1029 1133 M
-847 122 V
-847 117 V
-847 130 V
-847 141 V
-1029 1133 Star
-1876 1255 Star
-2723 1372 Star
-3570 1502 Star
-4417 1643 Star
-1392 3055 Star
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.00 0.55 C LCb setrgbcolor
-1163 2945 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO)]
-] -36.7 MRshow
-LT3
-0.00 0.00 0.55 C 1229 2945 M
-327 0 V
-1029 491 M
-847 76 V
-847 121 V
-847 123 V
-847 215 V
-1029 491 CircleF
-1876 567 CircleF
-2723 688 CircleF
-3570 811 CircleF
-4417 1026 CircleF
-1392 2945 CircleF
-% End plot #4
-1.000 UL
-LTb
-605 3468 N
-605 352 L
-4236 0 V
-0 3116 V
--4236 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
diff --git a/Figures/ch5/R/EC50.pdf b/Figures/ch5/R/EC50.pdf
deleted file mode 100644 (file)
index 1635bc2..0000000
Binary files a/Figures/ch5/R/EC50.pdf and /dev/null differ
diff --git a/Figures/ch5/R/EC95-eps-converted-to.pdf b/Figures/ch5/R/EC95-eps-converted-to.pdf
deleted file mode 100644 (file)
index 9d9bf66..0000000
Binary files a/Figures/ch5/R/EC95-eps-converted-to.pdf and /dev/null differ
diff --git a/Figures/ch5/R/EC95.eps b/Figures/ch5/R/EC95.eps
deleted file mode 100644 (file)
index 25a32bc..0000000
+++ /dev/null
@@ -1,882 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 53 53 545 402
-%%HiResBoundingBox: 54 53.5 544.5 401.5
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Mon Feb  2 16:10:03 2015
-%%EndComments
-% EPSF created by ps2eps 1.68
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Mon Feb  2 16:10:03 2015)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-605 352 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 1250)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 698 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 698 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 1500)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 1044 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 1044 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 1750)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 1391 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 1391 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 2000)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 1737 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 1737 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 2250)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 2083 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 2083 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 2500)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 2429 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 2429 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 2750)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 2776 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 2776 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 3000)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 3122 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 3122 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 3250)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 3468 M
-63 0 V
-4173 0 R
--63 0 V
-stroke
-539 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 3500)]
-] -36.7 MRshow
-1.000 UL
-LTb
-605 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-605 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 75)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1029 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1029 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1452 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1452 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1876 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1876 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2299 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2299 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 175)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2723 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2723 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 200)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3147 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3147 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 225)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3570 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3570 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 250)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3994 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3994 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 275)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4417 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4417 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 300)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4841 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4841 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 325)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-605 3468 N
-605 352 L
-4236 0 V
-0 3116 V
--4236 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Energy Consumption Per Period \(Joules\) )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2723 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Wireless Sensor Nodes)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-1163 3261 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 1229 3261 M
-327 0 V
-1029 563 M
-847 202 V
-847 180 V
-847 216 V
-847 268 V
-1029 563 TriUF
-1876 765 TriUF
-2723 945 TriUF
-3570 1161 TriUF
-4417 1429 TriUF
-1392 3261 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.00 0.39 0.00 C LCb setrgbcolor
-1163 3151 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DESK)]
-] -36.7 MRshow
-LT1
-0.00 0.39 0.00 C 1229 3151 M
-327 0 V
-1029 1285 M
-847 513 V
-847 372 V
-847 465 V
-847 594 V
-1029 1285 DiaF
-1876 1798 DiaF
-2723 2170 DiaF
-3570 2635 DiaF
-4417 3229 DiaF
-1392 3151 DiaF
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.50 0.00 0.00 C LCb setrgbcolor
-1163 3041 M
-[ [(Helvetica) 110.0 0.0 true true 0 (GAF)]
-] -36.7 MRshow
-LT2
-0.50 0.00 0.00 C 1229 3041 M
-327 0 V
-1029 1408 M
-847 77 V
-847 59 V
-847 169 V
-847 151 V
-1029 1408 Star
-1876 1485 Star
-2723 1544 Star
-3570 1713 Star
-4417 1864 Star
-1392 3041 Star
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.00 0.55 C LCb setrgbcolor
-1163 2931 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO)]
-] -36.7 MRshow
-LT3
-0.00 0.00 0.55 C 1229 2931 M
-327 0 V
-1029 449 M
-847 128 V
-847 174 V
-847 233 V
-847 311 V
-1029 449 CircleF
-1876 577 CircleF
-2723 751 CircleF
-3570 984 CircleF
-4417 1295 CircleF
-1392 2931 CircleF
-% End plot #4
-1.000 UL
-LTb
-605 3468 N
-605 352 L
-4236 0 V
-0 3116 V
--4236 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
diff --git a/Figures/ch5/R/EC95.pdf b/Figures/ch5/R/EC95.pdf
deleted file mode 100644 (file)
index 648988b..0000000
Binary files a/Figures/ch5/R/EC95.pdf and /dev/null differ
diff --git a/Figures/ch5/R/LT50-eps-converted-to.pdf b/Figures/ch5/R/LT50-eps-converted-to.pdf
deleted file mode 100644 (file)
index e439225..0000000
Binary files a/Figures/ch5/R/LT50-eps-converted-to.pdf and /dev/null differ
diff --git a/Figures/ch5/R/LT50.eps b/Figures/ch5/R/LT50.eps
deleted file mode 100644 (file)
index a6955be..0000000
+++ /dev/null
@@ -1,942 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 53 53 545 402
-%%HiResBoundingBox: 54 53.5 544.5 401.5
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Mon Feb  2 16:11:36 2015
-%%EndComments
-% EPSF created by ps2eps 1.68
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Mon Feb  2 16:11:36 2015)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-539 352 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 0)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 560 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 560 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 10)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 767 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 767 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 20)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 975 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 975 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 30)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1183 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1183 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 40)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1391 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1391 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1598 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1598 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 60)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1806 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1806 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 70)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2014 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2014 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 80)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2222 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2222 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 90)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2429 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2429 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2637 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2637 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 110)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2845 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2845 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 120)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 3053 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 3053 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 130)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 3260 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 3260 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 140)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 3468 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-539 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 75)]
-] -36.7 MCshow
-1.000 UL
-LTb
-969 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-969 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1399 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1399 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1830 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1830 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2260 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2260 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 175)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2690 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2690 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 200)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3120 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3120 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 225)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3550 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3550 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 250)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3981 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3981 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 275)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4411 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4411 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 300)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4841 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4841 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 325)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-539 3468 N
-539 352 L
-4302 0 V
-0 3116 V
--4302 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Network Lifetime \(Hours\)  )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2690 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Wireless Sensor Nodes)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-1112 3288 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 1178 3288 M
-327 0 V
-969 1349 M
-861 312 V
-860 311 V
-860 270 V
-861 208 V
-969 1349 TriUF
-1830 1661 TriUF
-2690 1972 TriUF
-3550 2242 TriUF
-4411 2450 TriUF
-1341 3288 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.00 0.39 0.00 C LCb setrgbcolor
-1112 3178 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DESK)]
-] -36.7 MRshow
-LT1
-0.00 0.39 0.00 C 1178 3178 M
-327 0 V
-969 1017 M
-861 249 V
-860 229 V
-860 103 V
-861 125 V
-969 1017 DiaF
-1830 1266 DiaF
-2690 1495 DiaF
-3550 1598 DiaF
-4411 1723 DiaF
-1341 3178 DiaF
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.50 0.00 0.00 C LCb setrgbcolor
-1112 3068 M
-[ [(Helvetica) 110.0 0.0 true true 0 (GAF)]
-] -36.7 MRshow
-LT2
-0.50 0.00 0.00 C 1178 3068 M
-327 0 V
-969 1079 M
-861 332 V
-860 312 V
-860 270 V
-861 249 V
-969 1079 Star
-1830 1411 Star
-2690 1723 Star
-3550 1993 Star
-4411 2242 Star
-1341 3068 Star
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.00 0.55 C LCb setrgbcolor
-1112 2958 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO)]
-] -36.7 MRshow
-LT3
-0.00 0.00 0.55 C 1178 2958 M
-327 0 V
-969 1391 M
-861 498 V
-860 416 V
-860 394 V
-861 250 V
-969 1391 CircleF
-1830 1889 CircleF
-2690 2305 CircleF
-3550 2699 CircleF
-4411 2949 CircleF
-1341 2958 CircleF
-% End plot #4
-1.000 UL
-LTb
-539 3468 N
-539 352 L
-4302 0 V
-0 3116 V
--4302 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
diff --git a/Figures/ch5/R/LT50.pdf b/Figures/ch5/R/LT50.pdf
deleted file mode 100644 (file)
index 35102f7..0000000
Binary files a/Figures/ch5/R/LT50.pdf and /dev/null differ
diff --git a/Figures/ch5/R/LT95-eps-converted-to.pdf b/Figures/ch5/R/LT95-eps-converted-to.pdf
deleted file mode 100644 (file)
index 5d41d3d..0000000
Binary files a/Figures/ch5/R/LT95-eps-converted-to.pdf and /dev/null differ
diff --git a/Figures/ch5/R/LT95.eps b/Figures/ch5/R/LT95.eps
deleted file mode 100644 (file)
index d9217cf..0000000
+++ /dev/null
@@ -1,882 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 53 53 545 402
-%%HiResBoundingBox: 54 53.5 544.5 401.5
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Mon Feb  2 16:12:31 2015
-%%EndComments
-% EPSF created by ps2eps 1.68
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Mon Feb  2 16:12:31 2015)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-473 352 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 0)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 698 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 698 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 10)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1044 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1044 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 20)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1391 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1391 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 30)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 1737 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 1737 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 40)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2083 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2083 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2429 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2429 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 60)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 2776 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 2776 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 70)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 3122 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 3122 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 80)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 3468 M
-63 0 V
-4305 0 R
--63 0 V
-stroke
-407 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 90)]
-] -36.7 MRshow
-1.000 UL
-LTb
-473 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-473 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 75)]
-] -36.7 MCshow
-1.000 UL
-LTb
-910 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-910 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1347 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1347 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 125)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1783 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1783 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2220 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2220 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 175)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2657 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2657 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 200)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3094 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3094 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 225)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3531 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3531 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 250)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3967 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3967 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 275)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4404 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4404 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 300)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4841 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4841 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 325)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-473 3468 N
-473 352 L
-4368 0 V
-0 3116 V
--4368 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Network Lifetime \(Hours\)  )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2657 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (Number of Wireless Sensor Nodes)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UP
-2.000 UL
-LT0
-0.00 0.55 0.55 C LCb setrgbcolor
-1062 3275 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO)]
-] -36.7 MRshow
-LT0
-0.00 0.55 0.55 C 1128 3275 M
-327 0 V
-910 1425 M
-873 520 V
-874 484 V
-874 416 V
-873 346 V
-910 1425 TriUF
-1783 1945 TriUF
-2657 2429 TriUF
-3531 2845 TriUF
-4404 3191 TriUF
-1291 3275 TriUF
-% End plot #1
-% Begin plot #2
-1.000 UP
-2.000 UL
-LT1
-0.00 0.39 0.00 C LCb setrgbcolor
-1062 3165 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DESK)]
-] -36.7 MRshow
-LT1
-0.00 0.39 0.00 C 1128 3165 M
-327 0 V
-910 1356 M
-873 139 V
-874 415 V
-874 277 V
-873 173 V
-910 1356 DiaF
-1783 1495 DiaF
-2657 1910 DiaF
-3531 2187 DiaF
-4404 2360 DiaF
-1291 3165 DiaF
-% End plot #2
-% Begin plot #3
-1.000 UP
-2.000 UL
-LT2
-0.50 0.00 0.00 C LCb setrgbcolor
-1062 3055 M
-[ [(Helvetica) 110.0 0.0 true true 0 (GAF)]
-] -36.7 MRshow
-LT2
-0.50 0.00 0.00 C 1128 3055 M
-327 0 V
-910 1010 M
-873 485 V
-874 484 V
-874 277 V
-873 346 V
-910 1010 Star
-1783 1495 Star
-2657 1979 Star
-3531 2256 Star
-4404 2602 Star
-1291 3055 Star
-% End plot #3
-% Begin plot #4
-1.000 UP
-2.000 UL
-LT3
-0.00 0.00 0.55 C LCb setrgbcolor
-1062 2945 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO)]
-] -36.7 MRshow
-LT3
-0.00 0.00 0.55 C 1128 2945 M
-327 0 V
-910 1391 M
-873 519 V
-874 415 V
-874 277 V
-873 312 V
-910 1391 CircleF
-1783 1910 CircleF
-2657 2325 CircleF
-3531 2602 CircleF
-4404 2914 CircleF
-1291 2945 CircleF
-% End plot #4
-1.000 UL
-LTb
-473 3468 N
-473 352 L
-4368 0 V
-0 3116 V
--4368 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
diff --git a/Figures/ch5/R/LT95.pdf b/Figures/ch5/R/LT95.pdf
deleted file mode 100644 (file)
index ec103de..0000000
Binary files a/Figures/ch5/R/LT95.pdf and /dev/null differ
diff --git a/Figures/ch5/R/LTa-eps-converted-to.pdf b/Figures/ch5/R/LTa-eps-converted-to.pdf
deleted file mode 100644 (file)
index bf918bd..0000000
Binary files a/Figures/ch5/R/LTa-eps-converted-to.pdf and /dev/null differ
diff --git a/Figures/ch5/R/LTa.eps b/Figures/ch5/R/LTa.eps
deleted file mode 100644 (file)
index 67ca46d..0000000
+++ /dev/null
@@ -1,1000 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 53 53 536 402
-%%HiResBoundingBox: 54 53.5 535 401.5
-%%Creator: gnuplot 4.6 patchlevel 0
-%%CreationDate: Mon Feb  2 16:16:10 2015
-%%EndComments
-% EPSF created by ps2eps 1.68
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-%%BeginProlog
-/gnudict 256 dict def
-gnudict begin
-%
-% The following true/false flags may be edited by hand if desired.
-% The unit line width and grayscale image gamma correction may also be changed.
-%
-/Color false def
-/Blacktext false def
-/Solid false def
-/Dashlength 1 def
-/Landscape false def
-/Level1 false def
-/Rounded false def
-/ClipToBoundingBox false def
-/SuppressPDFMark false def
-/TransparentPatterns false def
-/gnulinewidth 5.000 def
-/userlinewidth gnulinewidth def
-/Gamma 1.0 def
-/BackgroundColor {-1.000 -1.000 -1.000} def
-%
-/vshift -36 def
-/dl1 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
-} def
-/dl2 {
-  10.0 Dashlength mul mul
-  Rounded { currentlinewidth 0.75 mul add } if
-} def
-/hpt_ 31.5 def
-/vpt_ 31.5 def
-/hpt hpt_ def
-/vpt vpt_ def
-/doclip {
-  ClipToBoundingBox {
-    newpath 50 50 moveto 554 50 lineto 554 410 lineto 50 410 lineto closepath
-    clip
-  } if
-} def
-%
-% Gnuplot Prolog Version 4.4 (August 2010)
-%
-%/SuppressPDFMark true def
-%
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/N {newpath moveto} bind def
-/Z {closepath} bind def
-/C {setrgbcolor} bind def
-/f {rlineto fill} bind def
-/g {setgray} bind def
-/Gshow {show} def   % May be redefined later in the file to support UTF-8
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow {currentpoint stroke M 0 vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R 
-       Blacktext {gsave 0 setgray show grestore} {show} ifelse} def
-/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
-  /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
-/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
- {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
-/BL {stroke userlinewidth 2 mul setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/AL {stroke userlinewidth 2 div setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-/UL {dup gnulinewidth mul /userlinewidth exch def
-       dup 1 lt {pop 1} if 10 mul /udl exch def} def
-/PL {stroke userlinewidth setlinewidth
-       Rounded {1 setlinejoin 1 setlinecap} if} def
-3.8 setmiterlimit
-% Default Line colors
-/LCw {1 1 1} def
-/LCb {0 0 0} def
-/LCa {0 0 0} def
-/LC0 {1 0 0} def
-/LC1 {0 1 0} def
-/LC2 {0 0 1} def
-/LC3 {1 0 1} def
-/LC4 {0 1 1} def
-/LC5 {1 1 0} def
-/LC6 {0 0 0} def
-/LC7 {1 0.3 0} def
-/LC8 {0.5 0.5 0.5} def
-% Default Line Types
-/LTw {PL [] 1 setgray} def
-/LTb {BL [] LCb DL} def
-/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
-/LT0 {PL [] LC0 DL} def
-/LT1 {PL [4 dl1 2 dl2] LC1 DL} def
-/LT2 {PL [2 dl1 3 dl2] LC2 DL} def
-/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def
-/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
-/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def
-/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def
-/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def
-/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def
-/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
-/Dia {stroke [] 0 setdash 2 copy vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke
-  Pnt} def
-/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
-  currentpoint stroke M
-  hpt neg vpt neg R hpt2 0 V stroke
- } def
-/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke
-  Pnt} def
-/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
-  hpt2 vpt2 neg V currentpoint stroke M
-  hpt2 neg 0 R hpt2 vpt2 V stroke} def
-/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke
-  Pnt} def
-/Star {2 copy Pls Crs} def
-/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath fill} def
-/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath fill} def
-/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke
-  Pnt} def
-/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath fill} def
-/DiaF {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath fill} def
-/Pent {stroke [] 0 setdash 2 copy gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore Pnt} def
-/PentF {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath fill grestore} def
-/Circle {stroke [] 0 setdash 2 copy
-  hpt 0 360 arc stroke Pnt} def
-/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
-/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
-/C1 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C2 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C3 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C4 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C5 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc
-       2 copy moveto
-       2 copy vpt 180 270 arc closepath fill
-       vpt 0 360 arc} bind def
-/C6 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C7 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 270 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C8 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C9 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 270 450 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
-       2 copy moveto
-       2 copy vpt 90 180 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C11 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 180 arc closepath fill
-       2 copy moveto
-       2 copy vpt 270 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C12 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C13 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 0 90 arc closepath fill
-       2 copy moveto
-       2 copy vpt 180 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/C14 {BL [] 0 setdash 2 copy moveto
-       2 copy vpt 90 360 arc closepath fill
-       vpt 0 360 arc} bind def
-/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
-       vpt 0 360 arc closepath} bind def
-/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
-       neg 0 rlineto closepath} bind def
-/Square {dup Rec} bind def
-/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
-/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
-/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
-/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
-/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
-       exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
-/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
-/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
-/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
-       Bsquare} bind def
-/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
-       Bsquare} bind def
-/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
-/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy vpt Square fill Bsquare} bind def
-/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
-       2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
-/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
-/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
-/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
-/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
-/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
-/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
-/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
-/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
-/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
-/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
-/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
-/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
-/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
-/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
-/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
-/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
-/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
-/DiaE {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V closepath stroke} def
-/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V closepath stroke} def
-/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V closepath stroke} def
-/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V closepath stroke} def
-/PentE {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  closepath stroke grestore} def
-/CircE {stroke [] 0 setdash 
-  hpt 0 360 arc stroke} def
-/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
-/DiaW {stroke [] 0 setdash vpt add M
-  hpt neg vpt neg V hpt vpt neg V
-  hpt vpt V hpt neg vpt V Opaque stroke} def
-/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
-  0 vpt2 neg V hpt2 0 V 0 vpt2 V
-  hpt2 neg 0 V Opaque stroke} def
-/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
-  hpt neg vpt -1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt 1.62 mul V Opaque stroke} def
-/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
-  hpt neg vpt 1.62 mul V
-  hpt 2 mul 0 V
-  hpt neg vpt -1.62 mul V Opaque stroke} def
-/PentW {stroke [] 0 setdash gsave
-  translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
-  Opaque stroke grestore} def
-/CircW {stroke [] 0 setdash 
-  hpt 0 360 arc Opaque stroke} def
-/BoxFill {gsave Rec 1 setgray fill grestore} def
-/Density {
-  /Fillden exch def
-  currentrgbcolor
-  /ColB exch def /ColG exch def /ColR exch def
-  /ColR ColR Fillden mul Fillden sub 1 add def
-  /ColG ColG Fillden mul Fillden sub 1 add def
-  /ColB ColB Fillden mul Fillden sub 1 add def
-  ColR ColG ColB setrgbcolor} def
-/BoxColFill {gsave Rec PolyFill} def
-/PolyFill {gsave Density fill grestore grestore} def
-/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
-%
-% PostScript Level 1 Pattern Fill routine for rectangles
-% Usage: x y w h s a XX PatternFill
-%      x,y = lower left corner of box to be filled
-%      w,h = width and height of box
-%        a = angle in degrees between lines and x-axis
-%       XX = 0/1 for no/yes cross-hatch
-%
-/PatternFill {gsave /PFa [ 9 2 roll ] def
-  PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
-  PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
-  gsave 1 setgray fill grestore clip
-  currentlinewidth 0.5 mul setlinewidth
-  /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
-  0 0 M PFa 5 get rotate PFs -2 div dup translate
-  0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 M 0 PFs V} for
-  0 PFa 6 get ne {
-       0 1 PFs PFa 4 get div 1 add floor cvi
-       {PFa 4 get mul 0 2 1 roll M PFs 0 V} for
- } if
-  stroke grestore} def
-%
-/languagelevel where
- {pop languagelevel} {1} ifelse
- 2 lt
-       {/InterpretLevel1 true def}
-       {/InterpretLevel1 Level1 def}
- ifelse
-%
-% PostScript level 2 pattern fill definitions
-%
-/Level2PatternFill {
-/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
-       bind def
-/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} 
->> matrix makepattern
-/Pat1 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
-       0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
->> matrix makepattern
-/Pat2 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
-       8 8 L 8 0 L 0 0 L fill}
->> matrix makepattern
-/Pat3 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
-       0 12 M 12 0 L stroke}
->> matrix makepattern
-/Pat4 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
-       0 -4 M 12 8 L stroke}
->> matrix makepattern
-/Pat5 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
-       0 12 M 8 -4 L 4 12 M 10 0 L stroke}
->> matrix makepattern
-/Pat6 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
-       0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
->> matrix makepattern
-/Pat7 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
-       12 0 M -4 8 L 12 4 M 0 10 L stroke}
->> matrix makepattern
-/Pat8 exch def
-<< Tile8x8
- /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
-       -4 0 M 12 8 L -4 4 M 8 10 L stroke}
->> matrix makepattern
-/Pat9 exch def
-/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
-/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
-/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
-/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
-/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
-/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
-/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
-} def
-%
-%
-%End of PostScript Level 2 code
-%
-/PatternBgnd {
-  TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
-} def
-%
-% Substitute for Level 2 pattern fill codes with
-% grayscale if Level 2 support is not selected.
-%
-/Level1PatternFill {
-/Pattern1 {0.250 Density} bind def
-/Pattern2 {0.500 Density} bind def
-/Pattern3 {0.750 Density} bind def
-/Pattern4 {0.125 Density} bind def
-/Pattern5 {0.375 Density} bind def
-/Pattern6 {0.625 Density} bind def
-/Pattern7 {0.875 Density} bind def
-} def
-%
-% Now test for support of Level 2 code
-%
-Level1 {Level1PatternFill} {Level2PatternFill} ifelse
-%
-/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
-dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
-currentdict end definefont pop
-%
-% Encoding for ISO-8859-1 (also called Latin1)
-%
-/reencodeISO {
-dup dup findfont dup length dict begin
-{ 1 index /FID ne { def }{ pop pop } ifelse } forall
-currentdict /CharStrings known {
-       CharStrings /Idieresis known {
-               /Encoding ISOLatin1Encoding def } if
-} if
-currentdict end definefont
-} def
-/ISOLatin1Encoding [
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright
-/parenleft/parenright/asterisk/plus/comma/minus/period/slash
-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon
-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N
-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright
-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m
-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/dotlessi/grave/acute/circumflex/tilde/macron/breve
-/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut
-/ogonek/caron/space/exclamdown/cent/sterling/currency/yen/brokenbar
-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot
-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
-/guillemotright/onequarter/onehalf/threequarters/questiondown
-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute
-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex
-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis
-/yacute/thorn/ydieresis
-] def
-/MFshow {
-   { dup 5 get 3 ge
-     { 5 get 3 eq {gsave} {grestore} ifelse }
-     {dup dup 0 get findfont exch 1 get scalefont setfont
-     [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6
-     get exch 4 get {Gshow} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq
-     {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5
-     get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div
-     dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get
-     show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop
-     pop aload pop M} ifelse }ifelse }ifelse }
-     ifelse }
-   forall} def
-/Gswidth {dup type /stringtype eq {stringwidth} {pop (n) stringwidth} ifelse} def
-/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse }
- {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont
-     6 get Gswidth pop add} {pop} ifelse} ifelse} forall} def
-/MLshow { currentpoint stroke M
-  0 exch R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MRshow { currentpoint stroke M
-  exch dup MFwidth neg 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/MCshow { currentpoint stroke M
-  exch dup MFwidth -2 div 3 -1 roll R
-  Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def
-/XYsave    { [( ) 1 2 true false 3 ()] } bind def
-/XYrestore { [( ) 1 2 true false 4 ()] } bind def
-/Helvetica reencodeISO def
-Level1 SuppressPDFMark or 
-{} {
-/SDict 10 dict def
-systemdict /pdfmark known not {
-  userdict /pdfmark systemdict /cleartomark get put
-} if
-SDict begin [
-  /Title ()
-  /Subject (gnuplot plot)
-  /Creator (gnuplot 4.6 patchlevel 0)
-  /Author (ali)
-%  /Producer (gnuplot)
-%  /Keywords ()
-  /CreationDate (Mon Feb  2 16:16:10 2015)
-  /DOCINFO pdfmark
-end
-} ifelse
-end
-%%EndProlog
-%%Page: 1 1
-gnudict begin
-gsave
-doclip
-50 50 translate
-0.100 0.100 scale
-0 setgray
-newpath
-(Helvetica) findfont 110 scalefont setfont
-BackgroundColor 0 lt 3 1 roll 0 lt exch 0 lt or or not {gsave BackgroundColor C clippath fill grestore} if
-1.000 UL
-LTb
-539 352 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 352 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 0)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 456 M
-31 0 V
-4271 0 R
--31 0 V
-539 560 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 560 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 10)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 664 M
-31 0 V
-4271 0 R
--31 0 V
-539 767 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 767 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 20)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 871 M
-31 0 V
-4271 0 R
--31 0 V
-539 975 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 975 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 30)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1079 M
-31 0 V
-4271 0 R
--31 0 V
-539 1183 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1183 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 40)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1287 M
-31 0 V
-4271 0 R
--31 0 V
-539 1391 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1391 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 50)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1495 M
-31 0 V
-4271 0 R
--31 0 V
-539 1598 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1598 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 60)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1702 M
-31 0 V
-4271 0 R
--31 0 V
-539 1806 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 1806 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 70)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 1910 M
-31 0 V
-4271 0 R
--31 0 V
-539 2014 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2014 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 80)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2118 M
-31 0 V
-4271 0 R
--31 0 V
-539 2222 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2222 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 90)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2325 M
-31 0 V
-4271 0 R
--31 0 V
-539 2429 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2429 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 100)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2533 M
-31 0 V
-4271 0 R
--31 0 V
-539 2637 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2637 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 110)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2741 M
-31 0 V
-4271 0 R
--31 0 V
-539 2845 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 2845 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 120)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 2949 M
-31 0 V
-4271 0 R
--31 0 V
-539 3053 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 3053 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 130)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 3156 M
-31 0 V
-4271 0 R
--31 0 V
-539 3260 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 3260 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 140)]
-] -36.7 MRshow
-1.000 UL
-LTb
-539 3364 M
-31 0 V
-4271 0 R
--31 0 V
-539 3468 M
-63 0 V
-4239 0 R
--63 0 V
-stroke
-473 3468 M
-[ [(Helvetica) 110.0 0.0 true true 0 ( 150)]
-] -36.7 MRshow
-1.000 UL
-LTb
-1256 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1256 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 (100)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1973 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-1973 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 (150)]
-] -36.7 MCshow
-1.000 UL
-LTb
-2690 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-2690 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 (200)]
-] -36.7 MCshow
-1.000 UL
-LTb
-3407 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-3407 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 (250)]
-] -36.7 MCshow
-1.000 UL
-LTb
-4124 352 M
-0 63 V
-0 3053 R
-0 -63 V
-stroke
-4124 242 M
-[ [(Helvetica) 110.0 0.0 true true 0 (300)]
-] -36.7 MCshow
-1.000 UL
-LTb
-1.000 UL
-LTb
-539 3468 N
-539 352 L
-4302 0 V
-0 3116 V
--4302 0 V
-Z stroke
-LCb setrgbcolor
-88 1910 M
-currentpoint gsave translate -270 rotate 0 0 moveto
-[ [(Helvetica) 110.0 0.0 true true 0 (Network Lifetime \(Hours\) )]
-] -36.7 MCshow
-grestore
-LTb
-LCb setrgbcolor
-2690 77 M
-[ [(Helvetica) 110.0 0.0 true true 0 (The Number of Wireless Sensor Nodes)]
-] -36.7 MCshow
-LTb
-1.000 UP
-1.000 UL
-LTb
-% Begin plot #1
-1.000 UL
-LT0
-0.62 0.69 0.87 C LCb setrgbcolor
-1156 3330 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO/50)]
-] -36.7 MRshow
-LT0
-0.62 0.69 0.87 C 1.000 1222 3303 327 55 BoxColFill
-1.000 938 352 50 998 BoxColFill
-1.000 1655 352 50 1310 BoxColFill
-1.000 2372 352 50 1621 BoxColFill
-1.000 3089 352 50 1891 BoxColFill
-1.000 3806 352 50 2099 BoxColFill
-% End plot #1
-% Begin plot #2
-1.000 UL
-LT1
-0.10 0.10 0.44 C LCb setrgbcolor
-1156 3220 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO/50)]
-] -36.7 MRshow
-LT1
-0.10 0.10 0.44 C 1.000 1222 3193 327 55 BoxColFill
-1.000 1003 352 50 1040 BoxColFill
-1.000 1720 352 50 1538 BoxColFill
-1.000 2437 352 50 1954 BoxColFill
-1.000 3154 352 50 2348 BoxColFill
-1.000 3871 352 50 2598 BoxColFill
-% End plot #2
-% Begin plot #3
-1.000 UL
-LT2
-1.00 0.75 0.80 C LCb setrgbcolor
-1156 3110 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO/80)]
-] -36.7 MRshow
-LT2
-1.00 0.75 0.80 C 1.000 1222 3083 327 55 BoxColFill
-1.000 1069 352 49 728 BoxColFill
-1.000 1786 352 49 1081 BoxColFill
-1.000 2503 352 49 1414 BoxColFill
-1.000 3220 352 49 1704 BoxColFill
-1.000 3937 352 49 1912 BoxColFill
-% End plot #3
-% Begin plot #4
-1.000 UL
-LT3
-1.00 0.00 0.00 C LCb setrgbcolor
-1156 3000 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO/80)]
-] -36.7 MRshow
-LT3
-1.00 0.00 0.00 C 1.000 1222 2973 327 55 BoxColFill
-1.000 1134 352 50 749 BoxColFill
-1.000 1851 352 50 1268 BoxColFill
-1.000 2568 352 50 1580 BoxColFill
-1.000 3285 352 50 1912 BoxColFill
-1.000 4002 352 50 2182 BoxColFill
-% End plot #4
-% Begin plot #5
-1.000 UL
-LT4
-0.54 0.17 0.89 C LCb setrgbcolor
-1156 2890 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO/85)]
-] -36.7 MRshow
-LT4
-0.54 0.17 0.89 C 1.000 1222 2863 327 55 BoxColFill
-1.000 1199 352 50 707 BoxColFill
-1.000 1916 352 50 1040 BoxColFill
-1.000 2633 352 50 1351 BoxColFill
-1.000 3350 352 50 1642 BoxColFill
-1.000 4067 352 50 1871 BoxColFill
-% End plot #5
-% Begin plot #6
-1.000 UL
-LT5
-0.18 0.55 0.34 C LCb setrgbcolor
-1156 2780 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO/85)]
-] -36.7 MRshow
-LT5
-0.18 0.55 0.34 C 1.000 1222 2753 327 55 BoxColFill
-1.000 1264 352 50 707 BoxColFill
-1.000 1981 352 50 1081 BoxColFill
-1.000 2698 352 50 1455 BoxColFill
-1.000 3415 352 50 1788 BoxColFill
-1.000 4132 352 50 1954 BoxColFill
-% End plot #6
-% Begin plot #7
-1.000 UL
-LT6
-1.00 0.00 1.00 C LCb setrgbcolor
-1156 2670 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO/90)]
-] -36.7 MRshow
-LT6
-1.00 0.00 1.00 C 1.000 1222 2643 327 55 BoxColFill
-1.000 1329 352 50 687 BoxColFill
-1.000 2046 352 50 998 BoxColFill
-1.000 2763 352 50 1310 BoxColFill
-1.000 3480 352 50 1580 BoxColFill
-1.000 4197 352 50 1808 BoxColFill
-% End plot #7
-% Begin plot #8
-1.000 UL
-LT7
-0.00 0.55 0.55 C LCb setrgbcolor
-1156 2560 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO/90)]
-] -36.7 MRshow
-LT7
-0.00 0.55 0.55 C 1.000 1222 2533 327 55 BoxColFill
-1.000 1395 352 49 687 BoxColFill
-1.000 2112 352 49 1019 BoxColFill
-1.000 2829 352 49 1330 BoxColFill
-1.000 3546 352 49 1621 BoxColFill
-1.000 4263 352 49 1788 BoxColFill
-% End plot #8
-% Begin plot #9
-1.000 UL
-LT8
-0.50 1.00 0.83 C LCb setrgbcolor
-1156 2450 M
-[ [(Helvetica) 110.0 0.0 true true 0 (DiLCO/95)]
-] -36.7 MRshow
-LT8
-0.50 1.00 0.83 C 1.000 1222 2423 327 55 BoxColFill
-1.000 1460 352 50 645 BoxColFill
-1.000 2177 352 50 957 BoxColFill
-1.000 2894 352 50 1247 BoxColFill
-1.000 3611 352 50 1497 BoxColFill
-1.000 4328 352 50 1704 BoxColFill
-% End plot #9
-% Begin plot #10
-1.000 UL
-LT0
-0.50 0.00 0.00 C LCb setrgbcolor
-1156 2340 M
-[ [(Helvetica) 110.0 0.0 true true 0 (PeCO/95)]
-] -36.7 MRshow
-LT0
-0.50 0.00 0.00 C 1.000 1222 2313 327 55 BoxColFill
-1.000 1525 352 50 624 BoxColFill
-1.000 2242 352 50 936 BoxColFill
-1.000 2959 352 50 1185 BoxColFill
-1.000 3676 352 50 1351 BoxColFill
-1.000 4393 352 50 1538 BoxColFill
-% End plot #10
-1.000 UL
-LTb
-539 3468 N
-539 352 L
-4302 0 V
-0 3116 V
--4302 0 V
-Z stroke
-1.000 UP
-1.000 UL
-LTb
-stroke
-grestore
-end
-showpage
-%%Trailer
-%%DocumentFonts: Helvetica
-%%Pages: 1
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
diff --git a/Figures/ch5/R/LTa.pdf b/Figures/ch5/R/LTa.pdf
deleted file mode 100644 (file)
index 51415d9..0000000
Binary files a/Figures/ch5/R/LTa.pdf and /dev/null differ
diff --git a/Figures/ch5/ex4pcm.jpg b/Figures/ch5/ex4pcm.jpg
deleted file mode 100644 (file)
index 5eca23f..0000000
Binary files a/Figures/ch5/ex4pcm.jpg and /dev/null differ
diff --git a/Figures/ch5/ex5pcm.jpg b/Figures/ch5/ex5pcm.jpg
deleted file mode 100644 (file)
index 2d07ae1..0000000
Binary files a/Figures/ch5/ex5pcm.jpg and /dev/null differ
diff --git a/Figures/ch5/expcm.pdf b/Figures/ch5/expcm.pdf
deleted file mode 100644 (file)
index 6b096fb..0000000
Binary files a/Figures/ch5/expcm.pdf and /dev/null differ
diff --git a/Figures/ch5/expcm2.jpg b/Figures/ch5/expcm2.jpg
deleted file mode 100644 (file)
index ccf94aa..0000000
Binary files a/Figures/ch5/expcm2.jpg and /dev/null differ
diff --git a/Figures/ch5/pcm.jpg b/Figures/ch5/pcm.jpg
deleted file mode 100644 (file)
index 131895d..0000000
Binary files a/Figures/ch5/pcm.jpg and /dev/null differ
diff --git a/Figures/ch5/twosensors.jpg b/Figures/ch5/twosensors.jpg
deleted file mode 100644 (file)
index aa0ed5d..0000000
Binary files a/Figures/ch5/twosensors.jpg and /dev/null differ
index d56f11c283b466bfa9302a030be267aff2adcf74..c728cf22dd9481a9a8d2c8a00e327b9a99957f1d 100644 (file)
 
 \include{CHAPITRE_02}
 
 
 \include{CHAPITRE_02}
 
-\part{Contributions}
-%% 
 \include{CHAPITRE_03}
 
 \include{CHAPITRE_03}
 
-\include{CHAPITRE_04}
 
 
+\part{Contributions}
 %% 
 %% 
+\include{CHAPITRE_04}
+
 \include{CHAPITRE_05}
 
 \include{CHAPITRE_05}
 
+%% 
+\include{CHAPITRE_06}
+
 
 \part{Conclusion and Perspectives}
 %% Conclusion et perspectives
 
 \part{Conclusion and Perspectives}
 %% Conclusion et perspectives
index 26ebff5aa5addc8f14f722139eb2eeefb6988ecc..abbee1237230ec35d07692cda96b7ec867087b21 100644 (file)
 \contentsline {section}{\numberline {1.5}The Main Challenges in Wireless Sensor Networks}{25}{section.1.5}
 \contentsline {section}{\numberline {1.6}Energy-Efficient Mechanisms in Wireless Sensor Networks}{27}{section.1.6}
 \contentsline {subsection}{\numberline {1.6.1}Energy-Efficient Routing:}{27}{subsection.1.6.1}
 \contentsline {section}{\numberline {1.5}The Main Challenges in Wireless Sensor Networks}{25}{section.1.5}
 \contentsline {section}{\numberline {1.6}Energy-Efficient Mechanisms in Wireless Sensor Networks}{27}{section.1.6}
 \contentsline {subsection}{\numberline {1.6.1}Energy-Efficient Routing:}{27}{subsection.1.6.1}
-\contentsline {subsubsection}{\numberline {1.6.1.1}Routing Metric based on Residual Energy:}{27}{subsubsection.1.6.1.1}
+\contentsline {subsubsection}{\numberline {1.6.1.1}Routing Metric based on Residual Energy:}{28}{subsubsection.1.6.1.1}
 \contentsline {subsubsection}{\numberline {1.6.1.2}Multipath Routing:}{28}{subsubsection.1.6.1.2}
 \contentsline {subsection}{\numberline {1.6.2}Cluster Architectures:}{28}{subsection.1.6.2}
 \contentsline {subsubsection}{\numberline {1.6.1.2}Multipath Routing:}{28}{subsubsection.1.6.1.2}
 \contentsline {subsection}{\numberline {1.6.2}Cluster Architectures:}{28}{subsection.1.6.2}
-\contentsline {subsection}{\numberline {1.6.3}Scheduling Schemes:}{28}{subsection.1.6.3}
+\contentsline {subsection}{\numberline {1.6.3}Scheduling Schemes:}{29}{subsection.1.6.3}
 \contentsline {subsubsection}{\numberline {1.6.3.1}Wake up Scheduling Schemes:}{29}{subsubsection.1.6.3.1}
 \contentsline {subsubsection}{\numberline {1.6.3.2}Topology Control Schemes:}{31}{subsubsection.1.6.3.2}
 \contentsline {subsection}{\numberline {1.6.4}Data-Driven Schemes:}{32}{subsection.1.6.4}
 \contentsline {subsubsection}{\numberline {1.6.3.1}Wake up Scheduling Schemes:}{29}{subsubsection.1.6.3.1}
 \contentsline {subsubsection}{\numberline {1.6.3.2}Topology Control Schemes:}{31}{subsubsection.1.6.3.2}
 \contentsline {subsection}{\numberline {1.6.4}Data-Driven Schemes:}{32}{subsection.1.6.4}
@@ -36,8 +36,8 @@
 \contentsline {subsubsection}{\numberline {1.6.7.2}Sink Mobility:}{34}{subsubsection.1.6.7.2}
 \contentsline {section}{\numberline {1.7}Network Lifetime in Wireless Sensor Networks}{34}{section.1.7}
 \contentsline {section}{\numberline {1.8}Coverage in Wireless Sensor Networks }{35}{section.1.8}
 \contentsline {subsubsection}{\numberline {1.6.7.2}Sink Mobility:}{34}{subsubsection.1.6.7.2}
 \contentsline {section}{\numberline {1.7}Network Lifetime in Wireless Sensor Networks}{34}{section.1.7}
 \contentsline {section}{\numberline {1.8}Coverage in Wireless Sensor Networks }{35}{section.1.8}
-\contentsline {section}{\numberline {1.9}Design Issues for Coverage Problems:}{36}{section.1.9}
-\contentsline {section}{\numberline {1.10}Energy Consumption Modeling:}{37}{section.1.10}
+\contentsline {section}{\numberline {1.9}Design Issues for Coverage Problems:}{37}{section.1.9}
+\contentsline {section}{\numberline {1.10}Energy Consumption Modeling:}{38}{section.1.10}
 \contentsline {section}{\numberline {1.11}Conclusion}{39}{section.1.11}
 \contentsline {chapter}{\numberline {2}Related Literatures}{41}{chapter.2}
 \contentsline {section}{\numberline {2.1}Introduction}{41}{section.2.1}
 \contentsline {section}{\numberline {1.11}Conclusion}{39}{section.1.11}
 \contentsline {chapter}{\numberline {2}Related Literatures}{41}{chapter.2}
 \contentsline {section}{\numberline {2.1}Introduction}{41}{section.2.1}
 \contentsline {subsection}{\numberline {2.2.1}Centralized Algorithms}{43}{subsection.2.2.1}
 \contentsline {subsection}{\numberline {2.2.2}Distributed Algorithms}{45}{subsection.2.2.2}
 \contentsline {section}{\numberline {2.3}Conclusion}{48}{section.2.3}
 \contentsline {subsection}{\numberline {2.2.1}Centralized Algorithms}{43}{subsection.2.2.1}
 \contentsline {subsection}{\numberline {2.2.2}Distributed Algorithms}{45}{subsection.2.2.2}
 \contentsline {section}{\numberline {2.3}Conclusion}{48}{section.2.3}
-\contentsline {part}{II\hspace {1em}Contributions}{51}{part.2}
-\contentsline {chapter}{\numberline {3}Distributed Lifetime Coverage Optimization Protocol in Wireless Sensor Networks}{53}{chapter.3}
-\contentsline {section}{\numberline {3.1}Summary}{53}{section.3.1}
-\contentsline {section}{\numberline {3.2}Description of the DiLCO Protocol}{53}{section.3.2}
-\contentsline {subsection}{\numberline {3.2.1}Assumptions and Network Model}{53}{subsection.3.2.1}
-\contentsline {subsection}{\numberline {3.2.2}Primary Point Coverage Model}{54}{subsection.3.2.2}
-\contentsline {subsection}{\numberline {3.2.3}Main Idea}{55}{subsection.3.2.3}
-\contentsline {subsubsection}{\numberline {3.2.3.1}Information Exchange Phase}{56}{subsubsection.3.2.3.1}
-\contentsline {subsubsection}{\numberline {3.2.3.2}Leader Election Phase}{57}{subsubsection.3.2.3.2}
-\contentsline {subsubsection}{\numberline {3.2.3.3}Decision phase}{57}{subsubsection.3.2.3.3}
-\contentsline {subsubsection}{\numberline {3.2.3.4}Sensing phase}{57}{subsubsection.3.2.3.4}
-\contentsline {section}{\numberline {3.3}Primary Points based Coverage Problem Formulation}{57}{section.3.3}
-\contentsline {section}{\numberline {3.4}Simulation Results and Analysis}{59}{section.3.4}
-\contentsline {subsection}{\numberline {3.4.1}Simulation Framework}{59}{subsection.3.4.1}
-\contentsline {subsection}{\numberline {3.4.2}Modeling Language and Optimization Solver}{60}{subsection.3.4.2}
-\contentsline {subsection}{\numberline {3.4.3}Energy Consumption Model}{60}{subsection.3.4.3}
-\contentsline {subsection}{\numberline {3.4.4}Performance Metrics}{61}{subsection.3.4.4}
-\contentsline {subsection}{\numberline {3.4.5}Performance Analysis for Different Subregions}{62}{subsection.3.4.5}
-\contentsline {subsection}{\numberline {3.4.6}Performance Analysis for Primary Point Models}{67}{subsection.3.4.6}
-\contentsline {subsection}{\numberline {3.4.7}Performance Comparison with other Approaches}{71}{subsection.3.4.7}
-\contentsline {section}{\numberline {3.5}Conclusion}{76}{section.3.5}
-\contentsline {chapter}{\numberline {4}Multiround Distributed Lifetime Coverage Optimization Protocol in Wireless Sensor Networks}{79}{chapter.4}
-\contentsline {section}{\numberline {4.1}Summary}{79}{section.4.1}
-\contentsline {section}{\numberline {4.2}MuDiLCO Protocol Description}{79}{section.4.2}
-\contentsline {subsection}{\numberline {4.2.1}Background Idea and Algorithm}{80}{subsection.4.2.1}
-\contentsline {subsection}{\numberline {4.2.2}Primary Points based Multiround Coverage Problem Formulation}{81}{subsection.4.2.2}
-\contentsline {section}{\numberline {4.3}Experimental Study and Analysis}{83}{section.4.3}
-\contentsline {subsection}{\numberline {4.3.1}Simulation Setup}{83}{subsection.4.3.1}
-\contentsline {subsection}{\numberline {4.3.2}Metrics}{84}{subsection.4.3.2}
-\contentsline {subsection}{\numberline {4.3.3}Results Analysis and Comparison }{85}{subsection.4.3.3}
-\contentsline {section}{\numberline {4.4}Conclusion}{88}{section.4.4}
-\contentsline {chapter}{\numberline {5}Perimeter-based Coverage Optimization to Improve Lifetime in Wireless Sensor Networks}{91}{chapter.5}
-\contentsline {section}{\numberline {5.1}summary}{91}{section.5.1}
-\contentsline {section}{\numberline {5.2}THE PeCO PROTOCOL DESCRIPTION}{91}{section.5.2}
-\contentsline {subsection}{\numberline {5.2.1}Assumptions and Models}{91}{subsection.5.2.1}
-\contentsline {subsection}{\numberline {5.2.2}The Main Idea}{94}{subsection.5.2.2}
-\contentsline {subsection}{\numberline {5.2.3}PeCO Protocol Algorithm}{95}{subsection.5.2.3}
-\contentsline {section}{\numberline {5.3}Perimeter-based Coverage Problem Formulation}{96}{section.5.3}
-\contentsline {section}{\numberline {5.4}Performance Evaluation and Analysis}{98}{section.5.4}
-\contentsline {subsection}{\numberline {5.4.1}Simulation Settings}{98}{subsection.5.4.1}
-\contentsline {subsection}{\numberline {5.4.2}Simulation Results}{99}{subsection.5.4.2}
-\contentsline {subsubsection}{\numberline {5.4.2.1}Coverage Ratio}{99}{subsubsection.5.4.2.1}
-\contentsline {subsubsection}{\numberline {5.4.2.2}Active Sensors Ratio}{100}{subsubsection.5.4.2.2}
-\contentsline {subsubsection}{\numberline {5.4.2.3}The Energy Consumption}{100}{subsubsection.5.4.2.3}
-\contentsline {subsubsection}{\numberline {5.4.2.4}The Network Lifetime}{100}{subsubsection.5.4.2.4}
-\contentsline {section}{\numberline {5.5}Conclusion}{101}{section.5.5}
-\contentsline {part}{III\hspace {1em}Conclusion and Perspectives}{105}{part.3}
-\contentsline {part}{Bibliographie}{117}{chapter*.6}
+\contentsline {chapter}{\numberline {3}Evaluation Tools and Optimization Solvers}{51}{chapter.3}
+\contentsline {section}{\numberline {3.1}Introduction}{51}{section.3.1}
+\contentsline {section}{\numberline {3.2}Evaluation Tools}{51}{section.3.2}
+\contentsline {subsection}{\numberline {3.2.1}Testbed Tools}{52}{subsection.3.2.1}
+\contentsline {subsection}{\numberline {3.2.2}Simulation Tools}{53}{subsection.3.2.2}
+\contentsline {section}{\numberline {3.3}Optimization Solvers}{56}{section.3.3}
+\contentsline {section}{\numberline {3.4}Conclusion}{61}{section.3.4}
+\contentsline {part}{II\hspace {1em}Contributions}{63}{part.2}
+\contentsline {chapter}{\numberline {4}Distributed Lifetime Coverage Optimization Protocol in Wireless Sensor Networks}{65}{chapter.4}
+\contentsline {section}{\numberline {4.1}Summary}{65}{section.4.1}
+\contentsline {section}{\numberline {4.2}Description of the DiLCO Protocol}{65}{section.4.2}
+\contentsline {subsection}{\numberline {4.2.1}Assumptions and Network Model}{65}{subsection.4.2.1}
+\contentsline {subsection}{\numberline {4.2.2}Primary Point Coverage Model}{66}{subsection.4.2.2}
+\contentsline {subsection}{\numberline {4.2.3}Main Idea}{67}{subsection.4.2.3}
+\contentsline {subsubsection}{\numberline {4.2.3.1}Information Exchange Phase}{68}{subsubsection.4.2.3.1}
+\contentsline {subsubsection}{\numberline {4.2.3.2}Leader Election Phase}{69}{subsubsection.4.2.3.2}
+\contentsline {subsubsection}{\numberline {4.2.3.3}Decision phase}{69}{subsubsection.4.2.3.3}
+\contentsline {subsubsection}{\numberline {4.2.3.4}Sensing phase}{69}{subsubsection.4.2.3.4}
+\contentsline {section}{\numberline {4.3}Primary Points based Coverage Problem Formulation}{69}{section.4.3}
+\contentsline {section}{\numberline {4.4}Simulation Results and Analysis}{71}{section.4.4}
+\contentsline {subsection}{\numberline {4.4.1}Simulation Framework}{71}{subsection.4.4.1}
+\contentsline {subsection}{\numberline {4.4.2}Modeling Language and Optimization Solver}{72}{subsection.4.4.2}
+\contentsline {subsection}{\numberline {4.4.3}Energy Consumption Model}{72}{subsection.4.4.3}
+\contentsline {subsection}{\numberline {4.4.4}Performance Metrics}{73}{subsection.4.4.4}
+\contentsline {subsection}{\numberline {4.4.5}Performance Analysis for Different Subregions}{74}{subsection.4.4.5}
+\contentsline {subsection}{\numberline {4.4.6}Performance Analysis for Primary Point Models}{79}{subsection.4.4.6}
+\contentsline {subsection}{\numberline {4.4.7}Performance Comparison with other Approaches}{83}{subsection.4.4.7}
+\contentsline {section}{\numberline {4.5}Conclusion}{88}{section.4.5}
+\contentsline {chapter}{\numberline {5}Multiround Distributed Lifetime Coverage Optimization Protocol in Wireless Sensor Networks}{91}{chapter.5}
+\contentsline {section}{\numberline {5.1}Summary}{91}{section.5.1}
+\contentsline {section}{\numberline {5.2}MuDiLCO Protocol Description}{91}{section.5.2}
+\contentsline {subsection}{\numberline {5.2.1}Background Idea and Algorithm}{92}{subsection.5.2.1}
+\contentsline {subsection}{\numberline {5.2.2}Primary Points based Multiround Coverage Problem Formulation}{93}{subsection.5.2.2}
+\contentsline {section}{\numberline {5.3}Experimental Study and Analysis}{95}{section.5.3}
+\contentsline {subsection}{\numberline {5.3.1}Simulation Setup}{95}{subsection.5.3.1}
+\contentsline {subsection}{\numberline {5.3.2}Metrics}{96}{subsection.5.3.2}
+\contentsline {subsection}{\numberline {5.3.3}Results Analysis and Comparison }{97}{subsection.5.3.3}
+\contentsline {section}{\numberline {5.4}Conclusion}{100}{section.5.4}
+\contentsline {chapter}{\numberline {6}Perimeter-based Coverage Optimization to Improve Lifetime in Wireless Sensor Networks}{103}{chapter.6}
+\contentsline {section}{\numberline {6.1}summary}{103}{section.6.1}
+\contentsline {section}{\numberline {6.2}THE PeCO PROTOCOL DESCRIPTION}{103}{section.6.2}
+\contentsline {subsection}{\numberline {6.2.1}Assumptions and Models}{103}{subsection.6.2.1}
+\contentsline {subsection}{\numberline {6.2.2}The Main Idea}{106}{subsection.6.2.2}
+\contentsline {subsection}{\numberline {6.2.3}PeCO Protocol Algorithm}{107}{subsection.6.2.3}
+\contentsline {section}{\numberline {6.3}Perimeter-based Coverage Problem Formulation}{108}{section.6.3}
+\contentsline {section}{\numberline {6.4}Performance Evaluation and Analysis}{110}{section.6.4}
+\contentsline {subsection}{\numberline {6.4.1}Simulation Settings}{110}{subsection.6.4.1}
+\contentsline {subsection}{\numberline {6.4.2}Simulation Results}{111}{subsection.6.4.2}
+\contentsline {subsubsection}{\numberline {6.4.2.1}Coverage Ratio}{111}{subsubsection.6.4.2.1}
+\contentsline {subsubsection}{\numberline {6.4.2.2}Active Sensors Ratio}{112}{subsubsection.6.4.2.2}
+\contentsline {subsubsection}{\numberline {6.4.2.3}The Energy Consumption}{112}{subsubsection.6.4.2.3}
+\contentsline {subsubsection}{\numberline {6.4.2.4}The Network Lifetime}{112}{subsubsection.6.4.2.4}
+\contentsline {section}{\numberline {6.5}Conclusion}{113}{section.6.5}
+\contentsline {part}{III\hspace {1em}Conclusion and Perspectives}{117}{part.3}
+\contentsline {part}{Bibliographie}{132}{chapter*.6}
diff --git a/bib.bib b/bib.bib
index 874f1af57e7ea3b660357997007e5e81da00f9d0..9afddd84ca2d8e359ff0f491519fe86d445a52ea 100644 (file)
--- a/bib.bib
+++ b/bib.bib
@@ -1806,4 +1806,371 @@ k-coverage, and alpha-lifetime.},
 Communication, Control, and Computing},
   pages={1--12},
   year={2005}
 Communication, Control, and Computing},
   pages={1--12},
   year={2005}
+}
+
+
+@inproceedings{ref176,
+  title={On the accuracy of omnet++ in the wireless sensornetworks domain: simulation vs. testbed},
+  author={Colesanti, Ugo Maria and Crociani, Carlo and Vitaletti, Andrea},
+  booktitle={Proceedings of the 4th ACM workshop on Performance evaluation of wireless ad hoc, sensor, and ubiquitous networks},
+  pages={25--31},
+  year={2007},
+  organization={ACM}
+}
+
+@inproceedings{ref177,
+  title={A survey of simulators, emulators and testbeds for wireless sensor networks},
+  author={Imran, Muhammad and Said, Abas Md and Hasbullah, Halabi},
+  booktitle={Information Technology (ITSim), 2010 International Symposium in},
+  volume={2},
+  pages={897--902},
+  year={2010},
+  organization={IEEE}
+}
+
+@INPROCEEDINGS{ref178,
+author={Steyn, L.P. and Hancke, G.P.},
+booktitle={AFRICON, 2011},
+title={A survey of Wireless Sensor Network testbeds},
+year={2011},
+month={Sept},
+pages={1-6},
+keywords={wireless sensor networks;laboratory testbeds;real world deployments;wireless sensor network;Hardware;Mobile communication;Servers;Software;Universal Serial Bus;Wireless communication;Wireless sensor networks},
+doi={10.1109/AFRCON.2011.6072072},
+ISSN={2153-0025},}
+
+
+@inproceedings{ref179,
+  title={Limitations of simulation tools for large-scale wireless sensor networks},
+  author={Khan, Muhammad Zahid and Askwith, Bob and Bouhafs, Faycal and Asim, Muhammad},
+  booktitle={Advanced Information Networking and Applications (WAINA), 2011 IEEE Workshops of International Conference on},
+  pages={820--825},
+  year={2011},
+  organization={IEEE}
+}
+
+@inproceedings{ref180,
+  title={On the accuracy of omnet++ in the wireless sensornetworks domain: simulation vs. testbed},
+  author={Colesanti, Ugo Maria and Crociani, Carlo and Vitaletti, Andrea},
+  booktitle={Proceedings of the 4th ACM workshop on Performance evaluation of wireless ad hoc, sensor, and ubiquitous networks},
+  pages={25--31},
+  year={2007},
+  organization={ACM}
+}
+
+@inproceedings{ref181,
+  title={Motelab: A wireless sensor network testbed},
+  author={Werner-Allen, Geoffrey and Swieskowski, Patrick and Welsh, Matt},
+  booktitle={Proceedings of the 4th international symposium on Information processing in sensor networks},
+  pages={68},
+  year={2005},
+  organization={IEEE Press}
+}
+
+@article{ref182,
+  title={Wireless sensor networks testbeds and state-of-the-art multimedia sensor nodes},
+  author={Farooq, Muhammad Omer and Kunz, Thomas},
+  journal={Appl. Math. Inf. Sci},
+  volume={8},
+  pages={935--940},
+  year={2014}
+}
+
+@incollection{ref183,
+  title={WISEBED: an open large-scale wireless sensor network testbed},
+  author={Chatzigiannakis, Ioannis and Fischer, Stefan and Koninis, Christos and Mylonas, Georgios and Pfisterer, Dennis},
+  booktitle={Sensor Applications, Experimentation, and Logistics},
+  pages={68--87},
+  year={2010},
+  publisher={Springer}
+}
+
+@article{ref184,
+  title={FIT IoT-LAB tutorial: hands-on practice with a very large scale testbed tool for the Internet of Things},
+  author={Fambon, O and FLEURY, {\'E}RIC and Harter, G and Pissard-Gibollet, R and Saint-Marcel, F},
+  journal={10{\`e}mes journ{\'e}es francophones Mobilit{\'e} et Ubiquit{\'e}, UbiMob2014},
+  year={2014}
+}
+
+@misc{ref185,
+   title = {The IoT-LAB. [online],https://www.iot-lab.info.},
+     
+}
+
+
+@article{ref186,
+  title={A Survey on Testbeds and Experimentation Environments for Wireless Sensor Networks},
+  author={Horneber, Jens and Hergenroder, A},
+  year={2014},
+  publisher={IEEE}
+}
+
+
+@inproceedings{ref187,
+  title={Kansei: a testbed for sensing at scale},
+  author={Ertin, Emre and Arora, Anish and Ramnath, Rajiv and Naik, Vinayak and Bapat, Sandip and Kulathumani, Vinod and Sridharan, Mukundan and Zhang, Hongwei and Cao, Hui and Nesterenko, Mikhail},
+  booktitle={Proceedings of the 5th international conference on Information processing in sensor networks},
+  pages={399--406},
+  year={2006},
+  organization={ACM}
+}
+
+@article{ref188,
+  title={Wireless sensor network simulators a survey and comparisons},
+  author={Sundani, Harsh and Li, Haoyue and Devabhaktuni, Vijay and Alam, Mansoor and Bhattacharya, Prabir},
+  journal={International Journal of Computer Networks},
+  volume={2},
+  number={5},
+  pages={249--265},
+  year={2011}
+}
+
+@article{ref189,
+  title={Survey of simulators for wireless sensor networks},
+  author={Musznicki, Bartosz and Zwierzykowski, Piotr},
+  journal={International Journal of Grid and Distributed Computing},
+  volume={5},
+  number={3},
+  pages={23--50},
+  year={2012}
+}
+
+@article{ref190,
+  title={Modeling and simulation of networked low-power embedded systems: a taxonomy},
+  author={Du, Wan and Mieyeville, Fabien and Navarro, David and O’Connor, Ian and Carrel, Laurent},
+  journal={EURASIP Journal on Wireless Communications and Networking},
+  volume={2014},
+  number={1},
+  pages={1--12},
+  year={2014},
+  publisher={Springer}
+}
+
+@misc{ref191,
+   title = {The Network Simulator - ns-2. [online],http://www.isi.edu/nsnam/ns/.},    
+}
+
+@article{ref192,
+  title={Network modelling and simulation tools},
+  author={Rahman, Muhammad Azizur and Pak{\v{s}}tas, Algirdas and Wang, Frank Zhigang},
+  journal={Simulation Modelling Practice and Theory},
+  volume={17},
+  number={6},
+  pages={1011--1031},
+  year={2009},
+  publisher={Elsevier}
+}
+
+
+@inproceedings{ref193,
+  title={ns-3 project goals},
+  author={Henderson, Thomas R and Roy, Sumit and Floyd, Sally and Riley, George F},
+  booktitle={Proceeding from the 2006 workshop on ns-2: the IP network simulator},
+  pages={13},
+  year={2006},
+  organization={ACM}
+}
+
+@inproceedings{ref194,
+  title={FlowMonitor: a network monitoring framework for the network simulator 3 (NS-3)},
+  author={Carneiro, Gustavo and Fortuna, Pedro and Ricardo, Manuel},
+  booktitle={Proceedings of the Fourth International ICST Conference on Performance Evaluation Methodologies and Tools},
+  pages={1},
+  year={2009},
+  organization={ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering)}
+}
+
+@misc{ref195,
+   title = {The Network Simulator - ns-3. [online],http://www.nsnam.org/.},    
+}
+
+@misc{ref196,
+   title = {The OMNeT++. [online],http://omnetpp.org/.},    
+}
+
+@inproceedings{ref197,
+  title={The OMNeT++ discrete event simulation system},
+  author={Varga, Andr{\'a}s and others},
+  booktitle={Proceedings of the European simulation multiconference (ESM’2001)},
+  volume={9},
+  number={S 185},
+  pages={65},
+  year={2001},
+  organization={sn}
+}
+
+@inproceedings{ref198,
+  title={Parallel simulation made easy with omnet++},
+  author={Sekercioglu, Y and Varga, Andr{\'a}s and Egan, Gregory},
+  booktitle={The European Simulation Symposium (ESS 2003)(Alexander Verbraeck 26 October 2003 to 29 October 2003)},
+  pages={493--499},
+  year={2003},
+  organization={SCS European Publishing House}
+}
+
+@article{ref199,
+  title={Network modelling and simulation tools},
+  author={Rahman, Muhammad Azizur and Pak{\v{s}}tas, Algirdas and Wang, Frank Zhigang},
+  journal={Simulation Modelling Practice and Theory},
+  volume={17},
+  number={6},
+  pages={1011--1031},
+  year={2009},
+  publisher={Elsevier}
+}
+
+@inproceedings{ref200,
+  title={Network simulations with OPNET},
+  author={Chang, Xinjie},
+  booktitle={Proceedings of the 31st conference on Winter simulation: Simulation---a bridge to the future-Volume 1},
+  pages={307--314},
+  year={1999},
+  organization={ACM}
+}
+
+@inproceedings{ref201,
+  title={Survey of wireless sensor networks simulation tools for demanding applications},
+  author={Korkalainen, Marko and Sallinen, Mikko and Karkkainen, Niilo and Tukeva, Pirkka},
+  booktitle={Networking and Services, 2009. ICNS'09. Fifth International Conference on},
+  pages={102--106},
+  year={2009},
+  organization={IEEE}
+}
+
+@article{ref202,
+  title={Glomosim: A scalable network simulation environment},
+  author={Bajaj, Lokesh and Takai, Mineo and Ahuja, Rajat and Tang, Ken and Bagrodia, Rajive and Gerla, Mario},
+  journal={UCLA Computer Science Department Technical Report},
+  volume={990027},
+  pages={213},
+  year={1999},
+  publisher={Citeseer}
+}
+
+
+@inproceedings{ref203,
+  title={An overview of the OMNeT++ simulation environment},
+  author={Varga, Andr{\'a}s and Hornig, Rudolf},
+  booktitle={Proceedings of the 1st international conference on Simulation tools and techniques for communications, networks and systems \& workshops},
+  pages={60},
+  year={2008},
+  organization={ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering)}
+}
+
+@inproceedings{ref204,
+  title={GloMoSim: a library for parallel simulation of large-scale wireless networks},
+  author={Zeng, Xiang and Bagrodia, Rajive and Gerla, Mario},
+  booktitle={Parallel and Distributed Simulation, 1998. PADS 98. Proceedings. Twelfth Workshop on},
+  pages={154--161},
+  year={1998},
+  organization={IEEE}
+}
+
+@inproceedings{ref205,
+  title={A survey of simulation in sensor networks},
+  author={Singh, Chandresh Pratap and Vyas, OP and Tiwari, Manoj Kumar},
+  booktitle={Computational Intelligence for Modelling Control \& Automation, 2008 International Conference on},
+  pages={867--872},
+  year={2008},
+  organization={IEEE}
+}
+
+@incollection{ref206,
+  title={SENSE: a wireless sensor network simulator},
+  author={Chen, Gilbert and Branch, Joel and Pflug, Michael and Zhu, Lijuan and Szymanski, Boleslaw},
+  booktitle={Advances in pervasive computing and networking},
+  pages={249--267},
+  year={2005},
+  publisher={Springer}
+}
+
+@inproceedings{ref207,
+  title={TOSSIM: Accurate and scalable simulation of entire TinyOS applications},
+  author={Levis, Philip and Lee, Nelson and Welsh, Matt and Culler, David},
+  booktitle={Proceedings of the 1st international conference on Embedded networked sensor systems},
+  pages={126--137},
+  year={2003},
+  organization={ACM}
+}
+
+@article{ref208,
+  title={Tossim: A simulator for tinyos networks},
+  author={Levis, Philip and Lee, Nelson},
+  journal={UC Berkeley, September},
+  volume={24},
+  year={2003}
+}
+
+@inproceedings{ref209,
+  title={Simulation of large-scale sensor networks using GTSNetS},
+  author={Ould-Ahmed-Vall, E-M and Riley, George F and Heck, Bonnie S and Reddy, Dheeraj},
+  booktitle={Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, 2005. 13th IEEE International Symposium on},
+  pages={211--218},
+  year={2005},
+  organization={IEEE}
+}
+
+@article{ref210,
+  title={Large-scale sensor networks simulation with gtsnets},
+  author={Riley, George F and Heck, Bonnie S and others},
+  journal={Simulation},
+  volume={83},
+  number={3},
+  pages={273--290},
+  year={2007},
+  publisher={Sage Publications}
+}
+
+
+@misc{ref211,
+   title = {Wikipedia. Linear programming - Wikipedia, the free encyclopedia. [online],http://en.wikipedia.org/wiki/Linear$\_$programming/.},    
+}
+
+@article{ref212,
+  title={Analysis of commercial and free and open source solvers for linear optimization problems},
+  author={Meindl, Bernhard and Templ, Matthias},
+  journal={Eurostat and Statistics Netherlands within the project ESSnet on common tools and harmonised methodology for SDC in the ESS},
+  year={2012}
+}
+
+@techreport{ref213,
+  title={Comparison of open-source linear programming solvers.},
+  author={Gearhart, Jared Lee and Adair, Kristin Lynn and Detry, Richard J and Durfee, Justin D and Jones, Katherine A and Martin, Nathaniel},
+  year={2013},
+  institution={Sandia National Laboratories (SNL-NM), Albuquerque, NM (United States)}
+}
+
+@misc{ref214,
+   title = {A. Makhorin, GLPK (GNU Linear Programming Kit). [online],http://www.gnu.org/software/glpk/glpk.html.},    
+}
+
+@misc{ref215,
+   title = {The lp$\textunderscore$solve solver. [online],http://lpsolve.sourceforge.net/5.5/.},    
+}
+
+@misc{ref216,
+   title = {The COIN-OR LP. [online],http://en.wikipedia.org/wiki/COIN-OR.},  
+}
+
+@misc{ref217,
+   title = {The COIN-OR, Computational Infrastructure for Operations Research. [online],http://www.coin-or.org.},  }
+
+@misc{ref218,
+   title = {The IBM ILOG CPLEX Optimization Studio. [online],http://www-03.ibm.com/software/products/en/ibmilogcpleoptistud/.},  }
+
+
+@misc{ref219,
+   title = {The Gurobi Optimization Inc. Gurobi Optimizer. [online],http://www.gurobi.com/.},  }
+
+@misc{ref220,
+   title = {The Gurobi Optimizer. [online],http://en.wikipedia.org/wiki/Gurobi.},  }
+ @inproceedings{ref221,
+  title={Improved branch and bound algorithm with a comparison between different LP solvers},
+  author={Barreto, Lucio S and Haffner, S{\'e}rgio and Pereira, Lu{\'\i}s A and Bauer, Michael},
+  booktitle={Industry Applications (INDUSCON), 2010 9th IEEE/IAS International Conference on},
+  pages={1--6},
+  year={2010},
+  organization={IEEE}
 }
\ No newline at end of file
 }
\ No newline at end of file
index 0170bc4c130a80a4bb0f2ffe28665095a2f88ddb..844d3e795291d393b554e3ddbf628c91ecf76744 100644 (file)
 %\newcommand{\enluminure}[2]{\lettrine[lines=3]{\small \initfamily #1}{#2}}
 %\usepackage{indentfirst}
 
 %\newcommand{\enluminure}[2]{\lettrine[lines=3]{\small \initfamily #1}{#2}}
 %\usepackage{indentfirst}
 
-
+ \usepackage{booktabs}
+ \usepackage{multirow}
+