Prev Next _contents Headings

Table of Contents

O-Matrix Version 6
O-Matrix Version 6
    Table of Contents
     Getting Started
    Getting Started
        Readme File for O-Matrix Version 6.5
        About O-Matrix
        Starting O-Matrix
        Example Navigator
         The O-Matrix User Interface
        The O-Matrix User Interface
            The Command Line
            The Command Window
            Graphics Windows
            The Debugger Window
            The O-Matrix Menu Bar
            The O-Matrix Toolbar
            Editor Windows

        The O-Matrix Help System
        Customizing the Initial State of O-Matrix
        Finding Text in Files
        Exiting O-Matrix
        O-Matrix Tutorial
         Interactive GUI Tools
        Interactive GUI Tools
            A Dialog for Plotting Files
            A Linear Least Squares Fitting Dialog
            A Dialog for Fitting Polynomials
            Theoretical and Estimated Response for a Digital Filter

     Basic Concepts
    Basic Concepts
        Assigning Values To Variables
        Starting A New Program
        Assigning Values To Constants
        Representing Matrix Elements In Program Input
        The Mathematical constant Pi
        Building Matrices
        Terminating An O-Matrix Session
        Explicit Inclusion of Commands or Functions from a File
        Implicit Inclusion of Commands or Functions from a File
        Comments and Statement Continuation
        Default Printing Of An Expression
        Printing A List Of Expressions
        Suspending Program Execution And Entering Debugger
        Determining The Column Dimension Of A Matrix
        Determining The Row Dimension Of A Matrix
        Determining the Dimensions of a Matrix
        Changing Matrix Dimensions
        Copying and Changing the Dimensions of a Matrix
        Loading And Storing Matrices As Vectors

     Expressions
    Expressions
        Positive Sign
        Negative Sign
        Addition
        Automatic Conversion To A Higher Type
        Subtraction
        Element-By-Element Multiplication
        Element-By-Element Division
        Testing Numeric And Logical Equality
        Ordered Numeric And Logical Comparisons
        Logical Operators
        Matrix Multiplication
        Linear Equations and Least Squares
        Element-By-Element Exponentiation
        Matrix Transpose
        The Norm Operator
        Testing String Equality
        Ordered String Comparisons
        Sequence Operator
        Order Of Operations

     Controlling Program Flow
    Controlling Program Flow
        If Statement
        Grouping A Sequence Of Statements As A Block
        For Statement
        While Statement
        Breaking Out Of For And While Loops
        Transferring Control Using The Goto Statement
        Halting Program Execution

     Elementary Functions
    Elementary Functions
         Algebraic Functions
        Algebraic Functions
            Absolute Value Function
            The Square Root Function
            Determining The Maximum Element of a Matrix
            Determining The Indices Of The Maximum Element
            Computing The Maximum Element From Multiple Matrices
            Computing The Minimum Element From Multiple Matrices
            The Complex Conjugate Function
            The Imaginary Part Function
            The Sign Function
            Largest Integer Less Than or Equal a Specified Value
            Smallest Integer Greater Than or Equal a Specified Value
            Rounding of to the Nearest Integer Value
            Rounding Numbers To The Nearest Integer
            Modulo Function
            Remainder Function
            Undo The Modulo Function
            Unwrap Angles To Absolute Angles Above Two Pie
            The Factorial Function
            Computing Prime Numbers

         Transcendental Functions
        Transcendental Functions
            Inverse Cosine Function
            Inverse Sine Function
            Inverse Tangent Function
            Cosine Function
            Hyperbolic Cosine Function
            Exponential Function
            Natural Logarithm Function
            Base Ten Logarithm Function
            Sine Function
            Hyperbolic Sine Function
            Tangent Function
            Hyperbolic Tangent Function
            Base Two Logarithm Function
            Base Two Exponentiation Function
            Inverse Tangent Function With Two Arguments
            Angle Corresponding to a Complex Value
            Inverse Hyperbolic Sine Function
            Inverse Hyperbolic Cosine Function
            Inverse Hyperbolic Cotangent Function
            Hyperbolic Cotangent Function
            Inverse Hyperbolic Tangent Function
            Square Root of Sum of Squares

         Special Matrices
        Special Matrices
            Obtaining A Copy Of The Identity Matrix
            Creating A Matrix Of Zeros
            Creating A Matrix Of Ones
            Filling A Matrix With Copies of Another Matrix
            Filling A Matrix With A Column Vector
            Filling A Matrix With A Row Vector
            Generating A Sequence Of Integers
            Constructing Toeplitz Matrices
            Vandermonde Matrix
            Hankel Matrix
            Hilbert Matrix
            Exact Inverse of a Hilbert Matrix
            The Diagonal Function
            Lower Triangular Part of a Matrix
            Upper Triangular Part of a Matrix
            The Novalue Type In O-Matrix

         Matrix Type Functions
        Matrix Type Functions
            Determining The Type Of An Expression
            Conversion To Integer
            Conversion To Single-Precision
            Conversion To Double-Precision
            Element-By-Element Conversion To Complex
            Element-By-Element Conversion To Character
            Conversion To Logical
            Matching The Types Of Two Matrices

         System Functions
        System Functions
            Elapsed Time Since Start of Session
            Determining The Date and Time
            Starting and Reading an Elapsed Timer
            Starting Another Process
            Getting And Setting The Current Working Directory
            Listing the Names of Files in a Directory
            Listing A Directory And All Its Subdirectories
            Renaming A File
            Removing A File
            Removing A Directory
            Removing A Directory And All Its Subdirectories
            Determining If There Is A Directory With A Specified Name
            Determines If Value Represents a Complete File Name
            Creates a Full Path File Name
            Creating A Directory
            Checking For A File Or Directory
            Determining The Length Of A File
            Copying Files
            Creating A Temporary File Name
            Slowing or Suspending Execution
            O-Matrix Version Specification
            Clearing the Command Window
            Setting the Font for Editors
            Generating Sounds
            Getting an Environment Variable

         Checking For Certain Conditions
        Checking For Certain Conditions
            Determining if All Elements are True
            Determining if All Elements are True (Mlmode)
            Determining if Any Elements are True
            Determining if Any Elements are True (Mlmode)
            Number of Nonzero Elements
            Checking For Matrix Equality
            Determining Which Values Have Full Precision
            Determines if a Matrix is Empty
            Checking For Matrix Equality
            Determines If All Elements Have Zero Imaginary Part
            Determines If Value is Numeric-Valued Scalar
            Determines If Value is Character Matrix
            Determines If Value is Character Vector
            Determines If Value is Logical Scalar
            Determines If Value is Numeric Matrix
            Determines If Value is a Numeric Vector
            Determines Which Elements Are Finite
            Determines Which Elements Are Infinite
            Determines Which Elements Are Not A Number
            Determines If This is a Light Version of O-Matrix
            Determines If This is an O-Matrix Run-Time Engine Version
            Determines If This is a O-Matrix Developer Version

        The Binary Logical Exclusive Or Operation
        Smallest Power of Two Greater or Equal a Specified Value
        Evenly Spaced Grid With a Specified Number of Points
        Create a Grid With Evenly Spaced Logarithms
        Difference Between Successive Elements In Each Column
        Finite Differences of Arbitrary Order
        Replaces Zero By a Small Value

     Working with Rows, Columns and Sub-Blocks of Matrices
    Working with Rows, Columns and Sub-Blocks of Matrices
        Elements Of A Vector
        Elements Of A Matrix
        Accessing A Single Row Or Column
        Accessing Sequential Rows Or Columns
        Sequential Elements Of A Vector
        Accessing A Subblock Of A Matrix
        Accessing Non-sequential Rows And Columns
        Vector Indices
        Using End As An Index Value
        Changing Matrix Indices
        Determining The Base Column Index Of A Matrix
        Determining The Base Row Index Of A Matrix

     Reading And Writing Data
    Reading And Writing Data
        Determining The Number Of Matrix Rows In A File
        Determining The Number Of Columns In Each Row Of A File
        Reading The Next Row From A File
        Reading A Specified Number Of Rows From A File
        Reading A Matrix Of Specified Size From A File
        Reading Text File Headers
        Skipping Lines When Reading Data
        Reading Files with a Specified Data Value Separator
        Specifying Value to be Used for Missing Input Data
        Writing a Matrix to the Screen or a File
        Specifying Number of Elements per Output Line
        Specifying Value for Separating File Output Data
        Closing Files
        Detecting End of File
        Writing an O-Matrix Native Format Binary File
        Reading an O-Matrix Native Format Binary File
         Setting and Getting Output Formats
        Setting and Getting Output Formats
            Getting An Output Format
            Setting The Integer Output Format
            Setting Floating Point Output Formats
            Set Printing and Tracing Options

        Reading Excel Data
        Writing Excel Data
        Getting Excel Worksheet Names
        Reading SigmaPlot Data
        Reading Binary Files
        Writing Binary Files
        Reading and Plotting WAV Audio Files
        Reading HDF Data
        Writing HDF Data
        Saving Output Written in Command Window
         Reading MATLAB® Data
        Reading MATLAB® Data
            Reading MAT-Files
            Listing the Variables in a MAT-File

        Reading and Writing to Network Folders
        Reading Data from the Internet
         Transferring Files Over the Internet Using FTP
        Transferring Files Over the Internet Using FTP
            open - Opening an ftp Connection to a Remote Host
            close - Closing the ftp Connection to a Remote Host
            get - Retrieving a File From a Remote Host
            put - Transferring a File To a Remote Host
            ls - Listing File and Directory Names On a Remote Host
            delete - Deleting a File on a Remote Host
            cd - Changing Directories on a Remote Host
            type - Setting the File Transfer Type

     Strings, Searching and Sorting
    Strings, Searching and Sorting
        Lining Up Data Fields In A Character Matrix
        Converting ASCII Numbers To Double-Precision Column Vector
        Converting ASCII Numbers To Integer
        Conversion of Text Matrix to a Double Precision Matrix
        Converting A Number To ASCII Characters
        Conversion of Numeric Matrix to Character Matrix
        Converting a Character Matrix to a Numeric Matrix
        Substituting Strings in Character Matrices
        Removing Trailing Spaces
        Remove Leading and Trailing Spaces
        Converting Lower Case to Upper Case
        Converting Upper Case to Lower Case
        Surrounding Text in Quotes
        Converts a Text File to a Character Row Vector
        Packs An Entire Character Matrix Into One Row Vector
        Unpacks A Character Matrix From a Row Vector
        Convert a Character Row Vector to a Valid O-Matrix Identifier
        Replacing a Row of a Character Matrix
        Map All Occurrences of a String In a Directory
        Sorting Rows Of A Matrix
        Sorting Rows With a Specified Key
        Sorting The Rows Of A Matrix By Pointers
        Specifying Sort Key When Sorting By Pointers
        Sorting (Mlmode)
        Reversing Row Order Of A Matrix
        Flipping the Row Order of a Matrix
        Flipping the Column Order of a Matrix
        Rotate A Matrix By a Multiple of 90 Degrees
        Obtaining the Nonzero Elements of a Matrix
        Determining Indices Corresponding to Nonzero Elements
        Determining Indices Where A Text Pattern Occurs
        Determining Indices Where A Character Is Between Limits
        Conversion From Decimal to Hexadecimal
        Conversion From Hexadecimal to Decimal
        Searching Strings and Matrices using Regular Expressions
        Matching Rows of A Character Matrix

     Graphics, Plotting, and Data Visualization
    Graphics, Plotting, and Data Visualization
         Basic Graphics
        Basic Graphics
            Drawing Line Plots
            Drawing Line Plots With Specified Style
            Drawing Line Plots Z denoted by Color
            Setting Z Values Corresponding To Color Changes In Plots
            Initializing Graphic
            Setting The Line Plotting Style
            Printing A Graphic Window
            Copying A Graphic Window To The Clipboard
            Saving a Graphic to a File
            Line Color Sequence For The Current Viewport
            Creating A New Graphics Window
            Specifying A Graphics Window's Caption
            Specifying A Graphics Window's Geometry
            Specifying A Graphics Window's Call Back Command
            Specifying A Graphics Window's Initial Style
            Using Identifier To Switch Between Graphic Windows
            Listing Graphic Window Identifiers
            Creating A New Viewport In The Current Graphic Window
            Setting Various Viewport Options
            Using Identifier To Switch Between Graphic Viewports
            Using Location To Switch Between Graphic Viewports
            Listing Viewport Identifiers For Current Graphic Window
            Clearing The Current Viewport
            Deleting A Viewport
            Adding A Border Around The Current Viewport
            Removes The Border Around The Current Viewport
            Determining If There Is A Border Around Current Viewport
            Updating The Current Graphic Window

         Axis Labeling And Manipulation
        Axis Labeling And Manipulation
            Defining A Title For Current Viewport
            Defining A Title For An Axis In The Current Viewport
            Setting Axis Parameters
            Setting Axis Minimum and Maximum
            Setting Major Intervals On An Axis
            Setting Minor Intervals On An Axis
            Autoscaling Multiple Plots To Same Axis Limits
            Two Scalings For Both X and Y Axis
            Specifying Numeric Format For Tick Mark Labels
            Specifying Tick Mark Locations
            Specifying Nonnumeric Tick Mark Labels
            Including A Grid In A Plot
            Setting The Axis Intercept Point For A Viewport
            Using The Mouse To Specify A Graphic Window Location
            Converting Plotting Coordinates To A Graphic Window Location
            Placing Text In The Current Graphic Window
            Listing Text In The Current Graphics Window
            Removing Text From The Current Graphics Window
            Setting Graphics Text Font Type Face
            Setting Graphics Text Font Size
            Setting Graphics Text Font Color
            Setting Graphics Text Font Styles
            Determining Available Font Names
            Adjusting The Space Around The Plotting Region
            Setting Plotting Window Aspect Ratio

         Plotting Functions Of Two Variables
        Plotting Functions Of Two Variables
            Contour Plots
            Specifying Contour Levels
            Specifying X And Y Values In A Contour Plot
            Specifying Plane For A Contour Plot
            Hiding Lines Behind A Contour Plot
            Mesh And Surface Plots
            Specifying Line Color In Mesh And Surface Plots
            Specifying X and Y Values In Mesh And Surface Plots
            Specifying Plotting Style In Mesh And Surface Plots
            Rotating Plotting Axis

         Special Plots
        Special Plots
            Plotting Error Bars
            Plotting Vectors
            Plotting Histograms
            Plotting A Bar Graph With Different Width Bars
            Plotting A Bar Graph With Uniform Width Bars
            Plotting A Stair Graph
            Plotting In Polar Coordinates
            Plotting a Smith Chart
            Plotting The Response Of A Continuous Filter
            Plotting The Response Of A Digital Filter

        Line Plots Using One Command
         Using Tecplot with O-Matrix
        Using Tecplot with O-Matrix
            Adding a Zone to an Existing Dataset
            Line Color Sequence for XY Plots
            Creating Contour Plots
            Creating Tecplot Data Sets
            Getting Dataset and Zone Dimensions
            Creating Image Files
            Popping, Creating and Obtaining Frame Names
            Transferring Data from Tecplot to O-Matrix
            Transferring Volume Data from Tecplot to O-Matrix
            Creating Histograms
            Running a Tecplot Macro File
            Running a Tecplot Macro String
            Copying Maps in a Data Set
            Determining the Number of Maps in the Current Frame
            Opening Tecplot Data, Layout and Style Files
            Creating XY Plots
            Setting and Retrieving Current Frame Plot Type
            Printing the Current Frame
            Transferring Data from O-Matrix to Tecplot
            Transferring Data from O-Matrix to a Tecplot Volume
            Checking if Tecplot is Running
            Connecting with a Tecplot Server
            Creating Surface Plots
            Setting Symbol Style for XY Plots
            Obtaining a Variable Name from Variable Number
            Obtaining a Variable Number from Variable Name
            Setting X, Y and Z Axes Minimum, Maximum, and Type
            Setting the Zone for Plot Functions
            Obtaining a Zone Name from Zone Number
            Obtaining a Zone Number from Zone Name
            wtecplot - Writing and Creating Tecplot Files
            rtecplot - Reading Tecplot Files
            A GUI for Manipulating Tecplot Data Files

         Data Visualizer for O-Matrix
        Data Visualizer for O-Matrix
            Getting Started with Data Visualizer
            Transferring Data
            Saving Plots with Data
            Creating XY Plots
            Creating Image Plots
            Modifying the Data Visualizer Color Palette
            Creating Surface Plots
            Setting the Object to be Displayed by Data Visualizer

     User-Defined Functions
    User-Defined Functions
        Defining Functions
        Returning from a Function
        Clearing Functions
        Defining Functions With Arguments
        Number of Arguments in a Function Call
        Defining Functions With Variable Numbers Of Arguments
        Using Variables And Constants With Functions
        Using Recursion
        Forward And Joint Reference Of Functions
        Functions As Arguments
        Defining Functions With Multiple Return Values
        Number of Return Values Corresponding to a Function Call
        Functions As Variables
        Local Variables
        Defining Local Functions
        Local Variable Functions
        Executing The Function Corresponding To A String
        Timing User-Defined Function Execution

     Linear Algebra
    Linear Algebra
        Kronecker Tensor Product
        Inverting A Square Matrix
        Computing The Trace Of A Matrix
        The Determinant Function
        Log Of The Determinant Of A Matrix
        Computing The Rank Of A Matrix
        Computing The Condition Number Of A Matrix
        Orthogonal Basis for Null Space of a Matrix
        Orthogonal Basis for Range Space of a Matrix
        Moore-Penrose Pseudo Inverse of a Matrix
        Cholesky Factoring Of A Matrix
        Computing The LU Factorization Of A Matrix
        Singular Value Decomposition
        Simple Syntax for QR factorization
        Alternate Syntax for Computing the QR Factorization
        Eigenvalues and EigenVectors of a General Matrix
        Generalized Eigenvalues and Eigenvectors of a General Matrix
        Eigenvalues And Eigenvectors Of A Symmetric Matrix
        Computing The Eigenvectors Of A Symmetric Matrix
        Schur Factorization
        Solving A Symmetric Toeplitz System Using Levinson's Algorithm
        Solving A Tridiagonal System Of Linear Equations
        Solves a Symmetric Block Tri-Diagonal System of Equations

     Curve Fitting, Optimization, and Derivatives
    Curve Fitting, Optimization, and Derivatives
        Piecewise Linear Interpolation In One Dimension
        Piecewise Linear Interpolation In One Dimension
        Lagrange Polynomial Interpolation
        Least Squares Fit of a Descending Polynomial to Data
        Smoothing Splines Of Arbitrary Order And Dimension
        Compute Cubic Spline Coefficients
        Evaluate A Cubic Spline
        Two Dimensional Piecewise Bilinear Interpolation
        Two Dimensional Piecewise Bilinear Interpolation (Mlmode)
        Newton's Method For Multiple Nonlinear Equations In One Variable
        Brent's Method for Multiple Nonlinear Equations Without Derivatives
        Singular Linear Least Squares
        Linear Least Squares With Box Constraints
        Nonlinear Least Squares
        Nonlinear Least Squares With Derivatives
        Nonlinear least Squares With Box Constraints
        Nonlinear Least Squares With Box Constraints and Derivatives
        Optimization Without Derivatives Using Conjugate Directions
        Optimization Using the Nelder Mead Simplex Method
        Optimization Using The Conjugate Gradient Method
        Minimization Along A Direction In A Vector Space
        Solving Linear Complementarity Problems
        Quadratic Programming with Inequality and Positive Constraints
        Quadratic Programming with Inequality and Box Constraints
        Quadratic Programming with Equality and Inequality Constraints
        Nonlinear Constrained Optimization by Successive Quadratic Programming
        Extended Least Squares
        Forward Difference Derivative Approximation
        Central Difference Derivative Approximation
        Numerical Derivatives With Automatic Step Size Control
        Testing Calculation of The Derivative of a Function
        Testing Calculation of The Gradient of a Function
        Testing Calculation of The Hessian of a Function

     FFTs, Filtering and Time Series
    FFTs, Filtering and Time Series
         Fourier Transforms
        Fourier Transforms
            The Discrete Fourier Transform
            The Inverse Discrete Fourier Transform
            The Centered Finite Fourier Transform
            The Centered Finite Inverse Fourier Transform
            Forward Fourier Transform of a Double-Precision Vector
            Inverse Fourier Transform of a Double-Precision Vector
            The Unevenly Spaced Lomb-Fourier Transform
            Two Dimensional Fourier Transform
            Two Dimensional Inverse Fourier Transform
            Two Dimensional Discrete Fourier Transform
            Two Dimensional Inverse Discrete Fourier Transform
            Circular Shift That Centers a Discrete Fourier Transform

         Kalman-Bucy Filtering and Smoothing
        Kalman-Bucy Filtering and Smoothing
            Advancing A Linear Kalman-Bucy Filter One Step At a Time
            Nonlinear Kalman-Bucy Filtering And Smoothing
            The Affine Kalman Bucy Smoother and Marginal Likelihood

        Auto-Regressive And Moving Average Filtering
        Auto-Regressive And Moving Average Filtering (Mlmode)
        Simulating An AR Process With A Specified Covariance
        Estimating The Fourier Spectrum Of A Random Process
        Discrete Prolate Spheroidal Sequences
        Computing The Wavelet Transform
        Inverse Wavelet Transform
        Normalized Butterworth Filter Polynomials
        Normalized Chebyshev Filter Polynomials
        Poles Of A Normalized Butterworth Filter
        Poles Of A Normalized Chebyshev Filter
        Converting From A Normalized To Continuous Bandpass Filter
        Converting From A Normalized To Continuous Lowpass Filter
        Converting From A Continuous To Digital Filter
        Converting From A Normalized To Digital Bandpass Filter
        Converting From A Normalized To Digital LowPass Filter

     Statistics and Statistical Distributions
    Statistics and Statistical Distributions
        Percentiles of Each Column
        Compute Tail Probabilities For An F-Statistic
        The Probability Density For A T-statistic
        Tail Probability Of A T-Statistic
        Inverse Of The Cumulative Distribution For T-Statistic
        The Cumulative Normal Distribution Function
        Inverse Of The Cumulative Normal Distribution Function
        Generating Uniformly Distributed Pseudo Random Numbers
        Generating Normally Distributed Pseudo Random Numbers
        Seeding Pseudo Random Number Generation
        Computing The Mean Absolute Deviation Of Each Column
        Computing The Mean Squared Deviation Of Each Column
        Computing The Range of Data for Each Column
        Computing The Mode of Each Column
        Computing The Kurtosis of Each Column
        Computing The Skewness of Each Column
        Generating a Random Permutation
        Using Time To Seed Random Number Generation
        Simulating a Mean Zero Variance One Uniform Random Variable
        Generating Random Numbers with Uniform Distribution
        Generating Random Numbers with Normal Distribution
        Generating Random Numbers with Exponential Distribution
        Generating Random Numbers with Gamma Distribution
        Generating Random Numbers with Cauchy Distribution
        Generating Random Numbers with Gumbel Distribution
        Generating Random Numbers with Laplace Distribution
        Generating Random Numbers with Log Normal Distribution
        Generating Random Numbers with Weibull Distribution
        Generating Random Numbers with Binomial Distribution
        Generating Random Numbers with Poisson Distribution
        Exponential Probability Density Function
        Exponential Cumulative Distribution Function
        Normal Probability Density Function
        Uniform Probability Density Function
        Uniform Cumulative Distribution Function
        Weibull Probability Density Function
        Weibull Cumulative Density Function
        Correlation Coefficients Between Columns Of A Matrix
        Covariance Between Columns Of A Matrix
        Computing The Mean Of Each Column
        Computing the Standard Deviation of Each Column
        Determining The Maximum Element In Each Column
        Determining The Maximum Element In Each Row
        Computing The Sum Of Each Column
        Computing The Sum Of Each Row
        Computing The Norm Of Each Column
        Computing The Euclidean Norm Of Each Row Of A Matrix
        Computing The Median
        Computing The Median of Each Column
        Computing The Median Absolute Deviation of Each Column
        Computing the Variance of Each Column
        Column-wise Correlation Of Matrices Using FFT
        Column-wise Convolution Of Matrices Using FFT
        Two Dimensional Convolution Of Matrices Using FFT
        Sum of Elements of a Matrix
        Running Cumulative Sum of Elements of a Matrix
        Product of Elements of a Matrix
        Running Cumulative Product of Elements of a Matrix

     Special Functions
    Special Functions
        The Error Function
        The Inverse Error Function
        The Complementary Error Function
        The Beta Function
        The Incomplete Beta Function
        The Gamma Function
        The Logarithm Of The Gamma Function
        The Incomplete Gamma Function
        The Jn Bessel Function
        The Yn Bessel Function
        The In Bessel Function
        The Kn Bessel Function
        Carlson's Elliptic Integrals of the First Kind
        Carlson's Elliptic Integrals of the Second Kind
        Carlson's Elliptic Integrals of the Third Kind
        Legendre's Elliptic Integrals of the First Kind
        Legendre's Elliptic Integrals of the Second Kind
        Legendre's Elliptic Integrals of the Third Kind
        Kolmogorov-Smirnov Test
        Psi (digamma) Function
        Airy Functions
        Matrix Elements That are Prime Numbers
        Lentz's Method For Evaluating Continued Fractions

     Integration And Differential Equations
    Integration And Differential Equations
        Trapezoidal Approximation for Integrals
        Fifth Order Gaussian Quadrature Numerical Integration
        Two Dimensional Integration Using Gauss-Legendre Quadrature
        Two Dimensional Gaussian Quadrature Integration
        Computing Gauss-Legendre Quadrature Weights
        Gauss-Legendre Quadrature Integration
        Numerical Integration to Infinity
        A Fourth Order Runge-Kutta ODE Solver
        Exponential Of A Matrix
        Fifth Order Runge-Kutta Method With Fourth Order Error Control
        Solving An ODE Using The Matrix Exponential
        Solving Stiff Ordinary Differential Equations

     Polynomials
    Polynomials
        Displaying A Polynomial
        Evaluating A Polynomial
        Evaluating A Descending Polynomial
        Evaluating A Descending Polynomial Using Matrix Multiplication
        Adding Polynomials
        Polynomial Multiplication
        Composition Of Polynomials As Functions
        Computing the Derivative of a Polynomial
        Converting A Set Of Roots To A Polynomial
        Finding Roots of a Descending Polynomial
        Converting A Set Of Roots To A Descending Polynomial
        Using Laguerre's Method to Find The Roots of a Polynomial
        Computing Chebyshev Polynomial Coefficients
        Remove Leading Zero Coefficients from a Descending Polynomial
        Convolution of Vectors (Mlmode)
        Deconvolution or Descending Polynomial Division
        Calculate the Residues for a Rational Function in Complex Plane
        Compute the companion matrix corresponding to polynomial
        Evaluating A Multiple Dimension Monomial And Its Derivatives

     Graphical User Interface Programming
    Graphical User Interface Programming
        Opening A File Using The System Browser Dialog
        Saving A File Using The System Browser Dialog
        Obtaining A Text String Using The Input Dialog
        Putting A Prompt In The Input Dialog
        Entering Passwords In The Input Dialog
        Dialog For Choosing File Names
        Posting a Dialog With an Error Message
        Displaying Program Status in a Dialog
         An Easy to Use General Purpose Dialog Routine
        An Easy to Use General Purpose Dialog Routine
            Easy Dialog Caption and Button Arguments
            Easy Dialog Message Argument
             Easy Dialog Layout Argument
            Easy Dialog Layout Argument
                Easy Dialog Text Fields
                Easy Dialog Label Fields
                Easy Dialog Check Box Fields
                Easy Dialog Popup Menu Fields
                Easy Dialog Slider Fields
                Easy Dialog Spinbox Fields
                Easy Dialog Label Button Fields
                Easy Dialog Text Button Fields

             Easy Dialog Connection Argument
            Easy Dialog Connection Argument
                Enable Easy Dialog Fields on True
                Disable Easy Dialog Fields on True
                Easy Dialog Radio Buttons

             Easy Dialog First Argument
            Easy Dialog First Argument
                Easy Dialog Dismiss Option
                Easy Dialog Enable Option
                Easy Dialog Disable Option
                Easy Dialog Setvalue Option

            A Complex Easy Dialog Example

        Adding Items To The Tools Menu
        Creating A New Editor Window
        Getting The Contents Of An Editor Window
        Creating A New Table Window
        Getting The Values In a Table
        Determining Which Cells Are Selected In A Table
        Changing The Value In Cells Of A Table
        Creating A New Dialog Window
        Determining The Size Of The Screen In Pixels
        Determining The Current Size Of The O-Matrix Main Window
        Getting and Setting a Window's Geometry
         Creating and Using Controls In a Dialog Window
        Creating and Using Controls In a Dialog Window
            Using Push Buttons In A Dialog Window
            Using Text Labels In A Dialog Window
            Using Text Input Fields In A Dialog Window
            Using Radio Buttons In A Dialog Window
            Using A Check Box In A Dialog Window
            Using A Multi-Selection List In A Dialog Window
            Using A List Box In A Dialog Window
            Using A Popup Menu In A Dialog Window
            Using A Slider In A Dialog Window
            Using A Bit Map In A Dialog Window

        Deleting A Window
        Iconifying A Window
        Determining If A Window Is Iconified
        Hiding A Window Or Disabling A Control
        Normalizing A Window Or Enabling A Control
        Setting the O-Matrix Application Caption
         Graphical User Interface Size Parameters
        Graphical User Interface Size Parameters
            Determining The Size of Text In a Dialog Window
            Determining the Size of a Dialog's Border
            Determining Width of Window Controls on Caption Bar
            Determine the Extra Space Needed for a Text Field
            Determine the Extra Space Needed for a Popup Menu
            Determine the Extra Width Needed for Radio Buttons

     Other Advanced Functions
    Other Advanced Functions
        Vector And Matrix Norms
        Source Code Search Path
        Determine if an Identifier is Defined in Current Environment
        Listing Variables Defined in The Current Environment
        Using the Standard O-Matrix Error Dialog
        Trapping O-Matrix Errors Under Program Control
        Invoking Help From Within An O-Matrix Program
        Loading and Saving Work Space
        Garbage Collection of System Allocated Memory
        Evaluating a Character Matrix
        Delayed Execution of Commands in a Matrix
        Including A File During Program Execution
        Converting Values To Ascii Using C Language Formatting
        Setting Response Time During Execution
        Running All the Files in a Directory
        Print the Differences Between Ascii Files
        Comparing And Updating Source Files

     O-Matrix Code Debugger
    O-Matrix Code Debugger
        Quitting Execution From Within The Debugger
        Listing Included Files
        Listing Active Variables in The Current Environment
        Exiting The Debugger And Continuing Execution
        Deleting All Break and Watch Points
        Setting And Listing Debugger Break Points
        Skipping Breakpoints
        Deleting Breakpoints
        Setting Debugger Listing and Environment File
        Displaying The Environment Call Stack
        Setting The Current Debugger Environment
        Changing Output Format From Within the Debugger
        Creating Global Variables From Temporary Ones
        Listing Lines In The Current Debugger File
        Stepping Over Function Calls
        Determining What Files Are Open
        Print Values Inside the Debugger
        Clearing the Debugger Window
        Stepping Into Function Calls
        Line By Line Tracing Of Execution
        Listing The User Defined Functions
        Creating And Listing Watch Points
        Listing And Deleting Watch Points
        Determine What An Identifier Refers To

     Linking With Other Languages, Programs and COM Components
    Linking With Other Languages, Programs and COM Components
         Using O-Matrix as a COM Automation Client
        Using O-Matrix as a COM Automation Client
            Creating a Connection to a COM/Automation Server
            Releasing a COM/Automation Server Connection
            Setting a COM object
            Releasing a COM object
            Setting a Property in the Current COM object
            Getting a Property of the Current COM object
            Invoking a COM Server Method
            Setting Variable as Variant
            Saving a COM Server Dispatch Pointer
            Setting the IDispatch Pointer of a COM Object
            Displaying the Status of a COM connection

         The O-Matrix COM Server
        The O-Matrix COM Server
            Starting O-Matrix
            Create a Connection with an O-Matrix Server
            Evaluating an O-Matrix Expression
            Transfer a Data Array to O-Matrix
            Loading Data from the COM Server to an O-Matrix Variable
            Transferring Variant Data to O-Matrix
            Determine the Number of Columns of a Transferred Matrix
            Determine the Number of Rows of a Transferred Matrix
            Transfer O-Matrix Variables to the COM Server
            Transfer Data to an O-Matrix COM Server Client
            Transfer Data to an O-Matrix COM Server Client
            Determining if O-Matrix is Busy
            Setting the O-Matrix Server Timeout Period
            Terminating a Connection with an O-Matrix Server
            Status Values Returned from the O-Matrix COM Server Functions

         Creating O-Matrix DLL Functions
        Creating O-Matrix DLL Functions
            Linking A Compiled Function
            Writing An O-Matrix DLL Function in C++
            C Structure That Defines A Matrix
            A DLL That Computes The Maximum Of Each Column
            A DLL That Computes The Maximum Of Each Row

        Transferring Data To The System Clipboard
        Transferring Data From The System Clipboard
        Using DDE to Communicate with other Programs
         Creating an OMDDE Client
        Creating an OMDDE Client
            Number of Bytes Per Matrix Element
            Initializing and Terminating OMDDE Communication
            Connecting an OMDDE Client To a Server
            Disconnecting an OMDDE Client From a Server
            Transferring Commands From OMDDE Client to Server
            Transferring Data From OMDDE Client to Server
            Getting Data Sent to an OMDDE Client

         Creating an OMDDE Server
        Creating an OMDDE Server
            Windows Main Program for Server Examples
            Setting the Name of an OMDDE Server
            Receiving Commands From an OMDDE Client
            Outputting Data From an OMDDE Server
            Getting Data Sent to an OMDDE Server

    The O-Matrix Development Kit
     Appendix
    Appendix
        AUTOEXEC.OMS - Automatically Executed Commands and Defined Constants
        Using Multiple CPUs
        ASCII CHART
        Reports On Allocated Memory Usage
        Short Hand For Functions With String Arguments
        Alphabetic Listing Of Keywords
        Tokens That Are Not Keywords Or Intrinsic Functions
        Formal Syntax
        The O-Matrix Virtual Machine
        Creating an O-Matrix Binary Pcode Distribution
        The O-Matrix Virtual Machine Application Launcher
        The O-Matrix License File
        Comparison of O-Matrix and Matlab Functions
        O-Matrix Development Kit License
         O-Matrix Light
        O-Matrix Light
            Introduction to O-Matrix Light
             O-Matrix Light Restrictions
            O-Matrix Light Restrictions
                Executing Large Programs Using O-Matrix Light

            O-Matrix Light Version License

     Mlmode: MATLAB® Compatibility
    Mlmode: MATLAB® Compatibility
        Switching Between Mlmode And O-Matrix Mode
         Differences Between The Mlmode and O-Matrix Languages
        Differences Between The Mlmode and O-Matrix Languages
            Assignment Statements (Mlmode)
            Multiple Statements in Same Line
            Different Syntax with Same Meaning in Mlmode and O-Matrix Mode
            If Statement (Mlmode)
            For Statement (Mlmode)
            While Statement (Mlmode)
            The Colon Operator (Mlmode)
            Precision of Input Numeric Values (Mlmode)
            Building Matrices (Mlmode)
            Binary Operators and Character Matrices (Mlmode)
            Single Quote Character (Mlmode)
            The Right Matrix Divide Operator (Mlmode)
            Logical Operators (Mlmode)
            Numeric Operators (Mlmode)
            Complex Operations only using Real Part (Mlmode)
            Using a Matrix as an Index (Mlmode)
            Logical Indices (Mlmode)
            Automatic Growing of Matrices on Assignment (Mlmode)

        Script Files (Mlmode)
        User Defined Functions (Mlmode)
        Automatically Executed Command File (Mlmode)
        Keywords (Mlmode)
         Intrinsic Functions (Mlmode)
        Intrinsic Functions (Mlmode)
            Converting to a Character Matrix (Mlmode)
            Checking If Two Character Matrices are Equal (Mlmode)
            Creating a Matrix of Ones (Mlmode)
            Creating a Matrix of Zeros (Mlmode)
            Determining the Maximum Dimension (Mlmode)
            Square Root of Minus One (Mlmode)
            Plus Infinity (Mlmode)
            Some Predefined Constants (Mlmode)
            Obtaining a Copy of the Identity Matrix (Mlmode)
            Determine if an Identifier is Defined (Mlmode)
            Double Precision Machine Epsilon (Mlmode)
            Numeric Value for Date and Time (Mlmode)
            Compute Type and Size Limitations
            Getting And Setting The Current Working Directory (Mlmode)
            Determining The Date (Mlmode)
            Maximum of a Set of Elements (Mlmode)
            Minimum of a Set of Elements (Mlmode)

         M-File Functions (Mlmode)
        M-File Functions (Mlmode)
            Computing The Mean (Mlmode)
            Computing The Standard Deviation (Mlmode)
            Legendre's Complete Elliptic Integrals (Mlmode)
            Displaying A Value (Mlmode)
            Displaying A Warning (Mlmode)
            Left Justify a Sequence of Strings in a Single Matrix (Mlmode)
            Converting to Integer Ascii Representation (Mlmode)
            Contour Plots (Mlmode)
            Mesh Plots (Mlmode)
            Combined Mesh and Contour Plots (Mlmode)
            Surface Plots (Mlmode)
            Combined Surface and Contour Plots (Mlmode)
            X and Y Grids for Contour and Mesh Plots (Mlmode)
            Elapsed Time Corresponding to Clock Values (Mlmode)
            Determines Which Elements are Finite (Mlmode)
            Returns a Non-Sparse Version of a Matrix (Mlmode)
            Does This Computer Support IEEE Arithmetic (Mlmode)
            Returns True for Unix Systems (Mlmode)
            Is a Matrix Sparse (Mlmode)
            Is a Matrix of Type Character (Mlmode)

        O-Matrix Routine For Missing Mlmode Functions
        Differences Between MATLAB® and Mlmode Languages

    Glossary
    Alphabetic Listing of Cross Reference Tags
    Keyword Index
    Search O-Matrix Manual