# Spiral Art

The basic idea behind a spiral is to parametrize like this.......

$x = r \cos \theta \\ y = r \sin \theta$

....and then gradually decrease the radius as the angle increases. To make things more interesting, you can put sinusoidal variation in the radius too, with different harmonics thrown in to create different effects. The harmonics are added so that their magnitudes are inversely proportional to their frequency, relative to the base frequency. For example, a sinusoidal term with a frequency three times that of the base term has a magnitude one third that of the base term.

I have posted two spirals: one with even harmonics and one with odd harmonics. The code to generate these is also attached. Click the images to enlarge them.

  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 import math r = 20.0 theta = 0.0 dr = 0.005 dtheta = 2.0*math.pi/400.0 choose = 0 while theta <= 20.0*math.pi: if choose == 0: # Even harmonic spiral x = r*(1.0 + 0.2*math.sin(20.0*theta) + 0.1*math.sin(40.0*theta) + 0.05*math.sin(80.0*theta))*math.cos(theta) y = r*(1.0 + 0.2*math.sin(20.0*theta) + 0.1*math.sin(40.0*theta) + 0.05*math.sin(80.0*theta))*math.sin(theta) if choose == 1: # Odd harmonic spiral x = r*(1.0 + 0.2*math.sin(20.0*theta) + 0.0667*math.sin(60.0*theta) + 0.04*math.sin(100.0*theta))*math.cos(theta) y = r*(1.0 + 0.2*math.sin(20.0*theta) + 0.0667*math.sin(60.0*theta) + 0.04*math.sin(100.0*theta))*math.sin(theta) print x,y r = r - dr theta = theta + dtheta 

Note by Steven Chase
1 month ago

This discussion board is a place to discuss our Daily Challenges and the math and science related to those challenges. Explanations are more than just a solution — they should explain the steps and thinking strategies that you used to obtain the solution. Comments should further the discussion of math and science.

When posting on Brilliant:

• Use the emojis to react to an explanation, whether you're congratulating a job well done , or just really confused .
• Ask specific questions about the challenge or the steps in somebody's explanation. Well-posed questions can add a lot to the discussion, but posting "I don't understand!" doesn't help anyone.
• Try to contribute something new to the discussion, whether it is an extension, generalization or other idea related to the challenge.

MarkdownAppears as
*italics* or _italics_ italics
**bold** or __bold__ bold
- bulleted- list
• bulleted
• list
1. numbered2. list
1. numbered
2. list
Note: you must add a full line of space before and after lists for them to show up correctly
paragraph 1paragraph 2

paragraph 1

paragraph 2

[example link](https://brilliant.org)example link
> This is a quote
This is a quote
    # I indented these lines
# 4 spaces, and now they show
# up as a code block.

print "hello world"
# I indented these lines
# 4 spaces, and now they show
# up as a code block.

print "hello world"
MathAppears as
Remember to wrap math in $$ ... $$ or $ ... $ to ensure proper formatting.
2 \times 3 $2 \times 3$
2^{34} $2^{34}$
a_{i-1} $a_{i-1}$
\frac{2}{3} $\frac{2}{3}$
\sqrt{2} $\sqrt{2}$
\sum_{i=1}^3 $\sum_{i=1}^3$
\sin \theta $\sin \theta$
\boxed{123} $\boxed{123}$

Sort by:

@Karan Chatrath In case you are interested

- 1 month ago

@Steven Chase Sir .Thanks Yeah it's also awesome. But I like your profile images more than this. They were more crazy according to my opinion.

Creating the profile pic must have been much harder, due to the wireframe and the 3d aspect of it, that too on python.

- 1 month ago

Yeah, the helix was a much bigger undertaking

- 1 month ago

Yeah and the rendering time without GPU wow...

- 1 month ago

Ha that's really cool! I really like python. Try to paint a Mandelbrot Set!

- 1 month ago

Here you go

- 1 month ago

I think the second spiral looks the best. I really love how it spirals inward.

- 1 month ago