summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/genmisc/mandel.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/genmisc/mandel.tex')
-rw-r--r--Master/texmf-dist/tex/generic/genmisc/mandel.tex139
1 files changed, 0 insertions, 139 deletions
diff --git a/Master/texmf-dist/tex/generic/genmisc/mandel.tex b/Master/texmf-dist/tex/generic/genmisc/mandel.tex
deleted file mode 100644
index e008dc98f2b..00000000000
--- a/Master/texmf-dist/tex/generic/genmisc/mandel.tex
+++ /dev/null
@@ -1,139 +0,0 @@
-% TeX Mandelbrot Program
-%
-% My entry for the contest ``The most useless TeX program ever written''.
-% Can anyone top that? (Don't mention MusicTeX in this context. That's not
-% meant to be a joke.)
-% Also welcome: Improvements of this saving on TeX's resources. This takes
-% more than five minutes on my NeXT 486/66.
-%
-% Seb, 6.7.94
-%
-% (seb@balu.afp.ruhr-uni-bochum.de)
-%
-%
-% parameters that you can modify:
-%
-% \x, \y, \xmax, \ymax in units of 10000
-\newcount\x
-\x=-20000 % means -2.000 for real part of start value
-\newcount\y
-\y=-20000 % imaginary part
-\newcount\xmax
-\xmax=20000 % end value, real
-\newcount\ymax
-\ymax=20000 % end value, imaginary
-%
-% calculation depth
-\newcount\mandeldepth
-\mandeldepth=100
-%
-%
-% recursation depth = number of pixels.
-\newcount\xsize % (Don't go wild, tail recursion
-\xsize=100 % uses loads of TeX memory!)
-\newcount\ysize
-\ysize=100
-%
-% picture size
-\newdimen\height
-\newdimen\width
-\height=10cm
-\width=10cm
-%
-% that was all the parameters!
-%
-%
-% pixel size:
-\newdimen\xgrid
-\xgrid=\height
-\divide\xgrid by\xsize
-\newdimen\ygrid
-\ygrid=\width
-\divide\ygrid by\ysize
-%
-\nopagenumbers
-%
-\newcount\stepX % work out step sizes
-\stepX=\xmax
-\advance\stepX by -\x
-\divide\stepX by\xsize
-\newcount\stepY
-\stepY=\ymax
-\advance\stepY by -\y
-\divide\stepY by\ysize
-%
-\def\cout#1{\immediate\write16{#1}} % type out debug message
-%
-\def\yes{Y} % some stupid logical macros
-\def\no{N}
-\def\notyet{x}
-%
-\newcount\u % variables for calculation
-\newcount\v
-\newcount\newV
-\newcount\newU
-\newcount\d
-\newcount\h
-\def\runmandel{% % recursive Mandelbrot macro
- \newU=\u%
- \multiply\newU by \u% % newU := u^2
- \h=\v%
- \multiply\h by \v% % h := v^2
- \advance\newU by -\h% % newU := u^2 - v^2
- \h=\x%
- \multiply\h by 10000% % h := x * 10000 (normalize)
- \advance\newU by \h% % newU := newU + h
- \divide\newU by 10000% % renormalize u
- \newV=\u%
- \multiply\newV by \v%
- \multiply\newV by 2% % newV := 2 *u * v
- \h=\y%
- \multiply\h by 10000% % h := y * 10000
- \advance\newV by \h% % newV := newV + h
- \divide\newV by 10000% % renormalize v
- \u=\newU% % newU = u^2 - v^2 + x
- \v=\newV% % newV = 2 * u * v + y
- \advance\d by 1%
- % \cout{d: \the\d, u: \the\u, v: \the\v}%
- \ifnum\d>\mandeldepth% % member ofthe Mandelbrot set
- \def\result{\yes}%
- \fi%
- \ifnum\u<-20000%
- \def\result{\no}% % real part exceeded -2
- \fi%
- \ifnum\u>20000%
- \def\result{\no}% % real part exceeded 2
- \fi%
- \ifnum\v<-20000%
- \def\result{\no}% % imaginary part exceeded -2
- \fi%
- \ifnum\v>20000%
- \def\result{\no}% % real part exceeded 2
- \fi%
- \if\notyet\result\runmandel\fi% % play it again...
-}%
-\def\result{\yes}%
-\def\makeline{\advance\x by \stepX%
- %\cout{testing \the\x = i * \the\y}%
- \u=0%
- \v=0%
- \d=0%
- \def\result{\notyet}%
- \runmandel% result expands to either yes or no now
- \if\result\yes%
- \vrule height \xgrid depth 0pt width \ygrid%
- \else%
- \vrule height \xgrid depth 0pt width 0pt\hskip\xgrid%
- \fi%
- \ifnum\x<\xmax%
- \makeline%
- \else\fi}%
-\def\makepicture{\advance\y by \stepY%
- \hbox{\makeline}%
- %\cout{y in makepicture: \the\y}%
- \ifnum\y<\ymax%
- \makepicture%
- \else\fi}%
-\vbox{\offinterlineskip\makepicture} % now, let's go tail
-\bye % recursive!
-