Fraunhofer Diffraction - Multiple Square Apertures

15 Ansichten (letzte 30 Tage)
Cédric Pereira
Cédric Pereira am 24 Sep. 2020
Kommentiert: Divya P am 25 Jun. 2022
Hello all!
I'm stuck for some days trying to get the diffraction pattern from a binary grating / square period grating / multi-aperture square screen... whatever you want to call it.
Imagine I have a 8 * 5 square apertures grating. Something like this:
The intensity profile from a single aperture is easy to calculate:
% Clean all
clc;
close all;
clear all;
% Light Source
lambda = 550e-9; % Wavelength [m]
k = (2*pi)/lambda; % Wavenumber [m^-1]
Io = 100; % Relative intensity
% Aperture
a = 1e-6; % Aperture size X-axis [m]
b = 1e-6; % Aperture size Y-axis [m]
% Screen
R = 1e-3; % Distance aperture-screen [m]
dsize = 0.5e-2; % Square size [m]
dpix = 1000; % Dimension [pixel]
X = -dsize:2*dsize/dpix:dsize; % Screen X-axis
Y = X; % Screen Y-axis
% Intensity Profile
alpha = k*a*X/(2*pi*R); % Periodic parameter X-axis
beta = k*b*Y/(2*pi*R); % Periodic parameter Y-axis
I = Io*(sinc(alpha).^2)'*(sinc(beta).^2); % Intensity profile
% Print
fig = figure();
imshow(I);
To calculate the same for a 8 * 5 grating, I have to do a convolution of my unit-square aperture by a comb function. I will get an infinite pattern.
I already search and according with some answers I could use the "repmat" function to get a 8*5 section of that infinite pattern
Then I just have to multiply it by rectangular (sinc) function to get a non-infinite pattern. But I'm struggle with it.
Could you advise me?
Thank you in advance.

Antworten (1)

Cédric Pereira
Cédric Pereira am 2 Nov. 2020
Could it be right?
% Clean all
clc;
close all;
clear all;
% Light Source
lambda = 550e-9; % Wavelength [m]
k = (2*pi)/lambda; % Wavenumber [m^-1]
Io = 100; % Relative intensity
% Aperture
a = 1e-6; % Aperture size X-axis [m]
b = 1e-6; % Aperture size Y-axis [m]
% Screen
R = 1e-3; % Distance aperture-screen [m]
dsize = 0.5e-2; % Square size [m]
dpix = 1000; % Dimension [pixel]
X = -dsize:2*dsize/dpix:dsize; % Screen X-axis
Y = X; % Screen Y-axis
% Intensity Profile
alpha = k*a*X/(2*pi*R); % Periodic parameter X-axis
beta = k*b*Y/(2*pi*R); % Periodic parameter Y-axis
I = Io*(sinc(alpha).^2)'*(sinc(beta).^2); % Intensity profile
% Square Aperture on Matrix
I2 = repmat(I,16); % Replicate square aperture on matrix
% Total Area
V = linspace(-8008,8008,16016);
M = sinc(V).^2'*sinc(V).^2; % Rectangular area
% Final Result
I3 = I2.*M*10^16;
% Print
fig = figure();
imshow(I3);
Why do I have some bright central lines?
  1 Kommentar
Divya P
Divya P am 25 Jun. 2022
Hey could you tell me that what you have reffered to get this code ? And is this has any article?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by