aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschnetter <schnetter@7daa882c-dc44-4453-834e-278d26b18e6a>2005-11-09 14:11:14 +0000
committerschnetter <schnetter@7daa882c-dc44-4453-834e-278d26b18e6a>2005-11-09 14:11:14 +0000
commitd9b67dec27e5c814c0b3f4587b7fd9648100ce9f (patch)
treed0a7bfe98ea59f39e452d7732df51215f2299ce8
parent1086ec072bf8a4f46d9d395b9dc87ee3ba1b834b (diff)
Don't call the API "new API"; the word "new" loses its meaning after
some time. Reformat latex source to fit 80 columns. git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/LocalReduce/trunk@69 7daa882c-dc44-4453-834e-278d26b18e6a
-rw-r--r--doc/documentation.tex81
1 files changed, 32 insertions, 49 deletions
diff --git a/doc/documentation.tex b/doc/documentation.tex
index b05c1a5..2bf7d95 100644
--- a/doc/documentation.tex
+++ b/doc/documentation.tex
@@ -99,66 +99,49 @@
% Add an abstract for this thorn's documentation
\begin{abstract}
-Implement reduction operations using the new reduction API.
+ This thorn implement processor-local reduction operations.
\end{abstract}
% The following sections are suggestive only.
% Remove them or add your own.
\section{Introduction}
-A local reduction operation can be defined as an operation
-on arrays (tuples) of variables resulting in a single number.
-Typical reduction operations are sum, minimum/maximum value, and boolean
-operations. A typical application is, for example,
-finding the minimum value in an n-dimensional array.
+A reduction operation can be defined as an operation on arrays
+(tuples) of variables resulting in a single number. Typical reduction
+operations are sum, minimum/maximum value, and boolean operations. A
+typical application is, for example, finding the minimum value in an
+$n$-dimensional array.
-This implementation of local reduction implements reduction and registers
-functions using the new local reduction API as discussed on the developers
-mailing lists.
-\section{Physical System}
+This thorn provides processor-local reduction operations only. Global
+reduction operations can make use of these local reduction operations
+by providing the necessary inter-processor communication.
\section{Numerical Implementation}
-The new local reduce thorn has several new features including index strides and offsets
-for array indexing and full complex number support. Pending request, weight support
-can be enabled (there are some issues that a mask is essentially a weight with 1 or 0 value).
-
-Modifying or extending this thorn is quite a simple matter. The heart of all the reduction
-operations is the large iterator macro in local\_reductions.h. This iterator supports n-dimensional
-arrays with offsets and strides. The iterator is used in all local reduction operators in this thorn.
-To add a reduction operator, or change an existing one, all that needs to be done is to change the
-actual reduction operation definition which is called from within the iterator to perform the reduction.
-
-To use a custom local reduction operator from the new global reduction implementation, some values
-must be returned to the global reduction implementation, such as the type of MPI reduction operation that
-needs to be performed (MPI\_SUM, MPI\_MIN, MPI\_MAX) and if the final result should include a division by the
-total number of points used in the reduction. These are set in the parameter table with keys: mpi\_operation and perform\_division.
+The new local reduce thorn has several new features including index
+strides and offsets for array indexing and full complex number
+support. Pending request, weight support can be enabled (there are
+some issues that a mask is essentially a weight with 1 or 0 value).
+
+Modifying or extending this thorn is quite a simple matter. The heart
+of all the reduction operations is the large iterator macro in
+local\_reductions.h. This iterator supports n-dimensional arrays with
+offsets and strides. The iterator is used in all local reduction
+operators in this thorn. To add a reduction operator, or change an
+existing one, all that needs to be done is to change the actual
+reduction operation definition which is called from within the
+iterator to perform the reduction.
+
+To use a custom local reduction operator from the new global reduction
+implementation, some values must be returned to the global reduction
+implementation, such as the type of MPI reduction operation that needs
+to be performed (MPI\_SUM, MPI\_MIN, MPI\_MAX) and if the final result
+should include a division by the total number of points used in the
+reduction. These are set in the parameter table with keys:
+mpi\_operation and perform\_division.
\section{Using This Thorn}
-Please refer to the TestLocalReduce thorn in the CactusTest arrangement.
-\subsection{Obtaining This Thorn}
-
-\subsection{Basic Usage}
-
-\subsection{Special Behaviour}
-
-\subsection{Interaction With Other Thorns}
-
-\subsection{Examples}
-
-\subsection{Support and Feedback}
-
-\section{History}
-
-\subsection{Thorn Source Code}
-
-\subsection{Thorn Documentation}
-
-\subsection{Acknowledgements}
-
-
-\begin{thebibliography}{9}
-
-\end{thebibliography}
+Please refer to the TestLocalReduce thorn in the CactusTest
+arrangement.
% Do not delete next line
% END CACTUS THORNGUIDE