|©1998 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.|
Stephen E. Fisher, Student Member, IEEE and Eric Michielssen, Member, IEEE
Abstract - An on-line, asynchronous learning and simulation environment for antenna education is described. The simulation environment revolves around a Web-based Mathematica® gateway, named WebMath. WebMath accepts standard common gateway interface input from forms and JavaTM applets and applications. The system permits the on-line execution of Mathematica® commands with immediate or deferred output, and acts as a front-end to external computational engines. Beyond conventional Mathematica® kernel output, WebMath provides optional animations and virtual reality modeling language renditions. Several examples demonstrate how WebMath can be used in an introductory antenna course as a supplement to traditional teaching methods.
This article describes an integrated, World-Wide-Web-based learning and simulation environment for antenna education that supplements the senior-level antenna course offered by the Department of Electrical and Computer Engineering at the University of Illinois at Urbana-Champaign (UIUC). This environment, accessible through UIUC's "Antennas on the Web" server (AWS) at https://euler.ece.uiuc.edu, is supported by a Mathematica® driven gateway, WebMath.
The senior-level antenna course at UIUC prepares engineering students for a career in the rapidly evolving telecommunications industry. The goals of the course are threefold: (i) to provide students with an analytical and intuitive understanding of antenna physics, (ii) to expose students to antenna computer aided design (CAD) software, and, (iii) to introduce students to a variety of antenna structures of practical interest and to recent developments in the field, especially those related to wireless and personal communication systems. The AWS offers students a Web-based, asynchronous learning environment that complements the traditional means of instruction in the introductory antenna course at UIUC. By now, the benefits of Web-assisted teaching techniques are recognized by many. On-line teaching provides students with a learning environment free from conventional time, physical, and geographical constraints a[1-3]. Therefore, on-line teaching approaches are highly scalable and cost effective [4, 5]. In addition, the demand for on-line education is on the rise: continued education programs are becoming an integral part of many working environments and "formal education is becoming a lifelong endeavor" . Finally, beyond their utilitarian value, asynchronous learning systems have also been found to be resoundingly attractive to students and educators who implement them [4, 7, 8].
The AWS and WebMath simulation environment described in this paper offer unique features but by no means represent the first attempt at multimedia and network-based instruction. As stated by Penfield and Larson , "there is evidence to suggest that 1) the regular lecture component of a course is not the most educational part; 2) televised chalk-talk lectures do not take advantage of new ways of delivering and interacting with multimedia educational content; and 3) students (and faculty) benefit from interactions both among themselves and with the course material." Multimedia demonstrations have been shown to effectively enhance learning in a variety of disciplines [5, 10-12] and are especially beneficial when teaching electromagnetic and antenna principles [13-15]. Often, multimedia-enhanced teaching has been implemented through courseware approaches [6, 9, 16-22] which entail the development of a core set of tools that are delivered as a software package for each user to install on a specific platform. The Center of Excellence for Multimedia Educational Technology (CAEME)  at the University of Utah initiated the development of many educational simulators and tutorials for electromagnetics education that are distributed on CD-ROM. These packages are intended to supplement courses in electromagnetics. The introduction of computers into the classroom not only permits the visualization of physical phenomena, but also exposes students to modern computational techniques that are vital in many industrial analysis and design environments [12, 24]. Unfortunately, once distributed, courseware is not easily reconfigured and generally restricts peer-to-peer conferencing to local networks supporting the courseware [21, 22].
From its inception, the Web was recognized as a low-cost, flexible, and platform-independent means for information exchange. In its infancy, Web-based education relied on the distribution of static pages. Unfortunately, in this delivery mode, the only advantages the Web offered over its Internet predecessors, e.g., news groups and gopher servers, were ease of use and the ability to embed graphical content. The lack of interactivity of early Web-based distance education projects presented a significant hindrance to asynchronous learning . Technological restrictions locked distance learning into a noninteractive structure: "in an educational context, World Wide Web clients such as NCSA Mosaic are of limited value because they put learners in the role of information absorbers" . Early attempts to raise the level of interactivity usually led to combined Web/courseware approaches. The well-known limitations of these linearly structured teaching methods drove many distance education programs to evolve from repositories of static information into vehicles for interactive long-distance training as the technology became available [7, 20, 26]. Indeed, the amazing increase in browser functionality has drawn many educators to the Web in recent years. Several tightly integrated educational environments have resulted from research and development in this area. Two prototypical examples of such systems are Mallard  and CyberProf : both provide a means for the instructor to rapidly develop and deploy an on-line curriculum [5, 8, 29]. Neither environment intends to replace the conventional classroom; instead, both are designed to enhance out-of-classroom learning. Both environments permit the computer-assisted development of on-line quizzes and assignments. They also provide tools for dynamically rendering graphics and for performing simple calculations; however, their built-in mathematical analysis capabilities are limited.
The explosive growth and rapid evolution of the wireless and personal telecommunications markets have resulted in a significant demand for antenna engineers with a solid understanding of fundamental antenna concepts, and a working knowledge of modern antenna systems. Students need to be educated with these provisos in mind. It has been shown that use of instructional Web technologies in electromagnetics courses enhances student understanding of antenna physics and increases the industrial relevance of the course [4, 14, 15, 24]. Modern CAD tools permit the rapid analysis of composite antenna systems and the visualization of their radiation patterns. In an educational context, these CAD tools assist students in developing an in-depth intuition into complex mathematical and physical concepts. Current Web technologies provide unprecedented opportunities for making antenna analysis and design software packages accessible through standard browsers, removing often complicated interfaces . The AWS is an integrated on-line learning environment for antenna education, providing traditional instructional materials as well as a platform for electromagnetic simulations. AWS simulations are supported through a Mathematica® gateway, named WebMath. The WebMath environment permits advanced simulations and is easily reconfigurable.
This paper is organized as follows. Section II describes the on-line antenna education environment used at UIUC that is supported by the AWS and the WebMath simulation software. Section III demonstrates the simulation capabilities of the WebMath environment and its use in antenna education. Section IV outlines the conclusions of this paper. Technical details of the WebMath software are discussed in Appendix I.
This section describes the on-line environment that supports the senior-level antenna engineering course at UIUC. Section II.A introduces the AWS. Section II.B describes the capabilities of the WebMath software that drives the simulations on this server.
A. "Antennas on the Web," an Asynchronous Learning Environment for Antenna Education
Students have long conceived electromagnetics as a theoretical and abstract subject because of the mathematical nature of the topic, which has often obscured the industrial relevance of the material presented in a typical antenna course. The study of antennas requires a thorough understanding of Maxwell's equations, which embody the fundamental laws of electromagnetics. These laws describe space- and time-varying vector fields and their interaction with scattering and radiating structures. A student's ability to visualize three-dimensional vector fields as well as two- and three-dimensional antenna radiation patterns is key to his/her understanding of basic antenna principles. The study of electromagnetic fields and their interaction with antennas therefore benefits tremendously from the introduction of fast and interactive visualization tools.
The AWS, accessible at https://euler.ece.uiuc.edu, is a integrated on-line environment for antenna education. The AWS features a variety of computational modules that address the critical areas of field visualization and antenna CAD, and that enhance the industrial relevance of the undergraduate antenna course taught at UIUC (Fig. 1). The main features of the AWS are summarized below.
Fig. 1. The "Antennas on the Web" Server (AWS).
The AWS has supplemented UIUC's undergraduate antenna course during the 1996 and 1997 spring semesters. Although no external evaluation of the use of the AWS and WebMath technology has been carried out, student feedback has been enthusiastic. The addition of the AWS and the graphical simulation environment appears to raise the students' level of conceptual understanding and increase the rate at which they absorb the course material. This has enabled the students to move beyond fundamental concepts more quickly and allowed the introduction of new topics into the course related to recent developments in the field. Our observations concerning the benefits of Mathematica® in this course are in line with the findings of a study regarding a calculus curriculum taught using Mathematica® in a laboratory setting . The next section outlines the functionality of the WebMath software.
B. "WebMath" software
"WebMath" provides a Web-based interface for arbitrary Mathematica® commands. Mathematica®, developed by Wolfram Research , is a powerful engine for performing analytical and numerical mathematical operations on a computer. In essence WebMath permits a remote user to execute Mathematica® commands and programs on any Web server equipped with the WebMath interface. This software package evolved from a code developed by Prof. H. E. Donley  at the Indiana University of Pennsylvania named "mmaeval." Other mathematical environments, such as MATLAB, Maple, and Mathcad encompass capabilities similar to those of Mathematica®. However, the availability of "mmaeval" was one of the motivating factors in the selection of Mathematica® as the mathematical engine for WebMath.
WebMath includes functionality, tailored specifically toward courses that benefit from advanced simulation and visualization, that goes beyond what is offered by "mmaeval" and standard Mathematica® front-ends. The principal WebMath features are summarized below and will be demonstrated through a host of examples illustrating WebMath's use in antenna education in Section III (Fig. 2).
Fig. 2. Capabilities of the WebMath environment.
Both Unix and Windows versions of the software have been developed and have been optimized for low-bandwidth networks. WebMath for Unix is publicly downloadable from Wolfram Research's Web site. Download information and technical aspects of the WebMath system are provided in the Appendix. Fig. 3 shows typical WebMath input and output screens.
Fig. 3. WebMath interface: (a) typical input screen, (b) typical output screen.
As mentioned above, WebMath permits Mathematica® scripts to be stored on the server and loaded by the student. This allows the instructor to develop a host of stand-alone visualization and computational tools for illustrating basic course principles. Alternatively, the instructor may develop a toolbox of scripts that students can use as building blocks for constructing solutions to complex problems. By encouraging the execution of predefined functions contained in packages, students do not need to engage in the repetitive recoding of general-purpose utilities, e.g., radiation pattern plotting functions. Making the syntax of the predefined packages self-explanatory minimizes the need for prerequisite knowledge of the Mathematica® programming language. (Nonetheless, some basic Mathematica® knowledge is required for effectively using the system; hence, for true novices, a Mathematica® primer is available on the AWS.)
The WebMath system encourages learning through experimentation, which has been shown to be very effective in many disciplines[10, 33]. The benefits of introducing the students to modeling and computer simulation are more than academic, as industry has complained that many graduates are not adequately trained to fulfill its need in this area . Finally, whereas the AWS was initially developed for use in antenna instruction at UIUC, we believe that the system can be applied to other technical disciplines as well.
This section demonstrates the use of WebMath on the AWS. Current antenna simulators on the AWS range from elementary to advanced. Because adding new simulators is easy, the site is being updated continuously. Section III.A illustrates the use of the WebMath's basic Mathematica® interface. Section III.B presents antenna simulations based on predefined packages and performed entirely in Mathematica® through the basic WebMath interface. Section III.C illustrates the use of WebMath in the full-wave, method of moments (MoM) analysis of wire antennas. Such simulations are made possible by WebMath's ability to interface with external (FORTRAN and C/C++) codes. Finally, Section III.D presents hybrid tools for analyzing antenna arrays using Mathematica® packages equipped with a JavaTM front-end.
A. The Basic Mathematica® Interface (example A)
As stated before, WebMath's standard interface allows the user to submit arbitrary Mathematica® commands and scripts for execution to the AWS (see example A.1). Mathematica®'s output can be purely textual, but can also contain graphical information as WebMath handles multiple output formats. Standard two- and three-dimensional plots are rendered in graphic image format (GIF) format when appropriate (see example A.2). Adjacent images (such as those generated by a Mathematica® table function) are automatically compiled into a Moving Picture Experts Group (MPEG) movie and viewed as animations, when that format is requested (see example A.3).
To achieve improved visualization of three-dimensional objects, users can request that three-dimensional images be returned as VRML objects. VRML files fully define three-dimensional objects that can be viewed from different perspectives. Hence, this medium is well suited for exploring intricate three-dimensional plots of mathematical objects, e.g., antenna radiation patterns (see example A.4).
Another feature of WebMath's basic interface is job submission. Complex Mathematica® scripts require significant CPU resources and take several minutes or even longer to complete. Often, the client's Web browser time-out setting will interrupt the process. This problem is aggravated when WebMath's interface serves as a front-end to external analysis codes. To allow for several computationally expensive processes to be run on a single server simultaneously, a system was developed to assist users in dealing with server lag during peak times. Jobs submitted as background processes generate results that can be viewed at the user's convenience after completion. Since the job submission scheme can be adapted to handle any process (not just those that are Mathematica® based), it allows for significant expandability for the AWS. A user submits his/her input for background processing by providing a job title, a brief job description, and an e-mail address. Immediately after a job is submitted, the user is notified that his/her job has/has not been successfully interpreted by the server. This permits the user to submit complex jobs that may run from several minutes up to several hours (see example A.5). Upon completion of the job, the system e-mails the user a message containing the URL of the result file (e-mail is only available in the Unix version). Additionally, all the result files are publicly accessible and indexed on a "completed job list." This permits students to interact with their colleagues and to review their previous work. The job submission feature also allows the course instructor to post on-line examples.
B. Analysis of Elementary Antennas Using the Basic Interface (example B)
Mathematica® packages that illustrate the fundamental properties of basic antenna types have been developed. These scripts allow antenna engineering students to experiment with elementary radiators and arrays by observing the parametric dependence of their patterns on antenna dimensions and frequency. Static pages outlining the use of these packages are available to the students.
These packages come in two varieties. Packages of the first type act as demos and are self-contained. The user enters the antenna's parameters and, upon executing the demo, receives output which cannot be further manipulated. For example, the array demo package "ArrPckdemo.m" allows the user to define the structure of a three-dimensional array. The package outputs a three-dimensional representation of the array and the array factor pattern. (See example example B.1.)
Packages of the second type define functions that can be used in combination with those defined by other packages or any Mathematica® commands for further experimentation. One of the first radiating structures discussed in any undergraduate antenna course is the dipole. The Mathematica® package "PatDip.m" defines radiation patterns of arbitrarily oriented, finite length dipoles. The package "PatPlot.m" provides the student with a collection of plotting functions for visualizing two- and three-dimensional patterns. Upon loading "PatDip.m" and "PatPlot.m," the student is able to observe the effect of dipole length and orientation on its radiation pattern (see example B.2). The AWS provides access to a host of Mathematica® packages that permit the analysis of other ideal antenna geometries. For example, the "ArrPck.m" package is provided for analyzing various array types (see example B.3). Using the WebMath interface, the combination of element and array patterns is almost automatic: an array factor function produced by the array analysis package can be multiplied with the element pattern function produced by the element analysis package. The plotting package, "PatPlot.m," can be used to illustrate the resulting far field radiation (see example B.4).
While the full-wave simulation of antennas is, for the time being, beyond the reach of Mathematica®, the software is capable of analyzing and optimizing quite complex antenna geometries. One of the more advanced Mathematica® packages currently included on the AWS permits the synthesis of an arbitrary two-dimensional array. The package reads the user-defined array geometry and optimizes the element excitation to maximize the array directivity in a specified direction, with or without a constraint on the array quality factor. The optimization procedures used are based on the technique described by Lo  (see example B.5).
C. Full-Wave Analysis of Wire Antennas Using MoM Codes Written in FORTRAN and C/C++ (example C)
As described in Section II.B, WebMath is designed to function in conjunction with externally compiled FORTRAN and C/C++ codes, which execute as child processes to WebMath and the Mathematica® kernel. This feature permits the student to execute rigorous full-wave antenna analysis programs from the familiar WebMath interface.
Several general purpose FORTRAN and C/C++ integral-equation-based MoM codes were linked to WebMath. Although these codes are capable of analyzing both radiation and scattering from arbitrarily shaped three-dimensional surfaces and wire structures, to date, only WebMath interfaces for studying four simple wire antennas have been established: (i) V-dipole, (ii) simple Yagi-Uda, (iii) square loop, and (iv) circular loop. Interfaces for analyzing other types of wire radiators are being developed. Following the specification of the antenna dimensions, WebMath dynamically generates an antenna geometry file that it passes on to the external MoM code. Upon completion, this code returns all analysis data to WebMath. The user may invoke the above-described plotting packages to generate the antenna's radiation patterns (see example C.1). Adding other types of antennas to the AWS only requires the creation of code for writing the new geometry file. Of course, obtaining accurate full-wave solutions to radiation problems combined with VRML rendering of the patterns can be time consuming. These were the first simulations complex enough to motivate the development of WebMath job submission.
As a more advanced example, consider the log-periodic dipole array (LPDA) and the log-periodic monopole array (LPMA) . The analysis of these antennas can be disected into an external and internal problem. The external problem requires the MoM analysis of an N-port radiating structure. The internal problem pertains to the interconnection of the N-port through a feed network, and can be solved with a transmission line code. The external problems for both structures are almost identical, however, the internal problems are not since the twisted wire feed found on properly functioning LPDAs cannot be implemented in the presence of a ground plane. The inclusion of excess feed lengths to achieve the same interelement phase shift provided by transposition give rise to undesirable structure-based stop-bands. These stop-bands can be removed through the use of an impedance-modulated feeder . This change in the feed topology makes it much more convenient to use two separate transmission line codes and a single MoM code. WebMath can easily coordinate between multiple codes and pass the final collection of results to Mathematica® for interpretation and graphical display. (see example C.2).
D. Antenna Array Analysis and Design Using JavaTM Enhanced Mathematica® Interfaces (example D)
The above described WebMath interfaces to Mathematica® packages and external codes provide the student with many antenna analysis tools and ample opportunity for experimentation. However, from an educational perspective, it is equally important that these tools be made user-friendly. Toward that end, WebMath supports JavaTM-based graphical user interfaces (GUIs) to Mathematica® packages. They are intended to facilitate the specification of complex geometries and to teach students the syntax of Mathematica® commands required to execute similar simulations through a standard form. The first GUI was written to complement the array analysis package illustrated in examples B.2 and B.3. This interface allows the student to "draw" a two-dimensional array, scale the structure, and specify the magnitude and phase of each element's excitation. Once the user has specified an array within the JavaTM window, the appropriate Mathematica® code is generated and displayed so the user can (i) take note of how to enter the same data directly into Mathematica®, (ii) edit the generated input to request additional output, and (iii) copy the code for future use. The edited code is submitted for processing via job submission scripts when the user enters a title, description and e-mail address and clicks "send." Another related input-intensive package on the AWS is the two-dimensional array directivity optimizer. Example D.1, which is identical to example B.4 with the exception of the input method, illustrates the use of a JavaTM interface for that package. Several JavaTM GUIs have been constructed for other packages, with more under developement.
Finally, the AWS also features a few stand-alone JavaTM applets for simple array simulations. These applets have simple interfaces that yield immediate feedback and are intended to serve as a precursor to further exploration using the more advanced tools provided by WebMath. Currently, two JavaTM-based simulations are showcased:
This paper described an on-line environment for antenna education. This environment is supported by WebMath, a Web-based Mathematica® gateway, and allows for the on-line execution of Mathematica® scripts with interactive or deferred output. The system is tailored for courses with a significant computational analysis and design content, and it interfaces with JavaTM applets and applications as well as with external computational engines. The use of WebMath in an introductory antenna course was demonstrated.
This work was supported in part by the National Science Foundation under grant number ECS 95-02138, the University of Illinois Educational Technology Board, The Sloan Center for Asynchronous Learning Networks, and the AFOSR under grant number F49620-96-1-0025. The authors would like to thank Profs. Tim Trick and Burks Oakley II for their critique and encouragement.
 K. D. Taylor, J. W. Honchell and W. E. DeWitt, "Distance learning in courses with a laboratory," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 B. Oakley II, "Helping faculty develop new asynchronous learning environments," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 J. R. Bourne, E. McMaster, J. Rieger and J. O. Campbell, "Paradigms for on-line learning: a case study in the design and implementation of an asynchronous learning networks (ALN) course," in Journal of Asynchronous Learning Networks, VOL. 1, NO 2, 1997.
 S. Villareal and B. Zoghi, "A collaborative multimedia, web-based electronics course: project description and survey," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 B. Oakley II, "The virtual classroom: at the cutting edge of higher education," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 D. Harris and A. DiPaolo, "Advancing asynchronous distance education using high-speed networks," IEEE Transactions on Education, VOL. 39, NO 3, August 1996.
 D. Johnson, M. Ruzek and M Kalb, "Earth system science education: A continuing collaboration," in IGARSS '96 International Geoscience and Remote Sensing Symposium. Remote Sensing for a Sustainable Future, VOL. 2, 1996.
 M. L. Swafford, C. R. Graham, D. J. Brown and T. N. Trick, "MallardTM: Asynchronous learning in two engineering courses," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 P. Penfield Jr. and R. C. Larson, "Education via advanced technologies," IEEE Transactions on Education, VOL. 39, NO 3, August 1996.
 R. H. Bamberger, "A prototype distance learning laboratory for image processing education," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 J. L. Zachary, "An introduction to computing for engineers: New approaches to content and pedagogy," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 J. R. Bayard, S. de Haas, "Multimedia teaching tools for an introductory circuit analysis course," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 W. J. Bishop, S. A. Pradels, and O. R. Baiocchi, "Visualization of pulse propagation phenomena with MATLAB and Wavefront software," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 T. Singh, M. Zhu, U. Thakkar and U. Ravaioli, "Impact of World Wide Web, JavaTM, and virtual environments on education in computational science and engineering," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 J. Ambach, and C. Perrone, "Remote exploratoriums: Combining network media and design environments," Computers Education, VOL. 24, NO 3, 1995.
 G. Bengu, "Interactive multimedia courseware on manufacturing courseware on manufacturing processes and systems," international Journal of Engineering Education, VOL. 11, NO 1, 1995.
 G. Bengu and W. Swart, "A computer-aided, total quality approach to manufacturing education in engineering," IEEE Transactions on Education, VOL. 39, NO 3, August 1996.
 Computers Education, "Preface," VOL. 24, NO 3, 1995.
 R. Ford, "Lessons learned from using GIS/RS as an integrative tool for interdisciplinary learning and teaching in a senior-level capstone course on global change at westminster college of salt lake city," IGARSS '96 International Geoscience and Remote Sensing Symposium. Remote Sensing for a Sustainable Future, VOL. 3, 1996.
 D. Novick, S. Fikas, "Collaborative networked hypermedia education: Lessons from the NERO project," Computers Education, VOL. 24, NO 3, 1995.
 A. Azemi, "Using multimedia courseware in engineering education," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 O. de los S. Vidal, R. M. Jameson, M. F. Iskander, A. Balcells and J. C. Catten, "Interaction and simulation-based multimedia modules for electromagnetics education," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 I. Chatterjee, and D. C. Williams, "Computational exercises in antenna analysis and design for electrical engineering senior technical elective-graduate courses," in IEEE/ASEE Proc. of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 S. Hall, et al., "The weather visualizer: A JavaTM tool for interactive learning," IGARSS '96 International Geoscience and Remote Sensing Symposium. Remote Sensing for a Sustainable Future, VOL. 2, 1996.
 C. Blurton, and S. McGee, "Mission to planet earth on-line earth systems science course," IGARSS '96 International Geoscience and Remote Sensing Symposium. Remote Sensing for a Sustainable Future, VOL. 2, 1996.
 D. J. Brown and M. Swafford, "MallardTM: Asynchronous learning on the world-wide-web," Proc. of the ASEE 96 Conf., Washington, DC, June 23-26, 1996.
 N. A. Pendergrass and G. Sun, "Using computer assisted collaborative learning for high quality distance education," in IEEE/ASEE Proc. Of the Frontiers in Education Conf. (Salt Lake City, UT, Nov. 6-9, 1996).
 Y. T. Lo, S. W. Lee and Q. H. Lee, "Optimization of directivity and signal-to-noise ratio of an arbitrary antenna array," Proceedings of the IEEE VOL.54, NO 8, August 1966.
 P. G. Ingerson and P. E. Mayes, "Log-periodic antennas with modulated impedance feeders," IEEE Trans. Antennas and Propagation, VOL. AP-16, pp. 633-642, November 1968.
This appendix provides technical information regarding the WebMath environment. The authors hope that this supplement will assist others in adapting this technology for use in their classrooms and fine-tuning its capabilities.
The initial WebMath software was developed for Unix systems. Recently, a Windows version with near identical capabilities, named WinWebMath, was developed. This appendix describes both WebMath and WinWebMath. The functionality of these environments was described and illustrated in Sections II.B and III, respectively.
WebMath and WinWebMath are Common Gateway Interface (CGI) programs that interface with MathLinkTM to provide a Web-based front-end to Mathematica®. Both environments support VRML output and interface easily with JavaTM applets. In addition, both systems include a job submission feature, which permits time-consuming processes to be run in the background; this allows for seamless incorporation of existing engineering tools into a curriculum. By applying standard compression to the larger objects to be transmitted, all WebMath-supported simulations remain easily accessible to users communicating through low bandwidth networks.
Almost all Web servers support the CGI standard for identifying information being exchanged between a client (the user who runs a Web browser or other Internet-connected interface) and a server (the machine that provides the information the client is requesting). CGI allows the exchange of any information type by encapsulating transmitted information packets within standardized headers. Fig. 4 illustrates the information flow associated with a single CGI transaction.
Fig. 4. Information flow associated with a CGI transaction.
A CGI transaction is initiated by a client request (usually the click of a button that causes the submission of form data). The browser submits information to the server using a method defined in the form, encapsulating that information according to method-specific CGI rules. The Web server intercepts the request and reads the CGI header. It then passes the form information to the CGI compatible script specified by the action variable in the form. It also identifies the interpreter which should act on the script. The script interpreter returns the resulting information to the Web server, which looks up the data type being returned and determines the appropriate CGI header with which to encapsulate the response. Finally, the response is returned, appropriately identified by a CGI header so that the Web browser can identify the proper plug-in, ActiveX control, or helper application to send the incoming object to.
As mentioned in Section II.B, our WebMath software expands upon the "mmaeval" code developed by Prof. H. Edward Donley . Unix WebMath is compatible with Mathematica® 2.2 and takes advantage of freeware programs that are installed on most Unix systems (available under a GNU license). Donley's mmaeval interprets Mathematica® input and returns output as text, images in GIF format, or MPEG-1 movies. The first version of WebMath was based on the mmaeval structure. The primary changes involved (i) restructuring the code to enhance performance and interface reliability, and (ii) addition of an automated VRML conversion feature. Currently, the VRML conversion relies on VRMLConvert, a package independently developed by Donley, which converts Mathematica® objects into VRML 1.0 files. VRML files often are very large because they completely define three-dimensional objects. To ensure accessibility of these features to the average user, possibly connected through a low-speed modem, these files are compressed into GZIP format before transmission. Final enhancements extended WebMath's front-end with a job submission capability to allow handling of large and complex jobs. This feature was added because usually, browsers have a "CGI timeout" setting and do not allow for excessively long response times. (Job submission was added after the initial packaging of WebMath, and therefore is not currently included in the version available at Wolfram Research's MathSource Web site.) Fig. 5 illustrates the complete WebMath system.
Fig. 5. Flow-chart of the WebMath system.
The process of interpreting and executing Mathematica® command is initiated by a client request, which includes the code to be interpreted, and the display options. The main CGI-script, "mmajobs," accepts the input processed by the Web server and parses it. If no job title is specified, mmajobs assumes a normal CGI request and sends the code to Mathematica® through MathLinkTM. MathLinkTM is a system optionally distributed with Mathematica® that provides the necessary tools to write C programs that link to the Mathematica® kernel. If the user input contains instructions to interface with external tools (such as electromagnetic analysis tools written in FORTRAN or C/C++), those programs are executed, generating data which is subsequently interpreted by Mathematica® through WebMath. In addition, prewritten packages stored on the server are loaded into Mathematica® when requested by the user. VRML conversions are performed in Mathematica® when three-dimensional objects are detected and VRML output is specified as a display option. The generation of other graphical objects is performed by "mmajobs." Additionally, "mmajobs" generates the HTML code encapsulating the Mathematica® output, which is returned to the client as a normal server response. If a job title was specified, a response is generated immediately acknowledging the client's request. When all code is completely analyzed, the Mathematica® output is redirected to a static Web page through a PERL script, "UpdateJobs.pl." That script also adds the job title to a "list of completed jobs" and e-mails the user, notifying him/her that the task has been completed.
A Windows version of the above-described Unix-based WebMath was developed. WinWebMath's functionality mimics that of its Unix cousin with the exception of the e-mail option (due in part, to the lack of a standardized command-line e-mail system in Windows 95/NT). However, its internal structure is entirely different from that of the original WebMath and "mmaeval," as it moves almost all the control to Mathematica®. The development of WinWebMath was driven by the desire of many groups to rely on PC servers. This system is only available for Mathematica® 3.0 because it takes advantage of many of the new features introduced in that version. Fig. 6 further illustrates the WinWebMath structure.
Fig. 6. Flow-chart of the WinWebMath system.
All functionality derived from PERL scripts in the original Unix WebMath version is now controlled by Mathematica®. Further, Mathematica® does its own internal conversions into the GIF format. The WebMath system packages, which define internal functions and interface routines for interacting with WebMath, are loaded into Mathematica® for every process request. The directory manipulations and file generation for job submission are handled by WinWebMath but directed by Mathematica®. By shifting most of the functionality to Mathematica®, system changes are easy, and customization can be done without recompilation of the main WebMath script. This version has been packaged, and a program that automates the installation on a Windows 95/NT platform has been created (also available for download at Wolfram Research's MathSource site).
Stephen E. Fisher
Center For Computational Electromagnetics
Department of Electrical and Computer Engineering
University of Illinois at Urbana-Champaign
1406 W. Green Street
Urbana, IL 61801
Center For Computational Electromagnetics
Department of Electrical and Computer Engineering
University of Illinois at Urbana-Champaign
1406 W. Green Street
Urbana, IL 61801
Phone: (217) 333-3803
Fax: (217) 333-5962
Stephen E. Fisher (B.S. in electrical engineering University of Illinois at Urbana-Champaign (UIUC) 1997) is working towards his M.S. in electrical engineering at UIUC. His research interests include computational electromagnetics and asynchronous teaching techniques. He currently is serving in United States Navy, where he is active as nuclear reactor control engineer. Previously he has served as an instructor in nuclear and electronics fields. He is the recipient of a University Fellowship from UIUC's Department of Electrical and Computer Engineering.
Eric Michielssen (M.S. in electrical engineering Katholieke Universiteit Leuven (KUL, Belgium), 1987; Ph.D., University of Illinois at Urbana-Champaign (UIUC) 1992) is Assistant Professor of Electrical and Computer Engineering at UIUC and Associate Director of its Center for Computational Electromagnetics. From 1987 to 1988, he was a research assistant in the Microwaves and Lasers Laboratory at KUL. In 1988, he was appointed Belgian American Educational Foundation. He joined the Electrical and Computer Engineering Department at UIUC as a Visiting Assistant Professor in 1992, and was appointed Assistant Professor of Electrical and Computer Engineering in 1993. He is a 1995 NSF CAREER award recipient. He serves as Associate Editor for Radio Science and served as the Technical Chair for the Thirteenth Annual Review of Computational Electromagnetics (ACES '97, Monterey, CA). His research interests include all aspects of computational electromagnetics, with a focus on fast multilevel algorithms, application of combinatorial stochastic optimization techniques to the design of electromagnetic and optical components, and computational photonics.