www.pudn.com > jaguar2s.zip > rad4.M
function y = rad4(x,n,N,fwd) % take in 4 samples, and output 4 samples %perform radix four conversion on x xtmp=x(4); if (fwd==0) x(4) = x(2); x(2) = xtmp; end; W1 = 2*pi*1*(n-1)/N; W2 = 2*pi*2*(n-1)/N; W3 = 2*pi*3*(n-1)/N; %this requires 8 complex(16 real) adders) and 3 complex multiplies s1=real(x(1))+ real(x(3)); s2=real(x(1))- real(x(3)); s3=imag(x(1))+ imag(x(3)); s4=imag(x(1))- imag(x(3)); s5=real(x(2))+ real(x(4)); s8=real(x(2))- real(x(4)); s7=imag(x(2))+ imag(x(4)); s6=imag(x(2))- imag(x(4)); s9=s1+s5; s10=s3+s7; s11=s2+s6; s12=s4-s8; s13=s1-s5; s14=s3-s7; s15=s2-s6; s16=s4+s8; y(1) = s9 + j*s10; y(2) = fftmult((s11 + j*s12),W1,fwd); y(3) = fftmult((s13 + j*s14),W2,fwd); y(4) = fftmult((s15 + j*s16),W3,fwd);