I finally found a use for group theory! To take the array of random values of frequency, and just loop it, definitely doesn't sound too random. People are masters at hearing patterns. If you loop a random noise, you'll hear it if it repeats too often. So... You take the group <Z mod p, *>, but with zero removed, and P is a prime. Then, for any x in Z mod p,
x
x*x
x*x*x
x*x*x*x
...
x*x*x*x...*x (p-1 times) are all different values!! So, it gives you a way to generate every index in the array of random values. YOu can generate a different sequence of numbers from 1 to p-1, for every single element in Z mod p (except for 0 and 1).
For example, if p is 127, you can find
2
2*2 = 4
2*2*2 = 8
2*2*2*2 = 16
...
etc...
Then, you just choose position 2 in the random frequency array, then 4, then 8, then 16, ... eventually it comes back around to 1 (mod 127).
So, you can have truly white noise! Where it won't repeat until, say, every 4 or 8 seconds, but it's all so random, that you won't detect any white noise patterns that are 8 seconds apart!
EDIT: Oh ya, it works perfectly. There are no overtones of anything repeating. It's totally white noise. I'm going to cry it's so perfect.
Last edited by MPaulHolmes; 04-11-2014 at 02:26 AM..
|