Mathematica for any size class

Rebekah Gilbert

Math Department - University of Illinois

My experience with Mathematica

Mathematica homework assignments in Calculus I, II, & III, Differential Equations, and Theory of Statistics I & II while in college (Grove City College, Pennsylvania)

Hired to oversee the Calculus&Mathematica (C&M) program at the University of Illinois (Urbana-Champaign) in 2012.

In this position, I have been doing substantial curriculum development in Mathematica.

Historical Note - Calculus&Mathematica Program

Started by J. Jerry Uhl (U of I), Horatio Porta (U of I), and Bill Davis (OSU).

First piloted in Spring 1989 at the University of Illinois.

The ideas behind this program were based on strong views of pedagogy.

Class structure.  Students primarily spent class time working in the labs.  No traditional lectures.

Curriculum Structure.

Students worked through a sequence of Mathematica notebooks.  Each lesson had four parts:

Basics - Preliminary “textbook” portion.

Tutorials - Worked examples “textbook” portion.

Give it a try - The homework questions.

Literacy - Shorter questions often used to test concepts on quizzes.

Courses created.  Calculus I, II, and III, BioCalculus, Differential Equations, Linear Algebra, and Probability and Statistics.

This program ran for over two decades.  Led to the creation of NetMath (UI online/distance courses).

Recent Developments at the University of Illinois

1. 1 Student: Individual projects

2. 30-60 Students: Group HW assignments

3. 400 Students: CDF demos with worksheets

4. (Underscript[ lim, students->∞]) = ?? : Is there an upper bound?

1 Student
Individual Projects

Class Format

A few individuals requested to do honors projects with me.

Incorporating Mathematica

I instructed the students to write Mathematica demonstrations for their honors projects.

Examples

Typical projects involved demonstrations of techniques such as Newton’s method and other root-finding methods.

Conclusions

These projects were overall positive.

Since students took the initiative to do these projects, they showed greater interest than in typical, required assignments.

30-60 Students
Group HW assignments

Class Format

Calculus I, Calculus II, and Differential Equations

Every week, students spent 1-2 days in traditional lectures and 1-2 days in a computer lab.

Instructor for lecture also ran the labs.

Incorporating Mathematica

Wrote new Mathematica HW assignments that capitalized on the improvements made to Mathematica and students’ increased familiarity with technology over the last 25 years.

New assignments taught students how to use Mathematica commands for themselves.

Students were gradually introduced to new Mathematica commands in each assignment.

The commands introduced in each assignment were directly relevant to the concepts of that lesson.

The commands were first shown to the students through short, practical examples.

Students were taught to refer to the Documentation Center to learn more about commands and their options.

Wrote problem descriptions (what commands would be used, what the students should learn from the question, and why the problem was included) for each HW question.

Students still submitted HW assignments in groups of 2-4.

Examples

Calculus I (Fall 2013, Spring 2014)

Incomplete list of the commands and options students learned over the course of the semester in their Mathematica homework assignments.

Abs
AxesLabel
ContourPlot
CountryData
D
Direction
DSolve
Dt
Exclusions
Expand
Filling
FindMaximum
FindMinimum
FindRoot
Frame
Grid
GridLines
Limit
ListPlot
N
NSolve
Piecewise
Plot
PlotLegends
PlotRange
Prepend
PrimePi
RevolutionPlot3D
Simplify
Solve
Table
∫■d□
(∫_■^□)□d□
(Underoverscript[ ∑, (■=□), □])□

Calculus II (Spring 2014)

Visualization and computation of a convergent sequence.

a[n_]:=((2(n^2)-1)/((n^2)-2))-(E^(-0.1 n))Sin[n]
Table[N[a[n]],{n,1,50}]
Show[Plot[2,{n,0,50},PlotStyle->Red],ListPlot[Table[a[n],{n,75}]]]

Visualization of the Alternating Series Test

a[n_]=((((-1))^(n-1))/n);
S[M_]=Sum[a[n],{n,1,M}];
DiscretePlot[{a[n],S[n]},{n,20},PlotRange->All,AspectRatio->(1/GoldenRatio),ExtentSize->Full,PlotStyle->{Blue,Orange}]

Gabriel’s Horn (infinite volume and finite surface area)

f[x_]=(1/x);
RevolutionPlot3D[f[x],{x,1,10},RevolutionAxis-> {1,0 ,0},AspectRatio-> (1/GoldenRatio),PlotRange-> All,ColorFunction-> "BrassTones",LabelStyle->Directive[Medium,Bold],AxesLabel->{"x","y","z"}]

Conclusions

Students had more of a personal investment in their work when they realized they were able to independently solve problems in Mathematica.

Helped differentiate diligent, eager-to-learn students from those who were less motivated.

Calculus I (Fall 2013) - Average course grade 84.2%

50% of students said on course evaluation forms that Mathematica was the most beneficial aspect of the course.

“Mathematica allowed me to visualize many parts of math I didn’t understand before.”

“Mathematica was a very powerful tool in learning.”

Calculus I (Spring 2014)  - Average course grade 69.3%

21.4% of students said on course evaluation forms that Mathematica was the most beneficial aspect of the course.

28.6% of students said that Mathematica was the worst aspect of the course.

400 Students
CDF demos with worksheets

Class Format

Calculus I (Fall 2014) and Calculus II (Spring 2015)

200-250 students per large lecture (2 days/week) with 40-50 students per TA discussion section (2 days/week)

Each discussion section had one graduate TA and two undergraduate classroom assistants.

We had to determine what aspects of Mathematica could be scaled up to courses of this size.

Incorporating Mathematica

Developed interactive CDF demonstrations and corresponding group worksheets for the discussion sections

Students worked in groups of 2-4 on the paper worksheets.

Approximately half of the worksheets directed students to CDF demos that they would use to help answer the questions.

Students did not have to write Mathematica code themselves.

The CDFs provided students with prompt computation and concept visualization, an improvement from static textbook figures.

Examples

Angle of repose question in Related Rates

Manipulate[
combined[2,t],

{{t,tmin,"time (minutes)"},tmin,tmax,Appearance->"Labeled"},

Initialization:>{
(drdt:=1),
(dvdt:=4π),
(tmin:=0),
(tmax:=45),
(r[1,t_]:=drdt t),
(r[2,t_]:=(Sqrt[3])(((dvdt t)/π)^(1/3))),
(h[n_,t_]:=r[n,t]Tan[(π/6)]),
(corn[n_,t_]:=Graphics3D[{RGBColor[1,0.83,0],Opacity[0.5],Cone[{{0,0,0},{0,0,h[n,t]}},r[n,t]]},PlotRange->{{-10,10},{-10,10},{0,6}},Axes->True,AxesOrigin->{0,0,0}]),
(twodstuff[n_,t_]:=Graphics3D[{
{If[r[n,t]<1,{},{{Dashed,Black, Thickness[0.01],Arrow[{{0,0,0.1},{r[n,t],0,0.1}}]},{Text[Style["r",{Black,Bold,Italic,Floor[((r[n,t])/(r[n,tmax]))20]}],{((r[n,t])/4),0,1},{-1,0}]}}]},
{If[h[n,t]<1,{},{{Dashed,Black,Thickness[0.01],Arrow[{{0,0,0},{0,0,h[n,t]}}]},{Text[Style["h",{Black,Bold,Italic,Floor[((h[n,t])/(h[n,tmax]))20]}],{0.5,0,((h[n,t])/2)},{-1,0}]}}]},
{If[r[n,t]<1,{},{Text[Style["θ",{Black,Bold,Italic,Floor[((r[n,t])/(r[n,tmax]))20]}],{8/16r[n,t],0,1},{-1,0}]}]},
{Thickness[0.0075],Line[{{0,0,h[n,t]},{r[n,t],0,0}}]}
}]),


(combined[n_,t_]:=Show[corn[n,t],twodstuff[n,t],ViewPoint->{3,-12,3}])
}
]

A visualization of the Mean Value Theorem ("using the graphical to make sense of the mathematical")

Manipulate[
snapshot[a,b,m],

{{m,2,"Function:"},{2->"f(x)",1->"g(x)"}},
{{a,a0[m]},xmin[m],xmax[m],0.1,Appearance->"Labeled"},
{{b,b0[m]},xmin[m],xmax[m],Appearance->"Labeled"},

Initialization:>{
(f[x_,1]:=(x-1)(x-3)),
(xmin[1]:=0.0),
(xmax[1]:=4.0),
(ymin[1]:=-1.05),
(ymax[1]:=4.0),
(a0[1]:=0.0),
(b0[1]:=2.0),

(f[x_,2]:=
1.35323 +0.13176 (-2+x)-1.69955 (((-2+x))^2)+0.36339(((-2+x))^3)+1.21923(((-2+x))^4)-0.41191(((-2+x))^5)-0.30728 (((-2+x))^6)+0.13462 (((-2+x))^7)+0.03393 (((-2+x))^8)-0.02106 (((-2+x))^9)-0.00138(((-2+x))^10)+0.0019 (((-2+x))^11)-0.00006 (((-2+x))^12)-0.00011 (((-2+x))^13)+0.00001 (((-2+x))^14)), (*simplified TSrs expansion about x=2 for the function (E^(-0.5)) Cos[3x]+1 *)
(xmin[2]:=0.0),
(xmax[2]:=4.0),
(ymin[2]:=0.0),
(ymax[2]:=3.0),
(a0[2]:=0.0),
(b0[2]:=2.0),


(functionplot[m_]:=Plot[f[x,m],{x,xmin[m],xmax[m]},AxesOrigin->{0,0},PlotRange->{{xmin[m],xmax[m]},{ymin[m],ymax[m]}},PlotTheme->"Detailed",PlotLegends->None,PlotStyle->Directive[Thickness[0.0075]]]),
(secantlineplot[a_,b_,m_]:=If[ a≠b, Plot[f[a,m]+((f[b,m]-f[a,m])/(b-a))(x-a),{x,a,b},PlotStyle->Directive[Thickness[0.006],Orange]],Graphics[{PointSize[0.015],Point[{a,f[a,m]}]}]]),
(secantpoints[a_,b_,m_]:=Graphics[{{Orange,PointSize[0.015],Point[{a,f[a,m]}]},{Orange,PointSize[0.015],Point[{b,f[b,m]}]}}]),
(*(c[a_,b_,n_]:=If[a≠b,FindRoot[D[f[w,n],w]-((f[b,n]-f[a,n])/(b-a))==0,{w,((a+b)/2),If[a<b,a,b],If[a<b,b,a]}][[1,2]],a]),*)
(c[a_,b_,m_]:=If[a≠b,NSolve[{D[f[w,m],w]-((f[b,m]-f[a,m])/(b-a))==0,If[a<b,a,b]<w<If[a<b,b,a]},w,Reals,VerifySolutions->False,WorkingPrecision->2][[1,1,2]],a]),
(tangentlineplot[a_,b_,m_]:=If[a≠b,Plot[f[c[a,b,m],m]+(D[f[w,m],w]/.w->c[a,b,m])(x-c[a,b,m]),{x,a,b},PlotStyle->Directive[Thickness[0.006],Black]],Graphics[{PointSize[0.015],Point[{a,f[a,m]}]}]]),
(tangentpoint[a_,b_,m_]:=Graphics[{Black, PointSize[0.015],Point[{c[a,b,m],f[c[a,b,m],m]}]}]),
(combinedgraph[a_,b_,m_]:=Show[functionplot[m],secantlineplot[a,b,m],tangentlineplot[a,b,m],secantpoints[a,b,m],tangentpoint[a,b,m],ImageSize->Large,PlotRange->{{xmin[m],xmax[m]},{ymin[m],ymax[m]}}]),
(snapshot[a_,b_,m_]:=Column[{
combinedgraph[a,b,m],
Text@Style[Row[{"When a = " <>ToString[N[a]]<>" and b = "<>ToString[N[b]]<>", we have that f(a)="<>ToString[N[f[a,m]]]<>" and f(b)="<>ToString[N[f[b,m]]]<>","}],16],Text@Style[Row[{"and the slope of the secant line between the two points is: (Subscript[m, secant])=((f (b) - f (a))/(b - a))="<>ToString[If[Chop[(((f[a,m]-f[b,m]))^5)]==0,0,N[((f[b,m]-f[a,m])/(b-a))]],TraditionalForm]<>"."}],16],
Text@Style[Row[{"We also observe that for c = "<>ToString[c[a,b,m]]<>", we have f'(c)="<>ToString[If[Chop[(((f[a,m]-f[b,m]))^5)]==0,0,N[((f[b,m]-f[a,m])/(b-a))]],TraditionalForm]<> "."}],16]
}])

}
]

Conclusions

These questions and their CDFs may be modularly incorporated into any course.

We traded having students learn how to use Mathematica for having students harnass the power of Mathematica without the steep learning curve.

These courses extend the benefits of technology to an order of magnitude of students more than previous courses.

While demonstrations are useful to communicate concepts, the CDFs are unable to force students to apply themselves to learn to solve the problems, which can be detrimental on exams.

(Underscript[ lim, students->∞]) = ??
Is there an upper bound?

Class Format

Online classes are here to stay. The question is just how to best utilize them.

Online courses work best for motivated students. These are the same students have excelled in courses incorporating Mathematica in the past.

Why limit ourselves to courses? What about free, complete set of modular Mathematica learning activities online?

Paul’s Online Notes is a widely-referenced set of free lecture notes online.

Khan Academy is a popular source for refresher videos in math.

Could not the talents displayed on the Wolfram Demonstrations Project page be made into the 21st century standard for understanding calculus concepts?

Incorporating Mathematica

Online resources will probably work best with CDF demonstrations.

Online course can also use Mathematica in the cloud.

Conclusions

It will be exciting to see what the future holds.