Subject: comp.soft-sys.matlab FAQ (Frequently Asked Questions)
From: [email-masked] (Matt Wette)
Date: 23 Nov 1993 09:31:34 -0800
Newsgroups: comp.soft-sys.matlab,comp.answers,news.answers

Archive-name: matlab-faq
Last-modified: 1993/11/23
Version: $Id: FAQ.in,v 1.2 1993/11/23 17:24:16 mwette Exp $

This FAQ is maintained by Matt Wette <[email-masked]>.
The latest version can be retrieved via anonymous ftp from

     csi.jpl.nasa.gov [128.149.29.4]  as  /pub/matlab/FAQ.text (plain text)
                                      or  /pub/matlab/FAQ.html (HTML format)

Contributions, corrections and suggestions are welcomed.

Last update: Tue Nov 23 09:26:35 PST 1993

                MATLAB Frequently Asked Questions
                =================================

                            SYNOPSIS

 General
 =======
 1) What is MATLAB?
 2) What is the charter for the comp.soft-sys.matlab group?
 3) What commercially available MATLAB-type environments are sold?
 4) What non-commercial MATLAB-type environments exist?
 5) Are there any standards for MATLAB-type tools?
 6) How can I join a MATLAB user group?
 7) Are there any software archives?
 8) Are there any publications related to MATLAB?

 MATLAB/SIMULINK Product Information
 ===================================
 9) What's new in MATLAB 4.0?
 10) How does MATLAB perform on machine X?
 11) What is SIMULINK (alias Simulab)?
 12) What toolboxes are currently available from The MathWorks?
 13) Can I use C and Fortran programs with MATLAB?
 14) How do I contact The MathWorks about MATLAB via email?

 MATLAB User Questions
 =====================
 15) How can I change the default window size, colors, etc. in MATLAB 4?
 16) How can I import MATLAB graphics into my Framemaker, TeX, etc. document?
 17) Is there a topical help function, like `apropos'?
 18) Why am I finding all these undocumented functions (like COMET) in MATLAB?
 19) Has anybody any information about the matlab function `system_dependent'?
 20) How can I get the parser to accept a dummy reference without an error?
 21) How do I get the plot command to cycle through line-types?
 22) Can I use `dbup' and `dbdown' within a function?
 23) Is there a GNU emacs editing mode for MATLAB?
 24) What is the sign convention used in MATLAB's FFT routines?
 25) Is there any MATLAB software for wavelets?
 26) Is there any MATLAB software for fuzzy logic?
 27) Is there any MATLAB software for communications?
 28) Is there a MATLAB interface to Mathematica?
 29) Why was `fsolve' removed from MATLAB Version 4?
 30) Are there any published books on, or relating to, MATLAB?

 Quick Little MATLAB Hacks
 =========================
 31) How can I initialize a this low rank matrix easily?
 32) How can I load-from or save-to a file whose name is in a string variable?
 33) How can I store the result of `!ls *.dat' in a variable?
 34) How can I make a variable global from within a function?

 MATLAB on the PC
 ================
 35) What can I do when MATLAB tells me there is not enough environment space?

 Xmath / MatrixX Product Information.
 ====================================
 36) What is Xmath?
 37) Are there any publications related to MatrixX?
 38) Are there any e-mail addresses related to MatrixX/Xmath?
 39) What other modules are available from ISI?

 Xmath User Questions
 ====================
 40) Is it possible to derive new classes in XMath?

                             General
                             =======

1) What is MATLAB?

     MATLAB is the name used to refer to the class of matrix cal-
     culator  environments derived from the first, called MATLAB.
     MATLAB was developed by Cleve Moler in the late 1970s at the
     University  of  New  Mexico and other locations with support
     from the National  Science  Foundation.   Since  then,  many
     work-a-likes  have been developed or are in development com-
     mercially, in government and university labs, and so forth.

     The  name  of  the  product  available  from  MathWorks   is
     "MATLAB",  not Matlab, Pro-MatLab, etc.  Note that MathWorks
     holds a registered trademark on  the  uppercase  version  of
     MATLAB.

     In this document, Matlab may refer to the collective set  of
     MATLAB-based environments or it may refer to the current im-
     plementation developed by MathWorks, Inc.  In general, these
     MATLAB-based  environments  are not source-language compati-
     ble.

2) What is the charter for the comp.soft-sys.matlab group?

     The newsgroup 'comp.soft-sys.matlab' is a forum for discuss-
     ing issues related to the use of MATLAB, the scientific cal-
     culation and visualization package from MathWorks Inc.  This
     includes  discussion  of similar software packages which are
     also derived from the original  `Classic  MATLAB',  such  as
     Xmath from Integrated Systems Inc.

     Appropriate discussion in the group will include  both  gen-
     eral Matlab issues and platform-specific questions, and dis-
     cussion comparing MATLAB to other systems.

3) What commercially available MATLAB-type environments are sold?

     In alphabetical order:

     `CLAM' from Scientific Computing Associates, Inc.

         246 Church Street, Suite 307
         New Haven, CT  06510
         Tel: 203-777-7442
         Fax: 203-776-4074

     `Ctrl-C' from Systems Control Technology, Inc.

         CAE Systems Department
         2300 Geng Road
         Palo Alto, CA 94303
         Tel: 800-227-1910
         Tel: 415-494-2233
         Fax: 415-496-6595

     `MATLAB' from The MathWorks, Inc.

         Cochituate Place
         24 Prime Park Way
         Natick, MA 01760
         Tel: 508-653-1415
         Fax: 508-653-2997.
         Email: [email-masked]

     `O-MATRIX' from Harmonic Software, Inc.

         12223 Dayton Avenue North
         Seattle, WA 98133
         Tel: 206-367-8742
         Fax: 206-367-1067
         Email: [email-masked]

     `Xmath' from Integrated Systems, Inc.

         3260 Jay St.
         Santa Clara, CA  95054-3309
         Tel: (408) 980-1500
         Fax: (408) 980-0400
         Email: [email-masked]

4) What non-commercial MATLAB-type environments exist?

     In alphabetical order:

     `Caesy'    is    being    developed    by     Matt     Wette
     ([email-masked])  at the Jet Propulsion Laboratory.
     This will be released to COSMIC soon.  It will provide  data
     structures,  conversion  to C-code, and many other features.
     See

         M.Wette, "Caesy: A Computer-Aided Engineering System"
         Proc. 1992 Symp. on Computer-Aided Control System Design
         Napa, CA, March 1992

     `Mat/C' developed at  Lawrence  Livermore  National  Labora-
     tories by Don Gavel.  This is not publically available.

     `Matcalc', by M.Gerberg and E.J. Moore,  University  of  New
     South  Wales,  Australia.  It is available via anonymous ftp
     from

         draci.cs.uow.edu.au  in  /netlib/matcalc/
         csi.jpl.nasa.gov  in  /pub/matlab/matcalc/

     `MaTX', an interpreter and compiler, developed at Tokyo  In-
     stitute of Technology.  See

         M. Koga and K. Furuta, "MaTX: A High-Performance Programming
         Language (Interpreter and Compiler) for Scientific and
         Engineering Computation," Proc. 1992 Symp. on Computer-Aided
         Control System Design, Napa, CA, March 1992

     `MEDAL' developed at the University of Waterloo by  Grantham
     Pang  ([email-masked]).  This has the same command
     language as MATLAB, but includes  a  knowledge-based  expert
     system  development  facility.  It is available for academic
     and research users via anonymous.  You'll need to get a pro-
     gram  password from the author to operate it (no sources in-
     cluded).  It's available via anonymous ftp from

         excel2.uwaterloo.ca [129.97.86.13]  in  /pub/

     See

         Pang, G.K.H.,"Knowledge-based Control System Design", in Recent Advances
         in Computer-Aided Control Systems Engineering, Jamshidi, M and  Herget,
         C.J. (ed.), Elsevier Science Publishers, 1992.

         Pang, G.K.H., "A Knowledge Environment for an Interactive Control System
         Design Package", Automatica, Vol. 28. No. 3, pp. 473-491, May 1992.

     `Octave',   written   at    the    University    of    Texas
     ([email-masked]), is available via anonymous ftp from

         ftp.che.utexas.edu  as  /pub/octave/octave-?.?.tar.Z

     `RLaB', written by Ian  Searle  ([email-masked]),  is  free
     software  (in  the  GNU  copyleft  sense).   It is currently
     available via anonymous ftp from

         csi.jpl.nasa.gov  in  /pub/matlab/RLaB
         evans.ee.adfa.oz.au  in  /pub/RLaB

5) Are there any standards for MATLAB-type tools?

     There is an IFAC/IEEE-CSS Working Group developing standards
     and guidelines for these tools.  A proposed standard command
     language was developed, is described in the  document  "Com-
     mand  Language Standard for CACSD Software" and is available
     from

         Magnus Rimvall
         Control Systems Laboratory, GE-CRD
         Schenectady, NY 12301

6) How can I join a MATLAB user group?

     To join the user group, send your name, affiliation and  ad-
     dress to:

         [email-masked]

     For European user groups, contact:

         France:        Alain Baron
                        phone: 33/1 45 34 23 91
                        fax: 33/1 45 07 08 06
         Germany:       Dr. Ingrid Bausch-Gall
                        phone: 49/89 323 2625
                        fax: 49/89 323 1063
         Sweden:        Svante Littmarck
                        phone: 46/8 15 30 22
                        fax: 48/8 15 76 35
                        email: [email-masked]

         Switzerland:   Carl Bergstrom
                        phone: 031/961 70 11
                        fax: 031/961 12 82
                        email: [email-masked]

         UK:            Peter Campbell
                        phone: +44-223-421920
                        fax:   +44-223-421921

7) Are there any software archives?

     Yes. MATLAB User Group software archive contains  more  than
     1MB  of  user-contributed  code.  This archive is located on
     NETLIB server of Oak Ridge National Laboratories.  To  learn
     more, send following message:

         send index
         send index from matlab
     to:

         [email-masked]

     For access from Europe,  try  the  duplicate  collection  in
     Oslo:

         Internet:       [email-masked]
         EARN/BITNET:    [email-masked]
         X.400:          s=netlib; o=nac; c=no;
         EUNET/uucp:     nac!netlib
     For the Pacific, try [email-masked]  located  at
     the University of Wollongong, NSW, Australia.

     The MathWorks maintains the archive  on  the  anonymous  ftp
     server  ftp.mathworks.com  [144.212.100.10].  This site con-
     tains a "best of" copy of the NETLIB archive as well as oth-
     er  user-contributed, and MathWorks contributed software and
     documentation.  If you are interested in submitting software
     to the archive pick up the file README.incoming from the ar-
     chive or send e-mail to [email-masked]

     There   is   a   renegade   archive   at    csi.jpl.nasa.gov
     [128.149.29.4],  in  /pub/matlab.   This  is  stocked with a
     mish-mash of stuff you may not find on  the  other  archives
     (e.g., free MATLAB-look-a-likes).

8) Are there any publications related to MATLAB?

     Yes, Math Works Inc. publishes a quarterly  magazine  called
     MathWorks  Newsletter,  giving  info.  on products (new ver-
     sions, releases, toolboxes), matlab user group, matlab short
     courses, related texts etc.  To subscribe to the newsletter,
     send   email   with   your    snail    mail    address    to
     [email-masked].

               MATLAB/SIMULINK Product Information
               ===================================

9) What's new in MATLAB 4.0?

     from John Little ...

     Here's the "high-level" summary of the major new additions:

         * Object-based graphics facility
         * 3-D color scientific visualization abilities
         * Animation
         * Sound output capability
         * M-file debugging facilities
         * Low-level file I/O functions
         * Graphical user interface controls (GUI widget set)
         * Sparse matrix support
         * An improved help system
         * Interpreter and graphics speed improvements
         * A new External Interface library (MEX-files, engine, MAT-files)
         * Better documentation (in the eyes of the beholder, I imagine :-) )
         * Lots of other smaller improvements..

10) How does MATLAB perform on machine X?

     LINPACK benchmarks in MATLAB (reported by The MathWorks):

         machine                  KFLOPS (LINPACK)
         =======                  ================
         Macintosh (8MHz 68000)                  3
         PC/AT (6.0MHz/80286/EGA)               15
         PC/XT (4.7MHz/8088/CGA)                17
         AT&T 6300 (8MHz/8086)                  29
         Macintosh II (68020/68881)             85
         MicroVAX II (VMS/D_floating)          140
         Macintosh IIcx (68030/68882)          168
         HP 9000/Series 350                    190
         80386/80387 (20MHz, 386-MATLAB)       232
         Macintosh IIci (25MHz 68030/68882)    239
         VAXstation 3100 (VMS/D_floating)      365
         HP 9000/400 (68030)                   500
         80486-based PC (33M Hz)              1300
         HP 9000/425 (68040 chip)             1400
         Macintosh Quadra 700                 1500
         Sun SPARCstation 1                   1500
         DECstation 3100                      1600
         SGI Indigo                           2400
         Sun SPARCstation 2                   2900
         Convex C1                            3700
         IBM RS/6000                          7000
         HP 9000/700                          7400
         Cray X-MP                           71000
         Cray X-MP on a 500-by-500 matrix   135000

     Other numbers (reported by users):

         80486-DX2 PC @66MHz                  3121  ([email-masked])

11) What is SIMULINK (alias Simulab)?

     SIMULINK is an interactive system for the nonlinear  simula-
     tion  of  dynamical systems. It is a graphical, mouse-driven
     program that allows systems to  be  modelled  by  drawing  a
     block  diagram  on  the  screen.  It can handle linear, non-
     linear, continuous-time, discrete-time,  multivariable,  and
     multirate  systems.   SIMULINK runs on workstations using X-
     windows, under MicroSoft Windows on the PC,  and on the  Ma-
     cintosh.   It  takes full advantage of windowing technology,
     including pull-down windows and mouse interactions. SIMULINK
     is  fully  integrated with MATLAB, and, together with MATLAB
     and the Control System Toolbox,  forms  a  complete  control
     system design and analysis environment.

12) What toolboxes are currently available from The MathWorks?

     The following list includes toolboxes currently  offered  by
     The MathWorks.  For more info check

         ftp.mathworks.com  in  /pub/product-info

     Signal Processing Toolbox.

     This is a toolbox for digital signal processing (time series
     analysis).    It  includes  functions  for  the  design  and
     analysis of digital filters, like Butterworth, Elliptic, and
     Parks-McClellan,  and for FFT analysis (power spectrum esti-
     mation).  It also includes some  2-dimensional  signal  pro-
     cessing capabilities.

     Control System Toolbox.

     This is a toolbox for control system  design  and  analysis.
     It   supports   transfer   function  and  state-space  forms
     (continuous/discrete time, frequency domain).  Function  for
     step,  impulse,  arbitrary input responses, as well as Bode,
     Nyquist, and Nichols plots.  Design with  root-locus,  pole-
     placement, and LQR optimal control.

     System Identification Toolbox.

     This is a  toolbox  for  parametric  modelling.   Identified
     models  are in transfer function form (either z-transform or
     Laplace transform) and state-space form (e.g.,  ARMA  models
     or Box-Jenkins models).

     Optimization Toolbox.

     This is a toolbox for linear and nonlinear optimization  and
     supports   unconstrained   and   constrained   minimization,
     minimax,  nonlinear  least  squares,  multi-objective,   and
     semi-infinite  optimization,  linear  programming, quadratic
     programming and the solution of non-linear equations.

     Spline Toolbox.

     This is a toolbox for working with splines and is  typically
     used  for  curve fitting, solution of function equations and
     functional approximation.

     Robust-Control Toolbox.

     This is a toolbox for robust control system design and  sup-
     ports  LQG/loop  transfer  recovery, H2, H0, and mu- control
     synthesis, singular  value  frequency  response,  and  model
     reduction.

     Neural Net Toolbox.

     This is a toolbox for designing and simulating  neural  net-
     works and supports implementation of the perceptron learning
     rule, the Widrow-Hoff rule, and several  variations  of  the
     backpropagation  rule.  Transfer functions included are hard
     limit, linear, logistic & hypertangent sigmoid.

     Delta Toolbox.

     This is a toolbox for analysis using the delta transform, an
     approach  to unifying continuous and discrete systems theory
     without use of the Z-transform.  It  is  available  free  to
     purchasers of "Digital Control and Estimation: A Unified Ap-
     proach," by Graham Goodwin and Rick Middleton.

     Image Processing Toolbox.

     The Image Processing Toolbox provides an environment for im-
     age   processing   and   analysis.    Images   are  matrices
     (surprised?).   Functions  include  linear   and   nonlinear
     filtering;   image  restoration;  image  enhancement;  image
     analysis and statistics; color, geometric, and morphological
     operations 2-D transforms; and 2D FIR filter design and fre-
     quency response.

     Symbolic Math Toolbox.

     The Symbolic Math Toolbox contains  functions  for  symbolic
     algebra,  exact linear algebra, variable precision arithmet-
     ic, equation solving, and  special  mathematical  functions.
     Its  underlying computational engine is the kernel of Maple.
     The Extended Symbolic Math Toolbox augments the functionali-
     ty to include Maple programming features and specialized li-
     braries.

     Statistics Toolbox.

     The Statistics Toolbox provides statistical  data  analysis,
     modeling,  and  Monte  Carlo simulation; building-blocks for
     creating your own special-purpose statistical tools; and GUI
     tools  for  exploring fundamental concepts in statistics and
     probability.  Functionality covers descriptive, inferential,
     and  graphical  statistics, and linear models as well as in-
     teractive graphics for dynamic visualization  of  functions,
     data, and probability distributions.

13) Can I use C and Fortran programs with MATLAB?

     MATLAB's MEX-file facility allows user to use C and  Fortran
     subroutines  as  MATLAB  m-files. It is also possible to use
     MATLAB as a computational engine for C/Fortran subroutines.

14) How do I contact The MathWorks about MATLAB via email?

     Here you go ...

         * [email-masked]     technical support
         * [email-masked]     product enhancement suggestions
         * [email-masked]        bug reports
         * [email-masked]         documentation error reports
         * [email-masked]    user and product registration
         * [email-masked]   subscribing user registration
         * [email-masked]        sales, pricing, general info.
         * [email-masked]           software archive contact
         * [email-masked]        user group

                      MATLAB User Questions
                      =====================

15) How can I change the default window size, colors, etc. in MATLAB 4?

     from [email-masked] ...

     Try something like the following in your `startup.m' file:

         set(0,'DefaultFigurePosition',[5 5 505 405])
         set(0,'DefaultFigureColor',[0,0,0])  %%  N.B this has side effects.
         set(0,'DefaultAxesFontName','times')
         set(0,'DefaultTextFontName','times')
         set(0,'DefaultAxesFontSize',12)
         set(0,'DefaultTextFontSize',12)

16) How can I import MATLAB graphics into my Framemaker, TeX, etc. document?

     The MATLAB (version 4) print command provides a "-deps"  ar-
     gument which provides a Encapsulated PostScript file of your
     plot.  Some people have reported  various  problems  getting
     this stuff to work.  Some suggestions:

     Removing the last line "%%EOF" from the eps-file.

     Use   the   the   pstoepsi   filter   from   Doug    Crabill
     ([email-masked]).

     Use "bbps" and ghostscript.  "bbps.shar"  is  available  via
     anonymous  ftp  on  "csi.jpl.nasa.gov".   You'll need to get
     GhostScript from your nearest GNU ftp site.

     [This area needs more work :).  ed.]

17) Is there a topical help function, like `apropos'?

     Yes.  The function  you're  looking  for  is  `lookfor'  (in
     MATLAB 4).

         >> lookfor fourier

         FFT     Discrete Fourier transform.
         FFT2    Two-dimensional Fast Fourier Transform.
         IFFT    Inverse discrete Fourier transform.
         IFFT2   Two-dimensional inverse discrete Fourier transform.
         FOURIER Graphics demo of Fourier series expansion.
         DFTMTX  Discrete Fourier transform matrix.

         >>

18) Why am I finding all these undocumented functions (like COMET) in MATLAB?

     from Cleve Moler ...

     Almost everything in the "demos" directory is not  described
     in  the  User's Guide.  There are lots of goodies there.  In
     4.0, the demos are best place  to  see  examples  of  Handle
     Graphics.

     There are other undocumented functions in directories  other
     than  demos.   Some  of them are "worker" functions that are
     unlikely to be used directly; they are simply called by oth-
     er  functions.   A few, like COMET and COMET3, were actually
     written after the User's Guide had been sent to the printer.

19) Has anybody any information about the matlab function `system_dependent'?

     from John Little (w/editing) ...

     `system_dependent' is an unpublished function that  is  used
     for  a  variety  of  crufty  things.  It will most certainly
     change from time to time and possible even go away complete-
     ly.   For  anybody curious about it, here is what it does in
     MATLAB 4.0 on SPARCstations:

         system_dependent(1)    deals with the MATLAB-ACSL interface.  ACSL
                                is a simulation language that MATLAB can talk
                                to.  See ACSL.M for more information.

         system_dependent(2,0)  turns off command-line editing.
         system_dependent(2,1)  turns it back on.

         system_dependent(3)    is unused.

         system_dependent(4,i,j) is used to program the command-line editing
                                keys.  See CEDIT.M for more information.

         system_dependent(5)    enables core dumps in the event of seg faults.
                                Normally MATLAB tries to catch seg faults and
                                "continue".

     system_dependent does different things  in  MATLAB  3.5  and
     other platforms.

20) How can I get the parser to accept a dummy reference without an error?

     Adopted from post by Jim Tung ...

     MATLAB parses code to look  for  syntax  errors.   When  the
     parser  encounters a name with 2 or fewer arguments, it lets
     them pass since they might be a variable with  indices.   If
     it  encounters a name with 3 or more arguments, MATLAB knows
     it cannot be a variable, so the error message  is  returned.
     If  you  don't want the parser to snag the function, specify
     one with 2 or fewer arguments.

21) How do I get the plot command to cycle through line-types?

     From Chuck Packard <[email-masked]> ...

     MATLAB v4.1 has a an axis property LineStyleOrder for  this.
     Monochrome  users  can tell MATLAB to always use white lines
     and cycle through their favorite line styles with  the  com-
     mands:

         set( 0, 'DefaultAxesColorOrder', [1 1 1] )
         set( 0, 'DefaultAxesLineStyleOrder', '-|:|--' )

     These commands can be put in your startup.m to  always  give
     you styled lines.

22) Can I use `dbup' and `dbdown' within a function?

     Derived  from   post's   of   [email-masked]   and
     [email-masked] ...

     MATLAB wasn't designed to be used this  way.   But,  if  you
     don't  reference  any variables between your calls to `dbup'
     and `dbdown' (i.e., you just use `save', `who', `dir', etc),
     it  should work.  Otherwise, you may well run into problems.
     If you `dbup' while in a function, you change the  workspace
     context while continuing execution of the original function.
     This means that subsequent references to variables  will  be
     bound  to  variables  in  a  different workspace.  Since the
     internal p-code uses integers as variable  identifiers,  you
     will  get  a random attachment to these different variables.
     At best, you'll get random results.  At worst you might  seg
     fault if you exceed the number of available identifiers.

23) Is there a GNU emacs editing mode for MATLAB?

     A GNU emacs `matlab-mode' is  available  via  anonymous  ftp
     from

         csi.jpl.nasa.gov  as  pub/matlab/util/matlab-mode.el

24) What is the sign convention used in MATLAB's FFT routines?

     The FFT in MATLAB is defined as sum(x(i)*exp(-j*i*k/N))  and
     not sum(x(i)*exp(j*i*k/N)).  The first version is tradition-
     ally used by engineers, the  second  version  by  mathemati-
     cians.   Since  MATLAB was written by an engineer (John Lit-
     tle), the engineering approach was used.

25) Is there any MATLAB software for wavelets?

     Contact Carl Taswell <[email-masked]> is  working
     on a wavelet toolbox.  The toolbox and associated papers are
     available via anonymous ftp from

         simplicity.stanford.edu  in  /pub/taswell

     A newer version should be available soon.

     Also, Jeff Kantor <[email-masked]> is distributing  a
     wavelet toolbox.  It is available via anonymous ftp from

         control.cheg.nd.edu  in  /pub/wavelets/wavetools1_1.tar

     The toolbox, rice-wlet-tools-1.1,  a  collection  of  MATLAB
     "mfiles"  and  "mex"  files  for  twoband  and M-band filter
     bank/wavelet analysis, is available via anonymous ftp from

         cml.rice.edu  in  /pub/dsp/{software,papers}

     Contact Ramesh Gopinath <[email-masked]>.

26) Is there any MATLAB software for fuzzy logic?

     A.Lotfi  <[email-masked]>  has  developed  a  Fuzzy
     Inference  Systems  Toolbox.   It is available via anonymous
     ftp from

         ftp.mathworks.com  as  /pub/contrib/misc/fuzzy_inference_systems.sh
                            or  /pub/contrib/misc/pc_fuzzy_inference_systems.sh

     A Fuzzy-Control  Toolbox  has  been  developed  by  Bernhard
     Kaemmpf  <[email-masked]>.   Send him
     email if you  are  interested  in  obtaining  the  software.
     (Sounds like he is willing to give it away.)

     Jyh-Shing Roger Jang <[email-masked]> has provided a
     few  routines  for  demonstrating  parameterizing membership
     functions (MF)  and  learning  in  fuzzy  inference  systems
     (FIS).   The  file fuzzdemo.tar.Z is available via anonymous
     ftp from

         csi.jpl.nasa.gov  in  /pub/matlab/contrib/

27) Is there any MATLAB software for communications?

     Mehmet  Zeytinoglu  <[email-masked]>  has  written  a
     MATLAB  toolbox  for  communications.  It  is  available via
     anonymous ftp from

         ftp.mathworks.com  as  /pub/contrib/misc/comm_tbx.tar

28) Is there a MATLAB interface to Mathematica?

     Yes.  WRI has developed a free MATLAB-Mathematica interface.
     It is available via anonymous ftp from

         mathsource.wri.com  as  /pub/WhatsNew/matlab2math.tar.Z (Unix)
                             or  /pub/WhatsNew/matlab2math.sea.hqx (Mac)
                             or  /pub/WhatsNew/matlab2math.zip (Windows) ?
     or via email via "send 0205-951" to [email-masked].

29) Why was `fsolve' removed from MATLAB Version 4?

     The algorithms used by  fsolve  were  not  numerically  well
     behaved.  MathWorks  did  not feel that it met the standards
     require for approved software.  The version of FSOLVE in the
     Optimization  Toolbox  is recommended.  If your site doesn't
     still have the 3.5 version, you can get it via anonymous ftp
     from

         ftp.mathworks.com  as  /pub/contrib/optim/fsolve35.tar

30) Are there any published books on, or relating to, MATLAB?

     There is a list of published book  available  via  anonymous
     ftp from

         csi.jpl.nasa.gov  as  /pub/matlab/matlab-books

                    Quick Little MATLAB Hacks
                    =========================

31) How can I initialize a this low rank matrix easily?

     Here's "Tony's trick", attributed to Tony Booer  of  Schlum-
     berger:

     To initialize a matrix with values "a" in the first row  and
     values "b" in the second row, do the following:

         [a(1,ones(1,m)) ; b(1,ones(1,m))]

32) How can I load-from or save-to a file whose name is in a string variable?

         name = 'xyz.mat';
         eval(['save ', name]);
         eval(['load ', name]);

33) How can I store the result of `!ls *.dat' in a variable?

         [stat, list] = unix('ls *.dat');
     The variable `stat' contains the return status, the variable
     `list' contains the output.

34) How can I make a variable global from within a function?

     You can in MATLAB 4.  The following hack is from Laura  Nee-
     dles     <[email-masked]>    and    Mike    Kantner
     <[email-masked]>.    Define   the   script    file
     `mkglobal.m', containing

         function [] = mkglobal(var)
         % MKGLOBAL      mkglobal(var) - make var a global variable
         if ~exist('mkglobal_var'), mkglobal_1; end;
         mkglobal_var = var; mkglobal_2

     Define the script file `mkglobal_1.m' as

         global mkglobal_var

     Define the script file `mkglobal_2.m' as

         eval(['global ', mkglobal_var]);

                        MATLAB on the PC
                        ================

35) What can I do when MATLAB tells me there is not enough environment space?

     This usually happens if  in  the  matlab  path  you  include
     greater that 4 or 5 paths.  One solution is to increase your
     environment space by adding the following  command  in  your
     config.sys file:

         shell=c:\dos\command.com /e:nnnnn /p

     where nnnnn is the number of bytes you use  for  environment
     memory.  It  varies from 256 bytes to 32768 bytes(32Kbytes).
     Usually, 5000 bytes can solve your problem.  (The /p command
     is  used  so  that  the autoexec.bat file runs when you boot
     your computer.)

              Xmath / MatrixX Product Information.
              ====================================

36) What is Xmath?

     from [email-masked] ...

     Xmath is an interactive mathematics, scripting, and graphics
     environment  for  X  Window  workstations.   It has features
     which represent a  significant  improvement  on  matlab-type
     software tools, including:

         * Object-oriented scripting language.
         * "Point-and-click" color graphics.
         * Visual debugging tool.
         * LNX and C-callable libraries.
         * Programmable MOTIF GUI layer.

     Xmath from Integrated Systems Inc. is available on  the  In-
     ternet via FTP from isi.com.  If you would like to down-load
     Xmath to view the Xmath Interactive demo, do the following:

         From the UNIX/Shell environment, type:
         ftp isi.com  (if the host is unknown, try ftp 192.73.222.1)
         When asked for name/user, type:
         anonymous
         When asked for the password, simply type your e-mail address.

     Once your e-mail address is accepted,  and  if  the  maximum
     number  of ftp clients has not been exceeded, the connection
     will be made and a list of instructions will appear.  Simply
     follow that list of instructions to transfer a copy of Xmath
     to your system.

37) Are there any publications related to MatrixX?

     Yes, ISI publishes a  quarterly  magazine   called  Response
     Times  that  gives  information on products (new ver- sions,
     releases, modules), user conference, classes, and a  Techni-
     cal Support Corner where they answer user questions.

     Also, ISI has an annual  Users  Conference.   The  viewgraph
     presentations  from this conference are available.  The next
     conference in March 15-17, 1993.

38) Are there any e-mail addresses related to MatrixX/Xmath?

     Yes. Some are:

         * [email-masked]           tech support for ISI MatrixX products
                                      (408)980-1590 ext. 321
         * [email-masked]              product literature requests
         * [email-masked]              contributions to Response Times Mag

39) What other modules are available from ISI?

         * MatrixX/XMath
         * Robust Control Module
         * Optimization Module
         * Model Reduction Module
         * Digital Signal Processing Module
         * System Identification Module

         * System_Build
         * RT/Expert System Block
         * RT/Fuzzy Logic Block
         * Interactive Animation
         * AutoCode (C,FORTRAN, Ada)
         * Automatic Documentation Generation

     3rd Party Packages

         * ADAPTx Automated System Identification Software

     Real Time Execution

         * AC-100 Product for Hardware in the Loop Simulations

     ISI recently merge with the Software  Component  Group  that
     makes  and  sells  the  PSOS+ real time operating system and
     development tools.

                      Xmath User Questions
                      ====================

40) Is it possible to derive new classes in XMath?

     From Alexandra Schmidt <[email-masked]> ...

     Xmath does not currently allow you  to  'derive'  new  subc-
     lasses  from  the built-in ones (dynamic systems, parameter-
     dependent matrices, strings and string  matrices,  polynomi-
     als,  "special  matrices",  etc.)   However, a number of our
     users have used the list object to create  compound  objects
     containing  different  kinds  of built-in objects, then used
     the resulting list-based object for more complex data model-
     ing.  Your question echoes a request we've heard a number of
     times and is a high priority for our future development,  so
     keep an eye out. . .

         $Id: FAQ.in,v 1.2 1993/11/23 17:24:16 mwette Exp $