FFTCE Circulant Embedding of a vector or matrix CALL: y = fftce(x); y = circulant embedded vector or matrix (2*size(x)-1) x = vector or matrix For vectors, Y = X([1:M M-1:-1:2]) For matrices, X is copied into the first quadrant of Y and Mi-1 on to the 2'nd, 3'rd and 4'th quadrant of Y. For N-D arrays, X is copied into "half-spaces" of Y along each dimension. FFTCE is useful for circulant embedding of vectors and matrices when working with the Fourier transform. See also fftshift, ifftshift, fft, fft2, fftn
Create cell array. |
Binned Kernel Density Estimator. |
001 function y = fftce(x) 002 % FFTCE Circulant Embedding of a vector or matrix 003 % 004 % CALL: y = fftce(x); 005 % 006 % y = circulant embedded vector or matrix (2*size(x)-1) 007 % x = vector or matrix 008 % 009 % For vectors, Y = X([1:M M-1:-1:2]) 010 % For matrices, X is copied into the first quadrant of Y 011 % and Mi-1 on to the 2'nd, 3'rd and 4'th quadrant of Y. 012 % For N-D arrays, X is copied into "half-spaces" of Y along each 013 % dimension. 014 % 015 % FFTCE is useful for circulant embedding of vectors and matrices 016 % when working with the Fourier transform. 017 % 018 % See also fftshift, ifftshift, fft, fft2, fftn 019 020 % tested on: matlab 5.2 021 % history: 022 % by pab 5.11.1999 023 024 numDims = ndims(x); 025 idx = cell(1, numDims); 026 for k = 1:numDims 027 m = size(x, k); 028 idx{k} = [1:m m-1:-1:2]; 029 %idx{k} = [1:m m:-1:2]; 030 end 031 032 % Use comma-separated list syntax for N-D indexing. 033 y = x(idx{:}); 034
Comments or corrections to the WAFO group