r591: Added Center-Detector length to scanning and reconstruction
[ctsim.git] / doc / ctsim-concepts.tex
index 3f0bb1640554d5fe31f0415e017792f94566b778..86a94bccae69761ea5e5370600f1e50940b85da3 100644 (file)
@@ -116,8 +116,8 @@ the phantom, the \emph{phantom diameter}. Remember, as mentioned
 above, the phantom dimensions are padded by 1\%.
 
 The other important geometry variables for scanning phantoms are
-the \emph{view diameter}, \emph{scan diameter}, and \emph{focal
-length}. These variables are input into \ctsim\ in terms of
+the \emph{view diameter}, \emph{scan diameter}, \emph{focal
+length}, and \emph{center-detector length}. These variables are input into \ctsim\ in terms of
 ratios rather than absolute values.
 
 \subsubsection{Phantom Diameter}\index{Phantom!Diameter}
@@ -192,9 +192,24 @@ For parallel geometry scanning, the focal length doesn't matter.
 However, for divergent geometry scanning (equilinear and equiangular),
 the \emph{focal length ratio} should be set at \texttt{2} or more
 to avoid artifacts. Moreover, a value of less than \texttt{1} is
-physically impossible and it analagous to have having the x-ray
+physically impossible and it analagous to having the x-ray
 source inside of the \emph{view diameter}.
 
+\subsubsection{Center-Detector Length}\index{Center-Detector length}
+The \emph{center-detector length},
+\latexonly{$c$,}\latexignore{\emph{C},}
+is the distance from the center of
+the phantom to the center of the detector array. The center-detector length is set as a ratio,
+\latexonly{$c_r$,}\latexignore{\emph{CR},}
+of the view radius. The center-detector length is
+calculated as
+\latexonly{\begin{equation}f = (v_d / 2) c_r\end{equation}}
+\latexignore{\\\centerline{\emph{F = (Vd / 2) x CR}}}
+
+For parallel geometry scanning, the center-detector length doesn't matter.
+A value of less than \texttt{1} is physically impossible and it analagous to
+having the detector array inside of the \emph{view diameter}.
+
 
 \subsection{Parallel Geometry}\label{geometryparallel}\index{Parallel geometry}\index{Scanner!Parallel}
 
@@ -282,8 +297,10 @@ depends upon the \emph{focal length}: increasing the \emph{focal
 length} decreases the size of the detector array.
 
 For equiangular geometry, the detectors are equally spaced around a arc
-covering an angular distance of
-\latexonly{$2\,\alpha$.}\latexignore{\emph{2 \alpha}.}
+covering an angular distance of $\alpha$ as viewed from the source. When
+viewed from the center of the scanning, the angular distance is
+\latexonly{$$\pi + \alpha - 2 \, \cos^{-1} \Big( \frac{s_d / 2}{c} \Big)$$}
+\latexignore{\\\emph{pi + \alpha - 2 x acos ((Sd / 2) / C))}\\}
 The dotted circle
 \latexonly{in figure~\ref{equiangularfig}}
 indicates the positions of the detectors in this case.
@@ -298,10 +315,10 @@ line. The detector length depends upon
 \latexonly{$\alpha$}\latexignore{\emph{alpha}} and the \emph{focal
 length}. This length,
 \latexonly{$d_l$,}\latexignore{Dl,} is calculated as
-\latexonly{\begin{equation} d_l = 4\,f \tan (\alpha / 2)\end{equation}}
-\latexignore{\\\centerline{\emph{4 x F x tan(\alpha/2)}}}
+\latexonly{\begin{equation} d_l = 2\,(f + c) \tan (\alpha / 2)\end{equation}}
+\latexignore{\\\centerline{\emph{2 x (F + C) x tan(\alpha/2)}}}
 \latexonly{This geometry is shown in figure~\ref{equilinearfig}.}
-\begin{figure}\label{equilinearfig}
+\begin{figure}
 \centerline{\image{10cm;0cm}{equilinear.eps}}
 \latexonly{\caption{\label{equilinearfig} Equilinear geometry}}
 \end{figure}
@@ -316,7 +333,7 @@ accurate as filtered backprojection. This is due primarily
 to interpolation occurring in the frequency domain rather than the
 spatial domain.
 
-\subsection{Filtered Backprojection}\index{Filtered backprojection}
+\subsection{Filtered Backprojection}\index{Filtered backprojection}\index{Symmetric multiprocessing}\index{SMP}
 The technique is comprised of two sequential steps:
 filtering projections followed by backprojecting the filtered projections. Though
 these two steps are sequential, each view position can be processed independently.
@@ -324,9 +341,18 @@ these two steps are sequential, each view position can be processed independentl
 \subsubsection{Parallel Computer Processing}\index{Parallel processing}
 Since each view can be processed independently, filtered backprojection is amendable to
 parallel processing. Indeed, this has been used in commercial scanners to speed reconstruction.
-This parallelism is exploited in the MPI versions of \ctsim\ where the
-data from all the views are spread about amongst all of the
-processors. This has been testing in a cluster of 16 computers with excellent
+This parallelism is exploited both in the \ctsim\ graphical shell and
+in the \helpref{LAM}{ctsimtextlam} version of \ctsimtext. \ctsim\ can distribute it's workload
+amongst multiple processors working in parallel.
+
+The graphical shell will automatically take advantage of multiple CPU's when
+running on a \emph{Symmetric Multiprocessing}
+computer. Dual-CPU computers are commonly available which provide a near doubling
+in reconstruction speeds. \ctsim, though, has no limits on the number of CPU's
+that can be used in parallel. The \emph{LAM} version
+of \ctsimtext\ is designed to work in a cluster of computers.
+This has been testing with a cluster of 16 computers in a
+\urlref{Beowulf-class}{http://www.beowulf.org} cluster with excellent
 results.
 
 \subsubsection{Filter projections}