Fraunhofer Diffraction - Multiple Square Apertures

조회 수: 17 (최근 30일)
Cédric Pereira
Cédric Pereira 2020년 9월 24일
댓글: Divya P 2022년 6월 25일
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.

답변 (1개)

Cédric Pereira
Cédric Pereira 2020년 11월 2일
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
Divya P
Divya P 2022년 6월 25일
Hey could you tell me that what you have reffered to get this code ? And is this has any article?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by