Calculus1 Single Stepping
The Calculus1 subpackage of the Student package includes commands that single-step through the basic problems of single-variable calculus, namely limit, differentiation, and integration problems. This worksheet demonstrates the basics of this functionality.
For further information about any command in the Calculus1 package, see the corresponding help page. For a general overview, see Calculus1.
Getting Started
While any command in the package can be referred to using the long form, for example, Student[Calculus1][Rule], it is easier, and often clearer, to load the package, and then use the short form command names.
restart
with⁡StudentCalculus1:
Several commands in the Calculus1 package provide helpful information through the Maple userinfo facility. To see these information messages, set the corresponding infolevel table entry, using Student or Student[Calculus1] as the index.
infolevelStudentCalculus1≔1:
The single stepping functionality consists of sets of rules for each basic operation, limit, differentiation, and integration. Rules are applied by calling the package command Rule, providing the name of a rule and a problem to which that rule is applied. Problems are represented using the inert forms Limit, Diff, and Int.
limx→3x2
limx→3⁡x2
Rulepower
Creating problem #1
limx→3⁡x2=limx→3⁡x2
Notice that the rule is specified as the index to the Rule command, while the problem is given as the argument.
The output from a call to Rule is normally an equation in which the left-hand side is the original problem and the right-hand side is the current state of that problem. This output can be passed to another application of the Rule command.
Ruleidentity
limx→3⁡x2=9
To see the steps from the initial state of a problem to its current state, use the ShowSteps command.
ShowSteps⁡
limx→3⁡x2=limx→3⁡x2power=9identity
A differentiation example.
Ruleproductⅆⅆx⁢x2⁢sin⁡x
Creating problem #2
ⅆⅆxx2⁢sin⁡x=ⅆⅆxx2⁢sin⁡x+x2⁢ⅆⅆxsin⁡x
The more common rules have short form equivalents: difference = `-`, product = `*`, power = `^`, quotient = `/`, constantmultiple = `c*`. For completeness, there is also sum = `+`, though both are 3 characters long.
Rule`^`
ⅆⅆxx2⁢sin⁡x=2⁢x⁢sin⁡x+x2⁢ⅆⅆxsin⁡x
The name of any univariate function can be given as a rule.
Rulesin
ⅆⅆxx2⁢sin⁡x=2⁢x⁢sin⁡x+x2⁢cos⁡x
The Calculus1 package maintains a record of each problem you have worked on in a session. You can switch between problems using the GetProblem command.
GetProblem⁡1
You can display the state of any problem, or of all problems, using the Show command.
Show⁡2
Show⁡all
Problem 1:
Problem 2:
Asking for a Hint
If you are uncertain about which rule to apply next to a problem, ask for a hint.
ⅆⅆx⁢sin⁡x2
ⅆⅆxsin⁡x2
Hint⁡
Creating problem #3
chain
The output from the Hint command can always be used as the index to the Rule command.
Rule
ⅆⅆxsin⁡x2=ⅆⅆ_X0sin⁡_X0_X0=x2|ⅆⅆ_X0sin⁡_X0_X0=x2⁢ⅆⅆxx2
∫x⁢cos⁡xⅆx
∫x⁢cos⁡xⅆx
Creating problem #4
parts,x,sin⁡x,1,cos⁡x,x
∫x⁢cos⁡xⅆx=x⁢sin⁡x−∫sin⁡xⅆx
limx→0+xx
limx→0+⁡xx
Creating problem #5 Rewrite the expression as an exponential to prepare for using l'Hôpital's rule
rewrite,xx=ⅇx⁢ln⁡x
limx→0+⁡xx=limx→0+⁡ⅇx⁢ln⁡x
Ruleexp
limx→0+⁡xx=ⅇlimx→0+⁡x⁢ln⁡x
lhopital,ln⁡x,lhopital,x
limx→0+⁡xx=ⅇlimx→0+⁡−x
Rule`c*`
limx→0+⁡xx=ⅇ−limx→0+⁡x
limx→0+⁡xx=1
Learning with You
As you develop expertise with the elementary rules of single-variable calculus, you can automatically apply those rules so that you can concentrate on learning new material. You do this with the Understand command. The first argument to Understand is the name of the operation; the remaining arguments are the rules to apply automatically to a problem using that operation.
Understand⁡Diff,constant,c*,`+`
Diff=constant,constantmultiple,sum
After the product rule is applied, the system applies each applicable understood rule.
Rule`*`ⅆⅆx⁢x2⁢cos⁡x−2⁢ln⁡x
Creating problem #6
ⅆⅆxx2⁢cos⁡x−2⁢ln⁡x=ⅆⅆxx2⁢cos⁡x−2⁢ln⁡x+x2⁢ⅆⅆxcos⁡x−2⁢ⅆⅆxln⁡x
To apply all applicable understood rules, use an empty index on the Rule command.
Ruleⅆⅆx⁢3⁢x+ⅇx
Creating problem #7
ⅆⅆx3⁢x+ⅇx=3⁢ⅆⅆxx+ⅆⅆxⅇx
A More Complicated Example
Consider this integration problem.
∫abw13w12+1ⅆw
∫abw13w+1ⅆw
Creating problem #8
change,w=u6,u
When Maple applies this change of variables, the end points of the definite integration must be addressed. In this case, the new end points are a^(1/6) and b^(1/6). Because this involves the introduction of radicals, the end points remain in the original variable.
Applying substitution w = u^6, u = w^(1/6) with dw = 6*u^5*du, du = 1/6/w^(5/6)*dw
∫abw13w+1ⅆw=∫w=aw=b6⁢u4−6⁢u+6⁢uu3+1ⅆu
Understand⁡int,constant,c*,`+`
Int=constant,constantmultiple,sum
∫abw13w+1ⅆw=6⁢∫w=aw=bu4ⅆu−6⁢∫w=aw=buⅆu+6⁢∫w=aw=buu3+1ⅆu
RuleHint
∫abw13w+1ⅆw=6⁢u55w=a..b|u55w=a..b−6⁢∫w=aw=buⅆu+6⁢∫w=aw=buu3+1ⅆu
∫abw13w+1ⅆw=6⁢u55w=a..b|u55w=a..b−6⁢u22w=a..b|u22w=a..b+6⁢∫w=aw=buu3+1ⅆu
partialfractions
∫abw13w+1ⅆw=6⁢u55w=a..b|u55w=a..b−6⁢u22w=a..b|u22w=a..b+2⁢∫w=aw=bu+1u2−u+1ⅆu−2⁢∫w=aw=b1u+1ⅆu
At this point, there are two integration subproblems. The system maintains each of these subproblems separately, and assigns each a label. To work on a specific subproblem, for example, the more complicated one, obtain its label using the ShowIncomplete command, and then use that label in a call to Rule or Hint.
ShowIncomplete⁡
Int23=∫w=aw=bu+1u2−u+1ⅆu
Int24=∫w=aw=b1u+1ⅆu
(Because this worksheet must execute correctly independent of the labels, it uses a programmatic approach to obtain the label corresponding to the more complicated subproblem.)
L:=ShowIncompletedata:lbl:=if⁡length⁡L2<length⁡L1,L1,1,L2,1
lbl≔Int23
If the hint is complicated, a message providing additional information may be provided. As mentioned above, to see these messages you must assign a number (at least 1) to infolevel[Calculus1] or infolevel[Student].
Hint⁡lbl
Rewrite the numerator in a form which contains the derivative of the denominator
rewrite,u+1u2−u+1=2⁢u−12⁢u2−u+1+32⁢u2−u+1
Warning: These subproblem labels are maintained internally by the Calculus1 package and can change between applications of the Rule command. Therefore, before referencing a subproblem by a label, use the ShowIncomplete command to verify that the label is correct.
Rulelbl
∫w=aw=bu+1u2−u+1ⅆu=∫w=aw=b2⁢u−1u2−u+1ⅆu2+3⁢∫w=aw=b1u2−u+1ⅆu2
Note that the derivative of u^2-u+1 is 2*u-1, so we can make a change of variable.
change,v=u2−u+1,v
Applying substitution u = 1/2+1/2*(-3+4*v)^(1/2), v = u^2-u+1 with du = 1/(-3+4*v)^(1/2)*dv, dv = (2*u-1)*du
∫w=aw=bu+1u2−u+1ⅆu=∫w=aw=b1vⅆv2+3⁢∫w=aw=b1u2−u+1ⅆu2
∫w=aw=bu+1u2−u+1ⅆu=ln⁡vw=a..b|ln⁡vw=a..b2+3⁢∫w=aw=b1u2−u+1ⅆu2
Since the variable u1 does not appear in any incomplete subproblems, revert the corresponding substitution.
revert
Reverting substitution using v = u^2-u+1
∫w=aw=bu+1u2−u+1ⅆu=ln⁡u2−u+1w=a..b|ln⁡u2−u+1w=a..b2+3⁢∫w=aw=b1u2−u+1ⅆu2
Complete the square and make a change of variable.
change,v=u−12,v
Applying substitution u = 1/2+v with du=dv
∫w=aw=bu+1u2−u+1ⅆu=ln⁡u2−u+1w=a..b|ln⁡u2−u+1w=a..b2+6⁢∫w=aw=b14⁢v2+3ⅆv
Integrals involving expressions of the form (x^2+a^2)^n or sqrt(x^2+a^2)^n can often be simplified using the substitution x = a*tan(u). Applying substitution v = 1/2*3^(1/2)*tan(z), z = arctan(2/3*v*3^(1/2)) with dv = 1/2*3^(1/2)*(1+tan(z)^2)*dz, dz = 2/3*3^(1/2)/(4/3*v^2+1)*dv
∫w=aw=bu+1u2−u+1ⅆu=ln⁡u2−u+1w=a..b|ln⁡u2−u+1w=a..b2+6⁢3⁢z6w=a..b|3⁢z6w=a..b
Rulerevert
Reverting substitution using z = arctan(2/3*v*3^(1/2))
∫w=aw=bu+1u2−u+1ⅆu=ln⁡u2−u+1w=a..b|ln⁡u2−u+1w=a..b2+6⁢3⁢arctan⁡2⁢v⁢336w=a..b|3⁢arctan⁡2⁢v⁢336w=a..b
After Maple reverts this last u1 substitution, this subproblem is done. The system then substitutes the result of the subproblem into the larger problem.
Reverting substitution using v = u-1/2
∫w=aw=bu+13⁢u2−u+1−13⁢u+1ⅆu=ln⁡u2−u+1w=a..b|ln⁡u2−u+1w=a..b6+2⁢3⁢arctan⁡2⁢u−12⁢336w=a..b|3⁢arctan⁡2⁢u−12⁢336w=a..b−∫w=aw=b1u+1ⅆu3
Rulechange,u1=u+1
Applying substitution u = -1+u1 with du=du1
∫w=aw=bu+13⁢u2−u+1−13⁢u+1ⅆu=ln⁡u2−u+1w=a..b|ln⁡u2−u+1w=a..b6+2⁢3⁢arctan⁡2⁢u−12⁢336w=a..b|3⁢arctan⁡2⁢u−12⁢336w=a..b−∫w=aw=b1u1ⅆu13
∫w=aw=bu+13⁢u2−u+1−13⁢u+1ⅆu=ln⁡u2−u+1w=a..b|ln⁡u2−u+1w=a..b6+2⁢3⁢arctan⁡2⁢u−12⁢336w=a..b|3⁢arctan⁡2⁢u−12⁢336w=a..b−ln⁡u1w=a..b|ln⁡u1w=a..b3
Reverting substitution using u1 = u+1
∫abw13w+1ⅆw=6⁢u55w=a..b|u55w=a..b−6⁢u22w=a..b|u22w=a..b+ln⁡u2−u+1w=a..b|ln⁡u2−u+1w=a..b+12⁢3⁢arctan⁡2⁢u−12⁢336w=a..b|3⁢arctan⁡2⁢u−12⁢336w=a..b−2⁢ln⁡u+1w=a..b|ln⁡u+1w=a..b
Finally, revert the original substitution. The problem is done.
Reverting substitution using u = w^(1/6)
∫abw13w+1ⅆw=6⁢b565−6⁢a565−3⁢b13+3⁢a13+ln⁡b13−b16+1−ln⁡a13−a16+1+2⁢3⁢arctan⁡3⁢2⁢b16−13−2⁢3⁢arctan⁡3⁢2⁢a16−13−2⁢ln⁡b16+1+2⁢ln⁡a16+1
Experimenting
Integration problems, in particular, can be quite difficult, and learning by experimentation is a valuable technique. To facilitate this, the Calculus1 package includes an Undo command, which can be used to reverse to a previous state of a problem.
∫1−x2ⅆx
∫−x2+1ⅆx
Rulechange,x=tanu
Creating problem #9 Applying substitution x = tan(u), u = arctan(x) with dx = (1+tan(u)^2)*du, du = 1/(x^2+1)*dx
∫−x2+1ⅆx=∫−tan⁡u2+1⁢tan⁡u2ⅆu+∫−tan⁡u2+1ⅆu
Undo⁡
Rulechange,x=sinu
Applying substitution x = sin(u), u = arcsin(x) with dx = cos(u)*du, du = 1/(-x^2+1)^(1/2)*dx
∫−x2+1ⅆx=u−∫sin⁡u2ⅆu
Tutors
These tutors provide the same functionality as single stepping through a single problem in a worksheet, in a graphical environment
DiffTutor⁡
ⅆⅆxx⁢sin⁡x
IntTutor⁡
∫sin⁡x2ⅆx
LimitTutor⁡
limx→0⁡x⁢cos⁡x⁢ln⁡x
Return to Index for Example Worksheets
Download Help Document