Factoring out the geometric background part of the opener for this Bloomberg Businessweek story on ketamine. Move your mouse left and right to change the `speed`

. Move your mouse up and down to change the `amplitude`

.

Text can be overlaid with the query string variable `text`

, e.g. http://bl.ocks.org/tophtucker/raw/500d2a010105cfcc87db/?text=KETAMINE.

It’s a bunch of concentric circles with exclusion compositing. The radius of the `i`

th circle oscillates with `amplitude * Math.sin(t/speed + (t/10000)*i)`

, where `t`

is the number of milliseconds since you loaded the page.

E.g., for `amplitude = 5`

and `speed = 500`

(which is the default if you position your mouse in the middle of the page), the radius of circle `i`

at time `t`

oscillates with period `(20000π)/(20+i)`

in `t`

(WolframAlpha).

Things sync up in cool ways when the derivative with respect to `i`

(which comes out to `(t cos(((i+20) t)/10000))/2000`

) is small (WolframAlpha):

Um because then the concentric circles oscillate in phase? Or close to it? Yeah… yeah that sounds right… right?

Obviously I just mashed periodic functions and variables and parameters together in various terms of various order until some li’l unexpected emergent thing happened.