Computational Essay
Sample Content
▼
Open Guidelines
Tools
Check
Publish to Cloud
Submit to Notebook Archive
Insert Code Group
Insert Headings▼
Insert Text▼
Open/Close Groups▼

Implicit Differentiation made easy with Mathematica

PeterCullenBurbery
I work through various examples of implicit differentiation.

Details

These examples are from the documentation. I modified some of the functions and created my own examples.
In[]:=
q1=QuestionObject["What is the derivative of 2z with respect to x where z is constrained by
2
x
+
2
z
=1?",AssessmentFunction[ImplicitD[2z,
2
x
+
2
z
==1,z,x]]]
Out[]=
What is the derivative of 2z with respect to x where z is constrained by
2
x
+
2
z
=1?
​
​
QuestionFramework`Private`submitButtonFE`QuestionFramework`Private`result$$9076707034110225429622853556331217005496=IfTrueQQuestionFramework`Private`$qointerpretersupport,AssessmentFunction-
2x
z
Association[Score1]InterpreterFE`QuestionFramework`Private`interpreter$$9076707034110225429622853556331217005496FE`QuestionFramework`Private`input$$9076707034110225429622853556331217005496,SubmissionCountFE`QuestionFramework`Private`submissionCount$$9076707034110225429622853556331217005496,AssessmentFunction-
2x
z
Association[Score1]FE`QuestionFramework`Private`input$$9076707034110225429622853556331217005496,SubmissionCountFE`QuestionFramework`Private`submissionCount$$9076707034110225429622853556331217005496;FE`QuestionFramework`Private`submittedvalue$$9076707034110225429622853556331217005496=FE`QuestionFramework`Private`input$$9076707034110225429622853556331217005496;FE`QuestionFramework`Private`submissionCount$$9076707034110225429622853556331217005496=QuestionFramework`Private`getSubmissionCount[FE`QuestionFramework`Private`result$$9076707034110225429622853556331217005496];FE`QuestionFramework`Private`buttonenabled$$9076707034110225429622853556331217005496=If[QuestionFramework`Private`reachedMaxSubmissionsQ[FE`QuestionFramework`Private`result$$9076707034110225429622853556331217005496,FE`QuestionFramework`Private`submissionCount$$9076707034110225429622853556331217005496],False,True,True],True
In[]:=
ImplicitD[2z,
2
x
+
2
z
==1,z,x]
Out[]=
-
2x
z
In[]:=
q1
Out[]=
What is the derivative of 2z with respect to x where z is constrained by
2
x
+
2
z
=1?
-
2x
z
Correct
​
QuestionFramework`Private`submitButtonFE`QuestionFramework`Private`result$$6050373839636182986306073253695536697761=IfTrueQQuestionFramework`Private`$qointerpretersupport,AssessmentFunction-
2x
z
Association[Score1]InterpreterFE`QuestionFramework`Private`interpreter$$6050373839636182986306073253695536697761FE`QuestionFramework`Private`input$$6050373839636182986306073253695536697761,SubmissionCountFE`QuestionFramework`Private`submissionCount$$6050373839636182986306073253695536697761,AssessmentFunction-
2x
z
Association[Score1]FE`QuestionFramework`Private`input$$6050373839636182986306073253695536697761,SubmissionCountFE`QuestionFramework`Private`submissionCount$$6050373839636182986306073253695536697761;FE`QuestionFramework`Private`submittedvalue$$6050373839636182986306073253695536697761=FE`QuestionFramework`Private`input$$6050373839636182986306073253695536697761;FE`QuestionFramework`Private`submissionCount$$6050373839636182986306073253695536697761=QuestionFramework`Private`getSubmissionCount[FE`QuestionFramework`Private`result$$6050373839636182986306073253695536697761];FE`QuestionFramework`Private`buttonenabled$$6050373839636182986306073253695536697761=If[QuestionFramework`Private`reachedMaxSubmissionsQ[FE`QuestionFramework`Private`result$$6050373839636182986306073253695536697761,FE`QuestionFramework`Private`submissionCount$$6050373839636182986306073253695536697761],False,True,True],True
In[]:=
q2=QuestionObject["What is the second derivative of log(xz)​, assuming that
2
z
-xsin(z)0?",AssessmentFunction[ImplicitD[Log[xz],
2
z
-xSin[z]==1,z,{x,2}]]]
Out[]=
What is the second derivative of log(xz)​, assuming that
2
z
-xsin(z)0?
​
​
QuestionFramework`Private`submitButtonFE`QuestionFramework`Private`result$$59182527205933385303735455163677349228=IfTrueQQuestionFramework`Private`$qointerpretersupport,AssessmentFunction
8
5
z
-12x
4
z
Cos[z]+6
2
x
3
z
2
Cos[z]
-
3
x
2
z
3
Cos[z]
-4
2
x
2
z
Cos[z]Sin[z]+2
3
x
z
2
Cos[z]
Sin[z]+4
2
x
z
2
Sin[z]
-
3
x
Cos[z]
2
Sin[z]
+
3
x
z
3
Sin[z]
2
x
2
z
3
(-2z+xCos[z])
Association[Score1]InterpreterFE`QuestionFramework`Private`interpreter$$59182527205933385303735455163677349228FE`QuestionFramework`Private`input$$59182527205933385303735455163677349228,SubmissionCountFE`QuestionFramework`Private`submissionCount$$59182527205933385303735455163677349228,AssessmentFunction
8
5
z
-12x
4
z
Cos[z]+6
2
x
3
z
2
Cos[z]
-
3
x
2
z
3
Cos[z]
-4
2
x
2
z
Cos[z]Sin[z]+2
3
x
z
2
Cos[z]
Sin[z]+4
2
x
z
2
Sin[z]
-
3
x
Cos[z]
2
Sin[z]
+
3
x
z
3
Sin[z]
2
x
2
z
3
(-2z+xCos[z])
Association[Score1]FE`QuestionFramework`Private`input$$59182527205933385303735455163677349228,SubmissionCountFE`QuestionFramework`Private`submissionCount$$59182527205933385303735455163677349228;FE`QuestionFramework`Private`submittedvalue$$59182527205933385303735455163677349228=FE`QuestionFramework`Private`input$$59182527205933385303735455163677349228;FE`QuestionFramework`Private`submissionCount$$59182527205933385303735455163677349228=QuestionFramework`Private`getSubmissionCount[FE`QuestionFramework`Private`result$$59182527205933385303735455163677349228];FE`QuestionFramework`Private`buttonenabled$$59182527205933385303735455163677349228=If[QuestionFramework`Private`reachedMaxSubmissionsQ[FE`QuestionFramework`Private`result$$59182527205933385303735455163677349228,FE`QuestionFramework`Private`submissionCount$$59182527205933385303735455163677349228],False,True,True],True
In[]:=
ImplicitD[Log[xz],
2
z
-xSin[z]==1,z,{x,2}]//TraditionalForm
Out[]//TraditionalForm=
1
2
x
2
z
3
(xcos(z)-2z)
(-
3
x
2
z
3
cos
(z)+
3
x
z
3
sin
(z)+2
3
x
zsin(z)
2
cos
(z)-
3
x
2
sin
(z)cos(z)+6
2
x
3
z
2
cos
(z)-4
2
x
2
z
sin(z)cos(z)+4
2
x
z
2
sin
(z)-12x
4
z
cos(z)+8
5
z
)
In[]:=
q2
Out[]=
What is the second derivative of log(xz)​, assuming that
2
z
-xsin(z)0?
8
5
z
-12x
4
z
Cos[z]+6
2
x
3
z
2
Cos[z]
-
3
x
2
z
3
Cos[z]
-4
2
x
2
z
Cos[z]Sin[z]+2
3
x
z
2
Cos[z]
Sin[z]+4
2
x
z
2
Sin[z]
-
3
x
Cos[z]
2
Sin[z]
+
3
x
z
3
Sin[z]
2
x
2
z
3
(-2z+xCos[z])
Correct
​
QuestionFramework`Private`submitButtonFE`QuestionFramework`Private`result$$78351764315676230477365452475915637727=IfTrueQQuestionFramework`Private`$qointerpretersupport,AssessmentFunction
8
5
z
-12x
4
z
Cos[z]+6
2
x
3
z
2
Cos[z]
-
3
x
2
z
3
Cos[z]
-4
2
x
2
z
Cos[z]Sin[z]+2
3
x
z
2
Cos[z]
Sin[z]+4
2
x
z
2
Sin[z]
-
3
x
Cos[z]
2
Sin[z]
+
3
x
z
3
Sin[z]
2
x
2
z
3
(-2z+xCos[z])
Association[Score1]InterpreterFE`QuestionFramework`Private`interpreter$$78351764315676230477365452475915637727FE`QuestionFramework`Private`input$$78351764315676230477365452475915637727,SubmissionCountFE`QuestionFramework`Private`submissionCount$$78351764315676230477365452475915637727,AssessmentFunction
8
5
z
-12x
4
z
Cos[z]+6
2
x
3
z
2
Cos[z]
-
3
x
2
z
3
Cos[z]
-4
2
x
2
z
Cos[z]Sin[z]+2
3
x
z
2
Cos[z]
Sin[z]+4
2
x
z
2
Sin[z]
-
3
x
Cos[z]
2
Sin[z]
+
3
x
z
3
Sin[z]
2
x
2
z
3
(-2z+xCos[z])
Association[Score1]FE`QuestionFramework`Private`input$$78351764315676230477365452475915637727,SubmissionCountFE`QuestionFramework`Private`submissionCount$$78351764315676230477365452475915637727;FE`QuestionFramework`Private`submittedvalue$$78351764315676230477365452475915637727=FE`QuestionFramework`Private`input$$78351764315676230477365452475915637727;FE`QuestionFramework`Private`submissionCount$$78351764315676230477365452475915637727=QuestionFramework`Private`getSubmissionCount[FE`QuestionFramework`Private`result$$78351764315676230477365452475915637727];FE`QuestionFramework`Private`buttonenabled$$78351764315676230477365452475915637727=If[QuestionFramework`Private`reachedMaxSubmissionsQ[FE`QuestionFramework`Private`result$$78351764315676230477365452475915637727,FE`QuestionFramework`Private`submissionCount$$78351764315676230477365452475915637727],False,True,True],True
In[]:=
q3=QuestionObject["z is constrained by
2
w
+
3
x
+
4
z
=5 and z is constrained by log(w x)=z. What is the implicit derivative of
(w+x+z)

with respect to w?",AssessmentFunction[ImplicitD[
w+x+z

,{
2
w
+
3
x
+
5
z
==5,Log[wx]==z},{x,z},w]]]
Out[]=
z is constrained by
2
w
+
3
x
+
4
z
=5 and z is constrained by log(w x)=z. What is the implicit derivative of
(w+x+z)

with respect to w?
​
​
QuestionFramework`Private`submitButtonFE`QuestionFramework`Private`result$$2121561624800880916008544642800424651709=IfTrueQQuestionFramework`Private`$qointerpretersupport,AssessmentFunction-
w+x+z

2
2
w
+2
2
w
x-3
3
x
-3w
3
x
-5w
4
z
+5x
4
z

w3
3
x
+5
4
z

Association[Score1]InterpreterFE`QuestionFramework`Private`interpreter$$2121561624800880916008544642800424651709FE`QuestionFramework`Private`input$$2121561624800880916008544642800424651709,SubmissionCountFE`QuestionFramework`Private`submissionCount$$2121561624800880916008544642800424651709,AssessmentFunction-
w+x+z

2
2
w
+2
2
w
x-3
3
x
-3w
3
x
-5w
4
z
+5x
4
z

w3
3
x
+5
4
z

Association[Score1]FE`QuestionFramework`Private`input$$2121561624800880916008544642800424651709,SubmissionCountFE`QuestionFramework`Private`submissionCount$$2121561624800880916008544642800424651709;FE`QuestionFramework`Private`submittedvalue$$2121561624800880916008544642800424651709=FE`QuestionFramework`Private`input$$2121561624800880916008544642800424651709;FE`QuestionFramework`Private`submissionCount$$2121561624800880916008544642800424651709=QuestionFramework`Private`getSubmissionCount[FE`QuestionFramework`Private`result$$2121561624800880916008544642800424651709];FE`QuestionFramework`Private`buttonenabled$$2121561624800880916008544642800424651709=If[QuestionFramework`Private`reachedMaxSubmissionsQ[FE`QuestionFramework`Private`result$$2121561624800880916008544642800424651709,FE`QuestionFramework`Private`submissionCount$$2121561624800880916008544642800424651709],False,True,True],True
Last but not least I can find the arity of a function:
I define a function for the arity of a function:
I remember seeing implicit derivatives in my calculus class so I think its cool that there's now a function to solve this.
Solve this problem:
Use Simplify to find the simplest form:
Solve this problem:
I use the following variable assignments, but its basically the same problem:
Solve an implicit differentiation problem with four variables: