
Complete Text of December 2003 Orange Bytes OMatrix has an integrated user environment for matrix math modeling and analysis, including a programming debugger. The OMatrix language is specifically designed to process very large matrices. It facilitates rapid array processing. Most OMatrix functions are designed to operate at a factor of four or more faster than hand coded C++ code as well as other dedicated matrix analysis programs. On the website at http://www.sciencesoft.co.jp/Software/OMATRIX/bench.html a Japanese company named Sciencesoft presents their evaluation of OMatrix against Matlab, another popular matrix manipulation program. The results were as follows: Beyond being faster, OMatrix has an even more significant feature. It can run Matlab programs as well as its own OMatrix unique programs. Only minor code changes are necessary to achieve Matlab program results using OMatrix. Either of the two program modes, OMatrix or Matlab, can be selected by the user. In addition to Matlab, OMatrix has interface programs for transferring and receiving data from Mathematica and Microsoft Excel, two other high performance mathematical analysis programs. OMatrix consists of three windows that can be tiled or cascaded on the screen: The windows are: Command, Debugger, and Graphic. A command bar across the top of the screen permits immediate execution of commands. All numerical results appear in the Command window while related graphics appearing in the Graphics window and mistakes in the Debugger window. Blank editing sheets can also be selected for entering lines of code which can be edited, spell checked, etc., and executed. The rudiments of the OMatrix programming language are reminiscent of the Basic language. But OMatrix includes numerous matrix dedicated operations such as determinant calculation, as well as matrix inversion, transposition, multiplication, division, addition, subtraction, exponentiation. Even fast Fourier transformations of complex number arrays are provided for. Additional functions involve linear algebra, curve fitting, numerical derivatives, and userdefined functions. Two OMatrix unique programming concepts are "coercion" and "block". Coercion refers to the upward conversion of all complex, real, double sized real, and integer numbers in an equation to a common numerical format before any mathematics operations are conducted. “Block” allows forming multiline code sequences within the two terms “begin” and ”end” in such as FOR or IF statements. Eight categories of functions exist: algebraic; transcendental; matrix types; special and sparse matrices; text conversion; searching and sorting; and conditional testing. There are over 240 dedicated functions covering math, filing, plotting, etc. The OMatrix program is especially useful for Kalman filter analysis including both linear and nonlinear type filters. Rapid Kalman filter design and analysis is facilitated with a unique dedicated Graphical User Interface, making the work much simplified with little or no code programming required. OMatrix is equally applicable for the design and analysis of digital filters including Butterworth and Chebyshev designs. It can be used for time series analysis, Monte Carlo simulation, equation optimization, numerical differentiation and integration, as well as data interpolation and smoothing. There are a number of dedicated addons for OMatrix such as: a Signal Processing Toolbox; a Data Access Toolbox; ELink for Excel; Mathlink for interfacing with Mathematica, a Kalman Filter Design Studio; and a standalone Equity Analysis System. Interfacing with ODBC programs using SQL is also possible. A Developer’s Kit for royalty free standalone OMatrix programs is available as well. Unfortunately, there is no printed user manual to clarify program peculiar quirks or to show function examples for beginning users. Likewise, no third party books on OMatrix seem to be readily available. However, an OMatrix newsgroup has just been initiated on Yahoo at http://groups.yahoo.com/group/omatrix/. OMatrix currently is in use by over 125 universities and medical schools in nations ranging from the Czech Republic to Japan. Likewise, almost fifty companies are using OMatrix, including my old employer, Boeing. The companies include the fields of aerospace, electronics, heavy machinery, chemicals, forest products, insurance, and government. Price alone should be a very strong argument in favor of OMatrix. Competitive programs such as Matlab ($1,900), Maple ($1,795) and Mathematica ($1,880) are many hundreds of dollars more in price. OMatrix is normally sold at $265, but recently was offered at just $85. Commercial site licenses are available as well as special prices for academic use. For a reasonably priced matrix analysis program OMatrix is certainly the top choice. I would recommend it for not just practicing scientists, engineers, and mathematicians, but also college students in the same fields. The Kalman filter GUI should be especially helpful in designing inertial guidance systems for vehicles of all types. An OMatrix Light version is available at http://www.omatrix.com. On the website go to “Products” and “Free OMatrix Trial” for a free thirtyday copy of OMatrix Light that includes examples of the application of OMatrix. The evaluation of OMatrix was conducted with a 2.5 GHz CPU PC having 512 MBs Ram, a 40 GB Hard disk, and a cable Internet modem.

Company  Products  Showcase  Support  Ordering 
Copyright© 19942009 Harmonic Software Inc.  All rights reserved. 