At the WWDC 2003 keynote, Theodore Gray took the stage, along with Phill Schiller, and demoed Mathematica 5, comparing performance on G5 and Xeon processors.

enter image description here

In the presentation, a 40-step fractal battle is conducted and I'd like to recreate this on my new Macbook. So I was wondering what function is being used to make the DensityPlots (if that's what they are)?

enter image description here

  • 4
    $\begingroup$ You don't, by chance, have any more pixels, do you? $\endgroup$ – Jason B. Nov 21 '19 at 20:44
  • $\begingroup$ I looked but the best YouTube video is only 480p and the text is unreadable $\endgroup$ – M.R. Nov 22 '19 at 0:41
  • $\begingroup$ Looks like it computing some high order polynomial roots $\endgroup$ – M.R. Nov 22 '19 at 2:43
  • $\begingroup$ @jasonb ok I added a gif of the screen capture... $\endgroup$ – M.R. Dec 3 '19 at 7:23
  • 3
    $\begingroup$ From Michael Trott: "I darkly remember making something for Theo. But I don't think I have it anymore." $\endgroup$ – Jason B. Dec 3 '19 at 15:34

Yes, that would be ListDensityPlot.

Some example code:

SqrtFractalSetup[{xmin_, xmax_}, {ymin_, ymax_}, n_] := 
     With[{xminn = N[xmin], yminn = N[ymin], 
             xstep = N[(xmax - xmin)/n], ystep = N[(ymax - ymin)/n]}, 
       re0 = Table[r, {r, xminn, xmax, xstep}, {i, yminn, ymax, ystep}]; 
       im0 = Table[i, {r, xminn, xmax, xstep}, {i, yminn, ymax, ystep}]];

SqrtFractalDraw[c_, {xmin_, xmax_}, {ymin_, ymax_}, steps_] := 
     Module[{quadrant}, {re, im} = {re0, im0}; 
        Do[{re, im} = {(c - Sqrt[Abs[re]] + Sqrt[Abs[im]])^2, 
                (1 - Sqrt[Abs[im]] - Sqrt[Abs[re]])^2}; , {steps}]; 
        quadrant = Abs[re + I*im]; 
        ListDensityPlot[quadrant, Mesh -> False, ColorFunction -> Hue, PlotRange -> All]]; 

SqrtFractalSetup[{-1, 1}, {-1, 1}, 400]; 

  N[0.6 + 0.6*Cos[c] + (0.25 + 0.25*Sin[c])*I], {-1, 1}, {-1, 1}, 7], 
    {c, (2*Pi)/9, 2*Pi - (2*Pi)/9, (2*Pi)/36}]

enter image description here

and here is a related video from WWDC 2003:

enter image description here

  • 1
    $\begingroup$ Any words on the provenance of this awesome answer? $\endgroup$ – Chris K Dec 18 '19 at 8:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.