\documentclass[12pt,a4paper]{article}
\usepackage{algorithm, algpseudocode, amsmath, amssymb, amsthm, csquotes, empheq, geometry, graphicx, hyperref, listings, multirow, siunitx, subcaption, upgreek}
\usepackage[italicdiff]{physics}
\usepackage[section]{placeins}
\usepackage[justification=centering]{caption}

\title{Computational Physics\\Problem Set 9}
\author{Saleh Shamloo Ahmadi\\Student Number: 98100872}
\date{December 12, 2021}

\hypersetup{colorlinks=true, urlcolor=cyan}
\newcommand{\fig}{../fig}
\newcommand{\fighere}[2]{\begin{figure}[htb!]
    \centering
    \includegraphics[width=#2\linewidth]{\fig/#1}
\end{figure}}
\newcommand{\multlinecell}[1]{\begin{tabular}[c]{@{}c@{}}#1\end{tabular}}
\newcommand*{\defeq}{\mathrel{\vcenter{\baselineskip0.5ex \lineskiplimit0pt
			\hbox{\scriptsize.}\hbox{\scriptsize.}}}
			=}

\begin{document}
	\maketitle
    \section{RC Circuit: First Order Ordinary Differential Equation}
    In a RC circuit where a battery with voltage $V_0$ is connected to a capacitor and a resistor (kvl)
    \begin{equation}
        V_B + V_C + V_R = 0 \implies V_0 - \frac{q}{C} - IR = 0.
    \end{equation}
    Here, the current charges the capacitor, so $I = \dot{q}$ and therefore
    \begin{equation}
        \dot{q} = \frac{V_0}{R} - \frac{q}{RC}.
    \end{equation}
    Defining $q_0 \defeq CV_0$ and assuming $q(0) = 0$
    \begin{equation}
        q(t) = q_0(1 - e^{-t/RC}).
    \end{equation}

    Here, the Euler method and the classic Runge-Kutta methods are compared against the exact solution.

    Also, in the last figure, it is shown that the method $x_{n+1} = x_{n-1} + 2\Delta{t}\dot{x}(t_n, x_n)$
    is unstable.

    \newgeometry{top=0.1in, bottom=0.1in}
    \thispagestyle{empty}
    \fighere{rc-sol}{0.86}
    \fighere{rc-error}{1}
    \fighere{rc-unstable}{0.86}
    \restoregeometry
    \section{Simple Harmonic Oscillator:\\Second Order Ordinary Differential Equation}
    For the simple harmonic oscillator
    \begin{gather}
        \ddot{x} = -\omega x, \\
        \text{for $v(0) = \dot{x}(0) = 0$}
        \left\{\begin{aligned}
            x(t) &= x_0\cos(\omega t) \\
            v(t) &= x_0\omega\sin(\omega t)
        \end{aligned}\right.
    \end{gather}

    Here, 6 numerical methods are compared agains the exact solution:
    \begin{table}[hbt!]
        \centering
        \begin{tabular}{|c|c|c|c|}
            \hline
            Method & \multlinecell{Local\\Error} & \multlinecell{Global\\Error} & \multlinecell{Global Velocity\\($\dot{x}(t)$) Error} \\
            \hline
            Euler Method & $\mathcal{O}(\Delta{t}^2)$ & $\mathcal{O}(\Delta{t})$ & $\mathcal{O}(\Delta{t})$ \\
            \hline
            \multlinecell{Euler--Cromer Method\\(a.k.a. Semi-implicit Euler Method)}
            & $\mathcal{O}(\Delta{t}^2)$ & $\mathcal{O}(\Delta{t})$ & $\mathcal{O}(\Delta{t})$ \\
            \hline
            \multlinecell{Midpoint Method\\(A Modified Euler Method)}
            & $\mathcal{O}(\Delta{t}^3)$ & $\mathcal{O}(\Delta{t}^2)$ & $\mathcal{O}(\Delta{t}^2)$ \\
            \hline
            \multlinecell{Verlet Integration\\(a.k.a. St\"{o}rmer--Verlet Method)}
            & $\mathcal{O}(\Delta{t}^4)$ & $\mathcal{O}(\Delta{t}^2)$ & $\mathcal{O}(\Delta{t})$ \\
            \hline
            Velocity Verlet & $\mathcal{O}(\Delta{t}^4)$ & $\mathcal{O}(\Delta{t}^2)$ & $\mathcal{O}(\Delta{t}^2)$ \\
            \hline
            Classic Runge--Kutta (a.k.a. RK4)
            & $\mathcal{O}(\Delta{t}^5)$ & $\mathcal{O}(\Delta{t}^4)$ & $\mathcal{O}(\Delta{t}^4)$ \\
            \hline
        \end{tabular}
    \end{table}

    The classic Runge--Kutta method provides the most accurate solution, but it exhibits a severe energy drift in
    large time intervals (since it is not a sympletic integrator).

    The velocity Verlet method performs the best in terms of conservation of energy. In terms of the displacement
    accuracy, it performs the same as the midpoint method and the regular verlet method.

    The Euler method can be unstable under certain conditions. Here, one example of this instability is evident.

    \fighere{sho-sol}{1}
    \fighere{sho-sol-euler}{1}
    \newgeometry{top=1in, bottom=1.5in}
    \fighere{sho-phase}{1}
    \fighere{sho-phase-euler}{1}

    \section{Logistic Map: Chaos}
    \fighere{bifurcation}{1}
    \fighere{bifurcation-zoom}{1}
    \restoregeometry
    \begin{empheq}[left={\text{Feigenbaum constants}\empheqlbrace}]{gather*}
        \text{first constant: } \delta = \frac{a_{n-1} - a_{n-2}}{a_n - a_{n-1}} \approx 4.669 \\
        \text{second constant: } \alpha = \frac{\text{width of a tine}}{\text{width of the next tine}} \approx 2.509
    \end{empheq}
    $\delta$ is calculated with $n=5$ and $\alpha$ is calculated with a branch of a carefully chosen 8 point tine.
    $\delta$ is accurate up to the third decimal place and $\alpha$ is accurate up to the second decimal place
    (the error is much larger for $\alpha$, as tine shapes are varied).

    I also made an animation (named \texttt{bifurcation.gif}) showing how the bifurcation diagram changes in each step
    of applying the logistic map.
\end{document}


\subsection{Clustering}
\label{sec:impl_clustering}

For our implementation we used the \textit{k-means} algorithm offered by Mahout\footnote{\url{https://mahout.apache.org/}}, which can be executed efficiently among a cluster with a large amount of data~\cite{esteves2011k}.

\textit{K-means} creates $k$ clusters from $n$ vectors by randomly selecting $k$ points from the vector space as cluster centroids.
Then, each vector or point is assigned to its nearest cluster centroid according to its \textit{Euclidean} distance to those centroids.
Afterwards, the cluster centroids are repositioned to the center of all vectors/points, which were assigned to them.
These last two steps are repeated until the cluster centroids converge.
The resulting assignment of the vectors (and thus their corresponding blog posts) to the clusters is the same as the final assignment performed by the \textit{k-means} algorithm.

Using our small data set we set $k$ to 6, the number of authors.
Under the assumption that each author has an individual writing style and that this writing style is not changing over time, an author should obtain their own cluster containing only blog posts written by him.
In this way, we could evaluate our \textit{k-means} algorithm (see Section~\ref{sec:evaluation_clustering}).


\subsection{Test 1: Lake-at-Rest Over an Uncertain Bed}

Numerical methods that are not well-balanced produce spurious waves in the vicinity of sloping topography, and these spurious waves are particularly evident for slow-moving flows with weak momentum fluxes.
In the limit, the momentum flux is zero and the water is motionless, like the water surface on a lake at rest.
Hence, the lake-at-rest test is ideally suited to verify the well-balanced property, since the analytic solution preserves the resting state forever, and any waves generated by a numerical model are entirely spurious \citep{bermudez-vazquez1994}.

To present a challenging test, a rectangular obstacle is introduced to the right of the uncertain hump given by equation~\eqref{eqn:bed}, so the bed elevation $z$ becomes
\begin{subequations}
\begin{align}
    z(x, \hump) &= \hump \sech^2 \left( \frac{\pi x}{\lambda} \right) + \zrectbump(x) \text{,}
    %
    \intertext{where $\zrectbump$ is the rectangular obstacle:}
    %
    \zrectbump(x) &= \begin{cases}
    \humpmean & \text{if $30 < x \leq 40$,} \\
    0 & \text{otherwise}
    \end{cases}
\end{align} \label{eqn:lakeAtRest:z}
\end{subequations}

Results of the well-balanced stochastic model are compared with those of a stochastic model having a centred difference approximation of the source term vector that does not exactly balance the numerical flux gradient.
The centred difference model is the same as the well-balanced stochastic model except for two changes.
First, numerical fluxes are calculated using the original, unmodified flow variables:
\begin{align}
	\riemannflux_{i+1/2}^{(n)} = \riemannflux \left(
	\sum_{p=0}^P \flow^-_{i+1/2,p} \pcbasis_p,
	\sum_{p=0}^P \flow^+_{i+1/2,p} \pcbasis_p
	\right) \label{eqn:flux-centred}
\end{align}
Second, the ensemble average of the source term vector uses a centred difference approximation:
\begin{align}
    \Ensemble{\source_i \pcbasis_l} =
    \left[ 0, -g \sum_{p=0}^P \sum_{s=0}^P h_{i,p}
    \frac{z_{i+1,s} - z_{i-1,s}}{2 \Delta x}
    \Ensemble{\pcbasis_p \pcbasis_s \pcbasis_l} \right]^\T \label{eqn:source-centred}
\end{align}
The centred difference model and the well-balanced model are both configured with a Wiener-Hermite basis order $P = 3$.

\begin{figure}
\centering
\begin{subfigure}{\textwidth}
\phantomsubcaption\label{fig:lakeatrest:centred:eta}
\phantomsubcaption\label{fig:lakeatrest:sgm:eta}
\phantomsubcaption\label{fig:lakeatrest:centred:q}
\phantomsubcaption\label{fig:lakeatrest:sgm:q}
\centering
\includegraphics{fig-lakeatrest.pdf}
\end{subfigure}
\caption{Stochastic lake-at-rest solutions at $t = \SI{100}{\second}$ \rev{showing (a) the topography and free-surface profiles using the centred difference model, (b) the same profiles using the surface gradient method, and (c, d) the corresponding discharge profiles.}
Mean values are marked by solid lines and shaded regions represent one standard deviation from the mean.}
\label{fig:lakeatrest}
\end{figure}

The simulated time is \SI{100}{\second} corresponding to about 670 timesteps, and the solutions for the centred difference and well-balanced stochastic Galerkin models are shown in figure~\ref{fig:lakeatrest}.
The lack of well-balancing is apparent using the centred difference model: grid-scale standing waves develop at the discontinuities either side of the rectangular hump (figure~\ref{fig:lakeatrest:centred:eta}, \ref{fig:lakeatrest:centred:q}), and a smooth standing wave also develops over the uncertain hump.
These errors persist throughout the simulation.
In contrast, the well-balanced stochastic Galerkin model preserves the initial resting state with discharges accurate to machine precision (figure~\ref{fig:lakeatrest:sgm:q}).
This numerical result confirms that the stochastic Galerkin model is well-balanced in theory and in practice.

The choice of the Wiener-Hermite basis introduces a particular limitation that imposes an upper bound on the basis order $P$, and constrains the minimum water depth that the stochastic Galerkin model can represent.
This limitation arises because the hump amplitude has a Gaussian probability distribution so the tails of the distribution extend to $\pm \infty$, meaning that there is a non-zero probability that the water depth is negative.
The stochastic Galerkin formulation presented here does not accommodate wetting-and-drying processes, and any negative water depth will crash the model.
If the basis order $P$ is increased then the Gauss-Hermite quadrature points in equation~\eqref{eqn:pc-flux} extend further into the tails of the probability distributions, leading to negative water depths being provided as input to the Riemann solver.
Similarly, raising the topography, decreasing the initial water depth, or increasing the topographic uncertainty can all produce negative water depths in the stochastic Galerkin model.
This behaviour has been verified experimentally by varying the model basis order, initial conditions and topography profile.


\documentclass[a4paper]{article}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage[colorinlistoftodos]{todonotes}

\title{Behaviour Dynamics in Social Networks - Assignment 1}

\author{Maria Hotoiu, Federico Tavella}

\date{\today}

\begin{document}
\maketitle

\begin{abstract}
After Jenny has entered Mark’s door, her presence clearly makes that Mark becomes happy. Liking Mark a lot, his happiness makes her nervous, which makes that she breaks one of the two nice vases near the door. Seeing this, Mark becomes angry on her. This makes Jenny sad. Jenny’s sadness makes Mark’s anger disappear, and he gives Jenny a hug. Seeing this, Mark’s partner Dion becomes jealous, upon which she breaks the other vase.
\newline
Use the concepts and formats introduced in Chapter 2 to analyse and model this scenario by a temporal-causal network by the following steps.
\end{abstract}

\section{Graphical conceptual representation}
\label{sec:graphical_conceptual_representation}

States describing the scenario:

\begin{enumerate}
\item Jenny's presence ($X_1$);
\item Mark becomes happy ($X_2$);
\item Jenny likes Mark ($X_3$);
\item Jenny becomes nervous ($X_4$);
\item Jenny breaks a vase ($X_5$);
\item Mark becomes angry ($X_6$);
\item Jenny becomes sad ($X_7$);
\item Mark gives Jenny a hug ($X_8$);
\item Dion become jealous ($X_9$);
\item Dion breaks a vase ($X_10$).
\end{enumerate}

In Figure~\ref{fig:graphical_conceptual_representation}, we can observe a connection that models a negative impact which makes the level of the affected state lower - the one going from $X_7$ to $X_6$ (i.e. Mark's anger decreases due to Jenny's sadness). There is also a loop that contains two states: $X_6$ and $X_7$.

\begin{figure}[!htbp]
\center
\includegraphics[width=0.95\textwidth]{res/img/graphical_conceptual_representation}
\caption{Conceptual representation of the scenario.}
\label{fig:graphical_conceptual_representation}
\end{figure}

\section{Conceptual representation in matrix format}

We now move to the matrix representation of the graph in Figure~\ref{fig:graphical_conceptual_representation}. Rows represent nodes from which edges are starting, while columns represent nodes in which edges are ending.

\begin{figure}[!htbp]
\centering
\includegraphics[width=0.95\textwidth]{res/img/matrix_conceptual_representation}
\caption{Matrix format of the conceptual representation}
\label{fig:matrix_conceptual_representation}
\end{figure}

\section{Numerical representation}

Numerical representation for the scenario represented in Figure \ref{fig:matrix_conceptual_representation}.

\subsection{Difference equation}

Initial states:
\begin{equation}
X_{1}(t+\Delta t) = X_{1}(t) + \eta_{1} ( id(X_{1}(t)) - X_{1}(t))\Delta t = X_{1}(t)
\end{equation}
\begin{equation}
X_{3}(t+\Delta t) = X_{3}(t) + \eta_{3} ( id(X_{3}(t)) - X_{3}(t))\Delta t = X_{3}(t)
\end{equation}
\\
Intermediate states:
\begin{equation}
X_{2}(t+\Delta t) = X_{2}(t) + \eta_{2} (id(\omega_{2} X_{1}(t)) - X_{2}(t))\Delta t
\end{equation}
\begin{equation}
X_{4}(t+\Delta t) = X_{4}(t) + \eta_{4} ( alogistic_{\sigma ,\tau}(\omega_{2} X_{2}(t),\omega_{3} X_{3}(t)) - X_{4}(t))\Delta t
\end{equation}
\begin{equation}
X_{5}(t+\Delta t) = X_{5}(t) + \eta_{5} (id(\omega_{4} X_{4}(t)) - X_{5}(t))\Delta t
\end{equation}
\begin{equation}
X_{6}(t+\Delta t) = X_{6}(t) + \eta_{6} (alogistic_{\sigma ,\tau}(\omega_{5} X_{5}(t),\omega_{7} X_{7}(t)) - X_{6}(t))\Delta t
\end{equation}
\begin{equation}
X_{7}(t+\Delta t) = X_{7}(t) + \eta_{7} (id(\omega_{6} X_{6}(t)) - X_{7}(t))\Delta t
\end{equation}
\begin{equation}
X_{8}(t+\Delta t) = X_{8}(t) + \eta_{8} (id(\omega_{8} X_{7}(t)) - X_{8}(t))\Delta t
\end{equation}
\begin{equation}
X_{9}(t+\Delta t) = X_{9}(t) + \eta_{9} (id(\omega_{9} X_{8}(t)) - X_{9}(t))\Delta t
\end{equation}
\\
Final state:
\begin{equation}
X_{10}(t+\Delta t) = X_{10}(t) + \eta_{10} (id(\omega_{10} X_{9}(t)) - X_{10}(t))\Delta t
\end{equation}

\subsection{Differential equation}

Initial states:
\begin{equation}
\frac{\delta X_{1}(t)}{\delta t} = X_{1}(t) + \eta_{1} \cdot ( id(X_{1}(t)) - X_{1}(t))
\end{equation}
\begin{equation}
\frac{\delta X_{3}(t)}{\delta t} = X_{3}(t) + \eta_{3} \cdot ( id(X_{3}(t)) - X_{3}(t))
\end{equation}
\\
Intermediate states:
\begin{equation}
\frac{\delta X_{2}(t)}{\delta t} = X_{2}(t) + \eta_{2} \cdot ( id(X_{1}(t)) - X_{2}(t))
\end{equation}
\begin{equation}
\frac{\delta X_{4}(t)}{\delta t} = X_{4}(t) + \eta_{4} \cdot ( alogistic_{\sigma ,\tau}(\omega_{2} X_{2}(t),\omega_{3} X_{3}(t)) - X_{4}(t))
\end{equation}
\begin{equation}
\frac{\delta X_{5}(t)}{\delta t} = X_{5}(t) + \eta_{5} \cdot ( id(X_{4}(t)) - X_{5}(t))
\end{equation}
\begin{equation}
\frac{\delta X_{6}(t)}{\delta t} = X_{6}(t) + \eta_{6} \cdot (alogistic_{\sigma ,\tau}(\omega_{5} X_{5}(t),\omega_{7} X_{7}(t)) - X_{6}(t))
\end{equation}
\begin{equation}
\frac{\delta X_{7}(t)}{\delta t} = X_{7}(t) + \eta_{7} \cdot ( id(X_{6}(t)) - X_{7}(t))
\end{equation}
\begin{equation}
\frac{\delta X_{8}(t)}{\delta t} = X_{8}(t) + \eta_{8} \cdot ( id(X_{7}(t)) - X_{8}(t))
\end{equation}
\begin{equation}
\frac{\delta X_{9}(t)}{\delta t} = X_{9}(t) + \eta_{9} \cdot ( id(X_{8}(t)) - X_{9}(t))
\end{equation}
\\
Final state:
\begin{equation}
\frac{\delta X_{10}(t)}{\delta t} = X_{10}(t) + \eta_{10} \cdot ( id(X_{9}(t)) - X_{10}(t))
\end{equation}

\section{Expected behaviour}\label{sec:expected_behaviour}

There are two constant and non-zero states at $t = 0$: Jenny's presence ($X_{1}$) and Jenny's liking of Mark ($X_{3}$). All the other states ($X_{2}$, $X_{4}$, $X_{5}$, $\ldots$, $X_{10}$) are starting at $0$. We expect the behaviour of the network is as follows: it starts with Jenny's presence as non-zero, which makes Mark's happiness go from low to high. This change, together with the constant factor of Jenny liking Mark, make Jenny's nervousness go from low to high, which makes her break a vase (Jenny's vase breaking goes from low to high). As a consequence of the breaking, Mark's anger goes from low to high, which makes Jenny's sadness also go from low to high. This change in Jenny's sadness makes Mark's anger go from high back to low and it also makes Mark's hugging of Jenny go from low to high. The change in the hugging state makes Dion's jealousy go from low to high and as a consequence she breaks a vase (Dion's vase breaking goes from low to high). During all these processes, we can observe temporal-causal relationships between nodes connected by edges.

\begin{figure}[!ht]
\center
\includegraphics[width=\textwidth]{res/img/numerical_representation}
\caption{Results obtained from the simulation of the scenario. All the edges are weighted the same ($\omega_{i} = 1$), except for $\omega_{7} = -1$. They also share the same speed factor: $\eta_{i} = 0.5,  i = 1 \ldots 10$. The \textit{alogistic} function is set with $\sigma = 10$ and $\tau = 1$}
\label{fig:numerical_representation}
\end{figure}

\section{Simulation}

In this section, we analyze the experimental results to check if they are coherent with the expected behaviour described in Section \ref{sec:expected_behaviour}. As we can see in Figure~\ref{fig:numerical_representation}, the two costant states - $X_{1}$ and $X_{3}$ - are set to 1. The states connected to them ($X_{2}$ and $X_{4}$) are activated due to a \textit{causal relationship}. Moreover, we can see how the connection that models the negative impact (i.e. the edge from $X_{7}$ to $X_{6}$) lowers the value of $X_{6}$ around $t = 10$. Finally, we observe how the loop leads to the convergence of the values of all the involved nodes - $X_{6}$ and $X_{7}$, and consequently $X_{8}$, $X_{9}$ and $X_{10}$.

\begin{thebibliography}{9}
\bibitem{nano3}
  Treur, J.,
  \emph{Network-Oriented Modeling: Addressing Complexity of Cognitive, Affective and Social Interactions}.
  Series on Understanding Complex Systems, Springer Publishers, October 2016.

\end{thebibliography}
\end{document}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PROBLEM 2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{Problem 2}

Use the following masses for parts (a) and (b):

\begin{table}[htbp]
	\centering
	\begin{tabular}{|c|c|}
			\hline
			Nucleus		&	Atomic Mass \\
			\hline
			n 			&	 1.008665 u \\
			$^{1}$H		& 	 1.007825 u \\
			$^{2}$H 	&	 2.014102 u \\
			$^{56}$Fe	&   55.934939 u \\
			$^{98}$Y 	&   97.922203 u \\
			$^{135}$I	&  134.910048 u \\
			$^{235}$U	&  235.043924 u \\
			\hline
	\end{tabular}
	\label{tab:design-specs}
\end{table}
\begin{center}$1\text{u} \cdot c^{2} = 931.502$ MeV\end{center}
\-\\
\-\\
\begin{enumerate}[a)]
\item Calculate the $Q$-value of the reaction:
$$ ^{235}\text{U}\, + \,n \-\rightarrow\- ^{135}\text{I}\, + \,^{98}\text{Y}\, + \,3n $$
\item Calculate the average binding energy per nucleon (in MeV) of $^{2}$H, $^{56}$Fe, and $^{235}$U.

\end{enumerate}


\chapter{Thin airfoil theorem}


\section{random.cc}\label{random}

This module abstracts the concept of a random number generator. The
base types are:
\index{random\_gen}\index{urand}\index{rangerand}\index{gaussrand}
\index{distrand}

\begin{verbatim}
class random_gen
{
public:
  virtual double rand()=0;
};

class affinerand: public random_gen
{
public:
  double scale, offset;
  affinerand(double s=1, double o=0, random_gen *g=NULL);
  void Set_gen(random_gen*);
  void set_gen(TCL_args args) {Set_gen(args);}
  template <class T> void new_gen(const T&);
  double rand() {return scale*gen->rand()+offset;}
};
\end{verbatim}

\verb+random_gen+ is an abstract base class representing a random
number generator. \verb+affinerand+ performs a simple affine
transformation on the contained random generator. The
\verb+random_gen*+ argument to \verb+affine_rand()+ may be used to set
the random generator employed. If \verb+NULL+ (default) is passed for
this parameter, a uniform random generator of type urand is created
and used. After creation, you can either set the random generator to
be something else using \verb+Set_gen+, or create a new random
generator of the same type as the passed argument using
\verb+new_gen+. The \verb+set_gen+ method is callable from TCL, and
takes a named \verb+random_gen+ object as an argument. The class's
destructor will delete a generator created with newgen, but not delete
an object passed by setgen. For example, a normal distribution with
mean m and standard deviation s can be obtained with the declaration:
\begin{verbatim}
affinerand(s,m).newgen(gaussrand());
\end{verbatim}

The other classes are:

\begin{verbatim}
class urand: public random_gen
{
public:
  double rand();
  void Seed(int s);
  void seed(TCL_args args) {Seed(args);}
#if defined(UNURAN) || defined(GNUSL)
  void Set_gen(char *);
  void set_gen(TCL_args args) {Set_gen(args);}
  urand(const char* descr) {Set_gen(descr);}
#endif
};

class gaussrand: public random_gen
{
public:
  urand uni;
  double rand();
};
\end{verbatim}

\verb+urand+ simply returns a uniform random variate in [0,1]. The
basic \EcoLab{} code contains a uniform generator which is simply an
interface to the standard library \verb+rand()+ call, and a Gaussian
random generator, which is based on the algorithm described in
Abramowitz and Stegun (1964) sec. 26.8.6.a(2).

\verb+gaussrand+ returns a normal variate with mean 0 and standard
deviation 1. Use \verb+gaussrand+ coupled with \verb+affinerand+ to
change the mean and standard deviation:
\begin{verbatim}
affinerand gen(2,.5,new gaussrand);
\end{verbatim}
defines a gaussian generator variable {\tt gen} with standard
deviation 2 and mean .5.

As of \EcoLab.4.D7, replacements for these routines using freely
available libraries, unuran and GNUSL are available. The Makefile will
select the \htmladdnormallinkfoot{UNURAN
  library}{http://statistik.wu-wien.ac.at/unuran/} if available,
otherwise the \htmladdnormallinkfoot{GNU Scientific
  Library}{http://www.gnu.org/software/gsl/} will be selected. If
neither of these packages are available, the original basic behaviour
is selected. Please read the section on \hyperref{problems with the
  basic random number library}{(\S}{)}{basic RNG problems}.

Both UNURAN and GNUSL provide a text interface to selecting and
configuring the uniform random generator. The method \verb+Set_gen+
provides a way passing \htmladdnormallinkfoot{PRNG
  parameters}{http://statistik.wu-wien.ac.at/prng/prng/doc/prng.html}
to the underlying PRNG generator. By default the Mersenne Twister
algorithm is used, which is acknowledged as being one of the most
efficient random generator available. The algorithms available
through PRNG are:

\begin{description}
\item[EICG] explicit inversive congruential generator
\item[ICG] inversive congruential generator
\item[LCG] linear congruential generator
\item[QCG] quadratic congruential generator
\item[MT19937] Mersenne Twister
\item[MEICG] modified explicit inversive congruential generator
\item[DICG] digital inversive congruential generator
\end{description}

The set available through GNUSL are:
\begin{description}
\item[mt19937] Mersenne Twister
\item[ranlxs0,ranlxs1,ranlxs2,ranlxd1,ranlxd2] L\"uscher's RANLUX at
  different levels of precision and luxury.
\item[cmrg] combined multiple recursive generator by L'Ecuyer
\item[mrg] fifth-order multiple recursive generator by L'Ecuyer,
  Blouin and Coutre
\item[taus,taus2] maximally equidistributed combined Tausworthe
  generator by L'Ecuyer
\item[gfsr4] Four-tap shift-register-sequence random-number generator
  by Ziff.
\end{description}
Note that only the generator can be selected through the GNUSL string
interface --- parameters cannot be set. The GNUSL documentation
recommends mt19937, taus or gfsr4 for general purpose
simulation. mt19937 is the default.

\begin{verbatim}
class distrand: public random_gen
{
public:
  int nsamp;  /* no. of sample points in distribution */
  int width;  /* digits of precision (base 16) used from prob. distribution */
  double min, max;  /* distribution endpoints */
  distrand(): nsamp(10), width(3), min(0), max(1);
  void Init(int argc, char *argv[]);
  void init(double (*f)(double));
  double rand();
};

#ifdef UNURAN
class unuran: public random_gen
{
public:
  urand uni;
  UNUR_RAN *get_gen(); //get pointer to UNUR_RAN object for UNURAN API use
  /* specify a random generator according to unuran's string interface */
  void Set_gen(const char *descr);
  void set_gen(TCL_args args) {Set_gen(args);}
  unuran();
  unuran(const char* descr) {Set_gen(descr);}
  double rand();
};
#endif
\end{verbatim}

\verb+distrand+ returns a deviate from an arbitrary
distribution function (which needn't be normalised) supplied to
\verb+Init+ (or \verb+init+). The instance variables \verb+nsamp=10+,
\verb+width=3+, \verb+min=0+ and \verb+max=1+ should be modified
before calling \verb+init+. \verb+Init+ provides a TCL interface ---
it takes one argument, the name of a TCL procedure implementing the
distribution. This class implements the method due to
Marsaglia\cite{Marsaglia63}. The UNURAN and GNUSL libraries provide
other, perhaps better routines for doing the same things.

Finally, \verb+unuran+ allows an arbitrary UNURAN generator to be
specified using \htmladdnormallinkfoot{UNURAN's string
  interface}{http://statistik.wu-wien.ac.at/unuran/unuran/doc/unuran.html}.
For example, \verb+gaussrand+ is equivalent to
\verb+unuran("normal()")+. The string interface is powerful and
comprehensive, with a large number of predefined distributions and
methods provided, and the ability to specify arbitrary
distributions. It obviates the need to use \verb+distrand+, which is a
rather obsolete algorithm.

GNUSL does not provide a string interace to its general nonuniform
distributions. For the moment, you will need to implement your own
object interfaces to which ever routines you want to use. You may use
the gaussrand example as a template.

\subsection{TCL interface}

Each of the concrete random number types have been declared with
\hyperref{TCLTYPE}{TCLTYPE (See \S}{)}{TCLTYPE}, so
random generator objects can be created at the TCL level.\index{TCLTYPE} See
newman.tcl, or test-dist.tcl for an example.

Using the unuran type, one can easily set up arbitrary distribution
functions at runtime.
\begin{verbatim}
unuran rand
rand.set_gen {distr=cont; pdf="x^2"; domain=(0,10)}
\end{verbatim}

\subsection{Problems with the basic random number library}\label{basic RNG problems}

\subsubsection{Basic urand objects are not independent}

Because the basic urand class uses the underlying Unix \verb+rand()+
call, objects of type urand are not independent. Rather, they
effectively refer to the same object. Setting the seed on one object
of this class sets the seed for all objects of that class.

If for example, one wants to perform simulations in parallel, and
compare results with different numbers of threads, then the simplest
way of arranging this is to ensure that each object in the simulation
requiring random numbers gets its own unique stream of random
numbers. This can be done by assigning a different urand object to
each simulation object, and giving them a distinct seed. Then no
matter what the distribution of objects over threads are, the sequence
random numbers will be the same from simulation to simulation,
allowing meaningful comparisons. The UNURAN and GNUSL libraries both
provide independently streamed random numbers.

\subsubsection{Basic urand algorithm not efficient}

Since the basic urand object depends on Unix \verb+rand()+, it is
neither the most efficient algorithm available (the Mersenne Twister
is generally better), nor is it necessarily acceptible in all cases.
All pseudo-random generators have some kind of structure to their
outputs, which may or may not be significant in the simulation. With
the UNURAN library or with GNUSL it is possible to select from a range
of different algorithms at runtime, making it easy to check that the
simulation results do not depend on the type of generator used.

\subsubsection{Basic Gaussrand is correlated}

The graph of $x_t$ versus $x_{t-1}$ shown below says it all. The
correlations of the basic Gaussrand algorithm can well be
unacceptable:

\noindent
\begin{tabular}{cc}
% GNUPLOT: LaTeX picture using PSTRICKS macros
% Define new PST objects, if not already defined
\small
\ifx\PSTloaded\undefined
\def\PSTloaded{t}
\psset{arrowsize=.01 3.2 1.4 .3}
\psset{dotsize=.05}
\catcode`@=11

\newpsobject{PST@Border}{psline}{linewidth=.0015,linestyle=solid}
\newpsobject{PST@Axes}{psline}{linewidth=.0015,linestyle=dotted,dotsep=.004}
\newpsobject{PST@Solid}{psline}{linewidth=.0015,linestyle=solid}
\newpsobject{PST@Dashed}{psline}{linewidth=.0015,linestyle=dashed,dash=.01 .01}
\newpsobject{PST@Dotted}{psline}{linewidth=.0025,linestyle=dotted,dotsep=.008}
\newpsobject{PST@LongDash}{psline}{linewidth=.0015,linestyle=dashed,dash=.02 .01}
\newpsobject{PST@Diamond}{psdots}{linewidth=.01,linestyle=solid,dotstyle=square,dotangle=45}
\newpsobject{PST@Filldiamond}{psdots}{linewidth=.001,linestyle=solid,dotstyle=square*,dotangle=45}
\newpsobject{PST@Cross}{psdots}{linewidth=.001,linestyle=solid,dotstyle=+,dotangle=45}
\newpsobject{PST@Plus}{psdots}{linewidth=.001,linestyle=solid,dotstyle=+}
\newpsobject{PST@Square}{psdots}{linewidth=.001,linestyle=solid,dotstyle=square}
\newpsobject{PST@Circle}{psdots}{linewidth=.001,linestyle=solid,dotstyle=o}
\newpsobject{PST@Triangle}{psdots}{linewidth=.001,linestyle=solid,dotstyle=triangle}
\newpsobject{PST@Pentagon}{psdots}{linewidth=.001,linestyle=solid,dotstyle=pentagon}
\newpsobject{PST@Fillsquare}{psdots}{linewidth=.001,linestyle=solid,dotstyle=square*}
\newpsobject{PST@Fillcircle}{psdots}{linewidth=.001,linestyle=solid,dotstyle=*}
\newpsobject{PST@Filltriangle}{psdots}{linewidth=.001,linestyle=solid,dotstyle=triangle*}
\newpsobject{PST@Fillpentagon}{psdots}{linewidth=.001,linestyle=solid,dotstyle=pentagon*}
\newpsobject{PST@Arrow}{psline}{linewidth=.001,linestyle=solid}
\catcode`@=12

\fi
\psset{unit=5.000000in,xunit=2.4in,yunit=1.5in}
\pspicture(0.05,0)(.9,1)
\ifx\nofigs\undefined
\catcode`@=11

\PST@Border(0.1270,0.1260)
(0.1420,0.1260)

\PST@Border(0.9470,0.1260)
(0.9320,0.1260)

\rput[r](0.1110,0.1260){-4}
\PST@Border(0.1270,0.2313)
(0.1420,0.2313)

\PST@Border(0.9470,0.2313)
(0.9320,0.2313)

\rput[r](0.1110,0.2313){-3}
\PST@Border(0.1270,0.3365)
(0.1420,0.3365)

\PST@Border(0.9470,0.3365)
(0.9320,0.3365)

\rput[r](0.1110,0.3365){-2}
\PST@Border(0.1270,0.4418)
(0.1420,0.4418)

\PST@Border(0.9470,0.4418)
(0.9320,0.4418)

\rput[r](0.1110,0.4418){-1}
\PST@Border(0.1270,0.5470)
(0.1420,0.5470)

\PST@Border(0.9470,0.5470)
(0.9320,0.5470)

\rput[r](0.1110,0.5470){0}
\PST@Border(0.1270,0.6523)
(0.1420,0.6523)

\PST@Border(0.9470,0.6523)
(0.9320,0.6523)

\rput[r](0.1110,0.6523){1}
\PST@Border(0.1270,0.7575)
(0.1420,0.7575)

\PST@Border(0.9470,0.7575)
(0.9320,0.7575)

\rput[r](0.1110,0.7575){2}
\PST@Border(0.1270,0.8628)
(0.1420,0.8628)

\PST@Border(0.9470,0.8628)
(0.9320,0.8628)

\rput[r](0.1110,0.8628){3}
\PST@Border(0.1270,0.9680)
(0.1420,0.9680)

\PST@Border(0.9470,0.9680)
(0.9320,0.9680)

\rput[r](0.1110,0.9680){4}
\PST@Border(0.1270,0.1260)
(0.1270,0.1460)

\PST@Border(0.1270,0.9680)
(0.1270,0.9480)

\rput(0.1270,0.0840){-4}
\PST@Border(0.2295,0.1260)
(0.2295,0.1460)

\PST@Border(0.2295,0.9680)
(0.2295,0.9480)

\rput(0.2295,0.0840){-3}
\PST@Border(0.3320,0.1260)
(0.3320,0.1460)

\PST@Border(0.3320,0.9680)
(0.3320,0.9480)

\rput(0.3320,0.0840){-2}
\PST@Border(0.4345,0.1260)
(0.4345,0.1460)

\PST@Border(0.4345,0.9680)
(0.4345,0.9480)

\rput(0.4345,0.0840){-1}
\PST@Border(0.5370,0.1260)
(0.5370,0.1460)

\PST@Border(0.5370,0.9680)
(0.5370,0.9480)

\rput(0.5370,0.0840){0}
\PST@Border(0.6395,0.1260)
(0.6395,0.1460)

\PST@Border(0.6395,0.9680)
(0.6395,0.9480)

\rput(0.6395,0.0840){1}
\PST@Border(0.7420,0.1260)
(0.7420,0.1460)

\PST@Border(0.7420,0.9680)
(0.7420,0.9480)

\rput(0.7420,0.0840){2}
\PST@Border(0.8445,0.1260)
(0.8445,0.1460)

\PST@Border(0.8445,0.9680)
(0.8445,0.9480)

\rput(0.8445,0.0840){3}
\PST@Border(0.9470,0.1260)
(0.9470,0.1460)

\PST@Border(0.9470,0.9680)
(0.9470,0.9480)

\rput(0.9470,0.0840){4}
\PST@Border(0.1270,0.1260)
(0.9470,0.1260)
(0.9470,0.9680)
(0.1270,0.9680)
(0.1270,0.1260)

\rput{L}(0.0420,0.5470){$x_t$}
\rput(0.5370,0.0210){$x_{t-1}$}
\PST@Diamond(0.5745,0.4118)
\PST@Diamond(0.4053,0.6615)
\PST@Diamond(0.6485,0.5592)
\PST@Diamond(0.5489,0.4815)
\PST@Diamond(0.4732,0.6127)
\PST@Diamond(0.6010,0.7517)
\PST@Diamond(0.7363,0.7254)
\PST@Diamond(0.7107,0.6415)
\PST@Diamond(0.6290,0.7058)
\PST@Diamond(0.6917,0.5463)
\PST@Diamond(0.5363,0.3881)
\PST@Diamond(0.3822,0.5399)
\PST@Diamond(0.5300,0.6057)
\PST@Diamond(0.5941,0.5214)
\PST@Diamond(0.5121,0.5272)
\PST@Diamond(0.5178,0.6182)
\PST@Diamond(0.6063,0.6851)
\PST@Diamond(0.6715,0.6013)
\PST@Diamond(0.5899,0.7161)
\PST@Diamond(0.7017,0.6523)
\PST@Diamond(0.6396,0.5247)
\PST@Diamond(0.5153,0.4638)
\PST@Diamond(0.4559,0.5289)
\PST@Diamond(0.5194,0.5068)
\PST@Diamond(0.4979,0.4022)
\PST@Diamond(0.3960,0.4649)
\PST@Diamond(0.4571,0.5982)
\PST@Diamond(0.5868,0.7201)
\PST@Diamond(0.7056,0.6204)
\PST@Diamond(0.6085,0.4863)
\PST@Diamond(0.4779,0.5213)
\PST@Diamond(0.5120,0.6076)
\PST@Diamond(0.5961,0.5605)
\PST@Diamond(0.5501,0.5723)
\PST@Diamond(0.5616,0.4669)
\PST@Diamond(0.4590,0.4997)
\PST@Diamond(0.4910,0.4877)
\PST@Diamond(0.4792,0.8255)
\PST@Diamond(0.8082,0.5248)
\PST@Diamond(0.5154,0.4807)
\PST@Diamond(0.4724,0.5204)
\PST@Diamond(0.5111,0.6450)
\PST@Diamond(0.6324,0.5314)
\PST@Diamond(0.5218,0.5500)
\PST@Diamond(0.5400,0.5185)
\PST@Diamond(0.5092,0.7074)
\PST@Diamond(0.6932,0.5280)
\PST@Diamond(0.5185,0.6003)
\PST@Diamond(0.5889,0.4850)
\PST@Diamond(0.4767,0.4431)
\PST@Diamond(0.4358,0.6781)
\PST@Diamond(0.6647,0.4989)
\PST@Diamond(0.4902,0.6473)
\PST@Diamond(0.6347,0.3201)
\PST@Diamond(0.3160,0.4905)
\PST@Diamond(0.4820,0.5705)
\PST@Diamond(0.5599,0.5270)
\PST@Diamond(0.5176,0.5230)
\PST@Diamond(0.5136,0.5762)
\PST@Diamond(0.5654,0.5166)
\PST@Diamond(0.5074,0.5581)
\PST@Diamond(0.5479,0.5431)
\PST@Diamond(0.5332,0.5380)
\PST@Diamond(0.5283,0.6593)
\PST@Diamond(0.6463,0.4693)
\PST@Diamond(0.4614,0.3872)
\PST@Diamond(0.3814,0.6129)
\PST@Diamond(0.6012,0.5892)
\PST@Diamond(0.5781,0.5633)
\PST@Diamond(0.5529,0.3669)
\PST@Diamond(0.3616,0.5448)
\PST@Diamond(0.5349,0.7296)
\PST@Diamond(0.7148,0.5591)
\PST@Diamond(0.5488,0.3931)
\PST@Diamond(0.3872,0.6259)
\PST@Diamond(0.6139,0.6825)
\PST@Diamond(0.6690,0.4934)
\PST@Diamond(0.4848,0.5115)
\PST@Diamond(0.5024,0.4323)
\PST@Diamond(0.4253,0.4710)
\PST@Diamond(0.4630,0.6948)
\PST@Diamond(0.6810,0.5335)
\PST@Diamond(0.5238,0.5493)
\PST@Diamond(0.5392,0.4504)
\PST@Diamond(0.4429,0.6799)
\PST@Diamond(0.6664,0.5599)
\PST@Diamond(0.5496,0.5629)
\PST@Diamond(0.5525,0.6160)
\PST@Diamond(0.6042,0.4822)
\PST@Diamond(0.4739,0.3989)
\PST@Diamond(0.3928,0.7364)
\PST@Diamond(0.7215,0.7325)
\PST@Diamond(0.7176,0.3480)
\PST@Diamond(0.3432,0.6214)
\PST@Diamond(0.6095,0.6215)
\PST@Diamond(0.6096,0.5568)
\PST@Diamond(0.5465,0.5119)
\PST@Diamond(0.5028,0.4392)
\PST@Diamond(0.4321,0.5819)
\PST@Diamond(0.5710,0.5766)
\PST@Diamond(0.5658,0.5540)
\PST@Diamond(0.5439,0.6202)
\PST@Diamond(0.6083,0.6611)
\PST@Diamond(0.6481,0.3726)
\PST@Diamond(0.3672,0.6038)
\PST@Diamond(0.5923,0.5199)
\PST@Diamond(0.5106,0.5712)
\PST@Diamond(0.5606,0.5705)
\PST@Diamond(0.5599,0.5180)
\PST@Diamond(0.5087,0.4786)
\PST@Diamond(0.4704,0.5102)
\PST@Diamond(0.5012,0.8293)
\PST@Diamond(0.8120,0.5339)
\PST@Diamond(0.5242,0.5388)
\PST@Diamond(0.5290,0.6217)
\PST@Diamond(0.6097,0.5445)
\PST@Diamond(0.5346,0.5458)
\PST@Diamond(0.5358,0.6775)
\PST@Diamond(0.6641,0.6419)
\PST@Diamond(0.6295,0.4776)
\PST@Diamond(0.4694,0.4853)
\PST@Diamond(0.4769,0.4601)
\PST@Diamond(0.4524,0.5056)
\PST@Diamond(0.4967,0.6560)
\PST@Diamond(0.6432,0.5835)
\PST@Diamond(0.5725,0.5674)
\PST@Diamond(0.5569,0.4174)
\PST@Diamond(0.4108,0.4144)
\PST@Diamond(0.4078,0.4913)
\PST@Diamond(0.4828,0.7161)
\PST@Diamond(0.7016,0.5749)
\PST@Diamond(0.5642,0.4819)
\PST@Diamond(0.4736,0.4397)
\PST@Diamond(0.4325,0.5046)
\PST@Diamond(0.4957,0.4521)
\PST@Diamond(0.4446,0.4879)
\PST@Diamond(0.4794,0.6201)
\PST@Diamond(0.6082,0.6347)
\PST@Diamond(0.6224,0.3946)
\PST@Diamond(0.3886,0.5659)
\PST@Diamond(0.5554,0.4608)
\PST@Diamond(0.4531,0.6771)
\PST@Diamond(0.6637,0.3716)
\PST@Diamond(0.3662,0.5923)
\PST@Diamond(0.5811,0.4547)
\PST@Diamond(0.4471,0.4274)
\PST@Diamond(0.4205,0.5263)
\PST@Diamond(0.5169,0.8054)
\PST@Diamond(0.7886,0.7323)
\PST@Diamond(0.7175,0.4574)
\PST@Diamond(0.4498,0.6089)
\PST@Diamond(0.5972,0.4945)
\PST@Diamond(0.4859,0.5879)
\PST@Diamond(0.5768,0.4460)
\PST@Diamond(0.4387,0.6204)
\PST@Diamond(0.6085,0.5359)
\PST@Diamond(0.5262,0.5718)
\PST@Diamond(0.5611,0.7733)
\PST@Diamond(0.7574,0.4627)
\PST@Diamond(0.4549,0.5869)
\PST@Diamond(0.5759,0.6371)
\PST@Diamond(0.6248,0.4175)
\PST@Diamond(0.4109,0.5817)
\PST@Diamond(0.5708,0.6714)
\PST@Diamond(0.6582,0.5994)
\PST@Diamond(0.5881,0.5108)
\PST@Diamond(0.5017,0.4962)
\PST@Diamond(0.4875,0.5838)
\PST@Diamond(0.5728,0.5038)
\PST@Diamond(0.4949,0.5408)
\PST@Diamond(0.5309,0.4868)
\PST@Diamond(0.4784,0.4554)
\PST@Diamond(0.4478,0.5013)
\PST@Diamond(0.4925,0.6532)
\PST@Diamond(0.6404,0.5570)
\PST@Diamond(0.5467,0.3295)
\PST@Diamond(0.3252,0.6650)
\PST@Diamond(0.6519,0.7255)
\PST@Diamond(0.7108,0.6107)
\PST@Diamond(0.5991,0.4382)
\PST@Diamond(0.4311,0.4538)
\PST@Diamond(0.4463,0.5805)
\PST@Diamond(0.5696,0.5553)
\PST@Diamond(0.5451,0.5776)
\PST@Diamond(0.5668,0.6081)
\PST@Diamond(0.5965,0.5658)
\PST@Diamond(0.5553,0.5173)
\PST@Diamond(0.5081,0.6137)
\PST@Diamond(0.6020,0.5239)
\PST@Diamond(0.5145,0.4684)
\PST@Diamond(0.4604,0.7043)
\PST@Diamond(0.6902,0.6897)
\PST@Diamond(0.6759,0.4976)
\PST@Diamond(0.4889,0.5916)
\PST@Diamond(0.5804,0.4954)
\PST@Diamond(0.4868,0.4256)
\PST@Diamond(0.4188,0.7304)
\PST@Diamond(0.7156,0.5185)
\PST@Diamond(0.5092,0.6377)
\PST@Diamond(0.6254,0.5764)
\PST@Diamond(0.5656,0.6160)
\PST@Diamond(0.6042,0.5310)
\PST@Diamond(0.5214,0.3237)
\PST@Diamond(0.3195,0.5675)
\PST@Diamond(0.5570,0.7216)
\PST@Diamond(0.7071,0.5880)
\PST@Diamond(0.5769,0.4829)
\PST@Diamond(0.4745,0.3240)
\PST@Diamond(0.3199,0.6071)
\PST@Diamond(0.5955,0.6817)
\PST@Diamond(0.6682,0.3970)
\PST@Diamond(0.3909,0.5968)
\PST@Diamond(0.5855,0.5666)
\PST@Diamond(0.5561,0.5576)
\PST@Diamond(0.5473,0.4122)
\PST@Diamond(0.4057,0.5426)
\PST@Diamond(0.5327,0.4859)
\PST@Diamond(0.4775,0.4359)
\PST@Diamond(0.4288,0.6259)
\PST@Diamond(0.6139,0.6508)
\PST@Diamond(0.6381,0.6063)
\PST@Diamond(0.5948,0.5278)
\PST@Diamond(0.5183,0.5445)
\PST@Diamond(0.5346,0.8215)
\PST@Diamond(0.8043,0.4768)
\PST@Diamond(0.4686,0.4961)
\PST@Diamond(0.4874,0.5715)
\PST@Diamond(0.5609,0.7018)
\PST@Diamond(0.6877,0.5740)
\PST@Diamond(0.5633,0.5324)
\PST@Diamond(0.5228,0.7344)
\PST@Diamond(0.7195,0.5972)
\PST@Diamond(0.5859,0.7045)
\PST@Diamond(0.6904,0.5333)
\PST@Diamond(0.5237,0.4332)
\PST@Diamond(0.4261,0.5655)
\PST@Diamond(0.5551,0.4881)
\PST@Diamond(0.4796,0.6816)
\PST@Diamond(0.6681,0.6076)
\PST@Diamond(0.5960,0.4011)
\PST@Diamond(0.3949,0.5545)
\PST@Diamond(0.5443,0.5357)
\PST@Diamond(0.5260,0.8014)
\PST@Diamond(0.7847,0.5170)
\PST@Diamond(0.5078,0.4333)
\PST@Diamond(0.4263,0.5339)
\PST@Diamond(0.5242,0.6040)
\PST@Diamond(0.5925,0.5004)
\PST@Diamond(0.4916,0.3796)
\PST@Diamond(0.3740,0.4583)
\PST@Diamond(0.4506,0.5055)
\PST@Diamond(0.4966,0.5062)
\PST@Diamond(0.4973,0.3705)
\PST@Diamond(0.3651,0.4831)
\PST@Diamond(0.4748,0.4941)
\PST@Diamond(0.4854,0.4094)
\PST@Diamond(0.4030,0.6217)
\PST@Diamond(0.6097,0.6806)
\PST@Diamond(0.6671,0.5823)
\PST@Diamond(0.5714,0.3367)
\PST@Diamond(0.3322,0.6791)
\PST@Diamond(0.6656,0.2996)
\PST@Diamond(0.2961,0.4466)
\PST@Diamond(0.4393,0.5563)
\PST@Diamond(0.5461,0.5741)
\PST@Diamond(0.5634,0.5890)
\PST@Diamond(0.5779,0.8155)
\PST@Diamond(0.7985,0.4954)
\PST@Diamond(0.4868,0.6765)
\PST@Diamond(0.6632,0.6438)
\PST@Diamond(0.6313,0.5475)
\PST@Diamond(0.5375,0.7631)
\PST@Diamond(0.7474,0.5649)
\PST@Diamond(0.5544,0.5902)
\PST@Diamond(0.5791,0.6081)
\PST@Diamond(0.5965,0.5565)
\PST@Diamond(0.5462,0.6757)
\PST@Diamond(0.6623,0.3238)
\PST@Diamond(0.3196,0.3892)
\PST@Diamond(0.3833,0.6817)
\PST@Diamond(0.6681,0.5862)
\PST@Diamond(0.5752,0.4499)
\PST@Diamond(0.4424,0.4817)
\PST@Diamond(0.4734,0.4659)
\PST@Diamond(0.4580,0.5189)
\PST@Diamond(0.5097,0.5508)
\PST@Diamond(0.5407,0.2122)
\PST@Diamond(0.2109,0.5562)
\PST@Diamond(0.5459,0.4308)
\PST@Diamond(0.4238,0.4661)
\PST@Diamond(0.4582,0.5182)
\PST@Diamond(0.5089,0.4564)
\PST@Diamond(0.4488,0.6877)
\PST@Diamond(0.6741,0.3449)
\PST@Diamond(0.3402,0.6409)
\PST@Diamond(0.6284,0.5007)
\PST@Diamond(0.4919,0.5433)
\PST@Diamond(0.5334,0.5447)
\PST@Diamond(0.5348,0.4611)
\PST@Diamond(0.4533,0.4101)
\PST@Diamond(0.4037,0.4192)
\PST@Diamond(0.4126,0.4978)
\PST@Diamond(0.4890,0.3189)
\PST@Diamond(0.3148,0.2713)
\PST@Diamond(0.2685,0.3939)
\PST@Diamond(0.3879,0.5906)
\PST@Diamond(0.5794,0.6672)
\PST@Diamond(0.6541,0.4556)
\PST@Diamond(0.4480,0.6513)
\PST@Diamond(0.6386,0.5744)
\PST@Diamond(0.5636,0.4184)
\PST@Diamond(0.4118,0.5452)
\PST@Diamond(0.5353,0.5149)
\PST@Diamond(0.5057,0.3285)
\PST@Diamond(0.3243,0.6018)
\PST@Diamond(0.5904,0.4284)
\PST@Diamond(0.4215,0.6569)
\PST@Diamond(0.6441,0.6141)
\PST@Diamond(0.6023,0.4702)
\PST@Diamond(0.4622,0.5013)
\PST@Diamond(0.4925,0.5821)
\PST@Diamond(0.5712,0.6420)
\PST@Diamond(0.6295,0.6950)
\PST@Diamond(0.6811,0.4943)
\PST@Diamond(0.4856,0.5835)
\PST@Diamond(0.5725,0.5146)
\PST@Diamond(0.5054,0.5616)
\PST@Diamond(0.5512,0.5527)
\PST@Diamond(0.5426,0.7640)
\PST@Diamond(0.7484,0.3553)
\PST@Diamond(0.3503,0.6978)
\PST@Diamond(0.6839,0.5713)
\PST@Diamond(0.5606,0.5536)
\PST@Diamond(0.5435,0.5711)
\PST@Diamond(0.5605,0.5351)
\PST@Diamond(0.5254,0.7124)
\PST@Diamond(0.6981,0.4039)
\PST@Diamond(0.3977,0.5207)
\PST@Diamond(0.5114,0.4865)
\PST@Diamond(0.4781,0.5861)
\PST@Diamond(0.5751,0.5751)
\PST@Diamond(0.5644,0.4268)
\PST@Diamond(0.4199,0.6700)
\PST@Diamond(0.6568,0.4017)
\PST@Diamond(0.3955,0.6696)
\PST@Diamond(0.6564,0.5535)
\PST@Diamond(0.5433,0.6202)
\PST@Diamond(0.6083,0.4964)
\PST@Diamond(0.4877,0.5295)
\PST@Diamond(0.5200,0.4281)
\PST@Diamond(0.4212,0.5519)
\PST@Diamond(0.5418,0.5483)
\PST@Diamond(0.5383,0.4590)
\PST@Diamond(0.4513,0.2809)
\PST@Diamond(0.2779,0.7219)
\PST@Diamond(0.7073,0.5998)
\PST@Diamond(0.5884,0.5422)
\PST@Diamond(0.5323,0.7821)
\PST@Diamond(0.7659,0.5543)
\PST@Diamond(0.5441,0.5925)
\PST@Diamond(0.5813,0.5605)
\PST@Diamond(0.5502,0.5904)
\PST@Diamond(0.5793,0.6455)
\PST@Diamond(0.6329,0.5254)
\PST@Diamond(0.5160,0.6419)
\PST@Diamond(0.6294,0.5230)
\PST@Diamond(0.5136,0.4383)
\PST@Diamond(0.4312,0.6658)
\PST@Diamond(0.6527,0.6309)
\PST@Diamond(0.6187,0.6180)
\PST@Diamond(0.6061,0.6413)
\PST@Diamond(0.6289,0.4014)
\PST@Diamond(0.3952,0.6495)
\PST@Diamond(0.6368,0.7225)
\PST@Diamond(0.7079,0.3558)
\PST@Diamond(0.3508,0.4454)
\PST@Diamond(0.4380,0.7458)
\PST@Diamond(0.7306,0.5568)
\PST@Diamond(0.5465,0.5951)
\PST@Diamond(0.5839,0.5675)
\PST@Diamond(0.5570,0.4111)
\PST@Diamond(0.4047,0.4851)
\PST@Diamond(0.4767,0.6676)
\PST@Diamond(0.6545,0.5976)
\PST@Diamond(0.5863,0.5361)
\PST@Diamond(0.5264,0.6136)
\PST@Diamond(0.6019,0.4605)
\PST@Diamond(0.4528,0.6779)
\PST@Diamond(0.6644,0.3853)
\PST@Diamond(0.3796,0.4722)
\PST@Diamond(0.4641,0.6695)
\PST@Diamond(0.6563,0.5172)
\PST@Diamond(0.5080,0.5489)
\PST@Diamond(0.5388,0.6156)
\PST@Diamond(0.6038,0.5418)
\PST@Diamond(0.5320,0.4399)
\PST@Diamond(0.4327,0.4581)
\PST@Diamond(0.4504,0.4817)
\PST@Diamond(0.4734,0.6734)
\PST@Diamond(0.6601,0.5630)
\PST@Diamond(0.5525,0.3905)
\PST@Diamond(0.3846,0.5756)
\PST@Diamond(0.5648,0.4607)
\PST@Diamond(0.4530,0.5576)
\PST@Diamond(0.5473,0.5540)
\PST@Diamond(0.5438,0.5588)
\PST@Diamond(0.5485,0.5670)
\PST@Diamond(0.5565,0.5825)
\PST@Diamond(0.5715,0.5336)
\PST@Diamond(0.5240,0.6132)
\PST@Diamond(0.6015,0.3924)
\PST@Diamond(0.3864,0.4996)
\PST@Diamond(0.4908,0.7129)
\PST@Diamond(0.6986,0.5619)
\PST@Diamond(0.5515,0.5227)
\PST@Diamond(0.5134,0.6972)
\PST@Diamond(0.6833,0.4546)
\PST@Diamond(0.4470,0.6004)
\PST@Diamond(0.5890,0.3094)
\PST@Diamond(0.3056,0.4298)
\PST@Diamond(0.4229,0.6164)
\PST@Diamond(0.6046,0.5455)
\PST@Diamond(0.5355,0.6098)
\PST@Diamond(0.5981,0.4601)
\PST@Diamond(0.4523,0.5813)
\PST@Diamond(0.5704,0.6816)
\PST@Diamond(0.6680,0.5708)
\PST@Diamond(0.5602,0.5677)
\PST@Diamond(0.5571,0.4984)
\PST@Diamond(0.4896,0.4983)
\PST@Diamond(0.4895,0.5770)
\PST@Diamond(0.5662,0.5208)
\PST@Diamond(0.5115,0.4859)
\PST@Diamond(0.4775,0.7083)
\PST@Diamond(0.6940,0.5733)
\PST@Diamond(0.5626,0.6142)
\PST@Diamond(0.6025,0.5248)
\PST@Diamond(0.5154,0.5847)
\PST@Diamond(0.5738,0.4641)
\PST@Diamond(0.4563,0.5420)
\PST@Diamond(0.5321,0.5398)
\PST@Diamond(0.5299,0.5269)
\PST@Diamond(0.5174,0.6901)
\PST@Diamond(0.6763,0.5118)
\PST@Diamond(0.5027,0.4365)
\PST@Diamond(0.4293,0.6521)
\PST@Diamond(0.6394,0.5760)
\PST@Diamond(0.5653,0.5651)
\PST@Diamond(0.5546,0.6093)
\PST@Diamond(0.5976,0.4829)
\PST@Diamond(0.4746,0.4031)
\PST@Diamond(0.3968,0.4265)
\PST@Diamond(0.4196,0.4895)
\PST@Diamond(0.4810,0.6824)
\PST@Diamond(0.6689,0.4953)
\PST@Diamond(0.4867,0.5443)
\PST@Diamond(0.5344,0.5297)
\PST@Diamond(0.5202,0.4886)
\PST@Diamond(0.4801,0.4991)
\PST@Diamond(0.4903,0.4403)
\PST@Diamond(0.4331,0.5858)
\PST@Diamond(0.5747,0.5035)
\PST@Diamond(0.4946,0.4540)
\PST@Diamond(0.4465,0.3049)
\PST@Diamond(0.3013,0.6467)
\PST@Diamond(0.6341,0.6475)
\PST@Diamond(0.6349,0.5548)
\PST@Diamond(0.5446,0.3906)
\PST@Diamond(0.3847,0.5305)
\PST@Diamond(0.5210,0.4892)
\PST@Diamond(0.4807,0.5383)
\PST@Diamond(0.5286,0.3530)
\PST@Diamond(0.3481,0.6773)
\PST@Diamond(0.6639,0.7227)
\PST@Diamond(0.7081,0.4359)
\PST@Diamond(0.4289,0.6355)
\PST@Diamond(0.6232,0.6574)
\PST@Diamond(0.6445,0.5709)
\PST@Diamond(0.5603,0.4239)
\PST@Diamond(0.4171,0.4652)
\PST@Diamond(0.4573,0.4045)
\PST@Diamond(0.3982,0.4687)
\PST@Diamond(0.4608,0.4978)
\PST@Diamond(0.4890,0.4970)
\PST@Diamond(0.4884,0.7178)
\PST@Diamond(0.7034,0.5266)
\PST@Diamond(0.5172,0.5107)
\PST@Diamond(0.5016,0.5989)
\PST@Diamond(0.5876,0.5562)
\PST@Diamond(0.5459,0.5365)
\PST@Diamond(0.5267,0.5537)
\PST@Diamond(0.5435,0.5171)
\PST@Diamond(0.5079,0.4368)
\PST@Diamond(0.4297,0.8779)
\PST@Diamond(0.8592,0.6710)
\PST@Diamond(0.6577,0.5859)
\PST@Diamond(0.5749,0.6242)
\PST@Diamond(0.6121,0.5609)
\PST@Diamond(0.5505,0.4778)
\PST@Diamond(0.4696,0.5587)
\PST@Diamond(0.5483,0.7551)
\PST@Diamond(0.7397,0.4544)
\PST@Diamond(0.4468,0.6870)
\PST@Diamond(0.6733,0.4327)
\PST@Diamond(0.4257,0.7019)
\PST@Diamond(0.6879,0.3328)
\PST@Diamond(0.3284,0.4400)
\PST@Diamond(0.4328,0.3106)
\PST@Diamond(0.3068,0.4937)
\PST@Diamond(0.4851,0.6157)
\PST@Diamond(0.6040,0.4543)
\PST@Diamond(0.4467,0.6394)
\PST@Diamond(0.6270,0.4680)
\PST@Diamond(0.4601,0.7245)
\PST@Diamond(0.7099,0.3584)
\catcode`@=12
\fi
\endpspicture
&
% GNUPLOT: LaTeX picture using PSTRICKS macros
% Define new PST objects, if not already defined
\ifx\PSTloaded\undefined
\def\PSTloaded{t}
\psset{arrowsize=.01 3.2 1.4 .3}
\psset{dotsize=.05}
\catcode`@=11

\newpsobject{PST@Border}{psline}{linewidth=.0015,linestyle=solid}
\newpsobject{PST@Axes}{psline}{linewidth=.0015,linestyle=dotted,dotsep=.004}
\newpsobject{PST@Solid}{psline}{linewidth=.0015,linestyle=solid}
\newpsobject{PST@Dashed}{psline}{linewidth=.0015,linestyle=dashed,dash=.01 .01}
\newpsobject{PST@Dotted}{psline}{linewidth=.0025,linestyle=dotted,dotsep=.008}
\newpsobject{PST@LongDash}{psline}{linewidth=.0015,linestyle=dashed,dash=.02 .01}
\newpsobject{PST@Diamond}{psdots}{linewidth=.01,linestyle=solid,dotstyle=square,dotangle=45}
\newpsobject{PST@Filldiamond}{psdots}{linewidth=.001,linestyle=solid,dotstyle=square*,dotangle=45}
\newpsobject{PST@Cross}{psdots}{linewidth=.001,linestyle=solid,dotstyle=+,dotangle=45}
\newpsobject{PST@Plus}{psdots}{linewidth=.001,linestyle=solid,dotstyle=+}
\newpsobject{PST@Square}{psdots}{linewidth=.001,linestyle=solid,dotstyle=square}
\newpsobject{PST@Circle}{psdots}{linewidth=.001,linestyle=solid,dotstyle=o}
\newpsobject{PST@Triangle}{psdots}{linewidth=.001,linestyle=solid,dotstyle=triangle}
\newpsobject{PST@Pentagon}{psdots}{linewidth=.001,linestyle=solid,dotstyle=pentagon}
\newpsobject{PST@Fillsquare}{psdots}{linewidth=.001,linestyle=solid,dotstyle=square*}
\newpsobject{PST@Fillcircle}{psdots}{linewidth=.001,linestyle=solid,dotstyle=*}
\newpsobject{PST@Filltriangle}{psdots}{linewidth=.001,linestyle=solid,dotstyle=triangle*}
\newpsobject{PST@Fillpentagon}{psdots}{linewidth=.001,linestyle=solid,dotstyle=pentagon*}
\newpsobject{PST@Arrow}{psline}{linewidth=.001,linestyle=solid}
\catcode`@=12

\fi
\psset{unit=5.000000in,xunit=2.4in,yunit=1.5in}
\pspicture(0.05,0)(.9,1)
\ifx\nofigs\undefined
\catcode`@=11

\PST@Border(0.1590,0.1260)
(0.1740,0.1260)

\PST@Border(0.9470,0.1260)
(0.9320,0.1260)

\rput[r](0.1430,0.1260){-2}
\PST@Border(0.1590,0.2663)
(0.1740,0.2663)

\PST@Border(0.9470,0.2663)
(0.9320,0.2663)

\rput[r](0.1430,0.2663){-1.5}
\PST@Border(0.1590,0.4067)
(0.1740,0.4067)

\PST@Border(0.9470,0.4067)
(0.9320,0.4067)

\rput[r](0.1430,0.4067){-1}
\PST@Border(0.1590,0.5470)
(0.1740,0.5470)

\PST@Border(0.9470,0.5470)
(0.9320,0.5470)

\rput[r](0.1430,0.5470){-0.5}
\PST@Border(0.1590,0.6873)
(0.1740,0.6873)

\PST@Border(0.9470,0.6873)
(0.9320,0.6873)

\rput[r](0.1430,0.6873){0}
\PST@Border(0.1590,0.8277)
(0.1740,0.8277)

\PST@Border(0.9470,0.8277)
(0.9320,0.8277)

\rput[r](0.1430,0.8277){0.5}
\PST@Border(0.1590,0.9680)
(0.1740,0.9680)

\PST@Border(0.9470,0.9680)
(0.9320,0.9680)

\rput[r](0.1430,0.9680){1}
\PST@Border(0.1590,0.1260)
(0.1590,0.1460)

\PST@Border(0.1590,0.9680)
(0.1590,0.9480)

\rput(0.1590,0.0840){-2}
\PST@Border(0.2903,0.1260)
(0.2903,0.1460)

\PST@Border(0.2903,0.9680)
(0.2903,0.9480)

\rput(0.2903,0.0840){-1.5}
\PST@Border(0.4217,0.1260)
(0.4217,0.1460)

\PST@Border(0.4217,0.9680)
(0.4217,0.9480)

\rput(0.4217,0.0840){-1}
\PST@Border(0.5530,0.1260)
(0.5530,0.1460)

\PST@Border(0.5530,0.9680)
(0.5530,0.9480)

\rput(0.5530,0.0840){-0.5}
\PST@Border(0.6843,0.1260)
(0.6843,0.1460)

\PST@Border(0.6843,0.9680)
(0.6843,0.9480)

\rput(0.6843,0.0840){0}
\PST@Border(0.8157,0.1260)
(0.8157,0.1460)

\PST@Border(0.8157,0.9680)
(0.8157,0.9480)

\rput(0.8157,0.0840){0.5}
\PST@Border(0.9470,0.1260)
(0.9470,0.1460)

\PST@Border(0.9470,0.9680)
(0.9470,0.9480)

\rput(0.9470,0.0840){1}
\PST@Border(0.1590,0.1260)
(0.9470,0.1260)
(0.9470,0.9680)
(0.1590,0.9680)
(0.1590,0.1260)

\rput{L}(0.0420,0.5470){$x_t$}
\rput(0.5530,0.0210){$x_{t-1}$}
\PST@Diamond(0.7442,0.8088)
\PST@Diamond(0.7980,0.7898)
\PST@Diamond(0.7802,0.6203)
\PST@Diamond(0.6216,0.7651)
\PST@Diamond(0.7571,0.6327)
\PST@Diamond(0.6332,0.6678)
\PST@Diamond(0.6661,0.6423)
\PST@Diamond(0.6422,0.4911)
\PST@Diamond(0.5007,0.4447)
\PST@Diamond(0.4572,0.3273)
\PST@Diamond(0.3474,0.2258)
\PST@Diamond(0.2524,0.3725)
\PST@Diamond(0.3897,0.5082)
\PST@Diamond(0.5167,0.6081)
\PST@Diamond(0.6102,0.5020)
\PST@Diamond(0.5109,0.4530)
\PST@Diamond(0.4651,0.3662)
\PST@Diamond(0.3838,0.4598)
\PST@Diamond(0.4714,0.4791)
\PST@Diamond(0.4895,0.5188)
\PST@Diamond(0.5266,0.6225)
\PST@Diamond(0.6237,0.7176)
\PST@Diamond(0.7126,0.6454)
\PST@Diamond(0.6451,0.5925)
\PST@Diamond(0.5955,0.5398)
\PST@Diamond(0.5463,0.4513)
\PST@Diamond(0.4634,0.5232)
\PST@Diamond(0.5308,0.4957)
\PST@Diamond(0.5050,0.5053)
\PST@Diamond(0.5140,0.5182)
\PST@Diamond(0.5260,0.5892)
\PST@Diamond(0.5925,0.5310)
\PST@Diamond(0.5380,0.4603)
\PST@Diamond(0.4719,0.3941)
\PST@Diamond(0.4099,0.4733)
\PST@Diamond(0.4841,0.4356)
\PST@Diamond(0.4488,0.4645)
\PST@Diamond(0.4758,0.4496)
\PST@Diamond(0.4618,0.4174)
\PST@Diamond(0.4317,0.4933)
\PST@Diamond(0.5028,0.4877)
\PST@Diamond(0.4975,0.4685)
\PST@Diamond(0.4796,0.5377)
\PST@Diamond(0.5443,0.5285)
\PST@Diamond(0.5357,0.4914)
\PST@Diamond(0.5010,0.4237)
\PST@Diamond(0.4376,0.4537)
\PST@Diamond(0.4657,0.4313)
\PST@Diamond(0.4447,0.4873)
\PST@Diamond(0.4972,0.4562)
\PST@Diamond(0.4680,0.5238)
\PST@Diamond(0.5313,0.5748)
\PST@Diamond(0.5790,0.5386)
\PST@Diamond(0.5451,0.4907)
\PST@Diamond(0.5003,0.4397)
\PST@Diamond(0.4526,0.4332)
\PST@Diamond(0.4465,0.3890)
\PST@Diamond(0.4051,0.4500)
\PST@Diamond(0.4622,0.4853)
\PST@Diamond(0.4952,0.5083)
\PST@Diamond(0.5168,0.5121)
\PST@Diamond(0.5204,0.5334)
\PST@Diamond(0.5403,0.5734)
\PST@Diamond(0.5777,0.5841)
\PST@Diamond(0.5877,0.6136)
\PST@Diamond(0.6153,0.6477)
\PST@Diamond(0.6473,0.6866)
\PST@Diamond(0.6836,0.6751)
\PST@Diamond(0.6729,0.6367)
\PST@Diamond(0.6369,0.5907)
\PST@Diamond(0.5939,0.5776)
\PST@Diamond(0.5816,0.5915)
\PST@Diamond(0.5947,0.5869)
\PST@Diamond(0.5903,0.5690)
\PST@Diamond(0.5736,0.5186)
\PST@Diamond(0.5264,0.5398)
\PST@Diamond(0.5463,0.5235)
\PST@Diamond(0.5310,0.5503)
\PST@Diamond(0.5560,0.4971)
\PST@Diamond(0.5063,0.4693)
\PST@Diamond(0.4803,0.5234)
\PST@Diamond(0.5310,0.5764)
\PST@Diamond(0.5806,0.5349)
\PST@Diamond(0.5417,0.5053)
\PST@Diamond(0.5140,0.4656)
\PST@Diamond(0.4769,0.4352)
\PST@Diamond(0.4484,0.4516)
\PST@Diamond(0.4637,0.4269)
\PST@Diamond(0.4406,0.3933)
\PST@Diamond(0.4092,0.3856)
\PST@Diamond(0.4020,0.4298)
\PST@Diamond(0.4433,0.4491)
\PST@Diamond(0.4613,0.4073)
\PST@Diamond(0.4223,0.4326)
\PST@Diamond(0.4460,0.4100)
\PST@Diamond(0.4248,0.4421)
\PST@Diamond(0.4549,0.4455)
\PST@Diamond(0.4580,0.4062)
\PST@Diamond(0.4213,0.3797)
\PST@Diamond(0.3964,0.3996)
\PST@Diamond(0.4151,0.3706)
\PST@Diamond(0.3879,0.3810)
\PST@Diamond(0.3977,0.3640)
\PST@Diamond(0.3818,0.3785)
\PST@Diamond(0.3953,0.4203)
\PST@Diamond(0.4345,0.4073)
\PST@Diamond(0.4222,0.3916)
\PST@Diamond(0.4075,0.3715)
\PST@Diamond(0.3888,0.3343)
\PST@Diamond(0.3539,0.3194)
\PST@Diamond(0.3400,0.3212)
\PST@Diamond(0.3417,0.2839)
\PST@Diamond(0.3068,0.2683)
\PST@Diamond(0.2922,0.2795)
\PST@Diamond(0.3027,0.2620)
\PST@Diamond(0.2862,0.2566)
\PST@Diamond(0.2812,0.2853)
\PST@Diamond(0.3081,0.3253)
\PST@Diamond(0.3455,0.3417)
\PST@Diamond(0.3608,0.3836)
\PST@Diamond(0.4001,0.3706)
\PST@Diamond(0.3880,0.3796)
\PST@Diamond(0.3963,0.3927)
\PST@Diamond(0.4086,0.3860)
\PST@Diamond(0.4023,0.3721)
\PST@Diamond(0.3893,0.4073)
\PST@Diamond(0.4223,0.3844)
\PST@Diamond(0.4009,0.4154)
\PST@Diamond(0.4298,0.4573)
\PST@Diamond(0.4690,0.4525)
\PST@Diamond(0.4646,0.4566)
\PST@Diamond(0.4684,0.4291)
\PST@Diamond(0.4426,0.3902)
\PST@Diamond(0.4063,0.4201)
\PST@Diamond(0.4343,0.4461)
\PST@Diamond(0.4586,0.4847)
\PST@Diamond(0.4947,0.4599)
\PST@Diamond(0.4714,0.4292)
\PST@Diamond(0.4428,0.4074)
\PST@Diamond(0.4223,0.3899)
\PST@Diamond(0.4060,0.3860)
\PST@Diamond(0.4024,0.4054)
\PST@Diamond(0.4205,0.3942)
\PST@Diamond(0.4100,0.4152)
\PST@Diamond(0.4297,0.4024)
\PST@Diamond(0.4177,0.4142)
\PST@Diamond(0.4287,0.3886)
\PST@Diamond(0.4048,0.3601)
\PST@Diamond(0.3781,0.3663)
\PST@Diamond(0.3839,0.3940)
\PST@Diamond(0.4098,0.3624)
\PST@Diamond(0.3803,0.3952)
\PST@Diamond(0.4109,0.3901)
\PST@Diamond(0.4062,0.4085)
\PST@Diamond(0.4234,0.3948)
\PST@Diamond(0.4106,0.4151)
\PST@Diamond(0.4296,0.4250)
\PST@Diamond(0.4388,0.4284)
\PST@Diamond(0.4420,0.4367)
\PST@Diamond(0.4498,0.4448)
\PST@Diamond(0.4574,0.4813)
\PST@Diamond(0.4915,0.4541)
\PST@Diamond(0.4661,0.4745)
\PST@Diamond(0.4851,0.5125)
\PST@Diamond(0.5207,0.5491)
\PST@Diamond(0.5550,0.5540)
\PST@Diamond(0.5595,0.5879)
\PST@Diamond(0.5913,0.5635)
\PST@Diamond(0.5685,0.5771)
\PST@Diamond(0.5812,0.5529)
\PST@Diamond(0.5585,0.5492)
\PST@Diamond(0.5551,0.5213)
\PST@Diamond(0.5289,0.5509)
\PST@Diamond(0.5567,0.5729)
\PST@Diamond(0.5772,0.6000)
\PST@Diamond(0.6026,0.5801)
\PST@Diamond(0.5840,0.5752)
\PST@Diamond(0.5794,0.5416)
\PST@Diamond(0.5480,0.5314)
\PST@Diamond(0.5384,0.5675)
\PST@Diamond(0.5722,0.5945)
\PST@Diamond(0.5975,0.5905)
\PST@Diamond(0.5937,0.6192)
\PST@Diamond(0.6206,0.6047)
\PST@Diamond(0.6070,0.5809)
\PST@Diamond(0.5847,0.5605)
\PST@Diamond(0.5657,0.5285)
\PST@Diamond(0.5357,0.5487)
\PST@Diamond(0.5546,0.5663)
\PST@Diamond(0.5710,0.5764)
\PST@Diamond(0.5805,0.5680)
\PST@Diamond(0.5727,0.5831)
\PST@Diamond(0.5868,0.6025)
\PST@Diamond(0.6050,0.5773)
\PST@Diamond(0.5814,0.5919)
\PST@Diamond(0.5950,0.6096)
\PST@Diamond(0.6116,0.6232)
\PST@Diamond(0.6243,0.6339)
\PST@Diamond(0.6343,0.6631)
\PST@Diamond(0.6617,0.6543)
\PST@Diamond(0.6534,0.6765)
\PST@Diamond(0.6742,0.6675)
\PST@Diamond(0.6657,0.6667)
\PST@Diamond(0.6650,0.6815)
\PST@Diamond(0.6789,0.6586)
\PST@Diamond(0.6575,0.6487)
\PST@Diamond(0.6482,0.6787)
\PST@Diamond(0.6762,0.6848)
\PST@Diamond(0.6819,0.6772)
\PST@Diamond(0.6748,0.6636)
\PST@Diamond(0.6621,0.6692)
\PST@Diamond(0.6674,0.6530)
\PST@Diamond(0.6522,0.6689)
\PST@Diamond(0.6670,0.6676)
\PST@Diamond(0.6659,0.6710)
\PST@Diamond(0.6690,0.6975)
\PST@Diamond(0.6938,0.7100)
\PST@Diamond(0.7056,0.7161)
\PST@Diamond(0.7112,0.7278)
\PST@Diamond(0.7222,0.7235)
\PST@Diamond(0.7182,0.7059)
\PST@Diamond(0.7017,0.6770)
\PST@Diamond(0.6747,0.6541)
\PST@Diamond(0.6532,0.6222)
\PST@Diamond(0.6233,0.6023)
\PST@Diamond(0.6048,0.6252)
\PST@Diamond(0.6262,0.6421)
\PST@Diamond(0.6420,0.6669)
\PST@Diamond(0.6652,0.6673)
\PST@Diamond(0.6656,0.6790)
\PST@Diamond(0.6765,0.6634)
\PST@Diamond(0.6620,0.6525)
\PST@Diamond(0.6517,0.6240)
\PST@Diamond(0.6250,0.6395)
\PST@Diamond(0.6396,0.6109)
\PST@Diamond(0.6128,0.5928)
\PST@Diamond(0.5959,0.5676)
\PST@Diamond(0.5723,0.5985)
\PST@Diamond(0.6012,0.6177)
\PST@Diamond(0.6192,0.6167)
\PST@Diamond(0.6183,0.6034)
\PST@Diamond(0.6058,0.5965)
\PST@Diamond(0.5993,0.6116)
\PST@Diamond(0.6134,0.5820)
\PST@Diamond(0.5857,0.6050)
\PST@Diamond(0.6072,0.5921)
\PST@Diamond(0.5952,0.6183)
\PST@Diamond(0.6197,0.6220)
\PST@Diamond(0.6232,0.6456)
\PST@Diamond(0.6453,0.6520)
\PST@Diamond(0.6512,0.6823)
\PST@Diamond(0.6796,0.6587)
\PST@Diamond(0.6575,0.6684)
\PST@Diamond(0.6666,0.6465)
\PST@Diamond(0.6461,0.6235)
\PST@Diamond(0.6246,0.6449)
\PST@Diamond(0.6446,0.6747)
\PST@Diamond(0.6725,0.6977)
\PST@Diamond(0.6941,0.7118)
\PST@Diamond(0.7073,0.7116)
\PST@Diamond(0.7071,0.7153)
\PST@Diamond(0.7105,0.7447)
\PST@Diamond(0.7380,0.7640)
\PST@Diamond(0.7560,0.7706)
\PST@Diamond(0.7622,0.7843)
\PST@Diamond(0.7751,0.8062)
\PST@Diamond(0.7955,0.8252)
\PST@Diamond(0.8134,0.8445)
\PST@Diamond(0.8314,0.8654)
\PST@Diamond(0.8510,0.8726)
\PST@Diamond(0.8577,0.8612)
\PST@Diamond(0.8470,0.8398)
\PST@Diamond(0.8270,0.8109)
\PST@Diamond(0.8000,0.7844)
\PST@Diamond(0.7752,0.7646)
\PST@Diamond(0.7566,0.7866)
\PST@Diamond(0.7773,0.7772)
\PST@Diamond(0.7684,0.7529)
\PST@Diamond(0.7457,0.7492)
\PST@Diamond(0.7422,0.7330)
\PST@Diamond(0.7271,0.7437)
\PST@Diamond(0.7371,0.7397)
\PST@Diamond(0.7333,0.7302)
\PST@Diamond(0.7245,0.7212)
\PST@Diamond(0.7160,0.7253)
\PST@Diamond(0.7199,0.7228)
\PST@Diamond(0.7175,0.7052)
\PST@Diamond(0.7010,0.7089)
\PST@Diamond(0.7045,0.6996)
\PST@Diamond(0.6958,0.7240)
\PST@Diamond(0.7186,0.6990)
\PST@Diamond(0.6952,0.7217)
\PST@Diamond(0.7165,0.7454)
\PST@Diamond(0.7386,0.7671)
\PST@Diamond(0.7590,0.7678)
\PST@Diamond(0.7596,0.7762)
\PST@Diamond(0.7675,0.7905)
\PST@Diamond(0.7808,0.7812)
\PST@Diamond(0.7722,0.7800)
\PST@Diamond(0.7711,0.7862)
\PST@Diamond(0.7769,0.8121)
\PST@Diamond(0.8011,0.8283)
\PST@Diamond(0.8163,0.8424)
\PST@Diamond(0.8295,0.8688)
\PST@Diamond(0.8541,0.8877)
\PST@Diamond(0.8719,0.9107)
\PST@Diamond(0.8933,0.9302)
\PST@Diamond(0.9116,0.9125)
\PST@Diamond(0.8950,0.8848)
\PST@Diamond(0.8691,0.8733)
\PST@Diamond(0.8584,0.8680)
\PST@Diamond(0.8534,0.8782)
\PST@Diamond(0.8630,0.8905)
\PST@Diamond(0.8745,0.9038)
\PST@Diamond(0.8869,0.8780)
\PST@Diamond(0.8627,0.8669)
\PST@Diamond(0.8524,0.8505)
\PST@Diamond(0.8371,0.8355)
\PST@Diamond(0.8230,0.8553)
\PST@Diamond(0.8415,0.8573)
\PST@Diamond(0.8434,0.8384)
\PST@Diamond(0.8257,0.8614)
\PST@Diamond(0.8473,0.8582)
\PST@Diamond(0.8442,0.8349)
\PST@Diamond(0.8225,0.8517)
\PST@Diamond(0.8382,0.8761)
\PST@Diamond(0.8610,0.8879)
\PST@Diamond(0.8721,0.8915)
\PST@Diamond(0.8754,0.8802)
\PST@Diamond(0.8649,0.8643)
\PST@Diamond(0.8500,0.8473)
\PST@Diamond(0.8340,0.8343)
\PST@Diamond(0.8219,0.8076)
\PST@Diamond(0.7969,0.8309)
\PST@Diamond(0.8187,0.8169)
\PST@Diamond(0.8056,0.8352)
\PST@Diamond(0.8227,0.8540)
\PST@Diamond(0.8404,0.8326)
\PST@Diamond(0.8203,0.8079)
\PST@Diamond(0.7972,0.8270)
\PST@Diamond(0.8150,0.8213)
\PST@Diamond(0.8097,0.8183)
\PST@Diamond(0.8069,0.8210)
\PST@Diamond(0.8094,0.8013)
\PST@Diamond(0.7910,0.7850)
\PST@Diamond(0.7758,0.7896)
\PST@Diamond(0.7801,0.7858)
\PST@Diamond(0.7765,0.7803)
\PST@Diamond(0.7714,0.7968)
\PST@Diamond(0.7867,0.7861)
\PST@Diamond(0.7768,0.8088)
\PST@Diamond(0.7980,0.8332)
\PST@Diamond(0.8209,0.8189)
\PST@Diamond(0.8075,0.8128)
\PST@Diamond(0.8018,0.7894)
\PST@Diamond(0.7798,0.7657)
\PST@Diamond(0.7577,0.7576)
\PST@Diamond(0.7501,0.7716)
\PST@Diamond(0.7632,0.7773)
\PST@Diamond(0.7685,0.7843)
\PST@Diamond(0.7751,0.8089)
\PST@Diamond(0.7981,0.8240)
\PST@Diamond(0.8122,0.8442)
\PST@Diamond(0.8312,0.8687)
\PST@Diamond(0.8541,0.8807)
\PST@Diamond(0.8653,0.8622)
\PST@Diamond(0.8480,0.8789)
\PST@Diamond(0.8636,0.8838)
\PST@Diamond(0.8682,0.8704)
\PST@Diamond(0.8556,0.8888)
\PST@Diamond(0.8729,0.8869)
\PST@Diamond(0.8711,0.8935)
\PST@Diamond(0.8772,0.8839)
\PST@Diamond(0.8683,0.8597)
\PST@Diamond(0.8456,0.8726)
\PST@Diamond(0.8577,0.8727)
\PST@Diamond(0.8579,0.8782)
\PST@Diamond(0.8630,0.8626)
\PST@Diamond(0.8483,0.8826)
\PST@Diamond(0.8670,0.8790)
\PST@Diamond(0.8637,0.8782)
\PST@Diamond(0.8630,0.8952)
\PST@Diamond(0.8788,0.8903)
\PST@Diamond(0.8743,0.9008)
\PST@Diamond(0.8841,0.8872)
\PST@Diamond(0.8714,0.8848)
\PST@Diamond(0.8692,0.8974)
\PST@Diamond(0.8809,0.9008)
\PST@Diamond(0.8841,0.8873)
\PST@Diamond(0.8715,0.8809)
\PST@Diamond(0.8654,0.8666)
\PST@Diamond(0.8521,0.8523)
\PST@Diamond(0.8387,0.8362)
\PST@Diamond(0.8236,0.8172)
\PST@Diamond(0.8058,0.8023)
\PST@Diamond(0.7919,0.8224)
\PST@Diamond(0.8108,0.8104)
\PST@Diamond(0.7995,0.7875)
\PST@Diamond(0.7780,0.7882)
\PST@Diamond(0.7788,0.7879)
\PST@Diamond(0.7784,0.8072)
\PST@Diamond(0.7965,0.8306)
\PST@Diamond(0.8185,0.8126)
\PST@Diamond(0.8016,0.7987)
\PST@Diamond(0.7886,0.7750)
\PST@Diamond(0.7664,0.7938)
\PST@Diamond(0.7840,0.8045)
\PST@Diamond(0.7939,0.8103)
\PST@Diamond(0.7994,0.7902)
\PST@Diamond(0.7806,0.7963)
\PST@Diamond(0.7863,0.7750)
\PST@Diamond(0.7664,0.7784)
\PST@Diamond(0.7696,0.7772)
\PST@Diamond(0.7684,0.7754)
\PST@Diamond(0.7668,0.7653)
\PST@Diamond(0.7573,0.7751)
\PST@Diamond(0.7665,0.7951)
\PST@Diamond(0.7852,0.7736)
\PST@Diamond(0.7651,0.7632)
\PST@Diamond(0.7553,0.7467)
\PST@Diamond(0.7399,0.7430)
\PST@Diamond(0.7365,0.7428)
\PST@Diamond(0.7362,0.7365)
\PST@Diamond(0.7304,0.7411)
\PST@Diamond(0.7346,0.7463)
\PST@Diamond(0.7395,0.7494)
\PST@Diamond(0.7424,0.7500)
\PST@Diamond(0.7430,0.7672)
\PST@Diamond(0.7591,0.7717)
\PST@Diamond(0.7633,0.7498)
\PST@Diamond(0.7428,0.7433)
\PST@Diamond(0.7367,0.7433)
\PST@Diamond(0.7367,0.7208)
\PST@Diamond(0.7156,0.7204)
\PST@Diamond(0.7153,0.7305)
\PST@Diamond(0.7247,0.7086)
\PST@Diamond(0.7043,0.7033)
\PST@Diamond(0.6993,0.7006)
\PST@Diamond(0.6967,0.7078)
\PST@Diamond(0.7035,0.7064)
\PST@Diamond(0.7022,0.6865)
\PST@Diamond(0.6835,0.6964)
\PST@Diamond(0.6928,0.6754)
\PST@Diamond(0.6731,0.6775)
\PST@Diamond(0.6751,0.6628)
\PST@Diamond(0.6613,0.6552)
\PST@Diamond(0.6543,0.6439)
\PST@Diamond(0.6437,0.6257)
\PST@Diamond(0.6267,0.6205)
\PST@Diamond(0.6218,0.6222)
\PST@Diamond(0.6234,0.6112)
\PST@Diamond(0.6131,0.6254)
\PST@Diamond(0.6263,0.6041)
\PST@Diamond(0.6064,0.6099)
\PST@Diamond(0.6118,0.6057)
\PST@Diamond(0.6080,0.6123)
\PST@Diamond(0.6142,0.5985)
\PST@Diamond(0.6012,0.6177)
\PST@Diamond(0.6192,0.6183)
\PST@Diamond(0.6197,0.6316)
\PST@Diamond(0.6321,0.6522)
\PST@Diamond(0.6514,0.6691)
\PST@Diamond(0.6673,0.6598)
\PST@Diamond(0.6586,0.6812)
\PST@Diamond(0.6786,0.6753)
\PST@Diamond(0.6730,0.6532)
\PST@Diamond(0.6524,0.6310)
\PST@Diamond(0.6316,0.6425)
\PST@Diamond(0.6423,0.6403)
\PST@Diamond(0.6403,0.6475)
\PST@Diamond(0.6471,0.6353)
\PST@Diamond(0.6356,0.6362)
\PST@Diamond(0.6365,0.6307)
\PST@Diamond(0.6314,0.6205)
\PST@Diamond(0.6218,0.6012)
\PST@Diamond(0.6037,0.6038)
\PST@Diamond(0.6061,0.6085)
\PST@Diamond(0.6106,0.6005)
\PST@Diamond(0.6031,0.6077)
\PST@Diamond(0.6098,0.6294)
\PST@Diamond(0.6301,0.6452)
\PST@Diamond(0.6449,0.6636)
\PST@Diamond(0.6621,0.6768)
\PST@Diamond(0.6745,0.6938)
\PST@Diamond(0.6904,0.6957)
\PST@Diamond(0.6921,0.6827)
\PST@Diamond(0.6800,0.6839)
\PST@Diamond(0.6812,0.6942)
\PST@Diamond(0.6908,0.6778)
\PST@Diamond(0.6754,0.6577)
\PST@Diamond(0.6566,0.6588)
\PST@Diamond(0.6577,0.6405)
\PST@Diamond(0.6405,0.6587)
\PST@Diamond(0.6576,0.6727)
\PST@Diamond(0.6706,0.6533)
\PST@Diamond(0.6525,0.6438)
\PST@Diamond(0.6436,0.6581)
\PST@Diamond(0.6570,0.6391)
\PST@Diamond(0.6392,0.6190)
\PST@Diamond(0.6203,0.6094)
\PST@Diamond(0.6114,0.6191)
\PST@Diamond(0.6205,0.6088)
\PST@Diamond(0.6108,0.6218)
\PST@Diamond(0.6230,0.6044)
\PST@Diamond(0.6068,0.6058)
\PST@Diamond(0.6081,0.6217)
\PST@Diamond(0.6229,0.6283)
\PST@Diamond(0.6291,0.6126)
\PST@Diamond(0.6144,0.5991)
\PST@Diamond(0.6017,0.5911)
\PST@Diamond(0.5942,0.5750)
\PST@Diamond(0.5792,0.5552)
\PST@Diamond(0.5607,0.5437)
\PST@Diamond(0.5499,0.5618)
\PST@Diamond(0.5669,0.5801)
\PST@Diamond(0.5840,0.5917)
\PST@Diamond(0.5948,0.5758)
\PST@Diamond(0.5800,0.5739)
\PST@Diamond(0.5781,0.5742)
\PST@Diamond(0.5784,0.5637)
\PST@Diamond(0.5686,0.5635)
\PST@Diamond(0.5684,0.5436)
\PST@Diamond(0.5498,0.5367)
\PST@Diamond(0.5434,0.5329)
\PST@Diamond(0.5398,0.5478)
\PST@Diamond(0.5537,0.5432)
\PST@Diamond(0.5495,0.5514)
\PST@Diamond(0.5571,0.5589)
\PST@Diamond(0.5642,0.5570)
\PST@Diamond(0.5623,0.5666)
\PST@Diamond(0.5714,0.5859)
\PST@Diamond(0.5894,0.5722)
\PST@Diamond(0.5765,0.5928)
\PST@Diamond(0.5958,0.6035)
\PST@Diamond(0.6058,0.5938)
\PST@Diamond(0.5968,0.5947)
\PST@Diamond(0.5976,0.5997)
\PST@Diamond(0.6023,0.6174)
\PST@Diamond(0.6189,0.6238)
\PST@Diamond(0.6249,0.6365)
\PST@Diamond(0.6368,0.6254)
\PST@Diamond(0.6264,0.6369)
\PST@Diamond(0.6371,0.6511)
\PST@Diamond(0.6504,0.6495)
\PST@Diamond(0.6489,0.6576)
\PST@Diamond(0.6565,0.6686)
\PST@Diamond(0.6668,0.6574)
\PST@Diamond(0.6563,0.6707)
\PST@Diamond(0.6688,0.6589)
\PST@Diamond(0.6578,0.6687)
\PST@Diamond(0.6669,0.6510)
\PST@Diamond(0.6503,0.6596)
\PST@Diamond(0.6584,0.6706)
\PST@Diamond(0.6686,0.6667)
\PST@Diamond(0.6650,0.6508)
\PST@Diamond(0.6502,0.6555)
\PST@Diamond(0.6545,0.6677)
\PST@Diamond(0.6659,0.6802)
\PST@Diamond(0.6776,0.6715)
\PST@Diamond(0.6695,0.6611)
\PST@Diamond(0.6598,0.6623)
\PST@Diamond(0.6609,0.6517)
\PST@Diamond(0.6510,0.6484)
\PST@Diamond(0.6479,0.6492)
\PST@Diamond(0.6486,0.6694)
\PST@Diamond(0.6675,0.6770)
\PST@Diamond(0.6747,0.6581)
\PST@Diamond(0.6569,0.6626)
\PST@Diamond(0.6612,0.6671)
\PST@Diamond(0.6654,0.6747)
\PST@Diamond(0.6725,0.6712)
\PST@Diamond(0.6692,0.6851)
\PST@Diamond(0.6822,0.6835)
\PST@Diamond(0.6807,0.6734)
\PST@Diamond(0.6713,0.6655)
\PST@Diamond(0.6639,0.6515)
\PST@Diamond(0.6508,0.6320)
\PST@Diamond(0.6325,0.6334)
\PST@Diamond(0.6338,0.6526)
\PST@Diamond(0.6518,0.6418)
\PST@Diamond(0.6417,0.6325)
\PST@Diamond(0.6330,0.6143)
\PST@Diamond(0.6160,0.6320)
\PST@Diamond(0.6325,0.6132)
\PST@Diamond(0.6150,0.6115)
\PST@Diamond(0.6133,0.5935)
\PST@Diamond(0.5966,0.5994)
\PST@Diamond(0.6021,0.5895)
\PST@Diamond(0.5928,0.6038)
\PST@Diamond(0.6062,0.6212)
\PST@Diamond(0.6224,0.6211)
\PST@Diamond(0.6223,0.6166)
\PST@Diamond(0.6181,0.6036)
\PST@Diamond(0.6060,0.6202)
\PST@Diamond(0.6215,0.6363)
\PST@Diamond(0.6366,0.6231)
\PST@Diamond(0.6242,0.6273)
\PST@Diamond(0.6281,0.6447)
\PST@Diamond(0.6444,0.6558)
\PST@Diamond(0.6548,0.6444)
\PST@Diamond(0.6441,0.6493)
\PST@Diamond(0.6487,0.6371)
\PST@Diamond(0.6373,0.6195)
\PST@Diamond(0.6209,0.6031)
\PST@Diamond(0.6055,0.6010)
\PST@Diamond(0.6035,0.5954)
\PST@Diamond(0.5983,0.5851)
\PST@Diamond(0.5887,0.5837)
\PST@Diamond(0.5873,0.5991)
\PST@Diamond(0.6018,0.5879)
\PST@Diamond(0.5913,0.5955)
\PST@Diamond(0.5984,0.5821)
\PST@Diamond(0.5859,0.5729)
\PST@Diamond(0.5772,0.5780)
\PST@Diamond(0.5820,0.5660)
\PST@Diamond(0.5708,0.5745)
\PST@Diamond(0.5788,0.5817)
\PST@Diamond(0.5855,0.5949)
\PST@Diamond(0.5978,0.6132)
\PST@Diamond(0.6149,0.6147)
\PST@Diamond(0.6163,0.6251)
\PST@Diamond(0.6261,0.6238)
\PST@Diamond(0.6248,0.6402)
\PST@Diamond(0.6403,0.6574)
\PST@Diamond(0.6563,0.6527)
\PST@Diamond(0.6519,0.6653)
\PST@Diamond(0.6637,0.6501)
\PST@Diamond(0.6495,0.6688)
\PST@Diamond(0.6670,0.6790)
\PST@Diamond(0.6765,0.6940)
\PST@Diamond(0.6905,0.6821)
\PST@Diamond(0.6794,0.6776)
\PST@Diamond(0.6752,0.6614)
\PST@Diamond(0.6600,0.6516)
\PST@Diamond(0.6509,0.6503)
\PST@Diamond(0.6497,0.6513)
\PST@Diamond(0.6506,0.6553)
\PST@Diamond(0.6544,0.6632)
\PST@Diamond(0.6617,0.6819)
\PST@Diamond(0.6793,0.6816)
\PST@Diamond(0.6790,0.6977)
\PST@Diamond(0.6940,0.7045)
\PST@Diamond(0.7004,0.7102)
\PST@Diamond(0.7057,0.6979)
\PST@Diamond(0.6942,0.6905)
\PST@Diamond(0.6873,0.7035)
\PST@Diamond(0.6995,0.7186)
\PST@Diamond(0.7136,0.7373)
\PST@Diamond(0.7311,0.7439)
\PST@Diamond(0.7372,0.7576)
\PST@Diamond(0.7501,0.7585)
\PST@Diamond(0.7510,0.7562)
\PST@Diamond(0.7488,0.7496)
\PST@Diamond(0.7426,0.7475)
\PST@Diamond(0.7407,0.7430)
\PST@Diamond(0.7364,0.7507)
\PST@Diamond(0.7436,0.7420)
\PST@Diamond(0.7355,0.7416)
\PST@Diamond(0.7351,0.7485)
\PST@Diamond(0.7416,0.7308)
\PST@Diamond(0.7251,0.7261)
\PST@Diamond(0.7207,0.7404)
\PST@Diamond(0.7340,0.7372)
\PST@Diamond(0.7310,0.7356)
\PST@Diamond(0.7295,0.7214)
\PST@Diamond(0.7162,0.7358)
\PST@Diamond(0.7297,0.7539)
\PST@Diamond(0.7466,0.7624)
\PST@Diamond(0.7546,0.7656)
\PST@Diamond(0.7576,0.7831)
\PST@Diamond(0.7740,0.7726)
\PST@Diamond(0.7641,0.7727)
\PST@Diamond(0.7642,0.7781)
\PST@Diamond(0.7693,0.7919)
\PST@Diamond(0.7822,0.7987)
\PST@Diamond(0.7886,0.8156)
\PST@Diamond(0.8044,0.8233)
\PST@Diamond(0.8116,0.8262)
\PST@Diamond(0.8143,0.8426)
\PST@Diamond(0.8297,0.8382)
\PST@Diamond(0.8255,0.8359)
\PST@Diamond(0.8234,0.8346)
\PST@Diamond(0.8222,0.8466)
\PST@Diamond(0.8334,0.8565)
\PST@Diamond(0.8426,0.8718)
\PST@Diamond(0.8569,0.8607)
\PST@Diamond(0.8466,0.8596)
\PST@Diamond(0.8456,0.8479)
\PST@Diamond(0.8346,0.8550)
\PST@Diamond(0.8413,0.8423)
\PST@Diamond(0.8293,0.8319)
\PST@Diamond(0.8196,0.8160)
\PST@Diamond(0.8047,0.7988)
\PST@Diamond(0.7886,0.8038)
\PST@Diamond(0.7933,0.8048)
\PST@Diamond(0.7942,0.7922)
\PST@Diamond(0.7825,0.7929)
\PST@Diamond(0.7832,0.7932)
\PST@Diamond(0.7834,0.8075)
\PST@Diamond(0.7968,0.7930)
\PST@Diamond(0.7833,0.7922)
\PST@Diamond(0.7824,0.7778)
\PST@Diamond(0.7690,0.7819)
\PST@Diamond(0.7728,0.7681)
\PST@Diamond(0.7599,0.7856)
\PST@Diamond(0.7763,0.7782)
\PST@Diamond(0.7693,0.7627)
\PST@Diamond(0.7549,0.7696)
\PST@Diamond(0.7613,0.7833)
\PST@Diamond(0.7742,0.7658)
\PST@Diamond(0.7578,0.7502)
\PST@Diamond(0.7432,0.7437)
\PST@Diamond(0.7371,0.7433)
\PST@Diamond(0.7367,0.7577)
\PST@Diamond(0.7502,0.7427)
\PST@Diamond(0.7362,0.7393)
\PST@Diamond(0.7329,0.7249)
\PST@Diamond(0.7195,0.7271)
\PST@Diamond(0.7215,0.7305)
\PST@Diamond(0.7247,0.7413)
\PST@Diamond(0.7348,0.7492)
\PST@Diamond(0.7423,0.7606)
\PST@Diamond(0.7529,0.7740)
\PST@Diamond(0.7654,0.7832)
\PST@Diamond(0.7740,0.7814)
\PST@Diamond(0.7724,0.7778)
\PST@Diamond(0.7690,0.7928)
\PST@Diamond(0.7830,0.8098)
\PST@Diamond(0.7990,0.8245)
\PST@Diamond(0.8127,0.8355)
\PST@Diamond(0.8230,0.8204)
\PST@Diamond(0.8089,0.8164)
\PST@Diamond(0.8051,0.8314)
\PST@Diamond(0.8191,0.8383)
\PST@Diamond(0.8256,0.8387)
\PST@Diamond(0.8260,0.8529)
\PST@Diamond(0.8393,0.8705)
\PST@Diamond(0.8558,0.8737)
\PST@Diamond(0.8588,0.8768)
\PST@Diamond(0.8616,0.8900)
\PST@Diamond(0.8740,0.8940)
\PST@Diamond(0.8777,0.8996)
\PST@Diamond(0.8830,0.8886)
\PST@Diamond(0.8727,0.8744)
\PST@Diamond(0.8594,0.8764)
\PST@Diamond(0.8613,0.8686)
\PST@Diamond(0.8540,0.8689)
\PST@Diamond(0.8542,0.8745)
\PST@Diamond(0.8595,0.8867)
\PST@Diamond(0.8709,0.8726)
\PST@Diamond(0.8577,0.8711)
\PST@Diamond(0.8563,0.8734)
\PST@Diamond(0.8585,0.8881)
\PST@Diamond(0.8723,0.8822)
\PST@Diamond(0.8667,0.8758)
\PST@Diamond(0.8607,0.8712)
\PST@Diamond(0.8564,0.8794)
\PST@Diamond(0.8641,0.8702)
\PST@Diamond(0.8555,0.8647)
\PST@Diamond(0.8503,0.8697)
\PST@Diamond(0.8550,0.8538)
\PST@Diamond(0.8402,0.8512)
\PST@Diamond(0.8377,0.8348)
\PST@Diamond(0.8223,0.8513)
\PST@Diamond(0.8378,0.8381)
\PST@Diamond(0.8254,0.8397)
\PST@Diamond(0.8269,0.8527)
\PST@Diamond(0.8391,0.8393)
\PST@Diamond(0.8265,0.8267)
\PST@Diamond(0.8147,0.8252)
\PST@Diamond(0.8134,0.8424)
\PST@Diamond(0.8295,0.8514)
\PST@Diamond(0.8378,0.8381)
\PST@Diamond(0.8254,0.8271)
\PST@Diamond(0.8151,0.8397)
\PST@Diamond(0.8269,0.8460)
\PST@Diamond(0.8328,0.8449)
\PST@Diamond(0.8318,0.8405)
\PST@Diamond(0.8277,0.8350)
\PST@Diamond(0.8226,0.8286)
\PST@Diamond(0.8166,0.8279)
\PST@Diamond(0.8159,0.8385)
\PST@Diamond(0.8258,0.8518)
\PST@Diamond(0.8383,0.8483)
\PST@Diamond(0.8350,0.8358)
\catcode`@=12
\fi
\endpspicture

\\
UNURAN Gaussian method &
Basic Gaussian method \\
\end{tabular}