git-svn-id: http://moon:8086/svn/matlab/trunk@157 801c6759-fa7c-4059-a304-17956f83a07c
47 lines
619 B
Matlab
Executable File
47 lines
619 B
Matlab
Executable File
function qtbl(N)
|
|
|
|
j = sqrt(-1);
|
|
signI = [+1 -1 -1 +1]
|
|
signQ = [+1 +1 -1 -1]
|
|
rot = pi/4;
|
|
Ns = sqrt(N)
|
|
Nq = N/4
|
|
Nsq = sqrt(Nq)
|
|
stepIQ = sqrt(2)/(Ns-1)
|
|
|
|
|
|
qq = 1/sqrt(2);
|
|
ii = 1/sqrt(2);
|
|
|
|
even = 1;
|
|
c = 1;
|
|
close all;
|
|
figure(1);
|
|
axis ([-1 1 -1 1]);
|
|
grid;
|
|
hold;
|
|
for m=1:Nsq
|
|
for n=1:Nsq
|
|
I = ii;
|
|
Q = qq;
|
|
for q = 0:3,
|
|
IQ(Nq*q+c) = I*signI(q+1) + j*Q*signQ(q+1);
|
|
T = I;
|
|
I = Q;
|
|
Q = T;
|
|
end;
|
|
ii = ii - even*stepIQ;
|
|
c = c + 1;
|
|
end;
|
|
qq = qq - stepIQ;
|
|
ii = ii + even*stepIQ;
|
|
even = -even;
|
|
end;
|
|
|
|
for c=1:N,
|
|
sym = c - 1
|
|
plot(IQ(c), '+');
|
|
pause;
|
|
end;
|
|
IQ
|