Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Solution 210797

Submitted on 1 Mar 2013 by Vitaly Lavrukhin

Correct

45Size
Leading solution size is 34.
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test
Code Input and Output
1
Pass
 
%%
nrc=65;
xymax=3;
freq=1;
m=sinx_div_x(xymax,nrc,freq);
%figure(3);imagesc(m)
%figure(4);surf(m)
 xv=repmat(-xymax:2*xymax/(nrc-1):xymax,nrc,1);
 yv=xv';
 mexp=zeros(nrc);
 for r=1:nrc
  for c=1:nrc
  Rv=sqrt(xv(r,c)^2+yv(r,c)^2);
  if Rv>eps
   mexp(r,c)=sin(Rv*pi*freq)/(Rv*pi*freq);
  else
   mexp(r,c)=1;
  end
  end % c
 end %r
%figure(1);imagesc(mexp)
%figure(2);surf(mexp)
assert(~any(any(isnan(m))))
assert(max(max(abs(m-mexp)))<.01)

                    
2
Pass
 
%%
nrc=127;
xymax=3;
freq=4;
m=sinx_div_x(xymax,nrc,freq);
%figure(3);imagesc(m)
%figure(4);surf(m)
 xv=repmat(-xymax:2*xymax/(nrc-1):xymax,nrc,1);
 yv=xv';
 mexp=zeros(nrc);
 for r=1:nrc
  for c=1:nrc
  Rv=sqrt(xv(r,c)^2+yv(r,c)^2);
  if Rv>eps
   mexp(r,c)=sin(Rv*pi*freq)/(Rv*pi*freq);
  else
   mexp(r,c)=1;
  end
  end % c
 end %r
%figure(1);imagesc(mexp)
%figure(2);surf(mexp)
assert(~any(any(isnan(m))))
assert(max(max(abs(m-mexp)))<.01)

                    
3
Pass
 
%%
nrc=96;
xymax=16;
freq=0.5;
m=sinx_div_x(xymax,nrc,freq);
%figure(3);imagesc(m)
%figure(4);surf(m)
 xv=repmat(-xymax:2*xymax/(nrc-1):xymax,nrc,1);
 yv=xv';
 mexp=zeros(nrc);
 for r=1:nrc
  for c=1:nrc
  Rv=sqrt(xv(r,c)^2+yv(r,c)^2);
  if Rv>eps
   mexp(r,c)=sin(Rv*pi*freq)/(Rv*pi*freq);
  else
   mexp(r,c)=1;
  end
  end % c
 end %r
%figure(1);imagesc(mexp)
%figure(2);surf(mexp)
assert(~any(any(isnan(m))))
assert(max(max(abs(m-mexp)))<.01)