aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorswhite <swhite@906471b6-c639-44d1-9ea0-3e3d6879f074>2005-08-12 16:05:22 +0000
committerswhite <swhite@906471b6-c639-44d1-9ea0-3e3d6879f074>2005-08-12 16:05:22 +0000
commit19976d44889bef91b64c74f91bc8543be52af7f1 (patch)
tree8c0182a032dd306e6dc0abdc3429611d8c722c3c
parent3c1fc1e3b7c5341d31606870d127e53bbcf3c3c6 (diff)
Picture illustrating SymBase recursion
git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/SymBase/trunk@22 906471b6-c639-44d1-9ea0-3e3d6879f074
-rw-r--r--doc/documentation.tex16
-rw-r--r--doc/fig/recursion.eps245
-rw-r--r--doc/fig/recursion.fig78
3 files changed, 339 insertions, 0 deletions
diff --git a/doc/documentation.tex b/doc/documentation.tex
index 956a10e..9efc3ad 100644
--- a/doc/documentation.tex
+++ b/doc/documentation.tex
@@ -345,6 +345,22 @@ works as follows:
\item The chain of recursive calls unravels until the call to
\texttt{CCTK\_InterpGridArrays} returns.
\end{enumerate}
+\begin{figure}[tb]
+\begin{center}
+\includegraphics[scale=.833,clip=true]{fig/recursion.eps}
+\end{center}
+\caption[Symmetry interpolation] {
+ The recursive calls involved in symmety interpolation.
+ Values of grid functions $a$ at global cartesian coordinates $x$ are
+ calculated by nested calls to the symmetry interpolators, which first
+ apply the symmetry transformation to the coordinates. When all
+ the symmetries have been applied, the local interpolator is called,
+ producing the interpolation of grid function values in the local basis.
+ As the symmetry interpolators return, they apply the inverse basis
+ transformation to the interpolated grid function values.
+}
+\label{SymBase_recursion}
+\end{figure}
This mechanism has thus four players:
\begin{itemize}
diff --git a/doc/fig/recursion.eps b/doc/fig/recursion.eps
new file mode 100644
index 0000000..3433d45
--- /dev/null
+++ b/doc/fig/recursion.eps
@@ -0,0 +1,245 @@
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: recursion.fig
+%%Creator: fig2dev Version 3.2 Patchlevel 5-alpha5
+%%CreationDate: Fri Aug 12 17:13:16 2005
+%%For: swhite@Xi (Steve White,,,)
+%%BoundingBox: 0 0 433 262
+%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 262 moveto 0 0 lineto 433 0 lineto 433 262 lineto closepath clip newpath
+0.9 261.7 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+10 setmiterlimit
+0 slj 0 slc
+ 0.06299 0.06299 sc
+%
+% Fig objects follow
+%
+%
+% here starts figure with depth 50
+% Polyline
+0 slj
+0 slc
+7.500 slw
+gs clippath
+3118 1597 m 3255 1597 l 3255 1552 l 3118 1552 l 3118 1552 l 3208 1575 l 3118 1597 l cp
+eoclip
+n 2925 1575 m
+ 3240 1575 l gs col0 s gr gr
+
+% arrowhead
+n 3118 1597 m 3208 1575 l 3118 1552 l 3118 1597 l cp gs 0.00 setgray ef gr col0 s
+/Times-Italic ff 190.50 scf sf
+3285 1620 m
+gs 1 -1 sc (x'') col0 sh gr
+/Times-Italic ff 190.50 scf sf
+2790 1620 m
+gs 1 -1 sc (x' ) col0 sh gr
+% Polyline
+gs clippath
+1498 1102 m 1635 1102 l 1635 1057 l 1498 1057 l 1498 1057 l 1588 1080 l 1498 1102 l cp
+eoclip
+n 1305 1080 m
+ 1620 1080 l gs col0 s gr gr
+
+% arrowhead
+n 1498 1102 m 1588 1080 l 1498 1057 l 1498 1102 l cp gs 0.00 setgray ef gr col0 s
+/Times-Italic ff 190.50 scf sf
+1170 1125 m
+gs 1 -1 sc (x ) col0 sh gr
+/Times-Italic ff 190.50 scf sf
+1665 1125 m
+gs 1 -1 sc (x') col0 sh gr
+% Polyline
+gs clippath
+3137 3127 m 3000 3127 l 3000 3172 l 3137 3172 l 3137 3172 l 3047 3150 l 3137 3127 l cp
+eoclip
+n 3330 3150 m
+ 3015 3150 l gs col0 s gr gr
+
+% arrowhead
+n 3137 3127 m 3047 3150 l 3137 3172 l 3137 3127 l cp gs 0.00 setgray ef gr col0 s
+/Times-Italic ff 190.50 scf sf
+2880 3195 m
+gs 1 -1 sc (a' ) col0 sh gr
+/Times-Italic ff 190.50 scf sf
+3375 3195 m
+gs 1 -1 sc (a'') col0 sh gr
+% Polyline
+gs clippath
+1427 3577 m 1290 3577 l 1290 3622 l 1427 3622 l 1427 3622 l 1337 3600 l 1427 3577 l cp
+eoclip
+n 1620 3600 m
+ 1305 3600 l gs col0 s gr gr
+
+% arrowhead
+n 1427 3577 m 1337 3600 l 1427 3622 l 1427 3577 l cp gs 0.00 setgray ef gr col0 s
+/Times-Italic ff 190.50 scf sf
+1665 3645 m
+gs 1 -1 sc (a') col0 sh gr
+/Times-Italic ff 190.50 scf sf
+1170 3645 m
+gs 1 -1 sc (a ) col0 sh gr
+% Polyline
+ [60] 0 sd
+n 0 2340 m
+ 6840 2340 l gs col7 0.00 shd ef gr gs col0 s gr [] 0 sd
+% Polyline
+n 4140 1395 m 6120 1395 l 6120 3015 l 4140 3015 l
+ cp gs col0 s gr
+% Polyline
+gs clippath
+4522 2398 m 4522 2535 l 4567 2535 l 4567 2398 l 4567 2398 l 4545 2488 l 4522 2398 l cp
+eoclip
+n 4545 2205 m
+ 4545 2520 l gs col0 s gr gr
+
+% arrowhead
+n 4522 2398 m 4545 2488 l 4567 2398 l 4522 2398 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+n 2475 900 m 6435 900 l 6435 3510 l 2475 3510 l
+ cp gs col0 s gr
+% Polyline
+n 855 405 m 6750 405 l 6750 4005 l 855 4005 l
+ cp gs col0 s gr
+% Polyline
+n 3690 1800 m 4005 1800 l 4005 1710 l 4275 1845 l 4005 1980 l 4005 1890 l
+ 3690 1890 l
+ 3690 1800 l cp gs col7 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 4275 2790 m 3960 2790 l 3960 2700 l 3690 2835 l 3960 2970 l 3960 2880 l
+ 4275 2880 l
+ 4275 2790 l cp gs col7 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 2610 3285 m 2295 3285 l 2295 3195 l 2025 3330 l 2295 3465 l 2295 3375 l
+ 2610 3375 l
+ 2610 3285 l cp gs col7 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 990 3780 m 675 3780 l 675 3690 l 405 3825 l 675 3960 l 675 3870 l
+ 990 3870 l
+ 990 3780 l cp gs col7 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 405 810 m 720 810 l 720 720 l 990 855 l 720 990 l 720 900 l
+ 405 900 l
+ 405 810 l cp gs col7 1.00 shd ef gr gs col0 s gr
+/Times-Roman ff 190.50 scf sf
+45 180 m
+gs 1 -1 sc (global) col0 sh gr
+/Times-Italic ff 190.50 scf sf
+45 675 m
+gs 1 -1 sc (x ) col0 sh gr
+/Times-Roman ff 190.50 scf sf
+1170 675 m
+gs 1 -1 sc (symmetry) col0 sh gr
+/Times-Italic ff 190.50 scf sf
+2025 675 m
+gs 1 -1 sc (A) col0 sh gr
+/Times-Roman ff 190.50 scf sf
+2790 1170 m
+gs 1 -1 sc (symmetry) col0 sh gr
+/Times-Italic ff 190.50 scf sf
+3645 1170 m
+gs 1 -1 sc (B) col0 sh gr
+/Times-Italic ff 190.50 scf sf
+0 4140 m
+gs 1 -1 sc (a ) col0 sh gr
+/Times-Roman ff 190.50 scf sf
+4455 1710 m
+gs 1 -1 sc (local interpolation) col0 sh gr
+/Times-Italic ff 190.50 scf sf
+4500 2160 m
+gs 1 -1 sc (x'' ) col0 sh gr
+/Times-Italic ff 190.50 scf sf
+4500 2700 m
+gs 1 -1 sc (a'') col0 sh gr
+% here ends figure;
+%
+% here starts figure with depth 0
+% Polyline
+0 slj
+0 slc
+7.500 slw
+n 2025 1305 m 2340 1305 l 2340 1215 l 2610 1350 l 2340 1485 l 2340 1395 l
+ 2025 1395 l
+ 2025 1305 l cp gs col7 1.00 shd ef gr gs col0 s gr
+% here ends figure;
+$F2psEnd
+rs
+showpage
+%%Trailer
+%EOF
diff --git a/doc/fig/recursion.fig b/doc/fig/recursion.fig
new file mode 100644
index 0000000..a91f6ad
--- /dev/null
+++ b/doc/fig/recursion.fig
@@ -0,0 +1,78 @@
+#FIG 3.2 Produced by xfig version 3.2.5-alpha5
+Portrait
+Center
+Metric
+A4
+100.00
+Single
+-2
+1200 2
+6 0 0 6840 4140
+6 2790 1440 3510 1620
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+ 1 1 1.00 45.00 90.00
+ 2925 1575 3240 1575
+4 0 0 50 -1 1 12 0.0000 4 150 195 3285 1620 x''\001
+4 0 0 50 -1 1 12 0.0000 4 150 195 2790 1620 x' \001
+-6
+6 1170 945 1845 1125
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+ 1 1 1.00 45.00 90.00
+ 1305 1080 1620 1080
+4 0 0 50 -1 1 12 0.0000 4 105 150 1170 1125 x \001
+4 0 0 50 -1 1 12 0.0000 4 150 150 1665 1125 x'\001
+-6
+6 2880 3015 3600 3195
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+ 1 1 1.00 45.00 90.00
+ 3330 3150 3015 3150
+4 0 0 50 -1 1 12 0.0000 4 150 195 2880 3195 a' \001
+4 0 0 50 -1 1 12 0.0000 4 150 195 3375 3195 a''\001
+-6
+6 1170 3465 1845 3645
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+ 1 1 1.00 45.00 90.00
+ 1620 3600 1305 3600
+4 0 0 50 -1 1 12 0.0000 4 150 150 1665 3645 a'\001
+4 0 0 50 -1 1 12 0.0000 4 105 150 1170 3645 a \001
+-6
+2 1 0 1 0 7 0 -1 20 0.000 0 0 7 0 0 8
+ 2025 1305 2340 1305 2340 1215 2610 1350 2340 1485 2340 1395
+ 2025 1395 2025 1305
+2 1 1 1 0 7 50 -1 0 4.000 0 0 -1 0 0 2
+ 0 2340 6840 2340
+2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
+ 4140 1395 6120 1395 6120 3015 4140 3015 4140 1395
+2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
+ 1 1 1.00 45.00 90.00
+ 4545 2205 4545 2520
+2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
+ 2475 900 6435 900 6435 3510 2475 3510 2475 900
+2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
+ 855 405 6750 405 6750 4005 855 4005 855 405
+2 1 0 1 0 7 50 -1 20 0.000 0 0 -1 0 0 8
+ 3690 1800 4005 1800 4005 1710 4275 1845 4005 1980 4005 1890
+ 3690 1890 3690 1800
+2 1 0 1 0 7 50 -1 20 0.000 0 0 -1 0 0 8
+ 4275 2790 3960 2790 3960 2700 3690 2835 3960 2970 3960 2880
+ 4275 2880 4275 2790
+2 1 0 1 0 7 50 -1 20 0.000 0 0 -1 0 0 8
+ 2610 3285 2295 3285 2295 3195 2025 3330 2295 3465 2295 3375
+ 2610 3375 2610 3285
+2 1 0 1 0 7 50 -1 20 0.000 0 0 -1 0 0 8
+ 990 3780 675 3780 675 3690 405 3825 675 3960 675 3870
+ 990 3870 990 3780
+2 1 0 1 0 7 50 -1 20 0.000 0 0 7 0 0 8
+ 405 810 720 810 720 720 990 855 720 990 720 900
+ 405 900 405 810
+4 0 0 50 -1 0 12 0.0000 4 195 510 45 180 global\001
+4 0 0 50 -1 1 12 0.0000 4 105 150 45 675 x \001
+4 0 0 50 -1 0 12 0.0000 4 165 870 1170 675 symmetry\001
+4 0 0 50 -1 1 12 0.0000 4 150 135 2025 675 A\001
+4 0 0 50 -1 0 12 0.0000 4 165 870 2790 1170 symmetry\001
+4 0 0 50 -1 1 12 0.0000 4 150 120 3645 1170 B\001
+4 0 0 50 -1 1 12 0.0000 4 105 150 0 4140 a \001
+4 0 0 50 -1 0 12 0.0000 4 195 1515 4455 1710 local interpolation\001
+4 0 0 50 -1 1 12 0.0000 4 150 240 4500 2160 x'' \001
+4 0 0 50 -1 1 12 0.0000 4 150 195 4500 2700 a''\001
+-6