How do I convolve a periodic rect function with comb function

9 vues (au cours des 30 derniers jours)
Mohammad
Mohammad le 10 Juin 2022
Commenté : Mohammad le 10 Juin 2022
p(x,y)=rect(2x/X)rect(2y/Y)⊗[comb(x/X)comb(y/Y)]
  2 commentaires
Mohammad
Mohammad le 10 Juin 2022
p(x,y) is defining a periodic function, with period X in the x direction and period Y in the y direction.
Mohammad
Mohammad le 10 Juin 2022
Now I need to plot p (x,y)

Connectez-vous pour commenter.

Réponse acceptée

Matt J
Matt J le 10 Juin 2022
Modifié(e) : Matt J le 10 Juin 2022
X=1; Y=2;
rect=@(s) 0<=s & s<=1/2;
r=@(s) rect(mod(s+1/4,1));
[x,y]=meshgrid(-3*X:0.01:+3*X, -3*Y:0.01:+3*Y);
P=r(x/X).*r(y/Y) ;
surf(x,y,P,'EdgeColor','none');
xlabel x, ylabel y, zlabel p(x,y)
axis equal
  1 commentaire
Mohammad
Mohammad le 10 Juin 2022
Thanks you so much,
and also what should I do for Fourier transform of p ?

Connectez-vous pour commenter.

Plus de réponses (1)

Matt J
Matt J le 10 Juin 2022
Another possibility is to download interpMatrix
Here is an example with a comb of sincs, rather than a comb of rects.
x=linspace(-3,+3,601); y=x;
kx=sinc( pi*x );
ky=sinc( pi*y*2 );
Ix=sum(interpMatrix(kx,'max',7,100),2);
Iy=sum(interpMatrix(ky,'max',13,50),2);
Name Size Bytes Class Attributes Ix 601x1 9632 double sparse Iy 601x1 9632 double sparse x 1x601 4808 double y 1x601 4808 double
surf(x,y , Ix.*Iy','EdgeColor','none')

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by