A Constrained Extrema Applet

This applet is designed to build intuition about finding local extrema of functions of two variables when constrained to a parameterized curve

• We are trying to find the extrema of f(x,y), constrained to the parametric curve (gx(t), gy(t)).
• The applet has a control window, a FieldMap window and a ConstraintCurveUnwound window.  The FieldMap window initially show the gradient field as white arrows, the constraining curve in green with a perpendicular arrow, a point on th curve in red with  a gradient arrow, and a contour at height z0 in blue.  The ConstraintCurveUnwound graphs t against f(gx(t),gy(t)) with the point, a tangent vector to the point, and the contour in  blue.
• In the FieldMap window, local extrema on a constraint curve can be identified as either by having the gradient of f perpendicular to the curve (the red and green arrow line up), or by having the a level curve tangent to the constraint curve (the glue and green curves just touch).  In the ConstraintCurveUnwound window, local extrema are old fashioned local extrema.  The purple tangent vector is flat at critical points.

Things to notice:
• The coordinates of P0 are (gx(t), gy(t), f(gx(t), gy(t))).  The values of t are controlled by the forward and back buttons in the control panel.  Values can also be typed in.
• The value of z0 is the value of the blue contour curve.  It is controlled by the buttons in the control panel.
• Dragging in the  FieldMap window, changing to rotate lets you view the vector field in 3D.  You can also change the view with the view menu for the FieldMap window.  The view "up the z axis" puts the x and y axes in standard position.  This is a good view for seeing the constraint curve and the gradient field.  Using either "up the x-axis" or "down the y-axis" puts the other two axes in standard position.  Form these views, the contour is a flat line.
• The checkboxes in the control panel let you add or remove the gradient field, the surface (x,y,f(x,y)), and the contour at z=z0.
• The density of arrows for the gradient field and the length of theses arrows can both be set.
Interesting surfaces and constraints:
• A simple but interesting constraint is an off center ellipse, gx(t) = a*cos(t)+b, gy(t) = c*sin(t)+d.  To fit well in the FieldMap, a+B and c+d should both be less than 2.
• Spirograph figures can be obtained with the constrains gx(t) = cos(t) + .3*cos(n*t), gy(t) = sin(t) + .3*sin(n*t) for various values of n.
• A wandering path is obtained with gx(t) = a*cos(m*t)+b, gy(t) = c*sin(n*t)+d with  m and n small but different integers.
• Your favorite function y=h(x) corresponds to gx(t) = t, gy(t) = h(t).
• Versions of the monkey saddle are obtained with f(x,y)=(x^3-3*x*y^2)/(sqrt(x^2+y^2)^n, where n is 1, 2, or 3.
• f(x,y)=sin(Pi*x)*sin(Pi*y) gives an interesting path with an off center ellipse.

This applet was designed as by modifying an applet from a demo by Tom Banchoff at Brown University.  It is used with permission.   Go to the Banchoff Applet Help page.