Mathematics
University of Houston - Clear LakeCalling on Mathematica with custom applications and objects
Reproduced with permission from NeXT
Computer, Inc.
A Reference
Guide to NeXT in Higher Education, Fall 1992
ยช
1992 NeXT Computer, Inc
An application called PhaseScope, a custom front end to
Mathematica's kernel-may help change the way
students conceptualize complex mathematical problems.
Michael Mezzino, associate professor and chair of
mathematics at the University of Houston - Clear Lake,
developed PhaseScope with NeXTSTEP for an undergraduate
course in differential equations. Students in the course
use PhaseScope to visualize solutions to differential
equations in both two and three dimensions, including phase
plane and phase space orbits. With PhaseScope students can
easily make changes to the equations, experiment with
different parameters, and view the results in simulated
real time.
"I wanted a tool for analyzing the solutions and stability
of systems of differential equations," says Mezzino.
"Although students can solve the equations, they lack the
ability to see the dynamics of the system. PhaseScope
illustrates the dynamical aspect of these problems."
The application uses the Mathematica kernel to
compute the numerical integration of the dynamical system,
locally linearize the system, compute spectra, and perform
other typical calculations that arise in solving
differential equations. PhaseScope can also be used to
investigate arbitrary numerical integration algorithms,
written in Mathematica's programming language.
"Mathematica provided the power to solve the
equations symbolically, just as students would," says
Mezzino. "And the extensibility of Mathematica
allowed me to integrate it with PhaseScope, writing some of
my own routines to handle certain kinds of displays and
provide the user with additional numerical integration
techniques which can easily be included in the
application."
It took Mezzino three months of part-time work to develop
the initial version of PhaseScope-"a testament to the rapid
development ability of Interface Builder and the NeXTSTEP
environment," he says. (He's now working on an extension of
PhaseScope for use in courses that tackle partial
differential equations and boundary value problems.)
Mezzino says Interface Builder is key to his success in
creating custom applications. "Whether or not students will
use an application depends largely on the interface," says
Mezzino. "I've had some experience writing software, and
knew that the least appealing-and most time
consuming-aspect of programming was creating the user
interface. I remember when I saw a demonstration of
Interface Builder with sliders and buttons that actually
worked-I was amazed. Here was an application that could be
used quickly to design a friendly user interface."
In addition to PhaseScope, Mezzino has created MathGraph, a
mathematical graphing object. As a loadable palette for
Interface Builder, the object can produce a two-dimensional
graph of several functions of one variable, or graph a
single function of two variables as a three-dimensional
surface or as a contour plot. The user may select linear,
semi-log, or log-log options for any combination of axes;
choose, line, scatter, error, bar, or polar displays;
examine a variety of ruled surface views; zoom and vary the
viewpoint; and elect to print, copy to the pasteboard, or
build a PostScript file.
Since MathGraph, like PhaseScope, uses
Mathematica's kernel, it can also evaluate any
valid Mathematica command or use
Mathematica to generate the data for a graph. The
object can also be made into a Service provider for the
NeXTSTEP environment. Consequently, a user who has data in
a word processing application, for example, can message the
graphing Service to produce a graph of the data in one
step. Then, the user can paste the graph directly into the
word processor as a second simple operation.
Says Mezzino, "Until NeXT introduced Interface Builder, I
had little interest in pursuing software development
because either the learning curve for development was too
imposing, the task would clearly exceed the computer's
performance, or the cost to obtain the necessary resources
was prohibitive.
With the NeXT platform, though, projects like PhaseScope
and MathGraph are feasible. Interface Builder has inspired
me to refine the design of a graphical user interface well
beyond the limits of other platforms."
With a grant from the National Science Foundation,
Mezzino's department recently purchased a lab of 15
NeXTstation Color computers and hired a graduate teaching
assistant to support students in their mathematical
studies. "We're especially excited about students having
access to Interface Builder and Mathematica," says
Mezzino These tools will significantly extend and
supplement their work."
Mezzino and his colleagues are currently modifying the
syllabi for the department's core courses, including
Calculus III, Linear Algebra, Differential Equations, and
Applied Statistics, to include "real world" laboratory
exercises. The Department will introduce the revised
courses In fall 1992 along with a new course, Technology in
Mathematics, a one-semester elective concentrating on
Mathematica for students who have completed most
of the core-curriculum.
Mezzino says students may also use the NeXT lab in their
spare time to brush up in courses they're having difficulty
in. Although the University of Houston does not offer
lower-division courses (most University of Houston students
complete their lower-division requirements at a community
college), the Department of Mathematics makes the
introductory Calculus&Mathematica curriculum
available to students who want to review material from
their lower-division courses.
Concludes Mezzino, "For price and performance, nothing
competes with NeXT computers. That the most sophisticated
implementation of Mathematica is bundled with the
NeXT made the platform an easy choice for our department.
I've heard some people say that there is more software for
the Macintosh, but the NeXT environment bundles the
important packages that we faculty-developers must have
object-oriented development tools, TeX and TeXView for
document preparation, UNIX text editors, and PostScript
previewer. With seamless integration of all these tools,
one is easily convinced that the whole is much larger than
the sum of its parts. In fact, it's easy to believe that
you're using one large package and simply moving from
feature to feature in a smooth and natural way."
PhaseScope is available through IMPACT Publishing, a
software firm based in New York, New York. Users may also
obtain a demonstration version of the software via FTP from
sonata.cc.purdue.edu in /pub/next/2.0-release/demos.
For more information, please contact:
Michael J. Mezzino, Jr.
Associate Professor and Chair of Mathematics
University of Houston - Clear Lake
2700 Bay Area Boulevard
Houston, TX 77058
(713) 283-3729
mezzino@gauss.cl.uh.edu