In [419], Manfred Schroeder proposed the design of a
diffuse reflector based on a quadratic residue sequence (also
called a Legendre sequence). A quadratic residue sequence
corresponding to a prime number
is the sequence
mod
, for all integers
. The sequence is periodic with period
,
so it is determined by
for
(i.e., one
period of the infinite sequence).
For example, when
, the first period of the quadratic residue
sequence is given by
An amazing property of these sequences is that their Fourier transforms have precisely constant magnitudes. That is, the sequence
Figure G.32 presents a simple matlab script which demonstrates the constant-magnitude Fourier property for all odd integers from 1 to 99.
function [c] = qrsfp(Ns)
%QRSFP Quadratic Residue Sequence Fourier Property demo
if (nargin<1)
Ns = 1:2:99; % Test all odd integers from 1 to 99
end
for N=Ns
a = mod([0:N-1].^2,N);
c = zeros(N-1,N);
CM = zeros(N-1,N);
c = exp(j*2*pi*a/N);
CM = abs(fft(c))*sqrt(1/N);
if (abs(max(CM)-1)>1E-10) || (abs(min(CM)-1)>1E-10)
errmsg = sprintf('Failure for N=%d',N);
disp(errmsg);
end
end
plot(c); % interesting plot, try it!
end
|
Quadratic residue diffusers have been applied as boundaries of a 2D digital waveguide mesh in [285]. An article reviewing the history od room acoustic diffusers may be found in [93].