Mathematics

University of Houston - Clear Lake
Calling 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