>> Contents Index

MathViews

MathViewsTM for Windows

A MATLAB COMPATIBLE

INTERACTIVE INTERPRETER WITH BUILT-IN GRAPHICS

FOR

DIGITAL SIGNAL PROCESSING

AND

Linear Algebra


by

The MathWizardsTM

Copyright (c) 1992, The MathWizards all rights reserved.

All Rights Reserved

The MathWizards

6246 Ohm Court Suite 200

San Diego, CA 92122

Tel: (619) 552-9031

Fax: (619) 552-9135

CompuServe: 70274,2564

INTERNET: 70274.2564@compuserv.com

Printed, Developed, and Assembled in the United States

NOTICE: THE LICENSE OF THIS PROGRAM TO YOU IS SUBJECT TO THE TERMS OF THE END-USER LICENSE AGREEMENT WHICH ARE SET FORTH ON PAGE iii OF THIS MANUAL. IF YOU DO NOT AGREE TO THESE TERMS, The MathWizards IS UNWILLING TO LICENSE THIS PROGRAM TO YOU, AND YOU SHOULD RETURN THE PROGRAM AND THE MANUAL FOR A FULL REFUND.

Warning

The software and the manual are protected by United States Copyright Law and are licensed for use on one computer per copy only. Unauthorized reproduction and/or sales may result in imprisonment of up to one year and fines up to $10,000. Copyright violators may also be subject to civil liability.

List of Trademarks

MATLAB is a registered trademark of The MathWorks, Inc.

MS-DOS is a trademark of Microsoft Corporation.

IBM and IBM PC are trademarks of International Business Machines Corporation.

Windows is a trademark of Microsoft Corporation.

MathViews is a trademark of The MathWizards.

MathPad is a trademark of The MathWizards.

Auto-Assign is a trademark of The MathWizards.

End-User License Agreement

This is a legal agreement between you, the end user, and The MathWizards. IF YOU DO NOT AGREE TO THE TERMS OF THIS AGREEMENT The MathWizards IS UNWILLING TO LICENSE THE SOFTWARE TO YOU. IN SUCH CASE, PROMPTLY RETURN THE UNOPENED PACKAGE AND THE ACCOMPANYING ITEMS (including written materials and binders or other containers) TO THE PLACE YOU OBTAINED THEM FOR A FULL REFUND.

1. Grant of License. The MathWizards grants you the right to use one executable copy of the enclosed MathWizards software program ("MathViews") and the accompanying manual on a single, single-user CPU.

2. Run-Time Library License. The software covered by this Agreement may be provided with a set of M-files (MathViews ToolBox) which can be used in conjunction with end-user modules to build complex M-files. You may use and distribute M-files prepared by you, but not those provided in the ToolBox M-files provided by The MathWizards.

3. Copyright. The software is owned by The MathWizards or its suppliers and is protected by United States copyright laws and international treaty provisions. The MathWizards retains the rights to make and license the use of all copies. Therefore, you may make no copies of the software or reproduce it in any way, except that you may (a) make a single hard-disk working copy of the software and retain the original solely for back-up or archival purposes, (b) make a reasonable number of (additional) copies solely for back-up or archival purposes, or (c) make another copy or adaptation as provided by U.S. copyright law. You may not copy the written materials that accompany the software.

4. Other Restrictions. You may not rent, lease, or otherwise transfer the software, nor may you modify it, except as allowed by U.S. copyright law.

5. Term. This license is effective until terminated. You may terminate it at any time by destroying the software and accompanying written materials, together with all copies thereof. It will also terminate if you fail to comply with any term or condition of this license. Upon such termination, you agree to return the software and accompanying materials, including all copies thereof.

6. Limited Warranty. The MathWizards warrants, for a period of ninety (90) days from the date of receipt by you, that the software will perform substantially in accordance with the accompanying manual. This warranty is void if the software is modified or if failure of the software or other materials has resulted from accident, abuse, or misapplication. THERE ARE NO OTHER WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

7. Customer Remedies: If the software does not perform substantially in accordance with the accompanying manual, your exclusive remedy is to notify the vendor from whom you purchased this package, during the warranty period. The vendor shall, at its option, either (a) replace the software, or (b) return the license fee you paid and terminate this Agreement. Any replacement software will be warranted for the remainder of the original warranty period or thirty (30) days, whichever is longer.

8. Limitation of Liability. IN NO EVENT SHALL The MathWizards OR ITS SUPPLIERS OR DISTRIBUTORS BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, LOSS OF DATA, OR OTHER PECUNIARY LOSS) WHETHER BASED ON CONTRACT, TORT, OR OTHER LEGAL THEORY, ARISING OUT OF THE USE OR INABILITY TO USE THIS PRODUCT, EVEN IF The MathWizards HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, OR IF THEY WERE FORESEEABLE.

9. U.S. Government Restricted Rights. MathViews is provided with RESTRICTED RIGHTS. Use, duplication or disclosure by the Government is subject to restrictions as set forth in subdivision (c)(1)(ii) of DFARS, the Rights in Technical Data and Computer Software clause at 252.227-7013 (October 1988) and FAR 52.229-19(c) (June 1987), or comparable clause, such as may be amended or renumbered from time to time. Contractor/manufacturer is The MathWizards, 6246 Ohm Court, #200, San Diego CA 92122.

10. Entire Agreement. This Agreement contains the final expression of the agreement and understanding between the parties, is intended as a complete and exclusive statement of its terms, and supersedes any proposals, discussions or negotiations between them related to the subject matter of this Agreement. This Agreement may be amended, altered or modified only by a writing dated subsequent to this Agreement and signed by The MathWizards.

11. This Agreement is governed by the laws of the State of California.

12. The waiver or failure of either party to exercise in any respect any right provided for in this Agreement shall not be deemed a waiver of any further or future right hereunder.

13. If any provision of this Agreement is found to be invalid or unenforceable, such finding shall not affect the validity or enforceability of any other provision herein.

Customer Support

If you have any questions about using MathViews, call or write to:

The MathWizards

PO Box 22564

San Diego, CA 92192

Tel: (619) 552-9031

Fax: (619) 552-9135

CompuServe: 70274,2564

INTERNET: 70274.2564@compuserv.com

info@mathwizards.com

MathViews is not copy protected. Copy protection makes a program more difficult to use and adds to the cost of the software. The intention throughout the development of MathViews has been to make it user friendly and easy to use, and to bring you a quality, supported software package. We feel that copy protection is contrary to these goals.

Introduction

What Is MathViews

MathViews is a powerful, high-level, interactive, SCIENTIFIC COMPUTING ENVIRONMENT. It is designed for engineers and scientists who need a powerful visual computational and analytical tool to assist them in solving their mathematical problems. MathViews provides simple access to some of the most difficult-to-program yet most frequently used algorithms in engineering and scientific computing. Algorithms encompass such topics as linear algebra and Digital Signal Processing (DSP). MathViews also has extensive graphical visualization capabilities. In addition, MathViews is compatible with existing Matlab M-files.

MathViews serves as a calculator, analysis tool, modeling tool, graphics package, and applications development system combined into one powerful application. The package provides an extensive set of arithmetic functions customized and optimized for technical users.

The most unique and time-saving aspect of MathViews is its ability to process arrays of numbers. It provides a comprehensive set of operators and functions for performing real and complex vector and matrix operations, 1- and 2-dimensional FFT, convolutions and correlation, and data manipulation. MathViews also has complex graphics such as polar, linear, 3-D hidden line, and contour plots.

MathViews is a command driven program. This means that each function of the program is initiated by typing a command at the keyboard. MathViews is more than just a simple interpreter. Each command is actually compiled as the command is entered rather than interpreted at run time. This feature allows for instant syntax checking of the input to provide immediate feedback. The incremental compilation enables the final interpretation to occur much faster than with any conventional interpreter, resulting in a much faster program development and execution cycle.

Most tasks in MathViews are solved by using built-in functions and commands. MathViews can be easily extended by creating new commands using the MathViews language. Programming under MathViews is extremely easy because of its natural language syntax and versatile subroutine structure.

MathViews has powerful debugging tools. You can select and execute a specified section of code. You can also single-step your program and selectively trace into or around any M-file functions called by the program. Breakpoints can be easily set using pop-up menus. The breakpoint window quickly shows you where your breakpoints are set. A separate variables window lets you examine you program data. An animate mode lets you view each line as MathViews steps through your program.

MathViews library management feature makes building large projects easy. Simply put all the functions of a specific project into a MathViews module, compile the module, and instantly, all the functions in the module are available for use. By contrast, in Matlab each module can only have one function defined.

MathViews also fully supports the Windows Dynamic Data Exchange (DDE) standard for communicating with other Windows applications. MathViews can operate as either a DDE server or client. All of the powerful features of MathViews are now available to your other applications. You could, for example, execute a M-file from an Excel spreadsheet and pass the results back to Excel. MathViews supports DDE cold, warm, and hot links.

You can also extend MathViews by writing your own Windows Dynamic Link Library (DLL) modules. DLLs provide a common means of adding custom code to applications under Windows. The MathViews DDE layer and Graphics layer are examples of DLLs which can be added to MathViews. You can develop DLLs in any language, i.e. Pascal, C or C++, which supports Windows DLLs.

MathViews was crafted in C++ for easy portability to other computing environments. Accuracy is assured by performing all calculations using double precision numbers.

MATLAB Compatibility

MathViews is compatible with Matlab syntax and will execute Matlab M-files. However MathViews will execute Matlab M-files only when all the interdependent M-files are present. The highest level of compatibility is provided when using M-files which utilize only built-in functions of MathViews or Matlab.

The MathViews integrated environment is much more versatile than the simple environment of the DOS version of Matlab. Features of MathViews include:

Different windows for editing, text output, graphics output, and interactive input.

Cut/Copy/Paste of commands and script files; Copy/Print for plots.

Back scrolling of text for examining past results and statements in all MathViews windows.

MathPadTM utility for editing multiple M-files under Windows.

Building and compiling of MathViews libraries. Multiple M-files can be combined into a single module and compiled into a MathViews library. The library can be brought into MathViews with a single command.

Precompilation of M-files and libraries.

Execution of a selected section of consecutive statements in an M-file.

A mechanism for stepping through M-file statements or selected number of statements.

Separate debugging windows for examining breakpoints, viewing variables, and showing the call stack.

AutoAssignTM for automatic variable updates; for example, y := abs(x), when x is changed, y is automatically updated.

C syntax for simple/compound assignment(+=,*=,...); postfix operators(++,--).

Multiple graphics windows, with quick zoom utility.

Subplot utility supports up to up to 81 subplots, in a 9x9 pattern.

Easily extensible through Windows Dynamic Link Library (DLL) interface.

Fully supports Windows Dynamic Data Exchange (DDE) for interfacing to other Windows applications.

System Requirements

MathViews runs on the IBM PC family of computers, including the AT, 386, 486, along with all true IBM compatibles. MathViews is designed to operate under the Windows 3.0 or 3.1 environment.

Minimum system:

IBM PC/AT, 386, 486, or compatible

DOS 3.3 or higher

Windows 3.x

Microsoft compatible mouse

20 MB hard drive minimum

2 MB of RAM

EGA display or higher resolution monitors

Suggested system:

IBM 386 + coprocessor or 486

DOS 5.0

Windows 3.x

Microsoft compatible mouse

40 MB hard drive

4 MB of RAM

VGA display or higher resolution

What's in this manual

This manual explains how to use the features of MathViews to quickly solve complex analytical problems. The manual is divided into six main sections:

Getting Started

This section describes how to install and start MathViews. It includes detailed installation instructions and how to invoke the program from the Windows environment.

Environment

The Environment section describes the MathViews user-interface. It includes a description of the primary user-interface windows and the menu structure.

Tutorial

This section provides an introduction to the features of MathViews. It covers features such as matrix and array manipulations, language control structures, and graphics.

Language Structure

This section gives a formal definition of the MathViews language structure. It details such items as data types, expressions, and keywords.

Reference

The Reference section contains a detailed description of each MathViews function. Each function description includes calling syntax, a description, an example of usage, and related functions where appropriate.

Appendices

This section includes three appendices covering Dynamic Data Exchange (DDE), Dynamic Link Libraries (DLL) and MathPadTM.

Typefaces used in this manual

This manual uses the special fonts to represent things like menu commands, commands, and functions:

Monospace type

This typeface represents text as it appears on the various text based window in MathViews. It is also used to identify MathViews commands and functions.
Boldface
This typeface is used for MathViews reserved key words and for items which can be selected from a menu.



>> Title Contents Index