Apertura circular y su patrón de difracción simulados con Matlab |
El siguiente guion es para usarse en Matlab y realizar una simulación de un patrón de difracción. Puede ser útil para motivarlos a estudiar más este tema:
%inicia script
%% script para simular un patrón de difración de una apertura circular
%% mediante la transfotmada discreta y rapida de Fourier
%
%% por Vicente Torres (18/8/2011), en base al script de Luis Mex
%limpieza de memoria
clear;
clc;
close all
%acondicionamiento
n=2^10;
M=zeros(n); % matriz base donde, que representa la pantalla, oscura
I=1:n;
x=I-n/2;
y=n/2-I;
[x,y]=meshgrid(x,y);
R=10;
a=(x.^2+y.^2<=R.^2); % acondicionando el área de la apertura,
% estos seran indices de la matriz
M(a)=1; % la apertura deja pasar la luz, que se representa con 1
figure
subplot(1,2,1)
imagesc(M),colormap( [0 0 0;1 1 1]),title('\bf abertura circular'),axis image;
D=fft2(M); % Calculo del patron de difraccion
D1=fftshift(D);
subplot(1,2,2)
imagesc(abs(D1)),colormap(hot),axis image, title('\bf patrón de difracción');
%fin del script
En Matlab central pueden encontrar otros ejemplos de patrones de difracción, basado en la ayuda de Matlab.
Preguntas para pensar:
La forma del patrón de difracción en campo lejano parece concordar con el experimento, como se puede comprobar que su perfil de intensidad corresponde adecuadamente con la teoría o con el experimento.
1) En base a este ejemplo obtenga el patrón de difracción de una rendija simple.
2) Obtenga la simulación de un patrón de difracción de una rendija cuadrada
al momento de correrlo en mi matlab las graficas se ven en amarillo, no se observan como en tu imagen q puedo hacer???
ResponderEliminarLa base de la apariencia del patrón de difracción es el comando: colormap(hot)
Eliminarhot es una paleta de colores que va del negro, pasa por el rojo y termina en blanco.
puedes usar el comando colormapeditor para verificar o personalizar esta paleta.
Dime se funciona. Saludos!!
gracias.. si salio
ResponderEliminary no sabes como podría obtener un bessel?