A Fast Guide to Maple and Partial Derivatives\302\251 Mike May, S.J., Saint Louis University, 2006 - maymk@slu.edurestart;Preliminaries - Establishing FunctionsTo use Maple to find partial derivatives we first need to be able to define functions. We start with the simple function f taking (x,y) to x^2 + y^3. This can be done in a number of ways.1) Use the insert menu to insert an execution group after the cursor (command-J), insert Maple input (command-M) getting a vertical cursor and red type, and define the function with the syntax "f := (x,y) -> x^2+y^3;" We then evaluate the function for a particular (x,y).f := (x,y) -> x^2+y^3-x*y;plot(f(x,x^2),x=-2..2);h := x^2+y^3-x*y;eval(h,x=2);
subs(x=2,h);h(1,2);f(2,z);2) Use the same method in 2-D math mode. (On a new line insert 2-D Math, command-R.) Note that Maple turns the dash-greater than combination into an arrow.QyQ+SSJnRzYiZio2JEkieEdGJUkieUdGJUYlNiRJKW9wZXJhdG9yR0YlSSZhcnJvd0dGJUYlLCYqJDkkIiIjIiIiKiQ5JSIiJEYxRiVGJUYlRjE=print(); # input placeholderg(t,t);JSFH3) Use the 2-D math mode and the Expression palette to the left. Click on the expression f:=(a,b)->z, then navigate through the entries with tabs to fill in the expression.LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYrLUkjbWlHRiQ2JVEiZkYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JKG1mZW5jZWRHRiQ2JC1GIzYnLUYsNiVRInhGJ0YvRjItSSNtb0dGJDYtUSIsRicvRjNRJ25vcm1hbEYnLyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0YxLyUpc3RyZXRjaHlHRkUvJSpzeW1tZXRyaWNHRkUvJShsYXJnZW9wR0ZFLyUubW92YWJsZWxpbWl0c0dGRS8lJ2FjY2VudEdGRS8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHUSwwLjMzMzMzMzNlbUYnLUYsNiVRInlGJ0YvRjIvJStleGVjdXRhYmxlR0ZFRkFGQS1GPjYtUSgmc3JhcnI7RidGQUZDL0ZHRkVGSEZKRkxGTkZQRlIvRlZGVC1JJW1zdXBHRiQ2JUY6LUYjNiUtSSNtbkdGJDYkUSIyRidGQUZlbkZBLyUxc3VwZXJzY3JpcHRzaGlmdEdRIjBGJy1GPjYtUSIrRidGQUZDRmpuRkhGSkZMRk5GUC9GU1EsMC4yMjIyMjIyZW1GJy9GVkZccC1GXW82JUZYLUYjNiUtRmJvNiRRIjNGJ0ZBRmVuRkFGZW8tRj42LVEiO0YnRkFGQ0ZGRkhGSkZMRk5GUEZSL0ZWUSwwLjI3Nzc3NzhlbUYnRmVuRkE=print(); # input placeholderQyQ+SSJoRzYiZio2JEkieEdGJUkieUdGJUYlNiRJKW9wZXJhdG9yR0YlSSZhcnJvd0dGJUYlLCYqJDkkIiIjIiIiKiQ5JSIiJEYxRiVGJUYlRjE=print(); # input placeholderQyQtSSJoRzYiNiRJImtHRiVJIm1HRiUiIiI=print(); # input placeholderFor the exercises, instead of defining a function named f, you will define a function named func, and you will use func throughout the exercises.Exercise:1) Using each of the three methods described above, define the function func(x,y)=sin(x^2+y^3) and evaluate at (x,y)=(sqrt(Pi)/4,0).LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYjLUkjbWlHRiQ2I1EhRic=LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYjLUkjbWlHRiQ2I1EhRic=Producing Slice Curves of functionsWhen we did cross sections of a graph before, we connected a function of two variables with a family of functions in one variables. This can be done by creating new functions. It can also be done by using a constant to fill in one of the variables.f := (x,y) -> x^2+y^3-x*y;
x0 := 1:
y0 := 2:
f1 := x -> f(x,y0);
f2 := y -> f(x0,y);
plot([f1(t), f2(t)], t=-2..2, color=[red, green], legend = ["f1(t)", "f2(t)"]);We can also plot a family of slicesf := (x,y) -> x^2+y^3-x*y;
plot([f(x,-1), f(x,0.5), f(x,1)],x=-3..3,
color=[red,green,blue], legend=["f(x,-1)", "f(x,0.5)", "f(x,1)"]);Exercise:2) Plot the slice of the function func(x,y), which you defined in exercise 1 above, with y =2.LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYjLUkjbWlHRiQ2I1EhRic=Computing Partial DerivativesThe partial derivative is computed by taking the derivative of a function of two variables, treating one of the variables as a constant.In Maple, this is done with the diff command. It should be noted that the diff command has an "inert" version, Diff. Applying both commands we see that while Maple uses the same command for the derivative and the partial derivative, it uses a different symbol for the partial derivative.f := (x,y) -> x^2+y^3-x*y;
f(x,y);
Dfx := diff(f(x,y),x);
Df1x := diff(f(x,y0),x);
Df1xa := diff(f1(x),x);
Diff(f(x,y),x);
Diff(f1(x),x);
Diff(f(x,y0),x);Diff(f(x,y),x)=diff(f(x,y),x);We can do the same computations in 2D math mode or by using the Expression palette.LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYjLUkjbWlHRiQ2I1EhRic=QyQ+SSREZnlHNiItSSVkaWZmRyUqcHJvdGVjdGVkRzYkLUkiZkdGJTYkSSJ4R0YlSSJ5R0YlRi4iIiI=print(); # input placeholderLUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYpLUkjbWlHRiQ2I1EhRictRiM2KUYrLUkmbWZyYWNHRiQ2KC1GIzYlLUkjbW9HRiQ2LVErJlBhcnRpYWxEO0YnLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGPy8lKXN0cmV0Y2h5R0Y/LyUqc3ltbWV0cmljR0Y/LyUobGFyZ2VvcEdGPy8lLm1vdmFibGVsaW1pdHNHRj8vJSdhY2NlbnRHRj8vJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZOLyUrZXhlY3V0YWJsZUdGP0Y6LUYjNidGKy1GIzYmRjYtRiw2JVEieUYnLyUnaXRhbGljR1EldHJ1ZUYnL0Y7USdpdGFsaWNGJ0ZRRjpGK0ZRRjovJS5saW5ldGhpY2tuZXNzR1EiMUYnLyUrZGVub21hbGlnbkdRJ2NlbnRlckYnLyUpbnVtYWxpZ25HRl5vLyUpYmV2ZWxsZWRHRj8tRjc2LVExJkludmlzaWJsZVRpbWVzO0YnRjpGPUZARkJGREZGRkhGSkZMRk8tRiM2KC1GLDYlUSJmRidGWkZnbi1GNzYtUTAmQXBwbHlGdW5jdGlvbjtGJ0Y6Rj1GQEZCRkRGRkZIRkpGTEZPLUYjNiUtSShtZmVuY2VkR0YkNiQtRiM2J0YrLUYjNictRiw2JVEieEYnRlpGZ24tRjc2LVEiLEYnRjpGPS9GQUZmbkZCRkRGRkZIRkpGTC9GUFEsMC4zMzMzMzMzZW1GJ0ZXRlFGOkYrRlFGOkY6RlFGOkYrRlFGOkYrRlFGOi1GNzYtUSI7RidGOkY9Rl1xRkJGREZGRkhGSkZML0ZQUSwwLjI3Nzc3NzhlbUYnLUknbXNwYWNlR0YkNiYvJSdoZWlnaHRHUSYwLjBleEYnLyUmd2lkdGhHUSYwLjNlbUYnLyUmZGVwdGhHRmpxLyUqbGluZWJyZWFrR1ExZmlyc3Rwcm9jbmV3bGluZUYnRitGUUY6print();LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYpLUkjbWlHRiQ2I1EhRictRiM2KUYrLUkmbWZyYWNHRiQ2KC1GIzYlLUkjbW9HRiQ2LVErJlBhcnRpYWxEO0YnLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGPy8lKXN0cmV0Y2h5R0Y/LyUqc3ltbWV0cmljR0Y/LyUobGFyZ2VvcEdGPy8lLm1vdmFibGVsaW1pdHNHRj8vJSdhY2NlbnRHRj8vJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZOLyUrZXhlY3V0YWJsZUdGP0Y6LUYjNidGKy1GIzYmRjYtRiw2JVEieUYnLyUnaXRhbGljR1EldHJ1ZUYnL0Y7USdpdGFsaWNGJ0ZRRjpGK0ZRRjovJS5saW5ldGhpY2tuZXNzR1EiMUYnLyUrZGVub21hbGlnbkdRJ2NlbnRlckYnLyUpbnVtYWxpZ25HRl5vLyUpYmV2ZWxsZWRHRj8tRjc2LVExJkludmlzaWJsZVRpbWVzO0YnRjpGPUZARkJGREZGRkhGSkZMRk8tRiM2KC1GLDYlUSJmRidGWkZnbi1GNzYtUTAmQXBwbHlGdW5jdGlvbjtGJ0Y6Rj1GQEZCRkRGRkZIRkpGTEZPLUYjNiUtSShtZmVuY2VkR0YkNiQtRiM2J0YrLUYjNictRiw2JVEjeDBGJ0ZaRmduLUY3Ni1RIixGJ0Y6Rj0vRkFGZm5GQkZERkZGSEZKRkwvRlBRLDAuMzMzMzMzM2VtRidGV0ZRRjpGK0ZRRjpGOkZRRjpGK0ZRRjpGK0ZRRjotRjc2LVEiO0YnRjpGPUZdcUZCRkRGRkZIRkpGTC9GUFEsMC4yNzc3Nzc4ZW1GJy1JJ21zcGFjZUdGJDYmLyUnaGVpZ2h0R1EmMC4wZXhGJy8lJndpZHRoR1EmMC4zZW1GJy8lJmRlcHRoR0ZqcS8lKmxpbmVicmVha0dRMWZpcnN0cHJvY25ld2xpbmVGJ0YrRlFGOg==print();LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYpLUkjbWlHRiQ2I1EhRictRiM2KUYrLUkmbWZyYWNHRiQ2KC1GIzYlLUkjbW9HRiQ2LVErJlBhcnRpYWxEO0YnLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGPy8lKXN0cmV0Y2h5R0Y/LyUqc3ltbWV0cmljR0Y/LyUobGFyZ2VvcEdGPy8lLm1vdmFibGVsaW1pdHNHRj8vJSdhY2NlbnRHRj8vJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZOLyUrZXhlY3V0YWJsZUdGP0Y6LUYjNidGKy1GIzYmRjYtRiw2JVEieUYnLyUnaXRhbGljR1EldHJ1ZUYnL0Y7USdpdGFsaWNGJ0ZRRjpGK0ZRRjovJS5saW5ldGhpY2tuZXNzR1EiMUYnLyUrZGVub21hbGlnbkdRJ2NlbnRlckYnLyUpbnVtYWxpZ25HRl5vLyUpYmV2ZWxsZWRHRj8tRjc2LVExJkludmlzaWJsZVRpbWVzO0YnRjpGPUZARkJGREZGRkhGSkZMRk8tRiM2KC1GLDYlUSJmRidGWkZnbi1GNzYtUTAmQXBwbHlGdW5jdGlvbjtGJ0Y6Rj1GQEZCRkRGRkZIRkpGTEZPLUYjNiUtSShtZmVuY2VkR0YkNiQtRiM2J0YrLUYjNictRiw2JVEieEYnRlpGZ24tRjc2LVEiLEYnRjpGPS9GQUZmbkZCRkRGRkZIRkpGTC9GUFEsMC4zMzMzMzMzZW1GJ0ZXRlFGOkYrRlFGOkY6RlFGOkYrRlFGOkYrRlFGOi1GNzYtUSI7RidGOkY9Rl1xRkJGREZGRkhGSkZML0ZQUSwwLjI3Nzc3NzhlbUYnLUknbXNwYWNlR0YkNiYvJSdoZWlnaHRHUSYwLjBleEYnLyUmd2lkdGhHUSYwLjNlbUYnLyUmZGVwdGhHRmpxLyUqbGluZWJyZWFrR1ExZmlyc3Rwcm9jbmV3bGluZUYnRitGUUY6print();Exercise:3) Compute the partial derivatives of the function func(x,y), which you defined in exercise 1 above, both with respect to x and with respect to y.2=3;LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYjLUkjbWlHRiQ2I1EhRic=Finally, we would like to evaluate an expression at specific values. We use the eval command for this. The syntax is
eval(thing to be evaluated, set of values to be used);This can be done either by typing or using the palette. To get a decimal representation we use the evalf command.Dfy;
LUklZXZhbEclKnByb3RlY3RlZEc2JEkkRGZ5RzYiL0kieUdGJyIiIw==print(); # input placeholderQyRJJERmeUc2IiIiIg==print(); # input placeholderLUklZXZhbEclKnByb3RlY3RlZEc2JEkkRGZ5RzYiL0kieEdGJyIiIw==print(); # input placeholderLUklZXZhbEclKnByb3RlY3RlZEc2JC1GIzYkSSREZnlHNiIvSSJ4R0YpIiIjL0kieUdGKSIiJA==print(); # input placeholderQyQtSSRzaW5HNiI2IywkSSNQaUclKnByb3RlY3RlZEcjIiIiIiIkRis=print(); # input placeholderprint();QyQtSSZldmFsZkclKnByb3RlY3RlZEc2JC1JJHNpbkc2JEYlSShfc3lzbGliRzYiNiMsJEkjUGlHRiUjIiIiIiIkIiQrJkYwprint(); # input placeholderExercise:4) Evaluate both func and its partial derivative with respect to y at (2,3).LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYjLUkjbWlHRiQ2I1EhRic=LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYjLUkjbWlHRiQ2I1EhRic=LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYjLUkjbWlHRiQ2I1EhRic=