Wolfram Computation Meets Knowledge

Rainbow Altitude

A rainbow is a meteorological phenomenon that is caused by reflection, refraction and dispersion of light in water droplets, resulting in a spectrum of light appearing in the sky. It takes the form of a multicolored arc. Rainbows caused by sunlight always appear in the section of sky directly opposite the Sun. The altitude of the top edge of the primary bow depends on the index of refraction and the Sun's position.

The altitude of the rainbow depends on the index of refraction of the droplets and the position of the Sun. As the index of refraction increases, the angles of incidence, refraction and deviation approach 0, and thus the altitude becomes the negative of the altitude of the Sun. As the index of refraction approaches 1, the angles of incidence and refraction approaches one-half \[Pi] radians. The angle of deviation approaches \[Pi] radians, making the altitude roughly that of the Sun but opposite the zenith.

Formula

{QuantityVariable["θ", "Angle"] == QuantityVariable["δ", "Angle"] - QuantityVariable["ϕ", "Angle"], QuantityVariable["δ", "Angle"] == -2*QuantityVariable[Subscript["θ", "i"], "Angle"] + 4*QuantityVariable[Subscript["θ", "r"], "Angle"], Sin[QuantityVariable[Subscript["θ", "i"], "Angle"]] == QuantityVariable[Subscript["n", "w"], "Unitless"]*Sin[QuantityVariable[Subscript["θ", "r"], "Angle"]], Cos[QuantityVariable[Subscript["θ", "i"], "Angle"]]^2 == (-1 + QuantityVariable[Subscript["n", "w"], "Unitless"]^2)/3}

symbol description physical quantity
θ altitude of rainbow "Angle"
δ angle of deviation "Angle"
ϕ altitude of Sun "Angle"
θi angle of incidence "Angle"
θr angle of refraction "Angle"
nw index of refraction "Unitless"

Forms

Examples

Get the resource:

In[1]:=
ResourceObject["Rainbow Altitude"]
Out[1]=

Get the formula:

In[2]:=
FormulaData[ResourceObject["Rainbow Altitude"]]
Out[2]=

Use some values:

In[3]:=
FormulaData[ResourceObject["Rainbow Altitude"], {QuantityVariable[
\!\(\*SubscriptBox[\("\[Theta]"\), \("i"\)]\),"Angle"] -> 
   Quantity[8, "AngularDegrees"]}]
Out[3]=

Publisher Information