Mathematics 309 - spring 2003 - assignment #3

This assignment is about rainbows. It is due by class on Friday, February 14. The programms should be handed in by email, the mathematics by paper or email.

A ray of light entering a drop of water is first refracted, then reflected,, finally refracted again as it leaves the drop, as you saw in Assignment #2. The acute angle between the entering and exiting rays is called the deflection angle, which I'll call d. It depends entirely on the incidence angle i of the ray where it hits the drop, or equivalently on h = sin i, the relative distance of the ray from the center of the drop.

The problems

(1) Find a formula for d as a function of i, also of h. Let n be the index of refraction. Hint: first find a formula for d in terms of the refraction angle r, then plug in a formula for r. Plot the graph of d versus h for red light, in which case n = 1.33. You should do the graph in a PostScript program. (See the sample program below.) Extra bonus for explaining the formula clearly. Note: you should understand well why this formula works, because sooner or later I will ask you to do a similar calculation quickly.

(2) As i goes from 0 to 90o, the deflection goes from 0 up to a maximum and then down again. Use calculus to find a formula for this maximum. Find it explicitly when n = 1.33.

(3) If an observer on the ground watches rainfall opposite a sunset, he will see a rainbow. Why? The rays of light entering his eye will come from raindrops with different deflection. He is not seeing the drops, but the rays that have come through the drops. In any particular direction, he is seeing the rays with a given deflection. Illustrate that the great preponderance of the rays he sees are those whose deflection is close to the maximum, by drawing on a circle around the observer the drops that he sees at a given angle, in the following way. Choose an integer N, and divide up the interval [0, 1] into N intervals, corresponding to N+1 rays entering the drop. Calculate the deflection d of each of these, and plot on the circle at angle d a small dot at that angle. Then draw the radius from that dot to the observer. Do this for N = 10, 100, 1,000. All in PostScript. Make the pictures fairly large.

How to draw function graphs in PostScript

The only new ingredient is defining the function to be graphed as a procedure with one argument x that leaves f(x) on the stack.


Click on image to see PostScript source.

Internet references on rainbows

None is quite so clear as it should be.