News & Events
-----
 /
News & Events
*News Archive
*Events
*Media Coverage
*MATHwire
*Sign Up for a Newsletter
*For More Information
*Wolfram Library Archive
*The Mathematica Journal
*MathGroup
*For the Media
*Ask about this page
*Print this page
*Email this page
*Give us feedback
*
Sign up for our newsletter:

MathUser


Spring 1995


Contents

  • How MathLink Expands Your Capabilities

  • Visiting Scholar Grants Awarded

  • Jerry B. Keiper (1953-1995)

  • New Mathematica Applications

  • What's New on MathSource

  • Block Out Complex Numbers with RealOnly


About MathUser

MathUser is published by Wolfram Research to provide news and information about Mathematica to registered Mathematica users. MathUser is also available free of charge to other people interested in Mathematica. To be added to the list of subscribers or to submit a change of address, send your postal address information to mathuser@wri.com, or call +1-217-398-5151. (In Europe, fax +44-(0)1993-883800.) Note that MathUser is sent to your registration address, the same address where all other Mathematica information and mailings are sent.

Electronic copies of this and earlier issues of MathUser are available on MathSource. This issue of MathUser is MathSource item 0207-593.

The MathSource item numbers of prior issues are:

  1. Spring/Summer 1992 0202-655

  2. Fall/Winter 1992 0204-477

  3. Spring/Summer 1993 0205-759

  4. Fall 1993 0205-827

  5. Winter 1994 0206-907

  6. Spring 1994 0205-771

  7. Fall 1994 0207-278 Now you can get MathUser by email automatically when the current issue is available; simply send the text "subscribe mathuser" (without quotes) in a message to mathlist@wri.com.

    Your comments and suggestions are important to us. Send letters to the editor at the address below. We are always interested in hearing ideas for topics to be covered in MathUser.


    How to Contact Us

    Wolfram Research, Inc.
    100 Trade Center Drive, Champaign, IL 61820-7237, USA
    phone: +1-217-398-0700; fax: +1-217-398-0747
    customer service and orders: +1-217-398-5151
    technical support: +1-217-398-6500

    Wolfram Research Europe Ltd.
    10 Blenheim Office Park, Lower Road, Long Hanborough
    Oxfordshire OX8 8LN, UNITED KINGDOM
    phone: +44-(0)1993-883400
    fax: +44-(0)1993-883800

    Wolfram Research Asia Ltd.
    Izumi Building 8F
    3-2-15 Misaki-cho
    Chiyoda-ku, Tokyo 101, JAPAN
    phone: +81-(0)3-5276-0506
    fax: +81-(0)3-5276-0509

    World Wide Web
    Wolfram Research: http://www.wri.com/

    Internet email addresses
    general and sales information: info@wri.com
    European information: info-europe@wri.com
    Asian information: info-asia@wri.com
    customer service and orders: orders@wri.com
    user registration: register@wri.com
    technical questions and support: support@wri.com
    European technical questions and support: support-europe@wri.com
    bug reports: support@wri.com
    suggestions: suggestions@wri.com
    training: training@wri.com
    grant programs: grants@wri.com
    Web suggestions: webmaster@wri.com
    this newsletter: mathuser@wri.com

    MathSource
    World Wide Web: http://www.wri.com/MathSource.html
    FTP: mathsource.wri.com
    Gopher: mathsource.wri.com
    mail server: mathsource@wri.com
    dialup: +1-217-398-1898
    system administrator: ms-admin@wri.com

    1995 Wolfram Research, Inc. MathUser (ISSN 1062-7030) is published several times a year by Wolfram Research, Inc., 100 Trade Center Drive, Champaign, IL 61820-7237, USA; email: mathuser@wri.com.

    Mathematica, MathLink, and MathSource are registered trademarks, and MathUser is a trademark of Wolfram Research, Inc. Mathematica is not associated with Mathematica Policy Research, Inc. or MathTech, Inc. All other product names mentioned are trademarks of their producers.


    Expand Your Capabilities with MathLink

    The Mathematica kernel is a powerful computational engine and programming environment. It can also communicate easily with other programs due to its open, extensible architecture. The facility that makes this possible is called MathLink, and it is included as part of Mathematica on virtually every platform.

    There are two main uses of MathLink. One is to allow external functions or programs (written in C or Fortran, for example) to be called from within Mathematica just as if they were built-in functions. The second use is to have Mathematica serve as a background computational engine for other commercial software or your own programs.

    You don't have to be a C programming expert to take advantage of MathLink. If you want to call an external C or Fortran function from Mathematica, you may only need to write a short "template" file and a couple of lines of C. Calling Mathematica from other programs can be done in as little as a few lines of code (see box). Many off-the-shelf applications have programming (or macro) languages capable of directly calling MathLink functions. For example, Access and Excel have Visual Basic for Applications, and Word has WordBasic. Links to Mathematica are already available for Excel, LabVIEW, Spyglass Transform, MATLAB, Xmath, IRIS Explorer, and AVS, with many more on the way. The next time you find yourself asking, "Wouldn't it be nice if Mathematica worked with program X?", consider writing the connection yourself. It's easier than you think!

    The example on the right is a sample template file for a C function called myfunc that takes two real numbers and returns a real number. Here is everything you need to write to call this function directly from within Mathematica. You don't need to make any changes to the source code for the function--you don't even need to have the source code (for example, if the function is in a compiled library).

    
    :Begin:
    :Function:       myfunc
    :Pattern:        MyFunc[x_Real,         y_Real]
    :Arguments:      {x, y}
    :ArgumentTypes:  {Real, Real}
    :ReturnType:     Real
    :End:
    
    int main(int argc, chat *argv[]) {
        return MLMain(argc, argv);
    }
    
    Here is a complete WordBasic macro for Microsoft Word for Windows. The macro launches the Mathematica kernel, puts up a dialog box that prompts the user for a string, evaluates the string as an expression, and then inserts the result at the current insertion point.
    ' Import the necessary MathLink library functions.
    Declare Function MLOpenS Lib "c:\wnmath22\mlink16.dll"   \
             (s$) As Long
    Declare Function MLClose Lib "c:\wnmath22\mlink16.dll"  \
             (link As Long) As Integer
    Declare Function MLPutFunction Lib "c:\wnmath22\mlink16.dll"    \
             (link As Long, func$, argcount As Long) As Integer
    Declare Function MLPutString Lib "c:\wnmath22\mlink16.dll"      \
             (link As Long, s$) As Integer
    Declare Function MLNextPacket Lib "c:\wnmath22\mlink16.dll"     \
             (link As Long) As Integer
    Declare Function MLNewPacket Lib "c:\wnmath22\mlink16.dll"      \
             (link As Long) As Integer
    Declare Function MLGetNext Lib "c:\wnmath22\mlink16.dll"         \
             (link As Long) As Integer
    Declare Function MLGetData Lib "c:\wnmath22\mlink16.dll"        \
             (link As Long, result$, n As Long, numGotten$) As Long
    Declare Function MLBytesToGet Lib "c:\wnmath22\mlink16.dll"     \
             (link As Long, num$) As Integer
    
    Sub MAIN
    
    ' Open the link. The last part of the string is the path to the kernel.
    link = MLOpenS("-linkmode launch -linkname c:\wnmath22\math")
    
    ' Get a string from the user.
    instr$ = InputBox$("String to evaluate:")
    
    ' Send it to the kernel and prepare to read the result.
    err = MLPutFunction(link, "EnterTextPacket", 1)
    err = MLPutString(link, instr$)
    While MLNextPacket(link)  4
        err = MLNewPacket(link)
    Wend
    
    ' Determine the number of bytes in the result string.
    err = MLGetNext(link)
    err = MLBytesToGet(link, numBytes$)
    numBytesToGet = 0
    exp = 1
    For i = 1 To Len(numBytes$)
        numBytesToGet = Asc(Mid$(numBytes$, i, 1)) * exp + numBytesToGet
        exp = exp * 256
    Next i
    
    ' Allocate enough storage for the result.
    result$ = String$(numBytesToGet, 1)
    
    ' Read the result string.
    err = MLGetData(link, result$, numBytesToGet, numGotten$)
    
    ' Insert the result in the document.
    Insert result$
    
    err = MLClose(link)
    
    End Sub
    
    This macro is available on MathSource, with additional information, as item 0207-627.


    MathLink Tutorial on MathSource

    Budding MathLink programmers should look at MathSource item 0206-693, A MathLink Tutorial. Extending the MathLink Reference Guide, it provides in-depth discussion, useful code fragments, and tips and tricks. Much of the information is not available anywhere else.


    Moving? Stay in Touch!

    Whether you're moving down the street or to another city, make sure you continue to receive MathUser and the latest news about Mathematica by keeping us informed. Contact Customer Service (at our corporate headquarters in the U.S.) by phone, fax, or email, and tell us your new address.


    Mathematica Conferences and Workshops around the World

    Meet and learn with other Mathematica users

    Mathematica in Mathematics Research and Education Conference

    July 8-10, 1995
    University of Tasmania, Australia

    Scheduled immediately following the Annual Conference of the Australian Mathematical Society, the Mathematica in Mathematics Research and Education conference is designed for university faculty who are interested in incorporating Mathematica into the curriculum or using it to enhance their research.

    Main presentations will feature guest speakers who teach with Mathematica, have written Mathematica-related books, edit Mathematica publications, and have created application packages.

    Conference Highlights:

    Day 1: Saturday, July 8 - $60 registration fee*
    Mathematica in Mathematics Research
    main presentations by Terry Robb, Monash University, and Tim Stokes, Murdoch University; user presentations from various universities (25 minutes each); conference dinner banquet

    Day 2: Sunday, July 9 - $60 registration fee*
    Mathematica in Mathematics Education
    main presentations by Ed Packel, Lake Forest College, Stephen Hunt, Victoria University of Technology, and David Leigh-Lancaster, Kingswood College; user presentations from various universities (25 minutes each)

    Day 3: Monday, July 10 - $200 registration fee*
    Mathematica Programming
    (limited to 20 participants) an intensive intermediate-level Mathematica programming course by Paul Abbott

    *Take 20% off if you register before May 31, 1995.

    Papers submitted in Mathematica notebook format by May 15, 1995 will be considered by the program committee for inclusion in the conference program.

    To register: Access the on-line registration form and complete conference information on the World Wide Web at http://euler.maths.utas.edu.au/Maths/MathematicaConference.html. Or for more information send email to mathematica_conference@hilbert.maths.utas.edu.au or contact Desmond Fearnley-Sander in the Department of Mathematics at the University of Tasmania, GPO Box 252C, Hobart, Tasmania 7001, Australia, telephone +61-(0)02-202445, fax +61-(0)02-202867.

    International Mathematica Symposium (IMS '95)

    July 16-20, 1995
    La Salle University College of Higher Education (Southampton, England)

    Experienced and new Mathematica users alike are invited to the south coast of England this summer to attend the first International Mathematica Symposium, one of several upcoming conferences organized by Mathematica users around the world. Tutorials, lectures, discussion forums, and poster presentations led by experienced Mathematica users will give you new ideas and practical tips to enhance the way you apply Mathematica to your work. And, a computer lab will be available for you to use Mathematica and present your own Mathematica packages and notebooks as well as review on-line materials submitted by others.

    For registration details or an on-line registration form contact Peter Mitic, LSU College of Higher Education, The Avenue, Southampton, SO9 5HB, United Kingdom, telephone: +44-(0)703-228761, fax: +44-(0)703-230944, email: p.mitic@soton.ac.uk.

    Registration fee
    (includes all meals, refreshments, and a copy of the proceedings):

    Professionals £250 (£300 after May 8, 1995)

    Students £160 (£220 after May 8, 1995) (student fee does not include a copy of the proceedings)

    Accommodation (4 nights-July 16, 17, 18, and 19, 1995):
    student rooms (with private bath) at LSU, £100 per person

    Organized by LSU College of Higher Education, Southampton Conference organizing committee: Carlos Brebbia (Wessex Institute of Technology, UK); Gautam Dasgupta (Department of Civil Engineering and Engineering Mechanics, Columbia University); Veikko KerŠnen (Rovaniemi Institute of Technology, Finland); Peter Mitic (LSU, UK); and Conrad Wolfram (Wolfram Research Europe Ltd.)

    Sponsored by the Wessex Institute of Technology, Southampton, UK

    How to Become a Mathematica Master!

    A training course for beginners and intermediates. Berlin, April 4; Munchen, April 6; Hamburg, June 9; Dusseldorf, June 12; Berlin, June 21; Munchen, June 23; Stuttgart, June 26; Darmstadt, June 27. For information contact Marcus van Almsick, at +49-(0)201-41944, or QT Software, at+49-(0)89-33297-0, or fax +49-(0)89-33297-4.

    Mathematica Seminars in Krakow, Poland

    Financial Analysis with Mathematica Seminar, April 11; Use of Mathematica in Industry Seminar, May 15; Mathematica-Utility of Symbolic Calculator Seminar, November 20. For more information contact Gambit, at +48-(0)12-21-59-11, or fax +48-(0)12-22-73-21.

    Integrating Mathematica into the Undergraduate Curriculum

    University of Wisconsin-Parkside, Kenosha, Wisconsin, April 22. For more information contact Don Piele at 414-595-2231.

    Mathematica Workshops by Principia Consulting

    Basic through advanced Mathematica (one, two, or three days can be chosen). Denver, CO, April 25-27; Chicago, IL, May 17-19. For information contact David Wagner, at 303-786-8371, or email wagner@cs.colorado.edu.

    Mathematica Course in Amsterdam

    Introduction to Mathematica and Advanced Topics on Mathematica. Sara, Amsterdam, The Netherlands. April 27Š28. For information contact CAN Expertisecentrum, at +31-(0)20-5608410, or fax +31-(0)20-6685486.

    Mathematica Training in Central London

    Conducted by Allan Hayes, Associate Editor, Mathematica in Education. Introduction to Mathematica, May 2, 18, 31, and June 12; Intermediate Graphics and Visualization, June 1, 13; Intermediate Programming, June 2, 14. For information contact Hafiz Rahman, at +44(0)71-4901609 or 1601, fax +44(0)71-4904470, or email hafiz@cognito.demon.co.uk.

    Hands-on Introductory Mathematica Courses

    Graphics, May 10-12; Programming, September 28-30; MathLink, November 29-30, December 1. Unisoftware Plus GmbH, Mathematica Training Centre, Electronic Classroom, Software Park, A-4232 Hagenberg, Austria. For information contact Herbert Exner, Unisoftware Plus, at +43-(0)7236-3338, or fax +43-(0)7236-3338-30, or email usp@unisoft.co.at.

    Mathematica Workshops and Training Days

    Introduction to Mathematica, Data Analysis with Mathematica, Graphics and Visualization, Programming. University of Zagreb, Croatia, July 4-5. For information contact Croatian Open Mathematica Users Club, Systemcom, at +385-(0)1-514487, or fax +385-(0)1-539800.

    Mathematica in the Mountains Workshop

    Introductory and intermediate Mathematica by Ed Packel and Stan Wagon. Hampton Inn, Silverthorne, CO, July 17-23. For information contact Stan Wagon at 612-696-6057.

    Talks are given in the language of the country.


    No Time to Learn Mathematica on Your Own?

    Take a Mathematica Training Course at Our Place or Yours!

    Whether you are new to Mathematica, or simply want to get more serious about using it, a day of training with the experts from Wolfram Research is the best way to get started.

    The Wolfram Research Mathematica Basic Training Course provides new users with a thorough introduction to using the system's numerical, symbolic, graphical, and programming features. The hands-on class includes problem-solving exercises, so you practice what you learn with guidance from experienced Mathematica instructors. You'll see immediate benefits when you return to work and apply your new skills on the job, quickly solving technical problems you encounter on a daily basis.

    Monthly Mathematica Courses Held in Champaign, Illinois:

    Mathematica Basic Training Course-$300
    8:00am to 5:00pm on Saturdays:
    April 22, May 20, June 24

    Mathematica Programming Course-$400
    8:00am to 5:00pm on Mondays:
    April 3, May 8, June 12

    On-site training can also be arranged at your organization for groups of five or more. For more information, call 1-800-441-MATH (6284), ext. 245 or email training@wri.com. Check for updated training course dates on Wolfram Research's World Wide Web site at http://www.wri.com/.


    Mathematica Programming Course Takes You Even Further

    You can go beyond the basics and learn how to create customized programs and program efficiently in Mathematica when you attend our new Mathematica Programming Course. By the end of this one-day course, taught by University of Illinois professor and Mathematica book author Richard J. Gaylord, you will understand how pattern matching works, how expressions are evaluated, and how to apply Mathematica to real-world problems using the system's high-level programming language.


    1995-1996 Visiting Scholar Grants Awarded

    Recipients to collaborate on projects at Wolfram Research

    Response to last fall's announcement of a new Mathematica Visiting Scholar Grant Program has been overwhelming. So overwhelming, in fact, that we have expanded the program to extend a helping hand to many more visiting scholars than had been originally intended. "So many good candidates applied to the program that it made the selection process quite a difficult job," reported one of the grant selection committee members.

    "In the past few years we have seen an explosion of activity surrounding the development of Mathematica-related materials, including books, courseware, and application packages," says Prem Chawla, chief operating officer. " The best materials for a specific field of expertise come directly from Mathematica users. This program encourages those experts to complete high-quality Mathematica-based projects that will benefit colleagues and students in many different fields."

    This year's grant recipients, listed below, have been invited to work on their projects and consult with Wolfram Research's technical experts at company headquarters in Champaign, Illinois. Visits will vary from a few days to several weeks, depending on the project.

    North America

    • Asghar Bhatti, University of Iowa, USA

    • Peter Bodo, Southern Connecticut State University, USA

    • Barry Brunson, Western Kentucky University, USA

    • Alfred Gray, University of Maryland, USA

    • George Hart, Columbia University, USA

    • Al Hibbard and Ken Levasseur, Central College and University of Massachusetts-Lowell, USA

    • Karl Kauffman, Carnegie Mellon University, USA

    • William MacDonald, University of Maryland, USA

    • John Mathews, California State University-Fullerton, USA

    • Richard Mercer, Wright State University, USA

    • Mike Mezzino, University of Houston, USA

    • Tom Morley, Georgia Institute of Technology, USA

    • Peter Musgrave, Queen's University, Canada

    • Edo Nyland, University of Alberta, Canada

    • Stephen Sheppard, Oberlin College, USA

    • John Wicks, North Park College, USA

    • Qi Zheng, National Center for Toxicology Research, USA

    International

    • Paul Abbott, University of Western Australia

    • Gerd Baumann, University of Ulm, Germany

    • Stephane Collart, ETH Zurich, Switzerland

    • Jason Harris, University of Canterbury, New Zealand

    • Steve and Brenda Hunt, University of Melbourne, Australia

    • Grant Keady, University of Western Australia

    • Phillip Kent, Imperial College, UK

    • Jean Peccoud, Grenoble School of Medicine, France

    • Dieter Suter, ETH Zurich, Switzerland

    • Eugenii Vorobev, Moscow Institute of Electronics, Russia

    Applications for 1996-1997 Visiting Scholar grants will be accepted next spring. For more information, contact Wolfram Research.

    In April, Wolfram Research staff will visit universities and organizations in Argentina, Chile, Brazil, and Venezuela to introduce Mathematica and to discuss developments in forthcoming versions of the system.

    For more information contact the International Business Development Group at Wolfram Research at +1-217-398-0700 or email Lynn Eicken, eicken@wri.com.


    Books

    Check our Web site or the Mathematica Products Catalog for a complete listing and description of all Mathematica books. These and other Mathematica-related books are available at your local technical bookstore.

    *New Releases

    The Mathematica Graphics Guidebook
    Cameron Smith and Nancy Blachman
    (Addison-Wesley) ISBN 0-201-53280-8
    Both a thorough tutorial introduction to Mathematica graphics and a comprehensive reference manual for using the system's built-in graphics functions. Includes numerous examples and practical advice for printing displayed graphics. Also includes notebooks on diskette that reproduce most of the examples.

    Computer Simulations with Mathematica: Explorations in Complex Physical and Biological Systems
    Richard J. Gaylord and Paul R. Wellin
    (TELOS/Springer-Verlag) ISBN 0-387-94274-2
    Demonstrates the use of computer simulation as a research tool in the sciences. Equal emphasis is placed on the development of efficient Mathematica programs and on the visualization and numerical analysis of computer simulation results. Includes cross-platform CD-ROM that contains actual multimedia simulations.

    Linear Algebra with Mathematica
    Eugene Johnson
    (Brooks/Cole) ISBN 0-534-130682
    Designed as a supplement to a standard text in linear algebra or as a linear algebra/matrix methods supplement in engineering, mathematics, and computer science courses. Begins with a short introduction to Mathematica, then shows how to use it as a tool in working with vectors, matrices, and linear transformations.

    Mathematica for Physics
    Robert L. Zimmerman and Fredrick I. Olness
    (Addison-Wesley) ISBN 0-201-53796-6
    Designed as a supplement for any of the core advanced undergraduate and graduate physics courses. Covers essential problems in mechanics, electrodynamics, quantum mechanics, special and general relativity, cosmology, elementary circuits, and oscillating systems. Emphasizes the graphical capability of Mathematica to develop the reader's intuition and visualization in problem solving.

    Mathematica for Scientists and Engineers
    Thomas B. Bahder
    (Addison-Wesley) ISBN 0-201-54090-8
    A comprehensive guide to Mathematica focusing on the specific needs of scientists and engineers. Provides numerous real-world examples in differential equations, boundary value problems, vector field theory, and tensors. Gives a thorough treatment of evaluation issues that affect long running times and memory management.

    Mathematica as a Tool
    Stephan Kaufmann
    (BirkhŠuser) ISBN 0-8176-5031-8
    Translation of Mathematica als Werkzeug: Eine EinfŸhrung mit Anwendungsbeispielen. Gives a general introduction to Mathematica and includes practical examples from mechanical and civil engineering. Places emphasis on Mathematica's capabilities as a programming language.

    Differential Equations: An Introduction with Mathematica
    Clay C. Ross
    (Springer-Verlag) ISBN 0-387-94301-3
    An introductory sophomore/junior level text in differential equations suitable for students in mathematics, physics, and engineering. Gives a uniformly coordinated collection of examples and problems where the use of Mathematica amplifies the content of the material.

    The Power of Visualization: Notes from a Mathematica Course
    Stan Wagon
    (Front Range Press) ISBN 0-9631678-3-9
    Notes from a course aimed at college teachers to show how Mathematica can be used to visualize abstract constructions and concepts in mathematics. Emphasizes calculus, but also contains examples from number theory, differential equations, and numerical analysis.

    Differential Equations with Mathematica
    Kevin R. Coombs, Brian R. Hunt, Ronald L. Lipsman, John E. Osborn, and Garrett J. Stuck
    (John Wiley & Sons) ISBN 0-471-10874-X
    Changes the emphasis in the traditional ODE course by using Mathematica to introduce symbolic, numerical, graphical, and qualitative techniques into the course in a basic way. Designed to accompany Elementary Differential Equations, Fifth Edition, by Boyce and DiPrima.

    Exploring Calculus with Mathematica
    Edward Green, Benny Evans, and Jerry Johnson
    (John Wiley & Sons) ISBN 0-471-09718-7
    Software and problems manual that engages the power of Mathematica to help students learn calculus concepts. Each chapter includes worked examples which include Mathematica instructions and exploration problems with structured responses suitable for lab assignments. Designed to accompany Calculus by Hughes-Hallett, Gleason, et al.

    Mathematica Computer Manual
    E. Kreyszig and E.J. Normington
    (John Wiley & Sons) ISBN 0-471-11719-6
    Designed to accompany and complement Advanced Engineering Mathematics, Seventh Edition, but appropriate for use in any advanced course in this subject. Presents a careful selection of approximately 250 worked examples and nearly 800 problems.


    *Miscellaneous

    Lorentzian Wormholes: From Einstein to Hawking
    Matt Visser
    (AIP Press) ISBN 1-56396-394-9
    Matt Visser draws on pivotal work by Einstein, Wheeler, Thorne, Hawking, and others, to chart the development of Lorentzian wormhole physics. Includes stunning Mathematica illustrations.


    *CD-ROM

    Illustrated Mathematics: Visualization of Mathematical Objects with Mathematica
    Oliver Gloor, Beatrice Amrhein, and Roman Maeder
    (TELOS/Springer-Verlag) ISBN 0-387-14222-3 (CD-ROM with booklet)
    A comprehensive collection of graphics and animations for various topics in high-school and undergraduate mathematics on a CD-ROM. Mathematica programs used for generating the collection are included and can be used to generate new visualizations. Also available in German.


    *Non-English Books

    Mathematica: fundamentos y aplicaciones de la informatica en matematicas (in Spanish)
    J.A. Dominguez, A. Fernandez, F.J. Plaza, M.A. Asensio
    (Plaza Universitaria Ediciones) ISBN 84-89109-04-4

    Wstep do Mathematica (in Polish)
    Wlodzimerz Janiak
    (Wydawnictwo PLJ) ISBN 83-7101-192-X

    Introdu‹o ao Mathematica for Windows (in Portuguese)
    Daniel J.R. Nordemann
    (Transtec Editorial) ISBN 85-85417-06-4

    An Introduction to Mathematical Physics with Mathematica (in Japanese)
    Yutaka Abe
    (Kodansha) ISBN 4-06-153215-4

    Learning Math Again (in Japanese)
    (Sanseido) ISBN 4-385-35629-7

    Differential and Integral Calculus with Mathematica (in Japanese)
    Ryoji Moriya
    (Kaibundo) ISBN 4-303-72790-3

    Mathematica Guidebook (in Japanese)
    Etsuo Miyaoka
    (Brain) ISBN 4-89242-144-8

    Geometria differencial de curvas y superfices (in Spanish)
    Translation of Modern Differential Geometry of Curves and Surfaces.
    Luis A. Cordero, Marisa Fernandez, and Alfred Gray
    (Addison-Wesley IberoAmericana) ISBN 0-201-65364-8


    *Periodicals

    Mathematica in Education and Research
    Mathematica in Education and Research (formerly Mathematica in Education) is a quarterly publication devoted to educators who use Mathematica to enhance teaching and learning in science, engineering, and mathematics courses. Each issue of Mathematica in Education and Research includes: feature articles discussing the use of Mathematica in the classroom; tips on how to approach particular lessons; special columns on programming, student work, and MathSource; a calendar of events; commentaries; and book and software reviews.
    Published by TELOS/Springer-Verlag; hardcopy and electronic subscriptions are available; for ordering information phone 1-800-SPRINGER or 201-348-4033, fax 201-348-4505, or email MathInEd@telospub.com.

    The Mathematica Journal
    The Mathematica Journal is a quarterly forum providing hands-on technical information about Mathematica. Each issue contains scholarly pieces, practical applications, product news and reviews, and Mathematica-generated graphics. Electronic supplements are available containing packages, notebooks, graphics, and utilities.
    Published by Miller Freeman; for ordering information phone 1-800-829-5446 or 904-445-462, fax 904-445-2728, or email 71572.341@compuserve.com.

    Mathematica World
    Mathematica World is a monthly electronic magazine distributed on diskette. It provides illustrative notebooks and interactive tutorials on the front end, kernel, and packages. A news section is devoted to the announcement of new packages and solutions to problems posed in news groups.
    For ordering information contact Mathematica World, Ormond College, University of Melbourne, Parkville, Victoria 3052, Australia, at +61-(0)3-349-2001 (phone or fax), or email mathematica@matilda.vut.edu.au.


    Wolfram Research and John Wiley & Sons, Inc. Team Up: New Bundle Offers Significant Savings for Calculus Students

    Mathematica for Calculus Students combines the student version of Mathematica with your choice of any of these popular calculus texts from publisher John Wiley & Sons, Inc. This combination is ideal for learning calculus in the classroom or at home, and convenient for completing class assignments in science, engineering, economics, and other technical courses. Students can find this specially priced, bundled set at local campus bookstores in the U.S. and Canada, or call John Wiley & Sons at 1-800-248-5334 for more information.

    Calculus with Analytic Geometry, Fifth Edition
    Howard Anton ISBN 0-471-59495-4 (hardcover)

    Salas and Hille's Calculus, Seventh Edition
    Revised by Garret J. Etgen ISBN 0-471-58719-2 (hardcover)

    Calculus
    Deborah Hughes-Hallett, Andrew Gleason, et al. ISBN 0-471-31055-7 (paperback)


    Jerry B. Keiper (1953-1995) An Obituary

    Jerry Keiper, leader of the numerics research and development group at Wolfram Research, was killed in a bicycle accident on January 18, 1995 at the age of 41.

    Keiper's life was a rare and wonderful mixture of brilliance and achievement with modesty and humanity. He was driven by a profound desire to do good in the world, while not burdening it with any of his own personal needs.

    Keiper was born in Medina, Ohio on October 20, 1953, the second of eight children. He spent his early years on the family farm. Then, after graduating from high school, he enrolled in a technical school, planning to become an electronic technician. But he excelled in mathematics, and even though none of his family had ever gone to college before, he decided to enroll at Ohio State University. He received a bachelor's degree in mathematics from there in 1974, and a master's degree a year later. His master's thesis showed that the Riemann zeta function could be expressed as a fractional derivative of the gamma function--the first of many results he was to obtain about special functions.

    Throughout his life, Keiper was deeply influenced by religion. He was raised as an Apostolic Christian, but in his college years joined the Mennonite church--a branch of protestantism with a prohibition against military service and a tradition of humanitarian activity. Keiper's religious views initially made him decide not to pursue a career in mathematics, and instead to become a high-school teacher. He spent a brief time in 1977 as a teacher in the Michigan public school system, but found that, in his own words, "there was very little teaching involved in the work."

    Having been disappointed by teaching, Keiper spent a year constructing a pipe organ--indulging his lifelong enthusiasm for things mechanical. But in 1979 he returned to mathematics, and in 1981 he earned a master's degree in applied mathematics at the University of Toledo, Ohio. That same year he left the U.S. to work with the Mennonite church in Nigeria, and after various delays and adventures spent three years teaching at a university in central Nigeria.

    Keiper returned to the U.S. in 1984, and enrolled as a graduate student in computer science at the University of Illinois. He specialized in numerical analysis, working particularly with the well-known numerical analyst Bill Gear on the solution of differential algebraic equations.

    In the spring of 1987, Keiper heard about the early development of Mathematica, and approached me about working on the project. Knowing his interests in both special functions and numerical analysis, I suggested that Keiper might work on finding general methods for the numerical evaluation of special functions. Existing academic and other work had been concerned mostly with evaluating specific functions to a specific precision for specific ranges of parameters. But I wanted Keiper to make Mathematica be able to evaluate any of the functions found in standard books of tables, to any precision, anywhere in the complex plane. Many numerical analysts thought this was an absurdly ambitious project, but undaunted, Keiper set about doing it.

    His crucial idea was to use the symbolic capabilities of Mathematica to automate the process of finding optimal approximation algorithms. In the past, such algorithms had mostly been worked out by hand, on a case-by-case basis. But Keiper wrote systematic Mathematica programs to find algorithms for any function. Sometimes it took a month of CPU time to generate a particular optimal algorithm. But once generated, the algorithm could be executed very rapidly. And the result was that for the first time it became possible to assemble reliable algorithms for evaluating hundreds of special functions to any degree of precision for any values of their parameters.

    In addition to special function evaluation, Keiper also worked on other numerical features of Mathematica, particularly numerical quadrature and root finding. Initially he used mainly refinements on algorithms already in the literature, but increasingly he developed entirely new algorithms, typically based on integrating the numerical and symbolic capabilities of Mathematica.

    After Mathematica was released in 1988, Keiper briefly returned to his Ph.D. thesis project concerning differential algebraic equations, and with the help of the capabilities he had put into Mathematica, he was rapidly able to complete his thesis, officially receiving his Ph.D. in 1989.

    Following his deeply-held personal and religious beliefs, Keiper lived in a very simple manner. He wore simple clothes, ate simple food, and used a bicycle as his primary means of transportation. He also felt that to be consistent in not supporting the military, he should avoid paying taxes to the government. For a while, this meant that he would accept almost no salary. But in the end he worked out a scheme for donating all but a small percentage of his salary to charity. In addition, Keiper set up a foundation, which he named the Michael and Margarethe Sattler Foundation, after two early Mennonite martyrs. As part of Keiper's compensation, Wolfram Research then made donations to this foundation. The foundation solicited proposals, and in turn supported various colleges, giving them both funds and copies of Mathematica.

    As the popularity of Mathematica grew, Keiper was very happy to see his work used so widely. But in 1990 he felt a need to contribute more directly to education, and so he decided to apply for teaching positions at a number of colleges. Assured of financial support from Wolfram Research, he sent out a resume with the line "salary goal: not an issue," and planned to ask for no salary for his teaching. The reaction he got from the academic establishment was less than appreciative, and as a result he decided to pursue his educational interests in other ways.

    For about a year he moved to Kansas and helped set up an educational lab based on Mathematica, while continuing his work on the development of numerical algorithms for Mathematica. During this time, he also began writing a textbook of numerical analysis based on Mathematica, in collaboration with Bob Skeel, a numerical analyst at the University of Illinois. The book was published by McGraw-Hill in 1993 under the title Elementary Numerical Computing with Mathematica, and is now a standard text in numerical analysis courses.

    Since the mid-1970's, Keiper had maintained a keen interest in analytic number theory and its investigation by computer. In early 1988, Keiper used a prototype of Mathematica to explore various relations between zeros of the Riemann zeta function. He hesitantly wrote to D. H. Lehmer, a pioneer of computational number theory, describing his results, and Lehmer replied warmly, encouraging him to publish what he had discovered.

    In the course of the next several years, Keiper began to overcome his shyness, and to publish some of his mathematical work. He was particularly interested in finding formulations of the Riemann Hypothesis that would make it more amenable to investigation by numerical methods. He did many large computer experiments both on the ordinary Riemann zeta function and on generalizations and related functions such as the Ramanujan tau functions. A few months before he died, Keiper told me he felt he had made considerable progress. And when he died there were several of his programs found on computers at Wolfram Research that had been running for more than 2000 CPU hours--generating results intended for Keiper to interpret.

    Although Keiper did his work on the zeta function mainly to investigate basic questions in number theory, he always made sure that relevant pieces were integrated into Mathematica. And in 1990 it was his work that made possible the six-foot-long poster of the Riemann zeta function that Wolfram Research produced for the International Congress of Mathematicians in Kyoto. This poster is now to be found displayed in most mathematics departments around the world. (A special new memorial edition of the poster is being produced.)

    In the past few years, Keiper became interested in the fundamentals of computer arithmetic, and forthcoming versions of Mathematica will include some major innovations that he made in the basic handling of numbers on a computer.

    Keiper attended Mathematica conferences around the world, speaking about the numerical capabilities of Mathematica. He was also a frequent participant in discussions on computer network newsgroups. He was always extremely patient, although in private he would often express his frustration at those who chose to attack Mathematica without understanding it or giving it the thought that it deserved.

    Keiper was outstandingly modest about his own abilities. But in his quiet and unassuming way, he over and over again managed to far surpass what others had done. His published papers provide hints of his ability, but his greatest professional achievements are embodied in the internal operation of the numerical functions of Mathematica. And although only specialists may be concerned with exactly how these functions work, a million people around the world make use of them, executing over and over again the code and algorithms that Jerry Keiper created.

    Keiper is survived by his former wife of fifteen years, Susan Diehl, as well as by his parents, five brothers, and two sisters. Wolfram Research is planning to establish a Keiper Memorial Fund which will be used to support educational programs of the type in which Jerry Keiper was interested.

       --Stephen Wolfram


    New Versions

    NEXTSTEP for HP PA-RISC
    Mathematica 2.2 is now available under NEXTSTEP for Hewlett Packard PA-RISC computers. This new version is functionally identical to Mathematica for NEXTSTEP Motorola and Intel computers, and is compatible with all other notebook front end versions.

    Linux
    A version of Mathematica for Linux is now in testing. It will be available soon, and will include a text-based interface and support for remote computing and interprocess communication via MathLink.

    OS/2
    Mathematica 2.2.4 for OS/2 is now available. New features in this version include support for remote computing and interprocess communication via MathLink and TCP/IP. A Microsoft Windows-based notebook front end is included to provide an alternative user interface for users who have Windows and TCP-support installed on their systems.

    Microsoft Windows and Windows NT
    Mathematica 2.2.3 for Windows is available for Intel-based systems. This new version supports Japanese input into Mathematica notebooks and is compatible with both Windows NT and Windows 3.1. The release of Mathematica for the DEC Alpha NT and MIPS NT has been postponed and is not in our current development plan. Customers interested in Mathematica for these platforms should send email to new-versions@wri.com.

    Microsoft Windows for Students
    A new Microsoft Windows version of Mathematica for Students (Version 2.2.4) is now available. This new version is functionally identical to the professional version of Mathematica, and includes numeric coprocessor utilization. Available for students only.

    DEC OSF/1 AXP
    The X notebook front end is now available for Digital Equipment CorporationÕs 64-bit Alpha AXP systems running OSF/1 2.0 or above. This front end is compatible with other notebook versions and runs under Motif.


    More Application Products Make Work Easier for You

    A Guide to What's Newly Available and How to Get It

    The collection of Mathematica-based application products continues to expand, giving you more ready-to-use tools to choose from than ever before. Here are some of the latest products released.

    • Time Series Pack
      from Wolfram Research

      This new collection of ready-to-use algorithms is ideally suited to help you efficiently and conveniently analyze your time-dependent data. The Time Series Pack tools are designed specifically for analyzing both univariate and multivariate time series. You can use the functions provided to study stationary and nonstationary models, estimate model parameters, forecast, and do spectral analysis.

      Available through Wolfram Research

    • Optica
      from Optica Software

      Scientists and researchers turn to Optica to develop specialized optics system and component designs, while educators tap Optica's power as an interactive learning tool for students. Its comprehensive set of components and surfaces and advanced 3D ray-tracing capabilities provide everything you need to model and analyze designs for all kinds of optical systems, from x-ray lasers to optical interconnects.

      Available through Wolfram Research

    • Mechanical Systems Pack
      from Dynamic Modeling

      Mechanical engineers explore more design options and minimize design time with the commands and set of 2D and 3D geometric constraints provided in this pack. Instantly model complex mechanical relationships, define custom algebraic constraints, solve for static reaction and dynamic forces, and perform load analyses.

      Available through Wolfram Research

    • CARTAN
      from Harald Soleng

      CARTAN puts customizable functions and predefined tensors at your fingertips, making this easy-to-use tensor component package a hit among engineers.

      For more information call +33-5028-2302 or email soleng@surya11.cern.ch.

      For a complete listing of all Mathematica-related products, including application-specific packages, courseware, books, journals, gift items, and more, check our Web site or contact Wolfram Research today for your own Mathematica Products Catalog--free!


    Get Instant Answers from MathSource

    Mathematica users share solutions in this on-line resource to solve problems faster

    Say you're working on a project using Mathematica, and the problems involved require a customized approach -- an answer you can't get right out of the box. Our advice: Don't start from scratch. Turn to MathSource first! You'll find all kinds of useful items--including over 2000 Mathematica packages, notebooks, and documentation--in this extensive, on-line collection. One or more of those might contain just the solution you need. Or, you might find courseware examples that you could use in class. Convenient search tools make it easy to find items according to topic, author, title, date, and more. Accessible via World Wide Web, anonymous FTP, Gopher, email, direct dialup, and CD-ROM, MathSource can return materials to you in text, Mathematica notebook, or PostScript formats, according to your request.

    Here are some of the items recently added to the MathSource collection.

    0207-368: AlgebraicRulesExtended
    0207-492: Banzhaf Voting Power Index
    0205-412: Beam Statics Package
    0207-290: bilo (bracketed identifier-localized operator) 4.2.1
    0205-782: ChannelKinetics: Packages for Modeling Ion Channel Kinetics
    0207-335: A Discussion of and Fix for the Pentium FDIV Bug
    0207-223: ErrorPropagation
    0205-041: ExtendGraphics Packages by Tom Wickham-Jones
    0207-302: Extended Lattice Reduce Algorithm
    0206-783: FastBinaryFiles: A MathLink Program for Fast Reading and Writing of Binary Files
    0206-660: Furniture Design with Mathematica
    0207-267: General Purpose Front End Processor
    0207-346: Genetic Programming with Mathematica
    0206-705: HYP-A Package for Handling Hypergeometric Series
    0206-716: HYPQ-A Package for Handling Basic Hypergeometric Series
    0204-499: Harmonic Function Theory and Mathematica
    0207-313: Heat-Flow and Energy Calculations with Mathematica
    0207-469: IgorBinary: A Package for Fast Reading and Writing of Igor Binary Files
    0207-256: Link Tutor: A Macintosh Program for Learning about MathLink
    0206-558: Manipulating Polynomials with Multiple Variables
    0206-693: A MathLink Tutorial
    0207-166: MathLink VIs for LabVIEW for Macintosh Version 3.0.1
    0204-972: MathReader V2.2-A Mathematica Notebook Reader for Windows
    0207-177: MathReader V2.2-A Mathematica Notebook Reader for the X Window System
    0207-278: MathUser #7, Fall 1994
    0207-188: Mathematica Demonstration Notebooks
    0207-324: Mathematica Graphics: Techniques and Applications by Tom Wickham-Jones, Electronic Supplement
    0207-155: Mathematica Version 2.0 Graphics Gallery
    0204-118: Mathematica as a Tool
    0206-862: Mathematica for Physicists
    0207-357: Mathematica for Scientists and Engineers
    0207-391: The Mathematica Journal Vol. 4, No. 1-Electronic Supplement
    0207-403: The Mathematica Journal Vol. 4, No. 2-Electronic Supplement
    0207-481: The Mathematica Journal Vol. 4, No. 3-Electronic Supplement
    0206-727: Mohr's Circle and Principal Stresses in Two-Dimensional Stress Analysis
    0206-604: MovieDigitizer: A MathLink Program for Automatic Digitizing of QuickTime Movies
    0207-289: MultiplierMethod-A General Purpose Algorithm for Nonlinear Programming
    0207-515: NONACODE
    0207-605: A Notebook about Optica
    0205-298: Nixpub: Public Access Unix Site Listings
    0206-569: Numerical Linear Algebra (Direct Methods)
    0204-501: Open Look Mathematica PostScript Interpreter
    0206-592: A Package for Code Optimization Using Mathematica
    0206-772: Penrose Tiles
    0206-132: A Planetarium Package
    0207-379: Power Series and Generating Functions
    0206-020: Pseudo-Random Pulse Sequencing
    0203-825: Publications about Mathematica
    0204-376: Riemann Sums Package
    0206-581: SelfTutorCalculus
    0207-414: SentinelPro Security Key Driver Software for Microsoft Windows NT
    0207-470: Smith Normal Forms
    0207-122: Solving the Quintic with Mathematica
    0207-199: Solving the Quintic with Mathematica (NeXT and Macintosh)
    0207-212: Some Nice Pictures of a Hyperbolic Tiling of the Poincare Disk
    0206-873: Spline Wavelet Analysis
    0206-637: Stochastic Fibre Networks
    0205-591: Strang Linear Algebra
    0207-380: Super TSP: A Trip around the World
    0207-201: Theoretical Evolutionary Ecology: Model Solutions
    0207-234: TrochoidPlot
    0207-526: Tutorial on the Graphical Effects of the Coefficients of a Second Degree Polynomial
    0206-761: Tutorial: Package Design
    0206-682: Tutorial: Mathematica's Programming Language
    0206-671: Tutorial: Notebooks for Integrated Applications

    How to Find Items on MathSource

    Simply send the text Help Intro in an email message to mathsource@wri.com and your return message will contain complete instructions.

    WWW: http://www.wri.com/MathSource.html
    FTP: mathsource.wri.com
    Gopher: mathsource.wri.com
    email: mathsource@wri.com
    dialup: 217-398-1898 (8N1)
    CD-ROM: Order from Wolfram Research

    Updated in April, the new MathSource CD--containing the entire MathSource collection--is now available. To order, see "How to Contact Us".


    Extraordinary Code

    In the last issue of MathUser we announced a contest, "Win $100 Gift Certificate for extraordinary Mathematica code".

    The winners are Stan Wagon and Arnd Roth.

    Stan Wagon solved the following problem with a one-liner.

    The problem was to find all representations of a positive integer as a sum of two squares, ignoring order and negative values. Thus Sum2Squares[50] should return {{1, 7}, {5, 5}}.

    SumTwoSquares[n_] := 
       Union[Sort[{Re[#], Im[#]}] & /@ 
       Select[Divisors[n, 
                  GaussianIntegers->True],              Abs[#]^2 == n &]]
    
    Arnd Roth drew a sketch of an ion channel embedded in a lipid bilayer.

    Their solutions are on MathSource, item 0207-616.


    Mathematica Miscellanea

    The Costa sculptures of Helaman Ferguson are a good model of applied mathematics: start with physical observations about soap films in nature (Plateau), write down differential equations describing area-minimizing surfaces (Euler-Lagrange), define a minimal surface geometrically in terms of curvature (Gauss), discover a minimal surface with nontrivial topology (Costa), draw computer images of the new surface (Hoffman-Hoffman), recognize symmetry and prove the surface has no self-intersections (Hoffman-Meeks), discover fast parametric equations in Mathematica for the surface (Alfred Gray), and finally, return to nature with a sculpture in bronze and aluminum (Helaman Ferguson), a solid form of a soap film big enough to touch and climb on.


    Not a Mathematica Plus Subscriber? Sign Up Today!

    Mathematica Plus subscribers are at the top of the list to receive the next version of Mathematica automatically. In fact, subscribing ensures that you will receive the next two major releases as soon as each becomes available. Without giving it another thought, the upgrades will be delivered to your door. Also, as a subscriber, your system transfer fee is waived when you change computer platforms and need a new version of Mathematica for that platform.

    Subscribing to Mathematica Plus is the most convenient and cost-effective way for you to put the latest Mathematica developments to work for you. To guarantee that you are on the list to receive the forthcoming version as soon as it is released, we invite you to sign up for Mathematica Plus now.

    It's easy to sign up for Mathematica Plus--from the U.S. or Canada, simply contact Customer Service by phone, fax, or email (see page 2 for contact information). If you have additional questions, call Sales Information at 1-800-441-MATH (6284). Outside the U.S. and Canada, contact your local Mathematica reseller, or a Wolfram Research international office.

    Mathematica Plus is available for the following platforms. (Available for professional and academic versions of Mathematica only. Not available for student or high school versions.)

    • Macintosh Enhanced

    • Macintosh Front End Only

    • Microsoft Windows Enhanced

    • Microsoft Windows Front End Only

    • DEC Alpha OSF/1 AXP

    • DEC RISC Ultrix

    • HP 9000/700 Series

    • IBM RISC System/6000

    • NEC PC

    • NEXTSTEP for HP PA-RISC

    • NEXTSTEP for Intel

    • Silicon Graphics

    • Sun SPARC/Solaris

    Subscription prices for Mathematica Plus vary according to what computer platform you use. For details, contact Wolfram Research. (See "How to Contact Us" on page 2.)

    The current version of Mathematica is Version 2.2. If you are using an older version, contact us today about how to upgrade to Version 2.2.


    Wanted

    If you're a student and looking for a challenge this summer, we have exciting summer employment opportunities available at Wolfram Research. Send a copy of your resume, and a statement of your interests telling us how you think you can contribute to Mathematica, to resumes@wri.com.

    Wolfram Research, Inc. has openings for software engineers for the Macintosh, MS Windows, and the X Window System. The positions will involve creating new versions of Mathematica and user interfaces on these platforms.

    Interested individuals should send a cover letter and resume to resumes@wri.com.


    RealOnly

    In high school algebra, exponents and radicals are taught early, but complex numbers are usually left to more advanced courses. Some algebra teachers have asked for a package that would allow them to avoid complex numbers. Mathematica is flexible enough to block out imaginary and complex numbers in a way that is mathematically correct.

    Two ideas are implemented in the package RealOnly.m. Odd roots of negative numbers are defined to be negative, and calculations with unavoidable complex numbers are condensed to the symbol Nonreal. This is done by redefining the built-in functions Power and $Post.

    Without loading the package, Mathematica calculates a cube root of a negative number to be complex. So no points are plotted for negative values of x and warning messages are generated.

    Plot[x ^ (1/3), {x, -8, 8}];
    
    Plot::plnr: 
       CompiledFunction[{x}, <<1>>, -Co<<8>>de-][x]
         is not a machine-size real number at x = -8..
    
    Plot::plnr: 
       CompiledFunction[{x}, <<1>>, -Co<<8>>de-][x]
         is not a machine-size real number at x = -7.33333.
    
    Plot::plnr: 
       CompiledFunction[{x}, <<1>>, -Co<<8>>de-][x]
         is not a machine-size real number at x = -6.66667.
    
    General::stop: 
       Further output of Plot::plnr
         will be suppressed during this calculation.
    
    Every cubic equation has three roots, counting multiplicity.
    Solve[x^3 == -8.0]
    
    {{x -> -2.}, {x -> 1. - 1.73205 I}, {x -> 1. + 1.73205 I}}
    
    Any one of these three roots could be taken as the cube root of -8.0. Ordinarily, Mathematica chooses the one with the least positive argument (the third solution in this case).

    (-8.0) ^ (1/3)

    1. + 1.73205 I

    This loads the package.

    Needs["RealOnly`"]

    Power has been redefined so that an odd root of a negative number is negative.

    (-8.0) ^ (1/3)

    -2.

    Now the plot works for negative values of x.

    Plot[x ^ (1/3), {x, -8, 8}];

    The second idea implemented in the package is that complex numbers are suppressed. This is now the solution of the cubic equation.

    Solve[x^3 == -8.0]
    
    Nonreal::warning: Nonreal number encountered.
    
    {{x -> -2.}, {x -> Nonreal}, {x -> Nonreal}}
    
    {23 + 0. I, Sin[ArcSin[23.]]}
    
    {23., 23.}
    
    A number with an imaginary part that is not small is transformed to
    Nonreal.
    
     {ArcSin[23.], Sin[23. + I]}
    
    Nonreal::warning: Nonreal number encountered.
    
    {Nonreal, Nonreal}
    
    Finally, elementary calculations involving unavoidable complex numbers are 
    transformed to Nonreal. 
    
    Tan[a + 23 / (a + b I)]
    
    Nonreal::warning: Nonreal number encountered.
    
    Nonreal
    
    The package RealOnly.m is available on MathSource, item 0207-537.


    Q&A

    Q: How can I select data in a list based on a particular criterion?

    A: The function Select will extract data from a list based on any function that evaluates to True or False.

    v = {2, 4, 6, a, b, "c", "d"};
    Select[v, StringQ]

    {c, d}

    If present, the third argument to Select restricts the number of selections made.

    Select[v, EvenQ, 2]

    {2, 4}

    You can define your own Boolean function to use for selection.

    concreteQ[x_]:= 
       AtomQ[x] && Head[x] =!= Symbol; 
    Select[v, concreteQ]
    
    {2, 4, 6, c, d}
    


    Q: I would like to tell Mathematica to convert all expressions to their numerical (floating-point) value whenever possible. Can I do this in a global way during a single session?

    A: Yes. The value of the global variable $Pre, if set, is applied to each input expression. To convert all numbers to floating point, you can set $Pre to N.

    3/5
    
    3
    -
    5
    
    $Pre = N;

    Now Mathematica will always return floating-point numbers regardless of the input type.

    {3/5, Sqrt[2] Pi}

    {0.6, 4.44288}

    To make this happen automatically whenever you start the kernel, put the expression $Pre = N in your init.m file. To return to normal conditions, get rid of the definition with Clear[$Pre].


    Q: How do I fit data to a function like bCos[a x]?

    A: The Fit[] function fits with linear combinations of functions. For nonlinear fitting, use the NonlinearFit command from the package Statistics`NonlinearFit`.

    First, load the package.

    Needs["Statistics`NonlinearFit`"]

    Here are some test data.

    data = {{0.00755184, 3.00914},
    {0.0559709, 2.98502}, {0.101674, 2.94889}, {0.15152,
     2.8734}, {0.207708, 2.76563}, {0.250559, 2.63725},
      {0.305907, 2.48437}, {0.359207, 1.00233}, {0.407698,
       2.0918}, {0.453682, 1.87457}, {0.507271, 1.63074},
        {0.554075, 1.3683}, {0.609719, 1.08777}, {0.658105,
         0.809997}, {0.708045, 0.511902}, {0.756585, 
         0.212325}, {0.800336, 0.078046}, {0.856026, 
         -0.380921}, {0.904429, -0.680421}, {0.956819, 
         -0.967385}, {1.00673, -1.23893}, {1.05314, 
         -1.5118}, {1.10946, -1.75583}, {1.15906, 
         -1.9936}, {1.20974, -2.2032}, {1.25096, -2.3957},
          {1.3017, -2.56369}, {1.35437, -2.7046}, 
          {1.40136, -2.81924}, {1.45835, -2.91087}, 
          {1.50693, -2.96373}};
    
    ListPlot[data];

    In the model m, x is the independent variable.

    m = b Cos[a x];

    NonlinearFit solves for a and b.

    s = NonlinearFit[data, m, x, {a, b}]

    {a -> 1.99658, b -> 2.93879}

    Now you can define a function that approximates the data. ReplaceAll (/.) substitutes the values of a and b from the solution s into the model m.

    f[x_] = m /. s

    2.93879 Cos[1.99658 x]

    Plot[f[x], {x, 0, 2}, Epilog -> Map[Point, data]];

    The many options to control the computation of NonlinearFit are discussed in the Guide to Standard Mathematica Packages.


    Q: I tried to use the function PolarPlot described in the Guide to Standard Mathematica Packages. When nothing happened I realized I hadn't loaded the appropriate package. I was puzzled by the message produced when I did load it. What did it mean?

    A: PolarPlot is defined in the package Graphics`Graphics`. Since Mathematica does not "know" about PolarPlot until you load the package or define it yourself, it simply returns your input the first time you enter this command.

    PolarPlot[Log[t], {t, .01, 24}];

    Also, since no symbol called PolarPlot exists yet in the session, it is created as a new symbol in the Global` context.

    ?PolarPlot

    Global`PolarPlot

    When you load the package, Mathematica creates another symbol, Graphics`PolarPlot, and at the same time it generates a warning message.

    <<Graphics`Graphics`

    PolarPlot::shdw: 
       Warning: Symbol PolarPlot appears in multiple contexts 
        {Graphics`Graphics`, Global`}; definitions in context 
        Graphics`Graphics` may shadow or be shadowed by other
         definitions.
    
    The warning message explains that there are two symbols in Mathematica called PolarPlot and that the user should be aware that one definition of PolarPlot might be used instead of the other.

    To correct this, remove the symbol Global`PolarPlot.

    Remove[Global`PolarPlot]

    This leaves the PolarPlot symbol as defined in the Graphics package.

    PolarPlot[Log[t], {t, .01, 24}];


    Q: If I know a formula for calculating each entry in a matrix, how do I construct the matrix?

    A: In Mathematica, a collection of data is kept as a list. A two-dimensional matrix is a list of sublists that are all of the same length. Vectors and matrices can be formed with the Table function.

    m = Table[i ^ j, {i, 3}, {j, 3}]

    {{1, 1, 1}, {2, 4, 8}, {3, 9, 27}}

    Each sublist corresponds to a row of the matrix m. To print m in a more familiar form, use MatrixForm.

    MatrixForm[m]

    1    1    1
    
    2    4    8
    
    3    9    27
    
    The formula can be more complicated; in this case it contains a conditional expression.
    Table[If[i > j, i ^ j, 0], 
       {i, 3}, {j, 3}] // MatrixForm
    
    0   0   0
    
    2   0   0
    
    3   9   0
    


    Q: Why does the latest Mathematica for Windows use Win32s?

    A: Win32s is a set of 32-bit libraries created by Microsoft that allows programmers to write Windows applications in 32-bit mode instead of 16-bit mode. A program running in 32-bit mode has much more flexible access to memory and runs more efficiently. Such a program will run in native mode under Windows NT and the upcoming Windows 95; running in emulation mode for 16-bit applications is much slower. The Mathematica kernel is programmed under the Win32s libraries; we plan to port the front end to the 32-bit libraries. Any application that requires the Win32s libraries must install them, since they are not included with Windows.

    If you try to run Mathematica and get a dialog box that indicates some error in Win32s, you must reinstall the libraries. The error might occur because Win32s was installed incorrectly, or because another software package installed a version of Win32s incompatible with Mathematica. To force a reinstall of Win32s, delete the file called WIN32S.INI from the SYSTEM subdirectory of the Windows directory. Then insert the first Mathematica disk to run the Mathematica installation; choose the Custom installation instead of the Default installation. In the resulting dialog box, uncheck every option except the one for Win32s Executables, and continue with the installation. The installer will then replace Win32s while leaving your current Mathematica environment untouched.

    Now suppose that Mathematica is installed on a file server on a network, and the client machines run local copies of Windows. In that case, use the same procedure to install Win32s locally onto every client machine that will run Mathematica. However, if there is no WIN32S.INI file to delete, you only need to run the Custom Install.

    If the installation of Mathematica breaks another Win32s application, then that application probably used an earlier version of Win32s. In this case, call Wolfram Research technical support to find out if you need to get a more recent version of Win32s from Microsoft compatible with both applications. The most recent version of Win32s is 1.20 and is available from Microsoft via anonymous FTP at ftp.microsoft.com in /SoftLib/MSLFILES/PW1118.EXE.


    Technical Support for Students

    Technical support by email is now available to students who have purchased the Student Version of Mathematica. The new email address for this service is student-support@wri.com. For installation questions only, telephone and fax support is also available. Be sure to include your license number in any correspondence. Note that additional support is available for the Professional Version of Mathematica.


    Easy Access to Technical Support Tips

    Find Answers to FAQs on the Wolfram Research Home Page

    The Wolfram Research World Wide Web site (http://www.wri.com/) is packed with the latest news and information about Mathematica. The site not only introduces Web surfers to Mathematica, but also provides many useful services for Mathematica users. From the first page, you can quickly see what new application products are available, check what's new on MathSource, find out about upcoming conferences and training courses, read the electronic version of this newsletter, and much more.

    Sure to be a popular reference for both new and experienced Mathematica users is the new technical support section. The Mathematica specialists in our Technical Support department have compiled answers to many frequently asked questions from Mathematica users and have now made them available on the Web. Check it out to get installation help, access release notes, find answers to commonly encountered problems, and try some of their suggested Mathematica programming tricks and techniques.

    Mathematica users at all levels, from beginning to advanced, can save time by checking the Web first when a Mathematica-related question arises. If the answer you need already exists in MathSource, the link to the appropriate MathSource document will be there.

    As with every section of our Web site, the technical support section continues to evolve and improve. It is expanding to answer more of your questions and is updated regularly to incorporate new information regarding changing operating systems and new versions of Mathematica. As always, if you have suggestions regarding our Web site after you visit it, please email comments to webmaster@wri.com.



 © 2009 Wolfram Research, Inc.  Terms of Use  Privacy Policy