Sound of $\sin(x \cdot \sin(x))$ without accumulation

301 Views Asked by At

Playing around with the sine function, I noticed that when you plug the formula $y = \sin(x \cdot \sin(x))$ into your speakers, you can hear nice sequences of overtones. Especially if you add a frequency control '$f$' to the mix, the results can be surprising, ranging from horror movie like sequences to fantasy-world glassy droplet sounds: $\sin(x \cdot \sin(x \cdot f))$. Add in a variable '$s$' to slow things down or speed things up and an amplitude variable '$a$', and you get:

$$y = \sin(x \cdot \sin(x \cdot f) \cdot s) \cdot a$$

A JavaScript applet that does this (works on Chrome in Win8):

http://zzp-online-marketing.nl/js-portfolio/oscillator/waves.html

Try $f = 110$ or $f = 125$ for some eerie effects.

All good, but there is a problem: the sustenance of the frequencies seems to never end. More are added, older ones stick, which results in accumulation, in the end itself resulting in noise. That's too bad because the sequences are fun but after a couple of seconds the noise builds up to intolerable (well, let's assume) levels.

I've tried cancelling out the prior cycle, but that didn't seem to do much.

Does anyone know how you might cancel out older frequencies while welcoming newer ones with this formula?

2

There are 2 best solutions below

0
On

I start with second expression$(x*sin(fx))$

If we set time duration of the first frequency $T$, $0<x<T$ ,Then given to fourier transformation (or series), you have a $sinc$ function with zeros crossing at $\frac{k\pi}{T}$, $k=0,1,...$ as we know, the $sinc$ function continues forever, while ding after some $k_s$. However, when you change the frequency, then you alter the cener of the $sinc$ function on the different freqency, and after a while given to large numbers theorem you produce a noise since so many harmonics are adding constructively and detrimentally. I guess, if you change the frequency discretely, f1 -f2 -f3, then you can expect lower noise. I mean, since you change frequency continuously, It happens very fast.

It is obvious that $sin(N(\mu , \sigma))$ would be a noise.

1
On

EDIT: Okay, I thought about my implementation of the discrete solution and I realized it didn't make sense. How would you go about implementing that?

The noise effect is probably inherent to the approach, but I was hoping there could be some kind of after-the-fact damage control, where you just cancel out prior points to the current one, allowing room for newer frequencies.

On a side note: the 'f' variable doesn't change as soon as the whole thing is set in motion. You can change its value, but throughout the sequence it remains constant (and the sequence resets upon changing the value of 'f'). Only x just keeps increasing. Just to be clear on that.

Moreover, in response to Henning: No, as is it's a little raw, where I just let x run regardless of any temporal scale. So I guess it is a matter of samples.