|
[Date Index]
[Thread Index]
[Author Index]
Re: simplifying ulam spiral code
- To: mathgroup at smc.vnet.net
- Subject: [mg56477] Re: simplifying ulam spiral code
- From: Paul Abbott <paul at physics.uwa.edu.au>
- Date: Tue, 26 Apr 2005 21:52:32 -0400 (EDT)
- Organization: The University of Western Australia
- References: <d4cmlr$39e$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
In article <d4cmlr$39e$1 at smc.vnet.net>, zak <chocolatez at gmail.com>
wrote:
> in the site:
> http://teachers.crescentschool.org/weissworld/m3/spiral/spiral.html
> there is a mathematica code for drawing ULAM'S SPIRAL
> ....
>
> Please i hope someone transform it to a functional programming code.
Ulam's spiral appeared in the second issue of The Mathematica Journal,
1(2): 39 (1990). It uses functional programming and complex numbers.
I've updated that code here:
- Spiral on an Integer Lattice
The following code creates a spiral on an integer lattice:
IntegerSpiral[n_] := {Re[#],Im[#]}& /@
Fold[Join[#1, Last[#1]+I^#2 Range[#2/2]]&, {0}, Range[n]]
For example,
spiral = IntegerSpiral[60];
Indexing the points on the spiral, select those points that have prime
index (Pick is new in 5.1):
primes = Pick[spiral, PrimeQ[Range[Length[spiral]]]];
Draw the spiral and display those with prime index as dots:
spiralplot = ListPlot[spiral, PlotJoined->True, Axes -> False,
AspectRatio->Automatic, Epilog -> {PointSize[0.02], Point /@ primes}];
Some patterns in the distribution of the primes are apparent.
--
Paul Abbott Phone: +61 8 6488 2734
School of Physics, M013 Fax: +61 8 6488 1014
The University of Western Australia (CRICOS Provider No 00126G)
35 Stirling Highway
Crawley WA 6009 mailto:paul at physics.uwa.edu.au
AUSTRALIA http://physics.uwa.edu.au/~paul
Prev by Date:
Re: odd mathematica blindspot
Next by Date:
Re: Compile. Not again
Previous by thread:
Re: simplifying ulam spiral code
Next by thread:
Shell script and Mathematica.
|