Fresnel Diffraction (October 15, 2002)

Simulation and Study of Fresnel Diffraction for Arbitrary Two-Dimensional Apertures - Introduction

"Diffraction is an important physical effect inherent in all wave phenomena. Fraunhofer and Fresnel diffraction are two important classes of diffraction. Fraunhofer diffraction involves coherent plane waves incident upon an obstruction. Fresnel diffraction is the same, except that the waves are spherical, effectively originating from a point source.

Although these two types of diffraction are conceptually similar, analytically solving for a Fresnel diffraction pattern is significantly more challenging than the same task in Fraunhofer diffraction. It is a simple exercise to show that Fraunhofer diffraction by an aperture is mathematically equivalent to the Fourier transform of the aperture shape. Because the integrals describing Fresnel diffraction are so intractable, however, Fresnel diffraction patterns have few analytical solutions, even in one dimension. ... A calculation in two dimensions is even more problematic.... "

That was from the Introduction of my paper, "Simulation and Study of Fresnel Diffraction for Arbitrary Two-Dimensional Apertures," which was published in Computers In Physics in the Nov/Dec 1996 issue!

NOTE: Computers In Physics has announced that I am a student winner in their Eighth Annual Educational Software Contest. At the AAPT conference in New Orleans, I gave a demo of the software, the Fresnel Diffraction Explorer.

While I was an undergraduate at Harvey Mudd College, I created an efficient algorithm to calculate numerically a Fresnel diffraction pattern using any two-dimensional aperture. I have recently written a Macintosh application that creates those images and has a Macintosh user interface (windows, menus, help balloons, etc.) to manipulate the input and output. You can download the application, the Fresnel Diffraction Explorer v1.3 (Beta) (~248k, Carbonized for OS 9 and X, parallelized for Macintosh clusters using Pooch), from here and have a look. You can also download the the 680x0+FPU only version 1.2.1 (~208k). Here are some example parameter files. For non-profit, educational, and scientific users, it's Postcard-Ware. You'll see what I mean in the about box.

Frequently Asked Questions

What is the difference between Fresnel and Fraunhofer diffraction? And where can I find more information? In response to an email, I gave a description describing the two major forms of diffraction.

How do you pronounce "Fresnel"? The s in Fresnel is silent, so it's "Fre'-nel". Augustin Jean Fresnel was a 19th century French mathematician and physicist.

How do you pronounce "Dauger"? It's pronounced "dow-jer". The Dauger name came from a region on the border of France and Germany called Alsace and Lorraine.

Where's the documentation? Other than the parameters download, the downloadable files above contain the application and a Quick Reference file, but there is no manual. If I did write a manual, the bottom line would be "Play with it!" Most Mac users skip the manuals anyway. Besides, the application has help balloons and a self-demonstration. The Quick Reference is meant for those who want a little more in-depth information about the program and its functions. And if you want more information about diffraction, there are reams of books on optics and diffraction in your local large library that I couldn't possibly fit in a little download. (And maybe even somewhere on the web?)

Revision list:


The Fresnel Diffraction Explorer has been Carbonized for the first time for OS X, so now it runs on both Classic Mac OS 9 and the new OS X. Even the self-demonstration, simulating mouse movement and pull-down menus, works correctly on OS X.

Not only that, this application has been parallelized for use with Pooch on Macintosh clusters. You can now combine as many Macs as you desire (running either OS 9 or OS X, or combinations thereof) in a Fresnel diffraction calculation. This version is also compatible with the new multiple tasks per computer features of version 1.3 of Pooch, so that the code can be run in parallel on multiprocessor Macs and multiple Macs simultaneously. These new parallel computing features are compatible with all other parts of the code, including the PICT import, and even the self-demonstration. There is a new Parallel menu which you can use to automatically launch the Fresnel Diffraction Explorer for parallel computing onto a cluster. It also can toggle a MPI monitor window that collects statistics and shows the status of the intra-task communications. Try it and see for yourself!


I updated the demonstration so that it looks okay under both Mac OS 7 and 8.


The Fresnel Diffraction Explorer now features a self running demonstration! This demo shows all the major features of the program, and give you and idea for how you might use it and what you might want to explore yourself. The demo has the program operate on itself, as if a phantom user was at the controls of your computer. ("The Phantom of the Quadra!" :P )

This version also contains a few other changes: Gave the buttons in the control window a more "3-D" look and feel. Prevented the fat pixels from overwriting information on the right of the display when the resolution was at certain sizes. The program is now accompanied by a Quick Reference. Added an easter egg.

Other than any bug fixes along the way (and the future Rhapsody OS ), this is probably the final version of the Fresnel Diffraction Explorer.


The Fresnel Diffraction Explorer now does Fraunhofer diffraction too! I finally got around to writing a Fast Fourier Transform routine after all this time, and now I found the time to implement it. Note to the technically minded: This should give you a hint that my Fresnel algorithms don't use Fourier transforms at all. I'm only giving it a ".1" because I'm not 100% sure if the Fraunhofer output is physically accurate, but it will give you an idea of what the "other" diffraction is like. The Fresnel output is physically accurate, as far as the Fresnel approximation is valid, ever since version 1.0. (I wonder if I should change the name? Fresnel and Fraunhofer Diffraction Explorer, Diffraction Explorer, or what?)

Corrected a problem with reading the aperture type if it was a PICT. I confused the compiler with a 0x8000. Please download the new version.


Corrected a problem with writing to the data format on PCI Power Macs, which also affected repeat runs of the program. It seems that the library routines to convert from 8-byte doubles to 12-byte long doubles fail on the PCI Power Macs, so I created a new parameter format that uses 8-byte doubles. However, v1.0 won't be able to read the new format. Please download the new version.

Corrected a minor "Write to NIL" error using EvenBetterBusError that didn't seem to affect current systems but could show up in the future. Thanks to Scott Thompson for pointing it out!

Calibration: For best results, adjust your monitor so that this is a group of linear grayscale, red, green, and blue bars. Calibration color bars

Here are some images I've made with the program:

Poisson spot This shows the Poisson bright spot a.k.a. the Spot of Arago. Whenever you have a circular obstruction, like a BB or a bowling ball, blocking a point source of light, you'll get this spot. This view is 2 mm wide, using a circle 0.5 mm in radius, 2 m from the wall, and 20 cm from a 632.8 nm source. Yes, the rings around the spot are real and not a computer artifact. The name of this spot has an interesting story.
Open Square This is what results from a square hole 1.4 mm on a side, 2 m from the wall, and 20 cm from a 632.8 nm source. The view is 2 cm wide. Go ahead and compare with standard texts.
Closed Square This is what results from a square obstructing a point source. The color indicates the phase of the light. The dimensions are the same as for the last image. This image has been processed to bring out the low-light details.
Quarter Plane This is what results from a corner obstructing a point source. The corner is 2 m from the wall and 20 cm from a 632.8 nm point source. This view is 2 cm wide. I have confirmed these curving tendrils in experiment. I processed the image to bring out the tendrils.
Quarter Plane Phase Color This is the same as above except the color indicates the phase of the light. Our eyes cannot directly perceive the phase in the light, but there are ways of experimentally verifying their effects. Again, I have processed this image.
Racetrack This was created using a racetrack-shaped hole 4 mm high, 2 m from the wall, and 20 cm from a 2441.4 nm source. The view is 8 cm wide.
Racetrack +45 This was created using a racetrack-shaped hole 4 mm high with a razor blade at 45 degrees on top, 2 m from the wall, and 20 cm from a 2247.3 nm source. The view is 8 cm wide.

The above picture is also one frame from a QuickTime movie (764k) scanning through a range of wavelengths for the same configuration. The application created a PICS file that I converted into a QuickTime format.

And here's a little version of it: Rctrk45 Animation

Koch Curve These were created using a Koch curve. The left is from Fresnel diffraction. The right is from Fraunhofer diffraction with phase (and took less than one second to compute on a Power Mac 8100/100). Koch Fraun

This Fresnel diffraction pattern was created using Computers In Physics.

CIP diffraction image

Click here for a rather large (~540k) Christmas inspired Fresnel diffraction image.

I hope you like it. ;)

This is coming to you with no commercial interruptions.

Back to home.

This page has been accessed times. Thanks for stopping by!

Copyright © 1996-2002 Dean Dauger -
Made on a Mac