(* Content-type: application/mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 6.0' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 145, 7] NotebookDataLength[ 55549, 1655] NotebookOptionsPosition[ 51050, 1524] NotebookOutlinePosition[ 51779, 1549] CellTagsIndexPosition[ 51736, 1546] WindowFrame->Normal ContainsDynamic->False*) (* Beginning of Notebook Content *) Notebook[{ Cell[TextData[{ StyleBox["Lab 2B - Tangent Planes", FontSize->24, FontWeight->"Bold", FontVariations->{"Underline"->True}], "\nMath 2374 - University of Minnesota\nhttp://www.math.umn.edu/math2374\n \ Questions to: rogness@math.umn.edu" }], "Text", CellFrame->True, CellChangeTimes->{{3.411093328284238*^9, 3.411093330947098*^9}}, TextAlignment->Center, FontColor->GrayLevel[1], Background->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Introduction", FontSize->16]], "Section"], Cell[TextData[{ "In last week's lab, we investigated properties of continuity, \ differentiability, and partial derivatives. In this lab, all of the \ functions we consider will be differentiable, which as we learned means that \ we can approximate the function at any given point with a linear \ approximation, or \"tangent plane.\"\n\nThere's an important point here: \ earlier we talked about whether a function is differentiable at the point ", Cell[BoxData[ FormBox[ RowBox[{ OverscriptBox["x", "\[RightVector]"], "=", OverscriptBox["a", "\[RightVector]"]}], TraditionalForm]]], "; if we say that a function is \"differentiable\" without any modifier, we \ mean that it is differentiable at ", StyleBox["every", FontSlant->"Italic"], " point, or at least every point where it is defined. Go to the following \ web page:\n\nhttp://www.math.umn.edu/~rogness/multivar/tanplane.shtml\n\nThis \ demo shows you part of a paraboloid with a tangent plane at a certain point; \ you can click and drag the point to move it around, and LiveGraphics3D will \ automatically show you the tangent plane at the new point.\n\nThis is \ intended to reinforce the point that a \"differentiable\" function doesn't \ have one single tangent plane (or linear approximation, if you prefer that \ language). Rather, it has a different linear approximation at each point!\n\n\ Today we'll learn various methods of finding the equation of the tangent \ plane / linear approximation of a differentiable function. In some sense \ this is one of the most important things you can learn in this course, and \ all of the material for the first month of the class has led to this point. \ You'll even get a foreshadowing of things to come; in lecture, you've learned \ what the gradient is, but you haven't learned all of its properties. In this \ lab you'll see how you can use the gradient to find a tangent plane, which \ will be mentioned later in the book an in lecture." }], "Text", CellChangeTimes->{{3.411093629500535*^9, 3.4110936302344637`*^9}}] }, Closed]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Plotting Planes", FontSize->16]], "Section"], Cell["\<\ Before we begin considering issues of tangency, let's review how to plot \ planes. It might help you to look in your textbook and review Cartesian and \ parametric equations for planes; you can also ask your TA for help. The nicest situation is when we can describe the plane as a function of x and \ y; in that case, we can write the equation of the plane as ``z = ax + by + \ c'' where a, b, and c are real numbers. We can just use Plot3D in those \ cases; for instance, if we had z = 3x - y, we could just use\ \>", "Text"], Cell[BoxData[ RowBox[{"Plot3D", "[", RowBox[{ RowBox[{ RowBox[{"3", "x"}], " ", "-", " ", "y"}], ",", " ", RowBox[{"{", RowBox[{"x", ",", RowBox[{"-", "2"}], ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"y", ",", RowBox[{"-", "2"}], ",", "2"}], "}"}], ",", RowBox[{"AxesLabel", "\[Rule]", RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]], "Input", CellChangeTimes->{{3.411093665463735*^9, 3.41109367072123*^9}}], Cell["\<\ to plot the plane, adjusting the range of x and y if necessary. Even if we can describe a plane with a nice, easy equation, it is sometimes \ more convenient or enlightening to describe the plane with parametric \ equations. If we are given a point and two non-parallel vectors, there is a \ unique plane containing that point parallel to each of the vectors. Let's say \ our vectors are (2,3,5) and (-7,-11,13), and we wish to find the plane \ parallel to those two vectors passing through the point (17, 29, 0). In \ parametric equations, we could write\ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{"(", RowBox[{"17", ",", "29", ",", "0"}], ")"}], " ", "+", " ", RowBox[{"t", " ", RowBox[{"(", RowBox[{"2", ",", "3", ",", "5"}], ")"}]}], " ", "+", " ", RowBox[{"s", RowBox[{"(", RowBox[{ RowBox[{"-", "7"}], ",", RowBox[{"-", "11"}], ",", "13"}], ")"}]}]}]], "DisplayFormula"], Cell["\<\ where s and t range over all real numbers. To plot this plane, we use the \ properties of scalar multiplication and vector addition, and use \ ParametricPlot3D:\ \>", "Text"], Cell[BoxData[ RowBox[{"ParametricPlot3D", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"17", "+", RowBox[{"2", "*", "t"}], "-", RowBox[{"7", "*", "s"}]}], ",", " ", RowBox[{"29", "+", RowBox[{"3", "*", "t"}], "-", RowBox[{"11", "*", " ", "s"}]}], ",", " ", RowBox[{ RowBox[{"5", "*", "t"}], "+", RowBox[{"13", "*", "s"}]}]}], "}"}], ",", " ", RowBox[{"{", RowBox[{"t", ",", RowBox[{"-", "1"}], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"s", ",", RowBox[{"-", "1"}], ",", "1"}], "}"}], ",", RowBox[{"AxesLabel", "\[Rule]", RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]], "Input", CellChangeTimes->{{3.4110937033057947`*^9, 3.411093703585046*^9}}], Cell[TextData[{ "You can keep the parametric equation of the plane in ``un-multiplied out'' \ form and use ParametricPlot3D, although earlier versions of ", StyleBox["Mathematica", FontSlant->"Italic"], " might complain a bit before showing you the graph. Either way works; \ mathematically they are exactly equivalent. The following form may be easier \ to write." }], "Text"], Cell[BoxData[ RowBox[{"ParametricPlot3D", "[", RowBox[{ RowBox[{ RowBox[{"{", RowBox[{"17", ",", " ", "29", ",", "0"}], "}"}], " ", "+", " ", RowBox[{"t", "*", RowBox[{"{", RowBox[{"2", ",", "3", ",", "5"}], "}"}]}], "+", RowBox[{"s", "*", RowBox[{"{", RowBox[{ RowBox[{"-", "7"}], ",", RowBox[{"-", "11"}], ",", "13"}], "}"}]}]}], ",", " ", RowBox[{"{", RowBox[{"t", ",", RowBox[{"-", "1"}], ",", "1"}], "}"}], ",", RowBox[{"{", RowBox[{"s", ",", RowBox[{"-", "1"}], ",", "1"}], "}"}], ",", RowBox[{"AxesLabel", "\[Rule]", RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]], "Input", CellChangeTimes->{{3.411093709298511*^9, 3.4110937098561563`*^9}}], Cell[TextData[{ "One important thing to note is that we've only plotted a small portion of \ the plane. Above we chose values of t and s between -1 and 1, but we can \ choose any range we like. The ranges on s and t don't have to be the same. \ You don't have to use s and t if you don't like; ", StyleBox["Mathematica", FontSlant->"Italic"], " will let you use pretty much any variable name you like. The world is your \ oyster.\n\nThere's one other point you should be aware of. In this class \ you've seen how difficult it can be sometimes to represent three-dimensional \ pictures on a two-dimensional computer screen or piece of paper. A picture \ of a plane can be particularly hard to decipher; it's sometimes difficult to \ tell which part is sloping uphill, which part is going downhill, or even \ whether a plane is horizontal or vertical. In the previous picture, for \ example, it's hard to decide how the plane is situated in space without \ rotating it around. How accurately did you interpret the two-dimensional \ picture before moving it around?" }], "Text", CellChangeTimes->{{3.4110937520367413`*^9, 3.411093784747168*^9}}], Cell[CellGroupData[{ Cell["Example", "Subsection"], Cell["Plot the plane that's described by", "Text"], Cell[BoxData[ RowBox[{ RowBox[{"s", RowBox[{"(", RowBox[{"0", ",", "0", ",", "1"}], ")"}]}], " ", "+", " ", RowBox[{"t", RowBox[{"(", RowBox[{"0.2", ",", " ", "0.2", ",", " ", "2"}], ")"}]}]}]], "DisplayFormula"], Cell["\<\ when s and t range from 2 to 3. It won't look very good\[LongDash]it's ``too \ skinny''. Experiment with some different ranges on s and t until you get a \ nicer picture\[LongDash]one that's a little more ``square''.\ \>", "Text"], Cell[TextData[{ StyleBox["Exercise 1 - A Thought Experiment", FontSize->16, FontWeight->"Bold"], "\n\nAre there planes that are not the graph of a function of x and y? If \ so, which planes are they? If there are no such planes, explain why.\n\nAre \ there planes that ", StyleBox["cannot", FontSlant->"Italic"], " be described by a parametrization? If so, which planes are they? If there \ are no such planes (i.e., any plane whatsoever can be described by a \ parametrization), explain why.\n\nExplain your reasoning!" }], "Text", CellFrame->True, Background->RGBColor[1, 0.498039, 0.498039]] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Tangent Planes Via Partial Derivatives", FontSize->16]], "Section"], Cell[TextData[{ "You've learned that, basically, a function is \"differentiable\" if it has \ a linear approximation; in the case of a function ", Cell[BoxData[ FormBox[ RowBox[{"z", "=", RowBox[{"f", "(", RowBox[{"x", ",", "y"}], ")"}]}], TraditionalForm]]], ", this is the same as saying it has a tangent plane at each point. You've \ also seen the general (cartesian) equation ", Cell[BoxData[ FormBox[ RowBox[{"z", "=", RowBox[{"L", "(", RowBox[{"x", ",", "y"}], ")"}]}], TraditionalForm]]], " of a linear approximation/tangent plane for a function like this; it has \ lots of partial deriatives in it.\n\nIn this section we're going to learn how \ to use partial derivatives to find the ", StyleBox["parametric", FontSlant->"Italic"], " equation of a tangent plane. Before you do anything else, open the \ following page in a web browser and read the material there:", "\n\nhttp://www.math.umn.edu/~rogness/multivar/partialderivs.html\n\nOnce \ you've read the web page, you can continue on to the rest of the lab." }], "Text"], Cell[CellGroupData[{ Cell["\<\ Using Tangent Vectors to find Parametric Equations of Tangent Planes\ \>", "Subsection"], Cell[TextData[{ "So now you've seen that tangent vectors of cross sections through a point \ are in the tangent plane at that point. But wait -- all we need to write \ down the parametric equation of a plane is a point on the plane and two \ vectors in the plane! So, in this situation, we've got all the information \ we need. Given two cross sections of a surface which intersect at a point ", Cell[BoxData[ FormBox[ RowBox[{ OverscriptBox["x", "\[RightVector]"], "=", OverscriptBox["a", "\[RightVector]"]}], TraditionalForm]]], ", the equation of the tangent plane is:" }], "Text"], Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"p", "(", RowBox[{"s", ",", "t"}], ")"}], "=", RowBox[{ OverscriptBox["a", "\[RightVector]"], "+", RowBox[{"s", "\[CenterDot]", RowBox[{"(", RowBox[{ RowBox[{"tan", ".", " ", "vector"}], " ", "of", " ", "first", " ", "cross", " ", "section", " ", "at", " ", "the", " ", "point", " ", OverscriptBox["a", "\[RightVector]"]}], ")"}]}], " ", "+", " ", RowBox[{"t", "\[CenterDot]", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"tan", ".", " ", "vector"}], " ", "of", " ", "second", " ", "cross", " ", "section", " ", "at", " ", "the", " ", "point", " ", OverscriptBox["a", "\[RightVector]"]}], ")"}], "."}]}]}]}], TraditionalForm]], "DisplayFormula", TextAlignment->Center], Cell["\<\ Let's do a real-life example now, by finding the plane tangent to the surface\ \ \>", "Text"], Cell[BoxData[ RowBox[{"z", " ", "=", " ", RowBox[{ SuperscriptBox["x", "2"], " ", "+", " ", RowBox[{"3", "xy"}], " ", "+", " ", SuperscriptBox["y", "2"]}]}]], "DisplayFormula", TextAlignment->Center, FontSize->14], Cell[TextData[{ "at the point (1,-2,-1). First let's plot the surface; we'll use the ", StyleBox["Mesh", FontWeight->"Bold"], " option to turn off the grid, and ", StyleBox["Opacity", FontWeight->"Bold"], " to make it somewhat transparent, so that later on we can see our cross \ sections a little better." }], "Text", CellChangeTimes->{{3.411094093909964*^9, 3.4110941023800573`*^9}}], Cell[BoxData[{ RowBox[{ RowBox[{"f", "[", RowBox[{"x_", ",", "y_"}], "]"}], " ", "=", " ", RowBox[{ RowBox[{"x", "^", "2"}], " ", "+", " ", RowBox[{"3", " ", "x", "*", "y"}], " ", "+", " ", RowBox[{"y", "^", "2"}]}]}], "\[IndentingNewLine]", RowBox[{"surf", " ", "=", " ", RowBox[{"Plot3D", "[", RowBox[{ RowBox[{"f", "[", RowBox[{"x", ",", "y"}], "]"}], ",", " ", RowBox[{"{", RowBox[{"x", ",", "0", ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"y", ",", RowBox[{"-", "3"}], ",", RowBox[{"-", "1"}]}], "}"}], ",", " ", RowBox[{"Mesh", "\[Rule]", "False"}], ",", RowBox[{"AxesLabel", "\[Rule]", RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\"", ",", "\"\\""}], "}"}]}], ",", RowBox[{"PlotStyle", "\[Rule]", RowBox[{"Opacity", "[", "0.5", "]"}]}]}], "]"}]}]}], "Input", CellChangeTimes->{{3.4110941071911697`*^9, 3.4110941140394163`*^9}}], Cell[TextData[{ "Now we need to find the partial derivatives of ", StyleBox["f", FontSlant->"Italic"], " and evaluate them at the point ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"(", RowBox[{"x", ",", "y"}], ")"}], "=", RowBox[{"(", RowBox[{"1", ",", RowBox[{"-", "2"}]}], ")"}]}], TraditionalForm]]], "." }], "Text"], Cell[BoxData[{ RowBox[{ RowBox[{"fx", "[", RowBox[{"x_", ",", "y_"}], "]"}], "=", RowBox[{"D", "[", RowBox[{ RowBox[{"f", "[", RowBox[{"x", ",", "y"}], "]"}], ",", "x"}], "]"}]}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"fy", "[", RowBox[{"x_", ",", "y_"}], "]"}], "=", RowBox[{"D", "[", RowBox[{ RowBox[{"f", "[", RowBox[{"x", ",", "y"}], "]"}], ",", "y"}], "]"}]}], "\[IndentingNewLine]"}], "\[IndentingNewLine]", RowBox[{"fx", "[", RowBox[{"1", ",", RowBox[{"-", "2"}]}], "]"}], "\[IndentingNewLine]", RowBox[{"fy", "[", RowBox[{"1", ",", RowBox[{"-", "2"}]}], "]"}]}], "Input"], Cell[TextData[{ "As you learned in the external web page, the vectors\n\n\t\t\t\t ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"(", RowBox[{"1", ",", "0", ",", RowBox[{ SubscriptBox["f", "x"], "(", RowBox[{"1", ",", RowBox[{"-", "2"}]}], ")"}]}], ")"}], "=", RowBox[{"(", RowBox[{"1", ",", "0", ",", RowBox[{"-", "4"}]}], ")"}]}], TraditionalForm]]], "\n\t\t\t\t ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"(", RowBox[{"0", ",", "1", ",", RowBox[{ SubscriptBox["f", "y"], "(", RowBox[{"1", ",", RowBox[{"-", "2"}]}], ")"}]}], ")"}], "=", RowBox[{"(", RowBox[{"0", ",", "1", ",", RowBox[{"-", "1"}]}], ")"}]}], TraditionalForm]]], " \n\nare both parallel to the tangent plane at our point; The following \ cell draws those two vectors on the surface, starting at the point ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"(", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"f", "(", RowBox[{"1", ",", RowBox[{"-", "2"}]}], ")"}]}], ")"}], "=", RowBox[{ RowBox[{"(", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"-", "1"}]}], ")"}], "."}]}], TraditionalForm]]], " You needn't worry about the syntax of the first two commands; they tell \ ", StyleBox["Mathematica", FontSlant->"Italic"], " to draw two 3D line segments representing the vectors." }], "Text", CellChangeTimes->{{3.411093915885623*^9, 3.411093916859995*^9}, { 3.411094384558765*^9, 3.411094504367691*^9}}], Cell[BoxData[{ RowBox[{ RowBox[{"tangentvectorx", "=", RowBox[{"Graphics3D", "[", RowBox[{"{", RowBox[{"Thick", ",", RowBox[{"Line", "[", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"-", "1"}]}], "}"}], ",", RowBox[{ RowBox[{"{", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"-", "1"}]}], "}"}], "+", RowBox[{"{", RowBox[{"1", ",", "0", ",", RowBox[{"-", "4"}]}], "}"}]}]}], "}"}], "]"}]}], "}"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"tangentvectory", "=", RowBox[{"Graphics3D", "[", RowBox[{"{", RowBox[{"Thick", ",", RowBox[{"Line", "[", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"-", "1"}]}], "}"}], ",", RowBox[{ RowBox[{"{", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"-", "1"}]}], "}"}], "+", RowBox[{"{", RowBox[{"0", ",", "1", ",", RowBox[{"-", "1"}]}], "}"}]}]}], "}"}], "]"}]}], "}"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{"Show", "[", RowBox[{"surf", ",", "tangentvectorx", ",", "tangentvectory"}], "]"}]}], "Input", CellChangeTimes->{ 3.4110932988419867`*^9, {3.411094051766694*^9, 3.4110940720691767`*^9}, { 3.411094339526061*^9, 3.411094367735179*^9}}], Cell["\<\ Rotate the picture and look at it from below to see the vectors. It \ certainly seems plausible that they're in a tangent plane for the surface! Let's go ahead and define the parametric equation for our tangent plane, \ using the equation above.\ \>", "Text", CellChangeTimes->{3.41109451711821*^9}], Cell[BoxData[ RowBox[{ RowBox[{"p", "[", RowBox[{"s_", ",", "t_"}], "]"}], " ", "=", " ", RowBox[{ RowBox[{"{", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"f", "[", RowBox[{"1", ",", RowBox[{"-", "2"}]}], "]"}]}], "}"}], "+", RowBox[{"s", "*", RowBox[{"{", RowBox[{"1", ",", "0", ",", RowBox[{"fx", "[", RowBox[{"1", ",", RowBox[{"-", "2"}]}], "]"}]}], "}"}]}], "+", RowBox[{"t", "*", RowBox[{"{", RowBox[{"0", ",", "1", ",", RowBox[{"fy", "[", RowBox[{"1", ",", RowBox[{"-", "2"}]}], "]"}]}], "}"}]}]}]}]], "Input"], Cell["\<\ Now plot the plane and the surface together in a LiveGraphics3D pop-up \ window:\ \>", "Text"], Cell[BoxData[{ RowBox[{ RowBox[{"surf", " ", "=", " ", RowBox[{"Plot3D", "[", RowBox[{ RowBox[{"f", "[", RowBox[{"x", ",", "y"}], "]"}], ",", " ", RowBox[{"{", RowBox[{"x", ",", "0", ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"y", ",", RowBox[{"-", "3"}], ",", RowBox[{"-", "1"}]}], "}"}], ",", " ", RowBox[{"Mesh", "\[Rule]", "5"}], ",", RowBox[{"AxesLabel", "\[Rule]", RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\"", ",", "\"\\""}], "}"}]}], ",", RowBox[{"PlotStyle", "\[Rule]", "Red"}], ",", RowBox[{"PlotPoints", "\[Rule]", "50"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"tanplane", " ", "=", RowBox[{"ParametricPlot3D", "[", RowBox[{ RowBox[{"p", "[", RowBox[{"s", ",", "t"}], "]"}], ",", " ", RowBox[{"{", RowBox[{"s", ",", RowBox[{"-", "1"}], ",", "1"}], "}"}], ",", " ", RowBox[{"{", RowBox[{"t", ",", RowBox[{"-", "1"}], ",", "1"}], "}"}], ",", RowBox[{"Mesh", "\[Rule]", "5"}], ",", RowBox[{"PlotStyle", "\[Rule]", "Blue"}], ",", RowBox[{"PlotPoints", "\[Rule]", "50"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{"Show", "[", RowBox[{"surf", ",", " ", "tanplane"}], "]"}], "\[IndentingNewLine]"}], "Input", CellChangeTimes->{ 3.411093300433773*^9, {3.4110941556841383`*^9, 3.411094305653688*^9}}], Cell[TextData[{ "Rotate the picture and see if you can convince yourself that this plane \ really is tangent to the surface. (We've talked about how appearances can be \ deceiving, but in this case your eyes aren't lying to you.) Note how the \ plane is above the surface at some points and below it at others; that's \ perfectly fine. It's analogous to the line tangent to the curve y = ", Cell[BoxData[ FormBox[ RowBox[{"sin", " ", "x"}], TraditionalForm]]], " at x = 0, which goes above and beneath the curve:" }], "Text"], Cell[BoxData[ RowBox[{"Plot", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"Sin", "[", "x", "]"}], ",", "x"}], "}"}], ",", RowBox[{"{", RowBox[{"x", ",", RowBox[{ RowBox[{"-", "Pi"}], "/", "2"}], ",", RowBox[{"Pi", "/", "2"}]}], "}"}], ",", RowBox[{"AspectRatio", "\[Rule]", "Automatic"}]}], "]"}]], "Input"] }, Open ]], Cell[CellGroupData[{ Cell["\<\ Using Tangent Vectors to find Cartesian Equations of Tangent Planes\ \>", "Subsection"], Cell["\<\ Sometimes we need to find a Cartesian equation for a tangent plane. Recall \ that the Cartesian equation of a plane looks like\ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"A", RowBox[{"(", RowBox[{"x", "-", SubscriptBox["x", "0"]}], ")"}]}], "+", RowBox[{"B", RowBox[{"(", RowBox[{"y", "-", SubscriptBox["y", "0"]}], ")"}]}], "+", RowBox[{"C", RowBox[{"(", RowBox[{"z", "-", SubscriptBox["z", "0"]}], ")"}]}]}], "=", "0"}]], "DisplayFormula", TextAlignment->Center, FontSize->14], Cell[TextData[{ "where ", Cell[BoxData[ FormBox[ RowBox[{"(", RowBox[{ SubscriptBox["x", "0"], ",", SubscriptBox["y", "0"], ",", SubscriptBox["z", "0"]}], ")"}], TraditionalForm]]], " is a point on the plane, and the vector ", Cell[BoxData[ FormBox[ RowBox[{"(", RowBox[{"A", ",", "B", ",", "C"}], ")"}], TraditionalForm]]], " is normal (i.e. perpendicular) to the plane. Now think back to what we've \ been doing so far: given a surface, we choose a point; then we find two \ curves through that point; then we find the tangent vectors at that point.\n\n\ So we've got a point, and now we need a normal vector. Why not just use the \ cross product of the two tangent vectors? They're both in the tangent plane, \ so their cross product is perpendicular to the plane.\n\nHere's the \ parametric equation of the tangent plane we just found, which touches the \ surface at ", Cell[BoxData[ FormBox[ RowBox[{"(", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"-", "1"}]}], ")"}], TraditionalForm]]], ". " }], "Text"], Cell[BoxData[ RowBox[{ RowBox[{"p", "[", RowBox[{"s_", ",", "t_"}], "]"}], " ", "=", " ", RowBox[{ RowBox[{"{", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"f", "[", RowBox[{"1", ",", RowBox[{"-", "2"}]}], "]"}]}], "}"}], "+", RowBox[{"s", "*", RowBox[{"{", RowBox[{"1", ",", "0", ",", RowBox[{"fx", "[", RowBox[{"1", ",", RowBox[{"-", "2"}]}], "]"}]}], "}"}]}], "+", RowBox[{"t", "*", RowBox[{"{", RowBox[{"0", ",", "1", ",", RowBox[{"fy", "[", RowBox[{"1", ",", RowBox[{"-", "2"}]}], "]"}]}], "}"}]}]}]}]], "Input"], Cell[TextData[{ "The two tangent vectors are ", Cell[BoxData[ FormBox[ RowBox[{"(", RowBox[{"1", ",", "0", ",", RowBox[{"-", "4"}]}], ")"}], TraditionalForm]]], " and ", Cell[BoxData[ FormBox[ RowBox[{"(", RowBox[{"0", ",", "1", ",", RowBox[{"-", "1"}]}], ")"}], TraditionalForm]]], ", so our normal vector is their cross product. ", StyleBox["Mathematica", FontSlant->"Italic"], " can compute cross products with a command named, not surprisingly, ", StyleBox["Cross", FontWeight->"Bold"], ":" }], "Text"], Cell[BoxData[ RowBox[{"Cross", "[", RowBox[{ RowBox[{"{", RowBox[{"1", ",", "0", ",", RowBox[{"-", "4"}]}], "}"}], ",", RowBox[{"{", RowBox[{"0", ",", "1", ",", RowBox[{"-", "1"}]}], "}"}]}], "]"}]], "Input"], Cell["Therefore our Cartesian equation for this same plane is", "Text"], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"4", RowBox[{"(", RowBox[{"x", "-", "1"}], ")"}]}], "+", RowBox[{"1", RowBox[{"(", RowBox[{"y", "+", "2"}], ")"}]}], "+", RowBox[{"1", RowBox[{"(", RowBox[{"z", "+", "1"}], ")"}]}]}], "=", "0"}], "\[IndentingNewLine]"}], "\[IndentingNewLine]", RowBox[{"z", "=", RowBox[{ RowBox[{ RowBox[{"-", "4"}], "x"}], "-", "y", "+", "1"}]}]}], "DisplayFormula", TextAlignment->Center], Cell[TextData[{ "Let's plot this using ", StyleBox["Plot3D", FontWeight->"Bold"], " and show it with the original surface:" }], "Text"], Cell[BoxData[{ RowBox[{ RowBox[{"surf", " ", "=", " ", RowBox[{"Plot3D", "[", RowBox[{ RowBox[{"f", "[", RowBox[{"x", ",", "y"}], "]"}], ",", " ", RowBox[{"{", RowBox[{"x", ",", "0", ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"y", ",", RowBox[{"-", "3"}], ",", RowBox[{"-", "1"}]}], "}"}], ",", " ", RowBox[{"Mesh", "\[Rule]", "5"}], ",", RowBox[{"AxesLabel", "\[Rule]", RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\"", ",", "\"\\""}], "}"}]}], ",", RowBox[{"PlotStyle", "\[Rule]", "Red"}], ",", RowBox[{"PlotPoints", "\[Rule]", "50"}]}], "]"}]}], ";", RowBox[{"tanplane2", "=", RowBox[{"Plot3D", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"-", "4"}], "x"}], "-", "y", "+", "1"}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "2"}], "}"}], ",", RowBox[{"{", RowBox[{"y", ",", RowBox[{"-", "1"}], ",", RowBox[{"-", "3"}]}], "}"}], ",", RowBox[{"Mesh", "\[Rule]", "5"}]}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{"Show", "[", RowBox[{"surf", ",", "tanplane2"}], "]"}]}], "Input", CellChangeTimes->{ 3.4110933094282207`*^9, {3.41109456065294*^9, 3.411094588226153*^9}}], Cell["\<\ Are you convinced that this is the same tangent plane? It certainly looks \ that way, and in fact it is!\ \>", "Text"], Cell[TextData[{ StyleBox["Exercise 2", FontSize->16, FontWeight->"Bold"], "\n\nIn this exercise you're going to find the linear approximation (or \ tangent plane, if you prefer) of the function ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"g", "(", RowBox[{"x", ",", "y"}], ")"}], "=", RowBox[{ SuperscriptBox["x", "2"], "-", SuperscriptBox["y", "2"]}]}], TraditionalForm]]], "at the point ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"(", RowBox[{"x", ",", "y"}], ")"}], "=", RowBox[{"(", RowBox[{"1", ",", "2"}], ")"}]}], TraditionalForm]]], ". Your work should include the following steps:\n\n(a) Describe the cross \ sections of the surface defined by ", Cell[BoxData[ FormBox[ RowBox[{"x", "=", "1"}], TraditionalForm]]], " and ", Cell[BoxData[ FormBox[ RowBox[{"y", "=", "2"}], TraditionalForm]]], ". \n\n(b) Find the partial derivatives of ", StyleBox["g", FontSlant->"Italic"], " at the appropriate point; using these values, find two vectors tangent to \ the surface there.", "\n\n(c) Give simplified parametric and cartesian equations for the tangent \ plane.\n\nYour writeup should include a good picture of both the surface and \ the tangent plane. You should put some thought into the ranges of the x- and \ y-values in your picture; if you're too close, you won't be able to tell the \ difference between the plane and the surface, but if you're too far away, the \ resulting picture may not be very useful. In particular, if your picture \ clearly shows that your plane is ", StyleBox["not", FontSlant->"Italic"], " tangent, or if it's impossible to tell, you will most likely lose points.\n\ \n", StyleBox["Exercise 3", FontSize->16, FontWeight->"Bold"], "\n\nIn this exercise you're going to find the linear approximation (or \ tangent plane, if you prefer) of the function ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"g", "(", RowBox[{"x", ",", "y"}], ")"}], "=", RowBox[{ RowBox[{"sin", "(", "x", ")"}], RowBox[{"cos", "(", "y", ")"}]}]}], TraditionalForm]]], "at the point ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"(", RowBox[{"x", ",", "y"}], ")"}], "=", RowBox[{"(", RowBox[{ RowBox[{"\[Pi]", "/", "4"}], ",", RowBox[{ RowBox[{"-", "\[Pi]"}], "/", "4"}]}], ")"}]}], TraditionalForm]]], ". Your work should include the following steps:\n\n(a) Describe the cross \ sections of the surface defined by ", Cell[BoxData[ FormBox[ RowBox[{"x", "=", RowBox[{"\[Pi]", "/", "4"}]}], TraditionalForm]]], " and ", Cell[BoxData[ FormBox[ RowBox[{"y", "=", RowBox[{ RowBox[{"-", "\[Pi]"}], "/", "4"}]}], TraditionalForm]]], ". \n\n(b) Find the partial derivatives of ", StyleBox["g", FontSlant->"Italic"], " at the appropriate point; using these values, find two vectors tangent to \ the surface there.", "\n\n(c) Give simplified parametric and cartesian equations for the tangent \ plane.\n\nYour writeup should include a good picture of both the surface and \ the tangent plane. You should put some thought into the ranges of the x- and \ y-values in your picture; if you're too close, you won't be able to tell the \ difference between the plane and the surface, but if you're too far away, the \ resulting picture may not be very useful. In particular, if your picture \ clearly shows that your plane is ", StyleBox["not", FontSlant->"Italic"], " tangent, or if it's impossible to tell, you will most likely lose points.\n\ " }], "Text", CellFrame->True, Background->RGBColor[1, 0.498039, 0.498039]] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Tangent Planes Via Gradients", FontSize->16]], "Section"], Cell["\<\ Another way to find the tangent plane to a surface is to use the gradient \ vector. Recall that the gradient vector of a function f(x,y) is defined to be\ \ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ OverscriptBox["\[Del]", "\[RightVector]"], "f"}], RowBox[{"(", RowBox[{"x", ",", "y"}], ")"}]}], "=", RowBox[{ RowBox[{"(", RowBox[{ FractionBox[ RowBox[{"\[PartialD]", "f"}], RowBox[{"\[PartialD]", "x"}]], ",", " ", FractionBox[ RowBox[{"\[PartialD]", "f"}], RowBox[{"\[PartialD]", "y"}]]}], ")"}], "."}]}]], "DisplayFormula", TextAlignment->Center], Cell[TextData[{ "Hmmm. This is a two-dimensional vector, and to define a plane in 3-space, \ we'll definitely need vectors with three components. We get around this by \ doing some minor rearranging. Our surface is defined by ", Cell[BoxData[ FormBox[ RowBox[{"z", "=", RowBox[{"f", "(", RowBox[{"x", ",", "y"}], ")"}]}], TraditionalForm]]], ". We could move everything over to the same side and say that our surface \ is defined by the equation" }], "Text"], Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"z", "-", RowBox[{"f", "(", RowBox[{"x", ",", "y"}], ")"}]}], "=", "0"}], TraditionalForm]], "DisplayFormula", TextAlignment->Center, FontSize->14], Cell[TextData[{ "You might be thinking that this is an odd step; if anything, it's a more \ complicated way to write it. That's true, and it's going to get a little \ worse. Rather than saying our surface is defined by this equation, let's \ defined a ", StyleBox["new", FontSlant->"Italic"], " function:" }], "Text"], Cell[BoxData[ RowBox[{ RowBox[{"g", RowBox[{"(", RowBox[{"x", ",", "y", ",", "z"}], ")"}]}], " ", "=", " ", RowBox[{"z", " ", "-", " ", RowBox[{"f", RowBox[{"(", RowBox[{"x", ",", "y"}], ")"}]}]}]}]], "DisplayFormula", TextAlignment->Center], Cell[TextData[{ "And now we say that our function is the ", StyleBox["level set", FontSlant->"Italic"], " defined by ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"g", "(", RowBox[{"x", ",", "y", ",", "z"}], ")"}], "=", "0"}], TraditionalForm]]], ". So now instead of the nice, simple statement ", Cell[BoxData[ FormBox[ RowBox[{"z", "=", RowBox[{"f", "(", RowBox[{"x", ",", "y"}], ")"}]}], TraditionalForm]]], ", we're suddenly talking about level sets. Yikes! There's a reason for \ this, however...\n\nNotice that ", Cell[BoxData[ FormBox[ RowBox[{"g", "(", RowBox[{"x", ",", "y", ",", "z"}], ")"}], TraditionalForm]]], " is a function of three variables, and its gradient ", Cell[BoxData[ FormBox["is", TraditionalForm]]] }], "Text"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ OverscriptBox["\[Del]", "\[RightVector]"], "g"}], RowBox[{"(", RowBox[{"x", ",", "y", ",", "z"}], ")"}]}], "=", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"-", FractionBox[ RowBox[{"\[PartialD]", "f"}], RowBox[{"\[PartialD]", "x"}]]}], ",", " ", RowBox[{"-", FractionBox[ RowBox[{"\[PartialD]", "f"}], RowBox[{"\[PartialD]", "y"}]]}], ",", " ", "1"}], ")"}], "."}]}]], "DisplayFormula", TextAlignment->Center], Cell[TextData[{ "Now recall from lecture that ", StyleBox["the gradient of a function g is perpendicular to the level sets of \ g", FontSlant->"Italic"], ". (", StyleBox["If you haven't seen this in lecture yet, you will soon. Just take \ it for granted here; it might be a good idea to ask your TA to draw a picture \ of what this means", FontWeight->"Bold", FontSlant->"Italic"], ".) ", "In other words:\n\n-- We can start with a point (x,y,z) which is on the \ level set ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"g", "(", RowBox[{"x", ",", "y", ",", "z"}], ")"}], "=", "0"}], TraditionalForm]]], ".\n-- Because of the way we defined ", Cell[BoxData[ FormBox[ RowBox[{"g", "(", RowBox[{"x", ",", "y", ",", "z"}], ")"}], TraditionalForm]]], ", this is the same as saying the point is on the surface ", Cell[BoxData[ FormBox[ RowBox[{"z", "=", RowBox[{"f", "(", RowBox[{"x", ",", "y"}], ")"}]}], TraditionalForm]]], ".\n-- Furthermore, ", Cell[BoxData[ RowBox[{ RowBox[{ OverscriptBox["\[Del]", "\[RightVector]"], "g"}], RowBox[{"(", RowBox[{"x", ",", "y", ",", "z"}], ")"}]}]], TextAlignment->Center], "will be perpendicular (or normal) to our surface at that point.\n-- In \ particular, we can use ", Cell[BoxData[ RowBox[{ RowBox[{ OverscriptBox["\[Del]", "\[RightVector]"], "g"}], RowBox[{"(", RowBox[{"x", ",", "y", ",", "z"}], ")"}]}]], TextAlignment->Center], "as a normal vector to define the equation for our tangent plane!\n\nLet's \ use this method quickly to find the same tangent plane we've been working \ with this whole time. Remember that the function is given by:" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"f", "[", RowBox[{"x_", ",", "y_"}], "]"}], " ", "=", " ", RowBox[{ RowBox[{"x", "^", "2"}], " ", "+", " ", RowBox[{"3", " ", "x", "*", "y"}], " ", "+", " ", RowBox[{"y", "^", "2"}]}]}]], "Input"], Cell[BoxData[ RowBox[{ SuperscriptBox["x", "2"], "+", RowBox[{"3", " ", "x", " ", "y"}], "+", SuperscriptBox["y", "2"]}]], "Output", CellChangeTimes->{3.411778652808269*^9}] }, Open ]], Cell["So we can do our magic \"new\" function like this:", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"g", "[", RowBox[{"x_", ",", "y_", ",", "z_"}], "]"}], "=", RowBox[{"z", "-", RowBox[{"f", "[", RowBox[{"x", ",", "y"}], "]"}]}]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"-", SuperscriptBox["x", "2"]}], "-", RowBox[{"3", " ", "x", " ", "y"}], "-", SuperscriptBox["y", "2"], "+", "z"}]], "Output", CellChangeTimes->{3.411778653826305*^9}] }, Open ]], Cell[TextData[{ "We're interested in the gradient at the point ", Cell[BoxData[ FormBox[ RowBox[{"(", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"-", "1"}]}], ")"}], TraditionalForm]]], ". ", StyleBox["Note the new command, Grad[]", FontWeight->"Bold"], ", ", StyleBox["which computes the gradient:", FontWeight->"Bold"] }], "Text", CellChangeTimes->{{3.4117776198834267`*^9, 3.41177766114878*^9}, { 3.411778660440173*^9, 3.4117786782456083`*^9}}], Cell[CellGroupData[{ Cell[BoxData[{ RowBox[{ RowBox[{"gradg", "[", RowBox[{"x_", ",", "y_", ",", "z_"}], "]"}], "=", RowBox[{"Grad", "[", RowBox[{"g", "[", RowBox[{"x", ",", "y", ",", "z"}], "]"}], "]"}]}], "\[IndentingNewLine]", RowBox[{"gradg", "[", RowBox[{"1", ",", RowBox[{"-", "2"}], ",", RowBox[{"-", "1"}]}], "]"}]}], "Input", CellChangeTimes->{{3.411094636307225*^9, 3.411094698657606*^9}, { 3.4110947820840893`*^9, 3.411094785058857*^9}, {3.411094828581729*^9, 3.4110948390716543`*^9}, 3.411777212033712*^9, {3.4117786496574173`*^9, 3.4117786502702503`*^9}}], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{ RowBox[{ RowBox[{"-", "2"}], " ", "x"}], "-", RowBox[{"3", " ", "y"}]}], ",", RowBox[{ RowBox[{ RowBox[{"-", "3"}], " ", "x"}], "-", RowBox[{"2", " ", "y"}]}], ",", "1"}], "}"}]], "Output", CellChangeTimes->{3.41177865687007*^9}], Cell[BoxData[ RowBox[{"{", RowBox[{"4", ",", "1", ",", "1"}], "}"}]], "Output", CellChangeTimes->{3.411778656871717*^9}] }, Open ]], Cell["Thus the Cartesian equation of the tangent plane is:", "Text"], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"4", RowBox[{"(", RowBox[{"x", "-", "1"}], ")"}]}], "+", RowBox[{"(", RowBox[{"y", "+", "2"}], ")"}], "+", RowBox[{"(", RowBox[{"z", "+", "1"}], ")"}]}], "=", "0"}], "\[IndentingNewLine]"}], "\[IndentingNewLine]", RowBox[{"z", "=", RowBox[{ RowBox[{ RowBox[{"-", "4"}], "x"}], "-", "y", "+", "1"}]}]}], "DisplayFormula", TextAlignment->Center], Cell["\<\ Which is exactly what we found before. Good! Although the \"gradient method\" of finding a tangent plane might seem more \ complicated -- particularly if you don't like level sets -- it's very, very \ useful. We didn't have to find any cross sections, find tangent vectors, and \ so on. We just rewrote the original equation, computed one gradient, and we \ were basically done!\ \>", "Text"], Cell[TextData[{ StyleBox["Exercise 4", FontSize->16, FontWeight->"Bold"], "\n\nUse the gradient method to find the cartesian equation of the plane \ tangent to\n\n", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"f", "(", RowBox[{"x", ",", "y"}], ")"}], "=", RowBox[{ RowBox[{"Exp", "(", RowBox[{ RowBox[{"-", SuperscriptBox["x", "2"]}], "-", SuperscriptBox["y", "2"]}], ")"}], "*", "x"}]}], TraditionalForm]]], "\n\nat the point ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"(", RowBox[{"0", ",", "0", ",", RowBox[{"f", "(", RowBox[{"0", ",", "0"}], ")"}]}], ")"}], "."}], TraditionalForm]]], " Show the graph of f(x,y) and this tangent plane together on the same \ plot. Be sure to show your work and explain your reasoning.\n\n", StyleBox["Exercise 5", FontSize->16, FontWeight->"Bold"], "\n\nUse the gradient method to find the cartesian equation of the plane \ tangent to\n\n", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"f", "(", RowBox[{"x", ",", "y"}], ")"}], "=", RowBox[{"y", "*", RowBox[{"Cos", "(", "x", ")"}]}]}], TraditionalForm]]], "\n\nat the point ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"(", RowBox[{"0", ",", RowBox[{"\[Pi]", "/", "4"}], ",", RowBox[{"f", "(", RowBox[{"0", ",", RowBox[{"\[Pi]", "/", "4"}]}], ")"}]}], ")"}], "."}], TraditionalForm]]], " Show the graph of f(x,y) and this tangent plane together on the same \ plot; use the ranges -\[Pi] to \[Pi] for both x and y. Be sure to show your \ work and explain your reasoning. In particular, with the suggested ranges \ the \"true\" tangent plane looks like it sticks through part of the surface. \ You may want to explain why that's the case." }], "Text", CellFrame->True, Background->RGBColor[1, 0.498039, 0.498039]] }, Closed]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Tangent Plane Conspiracy Theory", FontSize->16]], "Section"], Cell["\<\ You are not responsible for the material in this section, but we've included \ it for those people who are interested in the mathematics behind all of this; \ it turns out that all of the different methods of finding tangent planes \ aren't really all that different!\ \>", "Text", CellFrame->True, Background->GrayLevel[0.833326]], Cell[TextData[{ "In this section, we'll learn that, despite all appearances to the contrary, \ the ``tangent vectors'' and ``gradient vector'' methods are surreptitiously \ working together and are engaged in a ", StyleBox["secret government conspiracy!", FontSlant->"Italic"], "\n\nOkay, there's no government conspiracy (well...none that ", StyleBox["I'm", FontSlant->"Italic"], " aware of), but it is true that the two methods are working together\ \[LongDash]in fact, they are just different ways of looking at the same \ thing. Let's talk about directional derivatives for a bit before explaining \ why they're the same.\n\nAbove we were talking about partial derivatives and \ directions, which should remind you of directional derivatives. In the \ Tangent Vectors section, when specifying ``the planes y = 2x - 4 and y = -x - \ 1'', we were really talking about direction vectors. In the above cases, the \ corresponding direction vectors would be" }], "Text"], Cell[BoxData[ RowBox[{ RowBox[{ FractionBox["1", SqrtBox["5"]], RowBox[{"(", RowBox[{"1", ",", "2"}], ")"}], " ", "and", " ", FractionBox["1", SqrtBox["2"]], RowBox[{"(", RowBox[{"1", ",", RowBox[{"-", "1"}]}], ")"}]}], ","}]], "DisplayFormula", TextAlignment->Center], Cell[TextData[{ "respectively. We are basically using the slope of a line: y = 2x - 4 is a \ line (in two dimensions) with slope 2. The vector (1,2) is parallel to that \ line, and above we just normalized it. The other direction vector was \ obtained in a similar way. Once we know direction vectors, we just need to \ take the dot product with the gradient vector to find the directional \ derivative. The conspiracy is already unravelling.\n\nFor the function f(x,y) \ = ", Cell[BoxData[ FormBox[ RowBox[{ SuperscriptBox["x", "2"], " ", "+", " ", RowBox[{"3", "xy"}], "+", " ", SuperscriptBox["y", "2"]}], TraditionalForm]]], " at the point (1,-2), and the first direction vector\[LongDash]call it u\ \[LongDash]we have" }], "Text"], Cell[BoxData[ RowBox[{ SubscriptBox["Df", "u"], "=", " ", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ FractionBox[ RowBox[{"\[PartialD]", "f"}], RowBox[{"\[PartialD]", "x"}]], ",", " ", FractionBox[ RowBox[{"\[PartialD]", "f"}], RowBox[{"\[PartialD]", "y"}]]}], ")"}], "\[CenterDot]", RowBox[{"(", RowBox[{ FractionBox["1", SqrtBox["5"]], ",", FractionBox["2", SqrtBox["5"]]}], ")"}]}], " ", "=", " ", RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"-", "4"}], ",", " ", RowBox[{"-", "1"}]}], ")"}], "\[CenterDot]", RowBox[{"(", RowBox[{ FractionBox["1", SqrtBox["5"]], ",", FractionBox["2", SqrtBox["5"]]}], ")"}]}], " ", "=", " ", RowBox[{"-", FractionBox["6", SqrtBox["5"]]}]}]}]}]], "DisplayFormula", TextAlignment->Center], Cell[TextData[{ "We interpret this by saying ``in the direction of u, f is increasing at a \ rate of ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"-", "6"}], "/", SqrtBox["5"]}], TraditionalForm]]], ".'' The upshot of this is that (", Cell[BoxData[ FormBox[ RowBox[{"1", "/", SqrtBox["5"]}], TraditionalForm]]], ", ", Cell[BoxData[ FormBox[ RowBox[{"2", "/", SqrtBox["5"]}], TraditionalForm]]], ", ", Cell[BoxData[ FormBox[ RowBox[{ RowBox[{"-", "6"}], "/", SqrtBox["5"]}], TraditionalForm]]], ") is a tangent vector to f(x,y), and it's parallel to \ (1,2,-6)\[LongDash]the tangent vector we found by using the path we described \ in the first section. We get this vector by taking the direction vector\ \[LongDash]a two-dimensional vector\[LongDash]and adding a third component, \ which is given by the directional derivative of f(x,y). In general, this \ means that" }], "Text"], Cell[BoxData[ RowBox[{"(", RowBox[{"u1", ",", " ", "u2", ",", " ", RowBox[{ SubscriptBox["D", "u"], "f"}]}], ")"}]], "DisplayFormula"], Cell[TextData[{ "is a vector tangent to the surface z = f(x,y). You should do this same \ process with the other direction vector above and make sure that you end up \ with a tangent vector parallel to (1,-1,-3).\n\nOf course, there's nothing \ special about those two directional vectors above. We can use ", StyleBox["any", FontSlant->"Italic"], " two non-parallel direction vectors and we'll get the same \ plane\[LongDash]which is exactly what you would hope for, since a function \ can have only one tangent plane (or no tangent plane, if the function isn't \ differentiable). The following exercise will help you expose the conspiracy\ \[LongDash]er, show that the tangent planes from the ``tangent vectors \ method'' and from the ``gradient vectors method'' are in fact the same. We'll \ do that by comparing the normal vectors of the resulting planes." }], "Text"], Cell[TextData[{ StyleBox["Exercise ", FontSize->16, FontWeight->"Bold"], "\n\n(Notice that this isn't in a red box; you don't have to hand this \ exercise in. You might find it interesting, however.)\n\nAs discussed in the \ Gradient Vector section, the gradient of z - f(x,y) represents a normal \ vector to the tangent plane, so our main objective is to find the normal \ vector of the plane we get from the tangent vector method. We'll use an \ arbitrary differentiable function f(x,y) and two non-parallel direction \ vectors u = (u1, u2) and v = (v1, v2).\n\n\t(i) Find the vectors tangent to \ f(x,y) in the directions of u and v. Describe them in terms of u1, u2, v1, \ v2, and the partials of f (\[PartialD]f / \[PartialD]x and \[PartialD]f / \ \[PartialD]y).\n\n\t(ii) Find the normal vector of the plane spanned by those \ two vectors.\n\t\n\t(iii) Show that the normal vector you found in (ii) is \ parallel to the gradient vector of the function g(x,y,z) = z - f(x,y).\n\t\n\t\ (iii) What does this imply about the tangent planes found using the two \ different methods?\n " }], "Text", CellFrame->True, Background->GrayLevel[0.833326]], Cell[CellGroupData[{ Cell["Credits", "Subsubsection"], Cell[TextData[{ "This lab is a descendent of an earlier lab on Tangent Planes written by \ Cindy Kaus. Dan Drake did a major rewrite in 2002, and then I overhauled it \ again in February 2004. We changed the focus a little bit, and added a few \ things here and there; having taught this lab for a few years now, we've \ learned what the sticking points are for students, so I've tried to add extra \ explanations in these parts. I also changed the exercises, except for #1, \ which Dan wrote, and the pseudo-exercise in the \"Conspiracy Theory\" \ section, which is also Dan's. I changed the rest of them so we'd have a \ little variety; the previous exercises have been used for the last 4 years or \ so.\n\nIt's a little difficult to completely describe who did what, but \ here's an attempt:\n\n-- I don't believe any of the writing is Cindy's; the \ only thing remaining is her choice of the surface and the point where we find \ the tangent planes.\n\n-- The \"Plotting Planes\" and \"Tangent Plane \ Conspiracy Theory\" sections are all Dan's; at most I changed a few words \ here or there, or added a ", StyleBox["Live", FontWeight->"Bold"], " command.\n\n-- The other sections are fairly major rewrites of Dan's \ original sections. A lot of his original text remains. Some of it remains \ but has been modified a bit, because of reorganization, etc. Some of it is \ new text added by me. To make things more complicated, it's all intertwined; \ many paragraphs combine Dan's writing with mine.\n\n[ Update (Fall 2004): \ switching textbooks really messed this lab up. We used to parametrize \ \"general\" cross sections, i.e. the points in the surface over any line in \ the xy-plane which went through the appropriate surface. In the new \ textbook, students know about parametric equations of lines, but not \ parametric curves, and not the tangent vector of a parametric curve. I had \ to gut that section and replace it with a version where we only use tangent \ vectors derived from the partial derivatives. Ah well. ]\n\nMinor updates in \ January 2008 for ", StyleBox["Mathematica", FontSlant->"Italic"], " 6.0.\n\nThis would be a major mess, but fortunately we've all agreed to \ use the same license, and it works out. The current version of the lab is \ copyright 2004 by Jonathan Rogness (rogness@math.umn.edu) and is protected by \ the Creative Commons Attribution-NonCommercial-ShareAlike License. You can \ find more information on this license at \ http://creativecommons.org/licenses/by-nc-sa/1.0/. (As mentioned, parts of \ this are copyright 2000 by Cindy Kaus and 2002 by Dan Drake and are protected \ under the same license.)\n\nAlthough it's not specifically required by the \ license, I'd appreciate it if you let me know if you use parts of our labs, \ just so I can keep track of it. Please send me any questions or comments!" }], "Text", CellChangeTimes->{{3.411094950361726*^9, 3.411094959354868*^9}}] }, Closed]] }, Closed]] }, AutoGeneratedPackage->Automatic, ScreenStyleEnvironment->"Working", WindowSize->{672, 649}, WindowMargins->{{26, Automatic}, {Automatic, 22}}, PrintingPageRange->{Automatic, Automatic}, PrintingOptions->{"Magnification"->1, "PaperOrientation"->"Portrait", "PaperSize"->{612, 792}, "PostScriptOutputFile":>FrontEnd`FileName[{$RootDirectory, "user001", "drake", "mathematica", "new-diff"}, "lab3b.nb.ps", CharacterEncoding -> "iso8859-1"]}, ShowSelection->True, FrontEndVersion->"6.0 for Mac OS X x86 (32-bit) (April 20, 2007)", StyleDefinitions->"Default.nb" ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[568, 21, 422, 12, 99, "Text"], Cell[CellGroupData[{ Cell[1015, 37, 66, 1, 63, "Section"], Cell[1084, 40, 2057, 33, 328, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[3178, 78, 69, 1, 33, "Section"], Cell[3250, 81, 538, 9, 101, "Text"], Cell[3791, 92, 512, 15, 27, "Input"], Cell[4306, 109, 581, 10, 116, "Text"], Cell[4890, 121, 350, 11, 20, "DisplayFormula"], Cell[5243, 134, 184, 4, 41, "Text"], Cell[5430, 140, 809, 24, 43, "Input"], Cell[6242, 166, 383, 8, 56, "Text"], Cell[6628, 176, 807, 24, 43, "Input"], Cell[7438, 202, 1152, 18, 176, "Text"], Cell[CellGroupData[{ Cell[8615, 224, 29, 0, 34, "Subsection"], Cell[8647, 226, 50, 0, 26, "Text"], Cell[8700, 228, 241, 8, 20, "DisplayFormula"], Cell[8944, 238, 240, 4, 41, "Text"], Cell[9187, 244, 606, 14, 166, "Text"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[9842, 264, 92, 1, 33, "Section"], Cell[9937, 267, 1076, 24, 176, "Text"], Cell[CellGroupData[{ Cell[11038, 295, 98, 2, 34, "Subsection"], Cell[11139, 299, 604, 12, 73, "Text"], Cell[11746, 313, 817, 21, 22, "DisplayFormula"], Cell[12566, 336, 103, 3, 26, "Text"], Cell[12672, 341, 230, 7, 25, "DisplayFormula"], Cell[12905, 350, 396, 10, 41, "Text"], Cell[13304, 362, 959, 26, 58, "Input"], Cell[14266, 390, 358, 14, 26, "Text"], Cell[14627, 406, 672, 23, 88, "Input"], Cell[15302, 431, 1591, 50, 137, "Text"], Cell[16896, 483, 1577, 48, 88, "Input"], Cell[18476, 533, 312, 7, 71, "Text"], Cell[18791, 542, 647, 22, 27, "Input"], Cell[19441, 566, 104, 3, 26, "Text"], Cell[19548, 571, 1455, 41, 103, "Input"], Cell[21006, 614, 534, 10, 71, "Text"], Cell[21543, 626, 355, 11, 27, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[21935, 642, 97, 2, 34, "Subsection"], Cell[22035, 646, 151, 3, 41, "Text"], Cell[22189, 651, 418, 16, 24, "DisplayFormula"], Cell[22610, 669, 1088, 29, 131, "Text"], Cell[23701, 700, 647, 22, 27, "Input"], Cell[24351, 724, 552, 20, 41, "Text"], Cell[24906, 746, 241, 8, 27, "Input"], Cell[25150, 756, 71, 0, 26, "Text"], Cell[25224, 758, 498, 18, 51, "DisplayFormula"], Cell[25725, 778, 140, 5, 26, "Text"], Cell[25868, 785, 1280, 37, 73, "Input"], Cell[27151, 824, 129, 3, 26, "Text"], Cell[27283, 829, 3633, 101, 578, "Text"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[30965, 936, 82, 1, 33, "Section"], Cell[31050, 939, 179, 4, 41, "Text"], Cell[31232, 945, 459, 16, 40, "DisplayFormula"], Cell[31694, 963, 480, 11, 56, "Text"], Cell[32177, 976, 209, 8, 22, "DisplayFormula"], Cell[32389, 986, 324, 8, 41, "Text"], Cell[32716, 996, 272, 9, 20, "DisplayFormula"], Cell[32991, 1007, 796, 26, 71, "Text"], Cell[33790, 1035, 536, 19, 40, "DisplayFormula"], Cell[34329, 1056, 1707, 51, 182, "Text"], Cell[CellGroupData[{ Cell[36061, 1111, 248, 7, 27, "Input"], Cell[36312, 1120, 183, 5, 30, "Output"] }, Open ]], Cell[36510, 1128, 66, 0, 26, "Text"], Cell[CellGroupData[{ Cell[36601, 1132, 191, 6, 27, "Input"], Cell[36795, 1140, 212, 6, 30, "Output"] }, Open ]], Cell[37022, 1149, 491, 16, 41, "Text"], Cell[CellGroupData[{ Cell[37538, 1169, 595, 15, 43, "Input"], Cell[38136, 1186, 314, 11, 27, "Output"], Cell[38453, 1199, 125, 3, 27, "Output"] }, Open ]], Cell[38593, 1205, 68, 0, 26, "Text"], Cell[38664, 1207, 454, 16, 51, "DisplayFormula"], Cell[39121, 1225, 406, 8, 86, "Text"], Cell[39530, 1235, 1879, 57, 320, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[41446, 1297, 85, 1, 33, "Section"], Cell[41534, 1300, 343, 7, 72, "Text"], Cell[41880, 1309, 977, 17, 161, "Text"], Cell[42860, 1328, 320, 12, 42, "DisplayFormula"], Cell[43183, 1342, 757, 16, 104, "Text"], Cell[43943, 1360, 926, 34, 44, "DisplayFormula"], Cell[44872, 1396, 936, 30, 102, "Text"], Cell[45811, 1428, 146, 4, 20, "DisplayFormula"], Cell[45960, 1434, 877, 14, 131, "Text"], Cell[46840, 1450, 1158, 20, 301, "Text"], Cell[CellGroupData[{ Cell[48023, 1474, 32, 0, 25, "Subsubsection"], Cell[48058, 1476, 2964, 44, 536, "Text"] }, Closed]] }, Closed]] } ] *) (* End of internal cache information *)