June25.mws

Today we discussed sections 4.16 through 4.20. The first part of this is "Applications of the mean-value theorem to geometric properties of functions".

This involves the classical theorems like "if
f is continuous on [a, b] and differentiable on the open interval and if 0 < D(f)(x) then f is increasing," and the first derivative test for relative extrema. Keep in mind that these theorems are all rooted in the mean value theorem for differentiable functions, which in turn is rooted in fundamental properties of continuous functions.


An immediate consequence of this is the famous first derivative test for local min/max.

One topic was that of "extremum problems". There is no generic algortihm for finding extreme values of a continuous functions. If the function is differentiable, it is often the case that the equation D(f)(x) = 0 has only finitely many solutions in an interval [a, b] . (In general this is false, but it frequently happens. There is a very deep theorem about this called the Morse Lemma . It is technical, but says that if you have a differentiable function on a "compact manifold" that does not have finitely many critical points, then a tiny pertubation of the function will have finitely many solutions.)

So to find the extreme values, we list the solutions to
D(f)(x) = 0 , append the list with the endpoints of the domain, and evaluate the function at these values. Then we scan for the min and max in this finite list. Note that we do not have to use the first derivative test at all here.

We looked at Maple's min/max implementation of this and studied some of the examples. The example of f(x) = exp(tan(x)) on the interval 0..10 is interesting.

> ?minimize

There is an example on the help screen with a function of two variables z = f(x,y) . The idea here is similar. We begin by solving two equations in two unknowns: D(f)(x) = 0 and D(f)(y) = 0 . Typically there will be finitely many solutions. Then we parameterize the boundary (which is a piecewise smooth curve) to get z(t) = f(x(t),y(t)) . Often this simply involves "restricting the function" by conditions like x = constant or y = constant . We solve D(z)(t) = 0 to get critical points on the boundary. Then we throw in corner points, etc. to get our final, finite list, of places where the extremum can occur. We evaluate the function at these points and scan for min/max.

Next we looked at convexity and the second derivative test. We could define "concave up" to mean that the second derivative is positive, but then the theorem that the graph is concave up if the second derivative is positive would be circular. We looked at the definition of convexity on page 122. The key idea is that all secant lines lie above the graph. The concept of the definition is simply this, but the actual definition has lots of baggage because it quantifies over all x, y in [a, b] and alpha between 0 and 1.

Finally we worked an example of an applied min/max problem. We picked 19 page 195:
A truck is required to be driven 300 miles on a freeway at a constant speed of
x miles per hour. Speed laws require that x be between 30 an 60 mph. Assume that fuel costs 30 cents per gallon, and is consumed at a rate of 2+x^2/600 gallons per hour. If the driver's wages are W dollars per hour, and if he obeys all speed laws, find the most economical speed for W = 0, 1, 2, 3, 4 .

> FuelCost:=x->.3*300/x*(2+x^2/600);

FuelCost := proc (x) options operator, arrow; 90.0*...

> LaborCost:=(x,W)->300*W/x;

LaborCost := proc (x, W) options operator, arrow; 3...

> C:=(x,W)->LaborCost(x,W)+FuelCost(x);

C := proc (x, W) options operator, arrow; LaborCost...

> C(x,W);

300*W/x+90.0*(2+1/600*x^2)/x

> simplify(%);

.1500000000*(2000.*W+1200.+x^2)/x

> solve(diff(C(x,W),x)=0,x);

20*sqrt(5*W+3), -20*sqrt(5*W+3)

> OptimalSpeed:=W->max(60,20*sqrt(5*W+3));

OptimalSpeed := proc (W) options operator, arrow; m...

> MinCost:=W->C(OptimalSpeed(W),W);

MinCost := proc (W) options operator, arrow; C(Opti...

> plot([FuelCost(OptimalSpeed(Wage)),LaborCost(OptimalSpeed(Wage),Wage),MinCost(Wage)],Wage=0..6,dollars,color=[black,black,red],thickness=[2,2,3],title=`Total Cost, Fuel Cost, Labor Cost`);

[Maple Plot]

> plot([
seq(
C(x,k), k=0..4)],x=30..60,color=[red,green,blue,black,brown],thickness=3);

[Maple Plot]

> plot3d(C(x,wage),x=30..60,wage=0..6,axes=boxed,style=patchcontour,labels=[mph,`dollars per hour`,dollars]);

[Maple Plot]

>