<?xml version='1.0' encoding='ISO-8859-1' ?>
<!-- $Revision: 1.3 $ $Date: 2000/09/12 02:14:57 $ -->

<toc version="1.0">

<tocitem target="introa.html">Using the C++ Math Library

<tocitem target="introa.html">Getting Started
    <tocitem target="introa.html#397748">Introduction
        <tocitem target="intro2.html#379354">Overview of the MATLAB C++ Math Library</tocitem>
        <tocitem target="intro3.html#393289">Who Should Read This Book</tocitem>
        <tocitem target="intro4.html#402128">New MATLAB C++ Math Library Features</tocitem>
        <tocitem target="intro5.html#402661">MATLAB C++ Math Library Documentation</tocitem>
        <tocitem target="intro5.html#403088">Getting Started Quickly</tocitem>
    </tocitem>
    <tocitem target="intro6.html#394536">Installing the C++ Math Library
        <tocitem target="intro7.html#394468">Installation with MATLAB</tocitem>
        <tocitem target="intro8.html#394479">Installation Without MATLAB</tocitem>
        <tocitem target="intro9.html#394490">Verifying a UNIX Installation</tocitem>
        <tocitem target="intro10.html#394495">Verifying a PC Installation</tocitem>
        <tocitem target="intro11.html#395700">Installing Your C++ Compiler</tocitem>
    </tocitem>
    <tocitem target="intro12.html#401669">Building C++ Applications
        <tocitem target="intro13.html#400834">Overview</tocitem>
    </tocitem>
    <tocitem target="intro14.html#400896">Building a Stand-Alone Application on UNIX
        <tocitem target="intro15.html#400898">Configuring the Build Environment</tocitem>
        <tocitem target="intro16.html#400990">Building an Application</tocitem>
        <tocitem target="intro17.html#401055">mbuild Options</tocitem>
    </tocitem>
    <tocitem target="intro18.html#401171">Building a Stand-Alone Application on PCs
        <tocitem target="intro19.html#401173">Configuring the Build Environment</tocitem>
        <tocitem target="intro20.html#401353">Building an Application</tocitem>
        <tocitem target="intro21.html#401372">mbuild Options</tocitem>
    </tocitem>
    <tocitem target="intro22.html#401495">Troubleshooting mbuild</tocitem>
    <tocitem target="intro23.html#401834">Linking Applications Without mbuild</tocitem>
    <tocitem target="intro24.html#405676">Distributing Stand-Alone Applications
        <tocitem target="intro24.html#405690">Packaging the MATLAB Math Run-Time Libraries</tocitem>
        <tocitem target="intro24.html#405718">Installing Your Application</tocitem>
        <tocitem target="intro25.html#405918">Problem Starting Stand-Alone Application</tocitem>
    </tocitem>
</tocitem>
<tocitem target="startina.html">Fundamentals
    <tocitem target="startin2.html#393482">MATLAB Basics
        <tocitem target="startin3.html#393555">Data Types</tocitem>
        <tocitem target="startin4.html#399683">Operators</tocitem>
        <tocitem target="startin5.html#393557">Functions</tocitem>
        <tocitem target="startin6.html#393558">Input and Output</tocitem>
        <tocitem target="startin7.html#393562">Errors</tocitem>
        <tocitem target="startin8.html#393654">Flow of Control</tocitem>
    </tocitem>
    <tocitem target="startin9.html#393483">MATLAB for C++ Programmers</tocitem>
    <tocitem target="starti10.html#393484">C++ for MATLAB Users
        <tocitem target="starti11.html#396038">How the Library Is Similar to MATLAB</tocitem>
        <tocitem target="starti12.html#396055">How C++ and the Library Differ from MATLAB</tocitem>
    </tocitem>
    <tocitem target="starti13.html#393485">MATLAB C++ Math Library Basics
        <tocitem target="starti14.html#393563">Data Types</tocitem>
        <tocitem target="starti15.html#393564">Operators</tocitem>
        <tocitem target="starti16.html#393565">Functions</tocitem>
        <tocitem target="starti17.html#393566">Input and Output</tocitem>
        <tocitem target="starti18.html#393567">Errors</tocitem>
        <tocitem target="starti19.html#393568">Memory Management</tocitem>
    </tocitem>
    <tocitem target="starti20.html#393486">Stand-Alone Programs
        <tocitem target="starti21.html#401329">Example Program: Writing Simple Functions (ex4.cpp)</tocitem>
        <tocitem target="starti22.html#401469">Writing Efficient Programs</tocitem>
    </tocitem>
    <tocitem target="starti23.html#393580">Learning More</tocitem>
</tocitem>
<tocitem target="workinga.html">Working with MATLAB Arrays
    <tocitem target="workinga.html#435979">Overview
        <tocitem target="working2.html#448915">Supported MATLAB Array Types</tocitem>
        <tocitem target="working3.html#448939">MATLAB Array C++ Object</tocitem>
    </tocitem>
    <tocitem target="working4.html#446208">Numeric Arrays
        <tocitem target="working5.html#450556">Creating Numeric Arrays</tocitem>
        <tocitem target="working6.html#447315">Initializing a Numeric Array with Data</tocitem>
        <tocitem target="working7.html#447880">Example Program: Creating Arrays and Array I/O (ex1.cpp)</tocitem>
    </tocitem>
    <tocitem target="working8.html#449481">Sparse Matrices
        <tocitem target="working9.html#449542">Creating a Sparse Matrix</tocitem>
        <tocitem target="workin10.html#449637">Converting a Sparse Matrix to Full Matrix Format</tocitem>
        <tocitem target="workin11.html#449641">Evaluating Arrays for Sparse Storage</tocitem>
    </tocitem>
    <tocitem target="workin12.html#452039">Character Arrays
        <tocitem target="workin13.html#452103">Creating MATLAB Character Arrays</tocitem>
    </tocitem>
    <tocitem target="workin14.html#450382">Cell Arrays
        <tocitem target="workin15.html#450420">Creating Cell Arrays</tocitem>
        <tocitem target="workin16.html#453570">Displaying the Contents of a Cell Array</tocitem>
    </tocitem>
    <tocitem target="workin17.html#451567">MATLAB Structures
        <tocitem target="workin18.html#449742">Creating Structures</tocitem>
    </tocitem>
    <tocitem target="workin19.html#452205">Performing Common Array Programming Tasks
        <tocitem target="workin20.html#452228">Converting Data to MATLAB Arrays</tocitem>
        <tocitem target="workin21.html#445567">Determining Array Size</tocitem>
    </tocitem>
</tocitem>
<tocitem target="indexina.html">Indexing into Arrays
    <tocitem target="indexina.html#437555">Overview
        <tocitem target="indexin2.html#437557">Terminology</tocitem>
        <tocitem target="indexin3.html#439720">Dimensions and Subscripts in MATLAB</tocitem>
        <tocitem target="indexin4.html#441769">Dimensions and Subscripts in the MATLAB C++ Math Library</tocitem>
        <tocitem target="indexin5.html#439868">Array Storage</tocitem>
    </tocitem>
    <tocitem target="indexin6.html#438596">Using One-Dimensional Subscripts
        <tocitem target="indexin7.html#438598">Overview</tocitem>
        <tocitem target="indexin8.html#438628">Selecting a Single Element</tocitem>
        <tocitem target="indexin9.html#438631">Selecting a Vector</tocitem>
        <tocitem target="indexi10.html#438650">Selecting a Matrix</tocitem>
        <tocitem target="indexi11.html#438666">Selecting the Entire Matrix As a Column Vector</tocitem>
    </tocitem>
    <tocitem target="indexi12.html#438198">Using N-Dimensional Subscripts
        <tocitem target="indexi13.html#438200">Overview</tocitem>
        <tocitem target="indexi14.html#437591">Selecting a Single Element</tocitem>
        <tocitem target="indexi15.html#437597">Selecting a Vector of Elements</tocitem>
        <tocitem target="indexi16.html#437627">Selecting a Matrix</tocitem>
        <tocitem target="indexi17.html#440121">Extending Two-Dimensional Indexing to N Dimensions</tocitem>
    </tocitem>
    <tocitem target="indexi18.html#437752">Using Logical Subscripts
        <tocitem target="indexi19.html#437754">Overview</tocitem>
        <tocitem target="indexi20.html#437764">Using a Logical Matrix As a One-Dimensional Index</tocitem>
        <tocitem target="indexi21.html#437780">Using Two Logical Vectors as Indices</tocitem>
        <tocitem target="indexi22.html#437789">Using One colon() Index and One Logical Vector as Indices</tocitem>
        <tocitem target="indexi23.html#437803">Using a Scalar and a Logical Vector</tocitem>
        <tocitem target="indexi24.html#440246">Extending Logical Indexing to N Dimensions</tocitem>
    </tocitem>
    <tocitem target="indexi25.html#440272">Using Indexing in Assignment Statements
        <tocitem target="indexi26.html#437821">Overview</tocitem>
        <tocitem target="indexi27.html#437837">Assigning to a Single Element</tocitem>
        <tocitem target="indexi28.html#437841">Assigning to a Multiple Elements</tocitem>
        <tocitem target="indexi29.html#437855">Assigning to a Subarray</tocitem>
        <tocitem target="indexi30.html#437872">Assigning to All Elements</tocitem>
        <tocitem target="indexi31.html#440313">Extending Two-Dimensional Assignment to N Dimensions</tocitem>
    </tocitem>
    <tocitem target="indexi32.html#437881">Deleting Elements from an Array</tocitem>
    <tocitem target="indexi33.html#440552">Indexing into Cell Arrays
        <tocitem target="indexi34.html#440607">Overview</tocitem>
        <tocitem target="indexi35.html#440616">Referencing a Cell in a Cell Array</tocitem>
        <tocitem target="indexi36.html#440622">Referencing a Subset of a Cell Array</tocitem>
        <tocitem target="indexi37.html#440632">Referencing the Contents of a Cell</tocitem>
        <tocitem target="indexi38.html#440638">Referencing a Subset of the Contents of a Cell</tocitem>
        <tocitem target="indexi39.html#440646">Indexing Nested Cell Arrays</tocitem>
        <tocitem target="indexi40.html#440711">Assigning Values to a Cell Array</tocitem>
        <tocitem target="indexi41.html#440723">Deleting Elements from a Cell Array</tocitem>
    </tocitem>
    <tocitem target="indexi42.html#440734">Indexing into MATLAB Structure Arrays
        <tocitem target="indexi43.html#440742">Overview</tocitem>
        <tocitem target="indexi44.html#440763">Accessing a Field</tocitem>
        <tocitem target="indexi45.html#440767">Accessing the Contents of a Structure Field</tocitem>
        <tocitem target="indexi46.html#440778">Assigning Values to a Structure Field</tocitem>
        <tocitem target="indexi47.html#440786">Assigning Values to Elements in a Field</tocitem>
        <tocitem target="indexi48.html#440795">Referencing a Single Structure in a Structure Array</tocitem>
        <tocitem target="indexi49.html#440799">Referencing into Nested Structures</tocitem>
        <tocitem target="indexi50.html#440808">Accessing the Contents of Structures Within Cells</tocitem>
        <tocitem target="indexi51.html#440817">Deleting Elements from a Structure Array</tocitem>
    </tocitem>
    <tocitem target="indexi52.html#439095">Indexing Techniques
        <tocitem target="indexi52.html#438383">Duplicating a Row or Column</tocitem>
        <tocitem target="indexi53.html#439155">Concatenating Subscripts</tocitem>
    </tocitem>
    <tocitem target="indexi54.html#437897">C++ and MATLAB Indexing Syntax</tocitem>
    <tocitem target="indexi55.html#439341">The mwIndex Class</tocitem>
    <tocitem target="indexi56.html#444147">Programming Efficient Indices</tocitem>
</tocitem>
<tocitem target="callinga.html">Calling Library Functions
    <tocitem target="callinga.html#433203">Overview</tocitem>
    <tocitem target="calling2.html#407610">How to Call C++ Library Functions
        <tocitem target="calling3.html#407624">Returning One Result and Passing Only Required Input Arguments</tocitem>
        <tocitem target="calling4.html#407413">Passing Optional Input Arguments</tocitem>
        <tocitem target="calling5.html#407422">Passing Optional Output Arguments</tocitem>
        <tocitem target="calling6.html#396843">Passing Optional Input and Output Arguments</tocitem>
        <tocitem target="calling7.html#438891">Passing Any Number of Inputs</tocitem>
        <tocitem target="calling8.html#438905">Passing Any Number of Outputs</tocitem>
        <tocitem target="calling9.html#396857">Summary of Library Calling Conventions</tocitem>
        <tocitem target="callin10.html#437761">Example Program: Calling Library Functions (ex2.cpp)</tocitem>
    </tocitem>
    <tocitem target="callin11.html#439413">How to Call Operators</tocitem>
    <tocitem target="callin12.html#438550">Example Program: Passing Functions As Arguments (ex3.cpp)</tocitem>
    <tocitem target="callin13.html#439618">Representing Input Arguments As a Cell Array</tocitem>
</tocitem>
<tocitem target="math_opa.html">Using the Mathematical Operators
    <tocitem target="math_opa.html#438529">Overview</tocitem>
    <tocitem target="math_op2.html#438560">Using the Operators</tocitem>
    <tocitem target="math_op3.html#438763">Defining Your Own Operators</tocitem>
</tocitem>
<tocitem target="writinga.html">Printing, Exceptions, and Memory Management
    <tocitem target="writinga.html#443316">Defining a Print Handler
        <tocitem target="writing2.html#437745">Providing Your Own Print Handler</tocitem>
        <tocitem target="writing3.html#437759">Using the Print Handler to Print Your Own Messages</tocitem>
        <tocitem target="writing4.html#437772">Output to a GUI</tocitem>
    </tocitem>
    <tocitem target="writing5.html#437950">Handling Exceptions
        <tocitem target="writing5.html#441590">C++ Exception Handling Overview</tocitem>
        <tocitem target="writing6.html#437983">Handling C++ Math Library Exceptions in Your Code</tocitem>
        <tocitem target="writing7.html#440835">Example Program: Handling Exceptions (ex5.cpp)</tocitem>
        <tocitem target="writing8.html#442044">Replacing the Default Library Error Handler</tocitem>
        <tocitem target="writing9.html#438988">Exception Handling in the MATLAB C++ Math Library</tocitem>
    </tocitem>
    <tocitem target="writin10.html#438604">Memory Management
        <tocitem target="writin11.html#438609">Setting Up Your Own Memory Management Routines</tocitem>
        <tocitem target="writin12.html#438688">Performance and Efficiency</tocitem>
        <tocitem target="writin13.html#438692">The Space-Time Continuum</tocitem>
    </tocitem>
</tocitem>
<tocitem target="array_ia.html">Array Input and Output
    <tocitem target="array_ia.html#439283">Overview</tocitem>
    <tocitem target="array_i2.html#439284">Using Array Stream I/O
        <tocitem target="array_i3.html#444564">Overview</tocitem>
        <tocitem target="array_i4.html#442894">Example - Array Stream I/O (ex1.cpp)</tocitem>
        <tocitem target="array_i5.html#440074">Stream I/O Format Definitions</tocitem>
        <tocitem target="array_i6.html#441108">Using Stream I/O to Files</tocitem>
        <tocitem target="array_i7.html#444558">Using Streams for Interprocess Communication</tocitem>
    </tocitem>
    <tocitem target="array_i8.html#444497">Using File I/O Functions
        <tocitem target="array_i9.html#441148">Specifying Library File I/O Functions</tocitem>
        <tocitem target="array_10.html#440221">Example - Using File I/O Functions (ex6.cpp)</tocitem>
    </tocitem>
    <tocitem target="array_11.html#438935">Importing and Exporting MAT-File Data
        <tocitem target="array_12.html#440420">Exporting Array Data to a MAT-File</tocitem>
        <tocitem target="array_13.html#438956">Importing Array Data from a MAT-File</tocitem>
        <tocitem target="array_14.html#438983">Example - Using load() and save() (ex7.cpp)</tocitem>
    </tocitem>
</tocitem>
<tocitem target="matlab_a.html">Translating from MATLAB to C++
    <tocitem target="matlab_a.html#440847">Differences Between C++ and MATLAB</tocitem>
    <tocitem target="matlab_2.html#437595">Syntax</tocitem>
    <tocitem target="matlab_3.html#437618">Variable Declaration</tocitem>
    <tocitem target="matlab_4.html#437626">Function Calling Conventions</tocitem>
    <tocitem target="matlab_5.html#437635">Control Structure</tocitem>
    <tocitem target="matlab_6.html#437642">Logical Values</tocitem>
    <tocitem target="matlab_7.html#437657">Name Conflicts with Standard C Library Functions
        <tocitem target="matlab_8.html#437660">Casting an Argument to Avoid a Name Conflict</tocitem>
        <tocitem target="matlab_9.html#437681">Renaming Functions to Avoid a Name Conflict</tocitem>
    </tocitem>
    <tocitem target="matlab10.html#437759">Example Program: Rewriting roots.m in C++ (ex8.cpp)
        <tocitem target="matlab11.html#438455">The M-File roots() Function</tocitem>
        <tocitem target="matlab12.html#438506">The C++ roots() Function</tocitem>
    </tocitem>
</tocitem>
<tocitem target="mwarraya.html">mwArray Class Interface
    <tocitem target="mwarraya.html#438526">Introduction</tocitem>
    <tocitem target="mwarray2.html#438535">Constructors</tocitem>
    <tocitem target="mwarray3.html#438650">Indexing and Subscripts
        <tocitem target="mwarray4.html#439080">Array Indexing</tocitem>
        <tocitem target="mwarray5.html#438984">Cell Content Indexing</tocitem>
        <tocitem target="mwarray6.html#439086">Structure Field Indexing</tocitem>
    </tocitem>
    <tocitem target="mwarray7.html#438666">User-Defined Conversions</tocitem>
    <tocitem target="mwarray8.html#438671">Memory Management</tocitem>
    <tocitem target="mwarray9.html#438682">Operators</tocitem>
    <tocitem target="mwarra10.html#438708">Array Size</tocitem>
    <tocitem target="mwarra11.html#438752">Extracting Data from an mwArray
        <tocitem target="mwarra12.html#438755">GetData( )</tocitem>
        <tocitem target="mwarra13.html#438767">SetData( )</tocitem>
        <tocitem target="mwarra14.html#438773">ExtractScalar( ) and ExtractData( )</tocitem>
        <tocitem target="mwarra15.html#438794">ToString( )</tocitem>
    </tocitem>
</tocitem>
<tocitem target="functioa.html">Library Routines
    <tocitem target="functioa.html#417223">Introduction</tocitem>
    <tocitem target="functio2.html#395817">Operators
        <tocitem target="functio3.html#419829">Arithmetic Operators</tocitem>
        <tocitem target="functio4.html#399180">Relational Operators</tocitem>
        <tocitem target="functio5.html#379702">Miscellaneous Operators</tocitem>
    </tocitem>
    <tocitem target="functio6.html#379716">MATLAB Functions
        <tocitem target="functio7.html#393222">General Purpose Commands</tocitem>
        <tocitem target="functio8.html#393242">Operators and Special Functions</tocitem>
        <tocitem target="functio9.html#417815">Elementary Matrices and Matrix Manipulation</tocitem>
        <tocitem target="functi10.html#412867">Elementary Math Functions</tocitem>
        <tocitem target="functi11.html#412996">Specialized Math Functions</tocitem>
        <tocitem target="functi12.html#418030">Numerical Linear Algebra</tocitem>
        <tocitem target="functi13.html#414448">Data Analysis and Fourier Transform Functions</tocitem>
        <tocitem target="functi14.html#396283">Polynomial and Interpolation Functions</tocitem>
        <tocitem target="functi15.html#409263">Function Functions and ODE Solvers</tocitem>
        <tocitem target="functi16.html#409288">Character String Functions</tocitem>
        <tocitem target="functi17.html#393759">File I/O Functions</tocitem>
        <tocitem target="functi18.html#415550">Data Types</tocitem>
        <tocitem target="functi19.html#415751">Time and Dates</tocitem>
        <tocitem target="functi20.html#425078">Multidimensional Array Functions</tocitem>
        <tocitem target="functi21.html#425113">Cell Array Functions</tocitem>
        <tocitem target="functi22.html#425152">Structure Functions</tocitem>
        <tocitem target="functi23.html#425183">Sparse Matrix Functions</tocitem>
    </tocitem>
    <tocitem target="functi24.html#425677">Utility Functions</tocitem>
    <tocitem target="functi25.html#424072">Array Access Functions</tocitem>
</tocitem>
<tocitem target="directoa.html">Directory Organization
    <tocitem target="directoa.html#32599">Introduction</tocitem>
    <tocitem target="directo2.html#31581">Directory Organization on UNIX
        <tocitem target="directo3.html#32782"><matlab>/bin</tocitem>
        <tocitem target="directo4.html#32711"><matlab>/extern/lib/$ARCH</tocitem>
        <tocitem target="directo5.html#28458"><matlab>/extern/include</tocitem>
        <tocitem target="directo6.html#32027"><matlab>/extern/include/cpp</tocitem>
        <tocitem target="directo7.html#30862"><matlab>/extern/examples/cppmath</tocitem>
    </tocitem>
    <tocitem target="directo8.html#32222">Directory Organization on Microsoft Windows
        <tocitem target="directo9.html#26320"><matlab>\bin</tocitem>
        <tocitem target="direct10.html#33252"><matlab>\extern\lib</tocitem>
        <tocitem target="direct11.html#26037"><matlab>\extern\include</tocitem>
        <tocitem target="direct12.html#28519"><matlab>\extern\include\cpp</tocitem>
        <tocitem target="direct13.html#26046"><matlab>\extern\examples\cppmath</tocitem>
    </tocitem>
</tocitem>
<tocitem target="exceptia.html">Exception Classes
    <tocitem target="exceptia.html#395963">Overview</tocitem>
    <tocitem target="excepti2.html#395764">Exception Class Descriptions</tocitem>
</tocitem>
<tocitem target="errormea.html">Error Messages
    <tocitem target="errormea.html#394042">Overview
        <tocitem target="errormea.html#394516">Error Types</tocitem>
        <tocitem target="errormea.html#395792">Reporting Errors</tocitem>
    </tocitem>
    <tocitem target="errorme2.html#394065">Alphabetized Error Messages</tocitem>
</tocitem>

</tocitem>
</toc>
