function outInfo=matinfo
%MATINFO Demo helper function for MATLAB demos.
%   out = MATINFO returns a data structure that lists all demos
%   for the MATLAB area of the demos.

%   Kelly Liu 6-14-96
%   Revised N. Gulley 8-5-96
%   Copyright (c) 1984-98 by The MathWorks, Inc.
%   $Revision: 1.25 $

% Initialize demo index number
n=0;

% ===============================================
% Matrices
% ===============================================
n=n+1;
matList(n).Name='Matrices';
matList(n).Type='MATLAB';
matList(n).Help= {...           
   ' MATLAB works with scalars, vectors, and     '  
   ' matrices. A scalar is really just a 1-by-1  '  
   ' matrix, and a vector is nothing more than a '  
   ' long, thin matrix given as either a row or a'  
   ' column. In this sense, everything that      '  
   ' MATLAB operates on is a matrix.     '  
   '           '  
   ' Since matrices are the basis for all of     '  
   ' MATLAB, this section contains some demos    '  
   ' that describe simple matrix operations and  '  
   ' some of the basic commands available to     '  
   ' you. These functions are the foundation upon'  
   ' which many of the more complex functions    '  
   ' are built.        '};
matList(n).DemoList={
   'Basic matrix operations' ,
   'Inverses of matrices ',
   'Graphs and matrices  ',
   'Sparse matrices  ',
   'Matrix manipulation',
   'Eig. & singular value show',
   'Command line demos '};
matList(n).FcnList={
   'playshow intro',
   'playshow inverter', 
   'playshow buckydem',
   'playshow sparsity', 
   'playshow matmanip',
   'eigshow',
   'matdems'};

% ===============================================
% Numerics
% ===============================================
n=n+1;
matList(n).Name='Numerics';
matList(n).Type='MATLAB';
matList(n).Help= {...            
   ' This section contains some examples of       '
   ' numeric calculation in MATLAB.               '
   '                                              '    
   ' Originally developed in FORTRAN for use on   '  
   ' mainframe computers, MATLAB was one of       '  
   ' the first programs to provide convenient     '  
   ' access to the groundbreaking LINPACK and     '  
   ' EISPACK matrix software developed by a       '  
   ' team centered at Argonne National            '  
   ' Laboratory.  MATLAB has been completely      '
   ' reimplemented in C and remains the expert''s '
   ' choice for state-of-the-art numeric          '
   ' computation. '};
matList(n).DemoList={
   'Functions of functions  ', 
   'Curve fitting  ', 
   'Fast fourier transform ', 
   '2D visual solutions  ',
   'Command line demos'};
matList(n).FcnList={
   'funfuns',
   'playshow fitdemo',
   'playshow sunspots',
   'playshow e2pi',
   'numdems'};

% ===============================================
% Visualization
% ===============================================
n=n+1;
matList(n).Name='Visualization';
matList(n).Type='MATLAB';
matList(n).Help= {...             
   ' This section demonstrates the remarkable '
   ' graphics capabilities you can create with '
   ' MATLAB as you strive for a visual    ' 
   ' understanding of your data.     '
   '          '
   ' MATLAB''s graphics and visualization        '  
   ' capabilities have seen a quantum leap in    '  
   ' functionality recently to provide you with  '
   ' unprecedented simplicity, elegance, and     '
   ' power when working with data graphically.   '};
matList(n).DemoList={
   '2-D Plots', 
   '3-D Plots', 
   '3-D Plots of complex functions  ', 
   'Volume and Vectors  ', 
   'Lorenz attractor animation  ',
   'Image colormaps  ',
   'Klein bottle example ',
   'Command line demos'};
if isstudent
  matList(n).DemoList(4) = []; %remove Volume and Vectors
else
  matList(n).DemoList=[matList(n).DemoList', {'Vibration movie', 'Visualizing sound'}]';
end
matList(n).FcnList={
   'graf2d', 
   'graf2d2',
   'grafcplx',
   'volvec',
   'lorenz',
   'imageext'
   'xpklein',
   'visdems'};
if isstudent
  matList(n).FcnList(4) = []; %remove Volume and Vectors
else
  matList(n).FcnList=[matList(n).FcnList', {'xpmovie vibes', 'xpsound'}]';
end

% ===============================================
% Language
% ===============================================
n=n+1;
matList(n).Name='Language/Graphics';
matList(n).Type='MATLAB';
matList(n).Help= {...             
   ' MATLAB is both an environment and a    '  
   ' programming language that allows you to '
   ' build your own reusable tools. This       '
   ' section contains demos of the MATLAB      '  
   ' language in action and Handle Graphics,   '
   ' the framework underlying                  '  
   ' MATLAB graphics. Handle Graphics is an    '  
   ' object-oriented approach to visualization that '  
   ' allows you to display your data and then       '  
   ' "reach in" and manipulate any part of the image'  
   ' you have created.     '};
matList(n).DemoList={
   'MATLAB language introduction ',
   'Multi-dimensional arrays',
   'Structures',
   'Line plotting',
   '3-D surface plots', 
   'Axis properties',
   'Axis aspect ratio'};
matList(n).FcnList={
   'playshow xplang',
   'playshow nddemo',
   'playshow strucdem',
   'hndlgraf', 
   'graf3d',
   'hndlaxis',
   'ardemo'};

% ===============================================
% The MATLAB Gallery
% ===============================================
n=n+1;
matList(n).Name='Gallery';
matList(n).Type='MATLAB';
matList(n).Help= { ...     
   ' The Gallery is a place to hang particularly '
   ' elegant examples of graphic visualization '
   ' in MATLAB. These pieces are, by themselves, '
   ' testament to the power at your fingertips. '};
matList(n).DemoList={
   'Knot',
   'Quiver',
   'Klein II',
   'Cruller', 
   'Hoops',
   'Slosh'
   'Modes'
   'Logo'};
matList(n).FcnList={
   'knot', 
   'xpgallry quivdemo'
   'xpgallry klein1', 
   'xpgallry cruller',
   'xpgallry tori4',
   'xpgallry spharm2',
   'xpgallry modes',
   'xpgallry logo'};

% ===============================================
% Games
% ===============================================
n=n+1;
matList(n).Name='Games';
matList(n).Type='MATLAB';
matList(n).Help= { ...            
   ' Some of the games in this section are interactive, '
   ' while some, like Conway''s "Game of Life", are '
   ' not.  Keep in mind everything you see is written '
   ' in MATLAB code. The possibilities are '
   ' truly limitless. '};     
matList(n).DemoList={
   'Sliding Puzzle',
   'Minesweeper',
   'Game of life',
   'Soma Cube'};
matList(n).FcnList={
   'fifteen',
   'xpbombs',
   'life',
   'soma'};

% ===============================================
%     Miscellaneous
% ===============================================
n=n+1;
matList(n).Name='Miscellaneous';
matList(n).Type='MATLAB';
matList(n).Help= { ...            
   ' Browse through this list of miscellaneous demos '
   ' to find many more examples of MATLAB in action.'};     
matList(n).DemoList={
   'Bending truss',
   'Traveling salesman',
   'Cool lines',
   'Superquadrics',
   'Coder/Decoder',
   'Hide objects in motion',
   '3d drawing',
   'World traveler 3D globe'
   'Quaternion Rotation demonstration'};
if ~isstudent
   matList(n).DemoList=[matList(n).DemoList', ...
         {'Spinning MATLAB logo movie', 'Spinning Cruller movie'}]';
end
matList(n).FcnList={
   'truss', 
   'travel',
   'spinner', 
   'xpquad',
   'codec',
   'xphide',
   'makevase',
   'wrldtrv'
   'quatdemo'};
if ~isstudent
   matList(n).FcnList=[matList(n).FcnList', ...
         {'xpmovie logospin','xpmovie crulspin'}]';
end


% ===============================================
%     Contact Information
% ===============================================
n=n+1;
matList(n).Name='To learn more...';
matList(n).Type='MATLAB';
matList(n).Help= {...
' Contact us to learn more about the MATLAB ',
' family of products.  If you have access to ',
' the World Wide Web, choose one of the sites ',
' below to go directly to The MathWorks on line. ',
'                                           ',
'    The MathWorks, Inc.              ',
'    24 Prime Park Way                ',                          
'    Natick, Massachusetts 01760      ',                          
'                                       ',
'    Phone: (508) 647-7000            ',                          
'    FAX: (508) 647-7001              ',
' ',
'    On the World Wide Web:           ',
'          http://www.mathworks.com              ',
' ',
'    On the UseNet: ',
'          comp.soft-sys.matlab  ',
' ',
'    By e-mail for:                             ',
'                                                ',
'    Sales, pricing, and general information:   ',               
'          info@mathworks.com                 ',               
'                                                 ',
'    Technical support:                         ',               
'          support@mathworks.com              ',               
'                                                 ',
'    Subscribing user registration:             ',               
'          subscribe@mathworks.com            ',               
'                                                 ',
'    Order status, license renewals, passcodes: ',               
'          service@mathworks.com              ',               
'                                                ',
'    Suggestions or comments:                   ',               
'          suggest@mathworks.com              ',       
'                                     ',
' '};

matList(n).DemoList={
   'Go to the Help Desk',
   'Go to The MathWorks homepage',
   'Go to the Technical Support homepage',
   'Send e-mail to technical support',
   'Send e-mail to sales and information',
   'Show International distributors'};
matList(n).FcnList={
   'helpdesk',
   'web(''http://www.mathworks.com'');',
   'web(''http://www.mathworks.com/aboutts.html'');',
   'web(''mailto:support@mathworks.com'');',
   'web(''mailto:info@mathworks.com'');',
   'web(''http://www.mathworks.com/distribs.html'');'};

outInfo=matList;

