Creating Airy Pattern WITHOUT bessel function and using Matlab's function for J1(rho) for values 0-10
6 views (last 30 days)
Show older comments
I need to approximate the airy pattern without using the bessel function, but I cannot figure out how! I've been trying to come up with some way to do this for hours, but none of my code is working. I know that this can be done with the bessel function, and I've figured out how to code that:
X=[];Y=[];
x = -10:0.01:10;
I0 = 15;
I = I0*(2*besselj(1,x)./(x)).^2;
plot(x,I)
ylim([-2 16])
grid on
title('Airy Pattern BUILT IN BESSEL f(x)')
ylabel('Normalized PSF Amplitude')
xlabel('Radial Coordinates')
r=0:10
J1=Jinc(r).^2
ai=((2*J1(r)/r) .^ 2)
But I need to do this exact same thing, except without the bessel function and for only the 11 values that are 0-10.
If anyone knows how to do this! That'd be great!
3 Comments
Walter Roberson
on 8 May 2017
What is the purpose in avoiding the bessel functions? We could give the hypergeom definition of AiryAi or AiryBi, but would hypergeom be any more useful for your purpose than bessel would be?
David Goodmanson
on 8 May 2017
Edited: David Goodmanson
on 8 May 2017
Hello Candice, are you perhaps studying diffraction theory, with the idea being to confirm the (J1(x) / x)^2 expression by integrating a particular function over the surface of a circular aperture? That is certainly an eminently reasonable task.
Answers (0)
See Also
Categories
Find more on Bessel functions in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!