Shared07 - Implicit Differentiation Assignment / Implicit Differentiation Notes.sagewsOpen in CoCalc
This material was developed by Aaron Tresham at the University of Hawaii at Hilo and is

### Prerequisites:

• Intro to Sage
• Tangent Lines
• Differentiation

# Implicit Differentiation

In this lab we will explore implicit functions (of two variables), including their graphs, derivatives, and tangent lines.

An example of an implicit function is given by the equation . This equation provides an implicit relation between and . Compare this to the equation , which gives explicitly in terms of .

## Graphing

Graphing an implicit function is fairly simple in Sage using the implicit_plot command. This command requires three arguments: an equation (using double equal sign), a plot range for the first variable, and a plot range for the second variable. I will add the optional "axes=true" and "frame=false" so that axes will be plotted instead of a frame.

## Example 1

Graph (circle of radius 5 centered at the origin).

#Do not forget to declare variables
%var y
implicit_plot(x^2+y^2==25,(x,-5,5),(y,-5,5),axes=true,frame=false)
#Note the double equal sign
#Notice that x and y both take values from -5 to 5


## Example 2

Graph .

%var y
implicit_plot(x*(x^2+y^2)+(2*x-y)*y==0,(x,-2,2),(y,-2,2),axes=true,frame=false)  #do not forget the double equal sign


## Derivatives

Now that we can graph these functions, we want to compute the derivative of with respect to . This assumes that is a function of , so we need to tell Sage to assume this as well:

y=function('y')(x)


Now we can take the derivative.

## Example 3

Find if .

First, we take the derivative of the whole equation, then we'll solve for .

derivative(x^2+y^2==25,x)
show(_)

2*y(x)*diff(y(x), x) + 2*x == 0

The diff(y(x),x) is the derivative .

The curvy-looking "d" you get when you use show is the symbol for a partial derivative (you'll learn about those in Calc 3). Since this is Calc 1, you should just think of those as a regular "d."

Now we can solve for the derivative:

solve(derivative(x^2+y^2==25,x),derivative(y,x))
show(_)

[diff(y(x), x) == -x/y(x)]
[]

This tells us that . [Note: Sage is treating as a function of , so it uses function notation . We usually write just .]

## Example 4

Find when .

y=function('y')(x)
solve(derivative(x*(x^2+y^2)+(2*x-y)*y==0,x),derivative(y,x)) #do not forget the ==
show(_)

[diff(y(x), x) == -1/2*(3*x^2 + y(x)^2 + 2*y(x))/((x - 1)*y(x) + x)]
[]

So .

## Tangent Lines

Now that we can find the derivative of an implicit function, we can also find tangent lines.

Recall that the line tangent to a function at the point has equation .

## Example 5

Find an equation for the line tangent to the circle given by at the point .

Above we found . So the slope of the tangent line at is .

Thus, an equation for the tangent line is .

Let's graph the implicit function and the tangent line.

#Before plotting, we need to "reset" the variable y
%var y
implicit_plot(x^2+y^2==25,(x,-5,5),(y,-5,5),axes=true,frame=false)+plot(4-(3/4)*(x-3),xmin=-5,xmax=6,ymax=6,color='red')+point((3,4),color='black',size=25)


## Example 6

Find an equation for the tangent line to the graph of at the point .

We found the derivative above: .

Now we need to substitute and .

I will copy and paste this derivative from the calculation above, and then I will replace x with and y(x) with .

-1/2*(3*1^2 + (-1/2)^2 + 2*(-1/2))/((1 - 1)*(-1/2) + 1)   #notice the parentheses around -1/2

-9/8

Now that we have the slope, we can find an equation of the tangent line: .

Let's check our answer by graphing:

%var y
implicit_plot(x*(x^2+y^2)+(2*x-y)*y==0,(x,-2,2),(y,-2,2),axes=true,frame=false)+plot(-1/2-9/8*(x-1),xmin=-1,xmax=2,color='red')+point((1,-1/2),color='black',size=25)


Here is one final example that puts all the pieces together.

Consider

Find the derivative, find the tangent line at , and graph the curve and tangent line.

First, we find the derivative.

y=function('y')(x)
solve(derivative((x^2+y^2)^2+12*x^2*y==(3/2*y)^3,x),derivative(y,x))
show(_)

[diff(y(x), x) == -32*(x^3 + x*y(x)^2 + 6*x*y(x))/(32*x^2*y(x) + 32*y(x)^3 + 96*x^2 - 81*y(x)^2)]
[]

Now we define "a" and "b," copy and paste the derivative, and replace x with a and y(x) with b.

a=0.5832   #x-coordinate of point of tangency
b=2        #y-coordinate of point of tangency
-32*(a^3 + a*b^2 + 6*a*b)/(32*a^2*b + 32*b^3 + 96*a^2 - 81*b^2)

22.4547850705957

Next we define the tangent line, using the answer above for the slope.

TL(x)=b+22.4547850705957*(x-a)
TL(x)

22.4547850705957*x - 11.0956306531714

Finally, we plot the original function and the tangent line (remember to "reset" y using %var y before graphing).

%var y
implicit_plot((x^2+y^2)^2+12*x^2*y==(3/2*y)^3,(x,-5,5),(y,-5,5),axes=true,frame=false)+plot(TL,xmin=-5,xmax=5,ymin=-5,ymax=5,color='red')+point((a,b),color='black',size=25)


## 3D Examples

Sage can also plot an implicit function of three variables. We won't need this for our assignment, but here are a few examples.

[Note: you can make it bigger or smaller with the mouse wheel; click and drag to rotate]

%var x,y,z
implicit_plot3d(x^2+y^2+z^2==25,(x,-5,5),(y,-5,5),(z,-5,5))

3D rendering not yet implemented

This one is a little more interesting:

%var x,y,z
implicit_plot3d(sin(x^2+y^2+z^2-36),(x,-3,3),(y,-3,3),(z,-3,3))

3D rendering not yet implemented

One more:

%var x,y,z
T = golden_ratio
p = 2 - (cos(x + T*y) + cos(x - T*y) + cos(y + T*z) + cos(y - T*z) + cos(z - T*x) + cos(z + T*x))
r = 4.78
show(implicit_plot3d(p, (x, -r, r), (y, -r, r), (z, -r, r), plot_points=50))

3D rendering not yet implemented