BMCC Home
A Leadership Series:
Using Technology to Teach Mathematics and Science
Maple 8 and Maplets: A New Use of Computer Algebra
for Teaching Mathematics and Science
Douglas B. Meade
University of South Carolina
Introduction
To begin this exploration of Maplets, you should be aware that some of the new features in Maple 8 are implemented as Maplets. The new interactive command in the plots package provides a more user-friendly interface to create a graph in Maple 8.
Try, for example, entering the command:
plots[interactive]( x*sin(x) )
;
More generally, Maplets are Maple-based applets. Most applets found on the WWW are written in Java. Maplets are written in Maple; each Maplet element is, in turn, a Java Swing class. Two reasons to implement an applet as a Maplet and not directly in Java are
convenience of using the high-level Maple programming language.
access to full range of Maple's symbolic, numeric, and graphic capabilities.
Maplets can be executed within a Maple worksheet, from the "command line" with the MapletViewer, or via the WWW with MapleNet. (MapleNet is a new product of Waterloo Maple that allows users who do not have Maple on their local machine to access Maplets via the WWW. For detailed information, please visit http://maplenet.maplesoft.com.)
Maplets, Worksheets, MapletViewer, and MapleNet
A Maple worksheet ( .mws file) is the easiest format to use to develop a Maplet. The MapletViewer can be used to directly access a Maplet from the desktop, local file system, or the WWW. The only modification required to create this functionality is to save the worksheet as a file with type Maplet (file extension .maplet ). For example, consider the simple Maplet contained in the Maple worksheet demo1.mws.
1.

Open the demo1.mws worksheet within Maple (clicking on the hyperlink suffices).

2. To see the Maplet, execute the entire worksheet. (Note that the Maple worksheet is busy until the Maplet terminates.)
3.

Save the worksheet as demo1.maplet (on the desktop, if possible).

4.

Minimize Maple (you could terminate Maple, but you would lose your place in this worksheet).

5.

Double click on demo1.maplet (if not on the desktop, use explorer to locate the file).
(Note that this does not tie up the Maple worksheet; a separate Maple kernel is running the Maplet.)

To demonstrate Maplet access via MapleNet, download the Maple 8 worksheet (URL above) and select one of the [maplenet] links in the list of Maplets. These Maplets were created in Fall 2002 for my Calculus I course at the University of South Carolina. (Firewall and other security issues might prevent access to these Maplets via MapleNet. If so, clicking on the link to the corresponding .maplet file should launch the Maplet in MapletViewer.)
Examples for Calculus I
Prior to learning some of the fundamentals of Maplet programming, please look at some of the following Maplets. The first set of 19 Maplets were created by Waterloo Maple, Inc., and can be obtained from the MaplePrimes website. The second set of Maplets are ones that I have created for use this semester in my Calculus I course at The University of South Carolina. (Note that some of the WMI-prepared Maplets cannot be accessed via MapleNet. Each of my Maplets is MapleNet-compatible.)
Calculus I Maplets prepared by Waterloo Maple
Continuity - graphical exploration of the continuity of a function
Limit - step-by-step application of limit properties
TangentAndSecant - display/animate secant lines converging to tangent
TangentLinePlot - compute and display the tangent line to a curve at a point
Differentiation

- step-by-step application of differentiation rules

DerivativePlot - display a function and one or more specified derivatives
AreaMaximization - optimization for rectangles under a parabola
CurveAnalysis - display function, local extrema, in/decreasing, concavity
MeanValueTheorem - symbolic, numeric, or graphic application of the MVT
TaylorApproximation - display/animate Taylor polynomials
NewtonsMethod - displays iteration in Newton's method
Antiderivative - display one antiderivative or a family of antiderivatives
ApproximateIntegration - graphical and numerical support for Riemann sums
Integration - step-by-step application of integration rules
FunctionAverage - display a function and its average value over an interval
VolumeOfRevolution - display solid of revolution, find/evaluate integral for volume
ArcLength - show definite integral; plots curve, integrand, and arclength
SurfaceOfRevolution - like VolumeOfRevolution, except for surface area
InverseFunction - reinforce graphical relationships between inverse functions
Many of the above Maplets are based on commands in the Student[Calculus1] package (new to Maple 8). The following Maplets were implemented before I learned about the Student[Calculus1] package. That is the reason these Maplets come from the first part of the course. Still, I like them and I believe they provide good examples of what can be done.
Calculus I Maplets prepared by Douglas Meade
LimitCheck - evaluate limit of expression at a point (1- or 2-sided)
DerivCheck - evaluate derivative of expression with respect to variable
LinearMotion - evaluate derivative of expression with respect to variable
RelatedRates - interface for related rate/implicit differentiation problems
FunctionAnalyzer - similar to CurveAnalysis in previous list
Introduction to Maplet Programming
A six-lesson introduction to Maplet programming was provided. Topics discussed included: text fields, buttons, 2- and 3-d graphing, check boxes, sliders, selection from a list, pull-down menus, popup menus, and mathematically typeset output (using MathML).
Resources for Maplet Programmers
This workshop only scratched the surface of what can be done with Maplets. Maple's online help system contains extensive information about Maplets, including many examples. Two of the first places I suggest you visit are ?Maplets,Index and ?Maplets,Roadmap. These help documents contain similar information organized in different ways. (The Maplets Style Guide is also quite useful.) For a complete list of Maplets elements, see ?Maplets,Elements. A compact listing of all options available within each element is provided at ?Maplets,ElementOptions. A collection of Maplet examples is provided within Maple 8. For a complete listing, see the help document ?Maplets,Examples.
Additional Exploration
One of the best ways to learn Maplet programming is to modify an existing Maplet. Here are some ideas based on Maplets presented in this workshop to help you get started.
modify the LimitCheck and DerivCheck Maplets to display the results with a MathMLViewer element;
modify the DerivCheck Maplet to include a field where the user can specify the order of the derivative to be computed (default to first-order);
create a Maplet that provides an interface for solving a user-specified equation for a specified variable (include a CheckBox to indicate if floating-point answers are requested);
modify FunctionAnalyzer Maplet to have separate Plotter elements for the ordinary plot and sign plots;
modify the MeanValueTheorem Maplet to properly handle the case when the hypotheses of the MVT are not satisfied (note that the Student[Calculus1][MeanValueTheorem] procedure does check the hypotheses of the MVT, but the Maplet has not been programmed to handle this case);
combine the MeanValueTheorem and FunctionAverage Maplets to create a Maplet for the MVT for Integrals.
References
This document presents only a summary of the content of the workshop. The actual materials used in the workshop are available via the WWW in a variety of formats:
http://www.math.sc.edu/~meade/bmcc-maplets/
BMCC-Maplets.mws

Maple worksheet
http://www.math.sc.edu/~meade/bmccmaplets/BMCC-Maplets.html
HTML file
http://www.math.sc.edu/~meade/bmcc-maplets/
BMCC-Maplets.pdf
PDF file
http://www.math.sc.edu/~meade/ bmcc-maplets/
workshop.zip
ZIP archive
Only the ZIP archive contains the full set of files needed to guarantee all hyperlinks in the Maple 8 worksheet will function properly. Please download and explore the above materials.
Questions and comments are encouraged.
E-mail: meade@math.sc.edu Department of Mathematics
University of South Carolina
Columbia, SC 29208
Homepage: http://www.math.sc.edu/
~meade/
Telephone: (803) 777-6183
 
Back
 
   
Using a Personal Web Site with WEB CT in a Science Class
LUCID: A Web-based Learning System for General Chemistry
Teaching with 3-D Computer Graphics: Molecular Display and Genomic Analysis
Maple 8 and Maplets: A New Way to Use Computer Algebra in the Classroom
Using Java Applets To Enhance the Learning/Teaching of Mathematics
Statistical Applets: The Good, the Bad, and the Ugly
Ivy without Walls: A Complete System for Educational Technology
 
  Start Here. Go Anywhere.  
  Borough of Manhattan Community College The City University of New York