\documentclass[../ising_model.tex]{subfiles}

\begin{document}
\section{Results}\label{sec:results}

% 2.1-2-4 divided into 40 steps, which gives us a step size of 0.0075.

% 10 MPI processes
% - 10 threads per process
% = 100 threads total
% Not a lot of downtime for the threads

However, when the temperature is close to the critical point, we observe an increase 
in expected energy and a decrease in magnetization. Suggesting a higher energy and 
a loss of magnetization close to the critical temperature.

% We did not set the seed for the random number generator, which resulted in 
% different numerical estimates each time we ran the model. However, all expectation 
% values are calculated using the same data. The burn-in time varied each time. 
% We see a burn-in time t = 5000-10000 MC cycles. However, this changed between runs. 
We decided with a burn-in time parallelization trade-off. That is, we set the 
burn-in time lower in favor of sampling. To take advantage of the parallelization 
and not to waste computational resources. The argument to discard samples generated 
during the burn-in time is ... Increasing number of samples outweigh the ...
parallelize using MPI. We generated 
samples for the temperature range $T \in [2.1, 2.4]$. Using Fox we generated both 
1 million samples and 10 million samples.

It is worth mentioning that the time (number of MC cycles) necessary to get a 
good numerical estimate, compared to the analytical result, foreshadowing the 
burn-in time.

Markov chain starting point can differ, resulting in different simulation. By 
discarding the first samples, the ones generated before system equilibrium we can 
get an estimate closer to the real solution. Since we want to estimate expectation 
values at a given temperature, the samples should represent the system at that 
temperature.

Depending on number of samples used in numerical estimates, using the samples 
generated during burn-in can in high bias and high variance if the ratio is skewed. 
However, if most samples are generated after burn-in the effect is not as visible. 
Can't remove randomness by starting around equilibrium, since samples are generated 
using several ising models we need to sample using the same conditions that is 
system state equilibrium.

\subsection{Burn-in time}\label{subsec:burnin_time}
$\boldsymbol{Draft}$
We start with a lattice where $L = 20$, to study the burn-in time, that is the 
number of Monte Carlo cycles necessary for the system to reach an equilibrium. 
We consider two different temperatures $T_{1} = 1.0 J/k_{B}$ and $T_{2} = 2.4 J/k_{B}$, 
where $T_{2}$ is close to the critical temperature. We can use the correlation 
time $\tau \approx L^{d + z}$ to determine time, where $d$ is the dimensionality 
of the system and $z = 2.1665 \pm 0.0012$ \footnote{This value was determined by 
Nightingale and Blöte for the Metropolis algorithm.}
% Need to include a section of Onsager's analytical result.
We show the numerical estimates for temperature $T_{1}$ of $\langle \epsilon \rangle$ 
in Figure \ref{fig:burn_in_energy_1_0} and $\langle |m| \rangle$ in Figure 
\ref{fig:burn_in_magnetization_1_0}. For temperature $T_{2}$, the numercal estimate 
of $\langle \epsilon \rangle$ is shown in Figure \ref{fig:burn_in_energy_2_4} and 
$\langle |m| \rangle$ in Figure \ref{fig:burn_in_magnetization_2_4}. The lattice 
is initialized in both an ordered and an unordered state. We observe that for 
$T_{1}$ there is no change in either expectation value with increasing number of 
Monte Carlo cycles, when we start with an ordered state. As for the unordered 
lattice, we observe a change for the first 5000 MC cycles, where it stabilizes. 
The approximated expected energy is $-2$ and expected magnetization is $1.0$, 
which is to be expected for temperature 0f $1.0$. T is below the critical and the 
pdf using $T = 1.0$ result in
\begin{align*}
    p(s|T=1.0) &= \frac{1}{e^{-\beta \sum E(s)}} e^{-\beta E(s)} \\
    &= \frac{1}{e^{-(1/k_{B}) \sum E(s)}} e^{-(1/k_{B}) E(s)} \ .
\end{align*}
% Burn-in figures
\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/burn_in_time_magnetization_1_0.pdf}
    \caption{$\langle |m| \rangle$ as a function of time, for $T = 1.0 J / k_{B}$}
    \label{fig:burn_in_magnetization_1_0}
\end{figure}
\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/burn_in_time_energy_1_0.pdf}
    \caption{$\langle \epsilon \rangle$ as a function of time, for $T = 1.0 J / k_{B}$}
    \label{fig:burn_in_energy_1_0}
\end{figure}
\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/burn_in_time_magnetization_2_4.pdf}
    \caption{$\langle |m| \rangle$ as a function of time, for $T = 2.4 J / k_{B}$}
    \label{fig:burn_in_magnetization_2_4}
\end{figure}
\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/burn_in_time_energy_2_4.pdf}
    \caption{$\langle \epsilon \rangle$ as a function of time, for $T = 2.4 J / k_{B}$}
    \label{fig:burn_in_energy_2_4}
\end{figure}


\subsection{Probability distribution}\label{subsec:probability_distribution}
$\boldsymbol{Draft}$
% Histogram figures
We use the estimated burn-in time to set starting time for sampling, then generate 
samples to plot in a histogram for $T_{1}$ in Figure \ref{fig:histogram_1_0} and 
$T_{2}$ in Figure \ref{fig:histogram_2_4}. For $T_{1}$ we can see that most samples 
have the expected value $-2$, we have a distribution with low variance.
\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/pd_estimate_1_0.pdf}
    \caption{Histogram $T = 1.0 J / k_{B}$}
    \label{fig:histogram_1_0}
\end{figure}
\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/pd_estimate_2_4.pdf}
    \caption{Histogram $T = 2.4 J / k_{B}$}
    \label{fig:histogram_2_4}
\end{figure}


\subsection{Phase transition}\label{subsec:phase_transition}
$\boldsymbol{Draft}$
% Phase transition figures
\begin{figure}
    \centering
    \includegraphics[width=\linewidth]{../images/phase_transition/fox/wide/1M/energy.pdf}
    \caption{$\langle \epsilon \rangle$ for $T \in [2.1, 2.4]$, 1000000 MC cycles.}
    \label{fig:phase_energy}
\end{figure}

\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/phase_transition/fox/wide/1M/magnetization.pdf}
    \caption{$\langle |m| \rangle$ for $T \in [2.1, 2.4]$, 1000000 MC cycles.}
    \label{fig:phase_magnetization}
\end{figure}

\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/phase_transition/fox/wide/1M/heat_capacity.pdf}
    \caption{$C_{V}$ for $T \in [2.1, 2.4]$, 1000000 MC cycles.}
    \label{fig:phase_heat}
\end{figure}

\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/phase_transition/fox/wide/1M/susceptibility.pdf}
    \caption{$\chi$ for $T \in [2.1, 2.4]$, 1000000 MC cycles.}
    \label{fig:phase_susceptibility}
\end{figure}
We include results for 10 million MC cycles in Appendix \ref{sec:extra_results}


\subsection{Critical temperature}\label{subsec:critical_temperature}
$\boldsymbol{Draft}$
We use the critical temperatures found in previous section, in addition to the 
scaling relation in Equation \eqref{eq:critical_intinite}
\begin{equation}
    T_{c} - T_{c}(L = \infty) = \alpha L^{-1}
    \label{eq:critical_intinite}
\end{equation}
to estimate the critical temperature for a lattize of infinte size. We also 
compared the estimate with the analytical solution 
\begin{equation}
    T_{c}(L = \infty) = \frac{2}{\ln (1 + \sqrt{2})} J/k_{B} \approx 2.269 J/k_{B}
\end{equation}
using linear regression. In Figure \ref{fig:linreg} we find the critical 
temperatures as function of the inverse lattice size. When the lattice size increase 
toward infinity, $1/L$ goes toward zero, we find the intercept which gives us an 
estimated value of the critical temperature for a lattice of infinite size.

% Critical temp regression figure 
\begin{figure}[H]
    \centering
    \includegraphics[width=\linewidth]{../images/phase_transition/fox/wide/1M/linreg.pdf}
    \caption{Linear regression, where $\beta_{0}$ is the intercept $T_{c}(L = \infty)$ and $\beta_{1}$ is the slope.}
    \label{fig:linreg}
\end{figure}



\end{document}
