% *======================================================================*
%  Cactus Thorn template for ThornGuide documentation
%  Author: Ian Kelley
%  Date: Sun Jun 02, 2002
%  $Header$
%
%  Thorn documentation in the latex file doc/documentation.tex
%  will be included in ThornGuides built with the Cactus make system.
%  The scripts employed by the make system automatically include
%  pages about variables, parameters and scheduling parsed from the
%  relevant thorn CCL files.
%
%  This template contains guidelines which help to assure that your
%  documentation will be correctly added to ThornGuides. More
%  information is available in the Cactus UsersGuide.
%
%  Guidelines:
%   - Do not change anything before the line
%       % START CACTUS THORNGUIDE",
%     except for filling in the title, author, date, etc. fields.
%        - Each of these fields should only be on ONE line.
%        - Author names should be separated with a \\ or a comma.
%   - You can define your own macros, but they must appear after
%     the START CACTUS THORNGUIDE line, and must not redefine standard
%     latex commands.
%   - To avoid name clashes with other thorns, 'labels', 'citations',
%     'references', and 'image' names should conform to the following
%     convention:
%       ARRANGEMENT_THORN_LABEL
%     For example, an image wave.eps in the arrangement CactusWave and
%     thorn WaveToyC should be renamed to CactusWave_WaveToyC_wave.eps
%   - Graphics should only be included using the graphicx package.
%     More specifically, with the "\includegraphics" command.  Do
%     not specify any graphic file extensions in your .tex file. This
%     will allow us to create a PDF version of the ThornGuide
%     via pdflatex.
%   - References should be included with the latex "\bibitem" command.
%   - Use \begin{abstract}...\end{abstract} instead of \abstract{...}
%   - Do not use \appendix, instead include any appendices you need as
%     standard sections.
%   - For the benefit of our Perl scripts, and for future extensions,
%     please use simple latex.
%
% *======================================================================*
%
% Example of including a graphic image:
%    \begin{figure}[ht]
% 	\begin{center}
%    	   \includegraphics[width=6cm]{MyArrangement_MyThorn_MyFigure}
% 	\end{center}
% 	\caption{Illustration of this and that}
% 	\label{MyArrangement_MyThorn_MyLabel}
%    \end{figure}
%
% Example of using a label:
%   \label{MyArrangement_MyThorn_MyLabel}
%
% Example of a citation:
%    \cite{MyArrangement_MyThorn_Author99}
%
% Example of including a reference
%   \bibitem{MyArrangement_MyThorn_Author99}
%   {J. Author, {\em The Title of the Book, Journal, or periodical}, 1 (1999),
%   1--16. {\tt http://www.nowhere.com/}}
%
% *======================================================================*

% If you are using CVS use this line to give version information
% $Header$

\documentclass{article}

% Use the Cactus ThornGuide style file
% (Automatically used from Cactus distribution, if you have a
%  thorn without the Cactus Flesh download this from the Cactus
%  homepage at www.cactuscode.org)
\usepackage{../../../../doc/latex/cactus}

\begin{document}

% The author of the documentation
\author{Roland Haas \textless rhaas@caltech.edu\textgreater}

% The title of the document (not necessarily the name of the Thorn)
\title{TestMoL}

% the date your document was last changed, if your document is in CVS,
% please use:
%    \date{$ $Date: 2004-01-07 12:12:39 -0800 (Wed, 07 Jan 2004) $ $}
\date{February 12 2014}

\maketitle

% Do not delete next line
% START CACTUS THORNGUIDE

% Add all definitions used in this documentation here
%   \def\mydef etc

% Add an abstract for this thorn's documentation
\begin{abstract}
This thorn provides tests (partially correctness tests) for \texttt{MoL}.
It integrates a known function in time choosing for each ODE method a
polynomial in time that can be exactly integrated by the method.
\end{abstract}

% The following sections are suggestive only.
% Remove them or add your own.

\section{Introduction}
The method of lines thorn (\texttt{MoL}) provides time integration
facilities in Cactus. It basically is a wrapper for ODE integrators. As such
it can be tested by comparing its results against known analytic solutions.

\section{Physical System}
For grid functions we integrate
\begin{equation}
\dot y = -1 + t^n
\end{equation}
where $n$ is chosen such that a given ODE method can integrate the polynomial
exactly, eg. $n=3$ for the classical Runge-Kutta method. For multi-rate ODE
methods, the slow sector integrates
\begin{equation}
\dot y = -1 + \frac14 t^m
\end{equation}
where $m$ is usually smaller than $n$, eg. $2$ for the \texttt{RK4-RK2} scheme.
Finally grid arrays integrate
\begin{equation}
\dot y = -1 + \frac12 t^n
\end{equation}
where $n$ is the same as for (fast) grid functions.

\section{Numerical Implementation}
All numerical methods are provided by \texttt{MoL}. We construct the
numerical solution be evaluating the RHS on the full domain, no ghost or
boundary zones are required. We provide the numerical solution in
\texttt{evolved\_gf}, \texttt{evolvedslow\_gf}, \texttt{evolved\_ga} for the
grid function, slow sector grid function and grid array respectively. For each
type we provide the analytical solution in \texttt{analytic\_gf},
\texttt{analyticslow\_gf}, \texttt{analytic\_ga}. We provide the difference
between the two in \texttt{diff\_gf}, \texttt{diffslow\_gf},
\texttt{diff\_ga}.

Parameter files for the tests are generated using a perl script
\texttt{ODEs.pl} in the test directory. Its use is briefly explained in a
comment near the top of the file.

\section{Using This Thorn}
This thorn provides no functionality other than the tests.

\subsection{Obtaining This Thorn}
This thorn is part of the \texttt{CactusTest} arrangement and can be checked
out from the same source as Cactus.

\subsection{Interaction With Other Thorns}
This thorn requires \texttt{MoL}.

% Do not delete next line
% END CACTUS THORNGUIDE

\end{document}
