## [291105]: comp / comp_gfeigs.m  Maximize  Restore  History

### 59 lines (37 with data), 832 Bytes

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49``` ```function lambdas=comp_gfeigs(gf,L,a,M) %COMP_GFEIGS_SEP % Usage: lambdas=comp_gfeigs(gf,a,M); % % Compute Eigenvalues of a Gabor frame operator in % the separable case. % % This is a computational routine, do not call it directly. % % See help on GFBOUNDS % AUTHOR : Peter L. SĂ¸ndergaard. LR=prod(size(gf)); R=LR/L; b=L/M; N=L/a; c=gcd(a,M); d=gcd(b,N); p=b/d; q=N/d; % Initialize eigenvalues AF=Inf; BF=0; % Holds subsubmatrix. C=zeros(p,q*R); lambdas=zeros(p,c*d); % Iterate through all the subsubmatrices. for k=0:c*d-1 % Extract p x q*R matrix of array. C(:)=gf(:,k+1); % Get eigenvalues of 'squared' subsubmatrix. lambdas(:,1+k)=eig(C*C'); end; % Clean eigenvalues, they are real, and % scale them correctly. lambdas=real(lambdas); % Reshape and sort. lambdas=sort(lambdas(:)); ```