NI MATRIXx Add-On Modules


MATRIXx Add-On Modules are libraries of functions, interactive wizards, prebuilt model libraries, and documentation that fully integrate into different pieces of the MATRIXx development environment. These modules are designed to decrease development time and aid in specific application areas, including signal analysis, controller synthesis, model reduction, optimization, system simulation, and targeted code generation.


There are 18 add-on modules available for the MATRIXx family of products.

SystemBuild Add-On Modules

State Transition Diagram Module

The SystemBuild State Transition Diagrams (STD) Module adds a unique editor to the SystemBuild environment for creating and editing finite state machine models. The STD editor closely resembles the SystemBuild editor and features unique menus for editing model states and transitions. With the states editor, you can interactively add bubbles to diagram, edit bubble parameters, and specify the number of Moore outputs and output descriptions. With the transitions editor, you can assign transition names, enter the number of Mealy outputs, and specify the transition activation conditions.

HyperBuild Module

The SystemBuild HyperBuild module decreases the simulation time of SystemBuild models, particularly medium to large models, with speed increases relative to the complexity of the model. The improved speed is accomplished by converting the model into highly optimized C code, with individual blocks of code representing each subsystem of the overall model. HyperBuild supports most SystemBuild features, including software constructs, algebraic loops, zero-crossing blocks, implicit blocks, resettable integrators, procedure and condition SuperBlocks, and multirate models.

RT/Fuzzy Logic Module

The SystemBuild RT/Fuzzy Module adds functionality for the development of real-time fuzzy logic applications to the SystemBuild environment. It features graphical dialog forms for specifying the number of defined rules, data, and classes; block inputs and outputs; and the choice of rule evaluation methods. The module supports both local and global classes and offers a variety of ways to define class membership curves. In addition, you can use multiple modules in chain or parallel for smaller, more efficient knowledge bases.

Neural Networks Module

The SystemBuild Neural Network Module is a flexible, interactive tool for the design, modeling, and simulation of artificial neural networks. With this tool, you can prescribe options that span the three facets of neural network design - the neuronal model, the learning (training) procedure, and the basic network architecture. Once complete, your input is processed by the module to automatically generate SystemBuild block diagrams. The resulting diagrams may be trained, simulated, and interconnected with any other block diagram to create more complex systems.

Interactive Animation Module

The SystemBuild Interactive Animation Module adds a palette of prebuilt interactive icons to the SystemBuild palette browser for developing interactive connections to SystemBuild simulations. With the icon dialog boxes, you can define text and display attributes and input and output parameters for each icon. The module includes animation icons for monitoring and controlling applications, graphical shapes, and additional animations for pumps, valves, and piping. Interactive Animation panels aid in model debugging and simplify parameter tuning during simulation.

Aerospace Libraries Module

The SystemBuild Aerospace Libraries Module offers a number of different models divided into three libraries - environment , 6DOF, and attitude geometry. Within the environmental library is an atmospheric model based on standard atmospheric tables, a spherical gravity model, and a fifth-order gravity model. The 6DOF library contains a single rigid body dynamic model that computes time history of position and attitude. The attitude geometry library contains SuperBlocks for 3D and vector manipulation, quaternion manipulation, cross-product attitude determination, and three-axis rotation.

Altia Design for SystemBuild

Altia Design for SystemBuild includes a full-featured graphics editor environment for creating custom components and building complex user interfaces for SystemBuild simulations. Use the included libraries of prebuilt components or build your own components from scratch with an intuitive editor. With Altia Design, you can manage component animation, response to stimulus, and control behavior and add special object behavior such as sound. Tight integration with the SystemBuild environment simplifies the process of connecting your Altia Design interface to your SystemBuild model.

Xmath Add-On Modules

Control Design Module

The Xmath Control Design Module takes advantage of the Xmath included system data structure by adding a library of functions for advanced control design synthesis and analysis. Synthesis functions include focus on system construction, conversion, and interaction. The module contains the added analysis functionality of classical tools such as SISO root locus calculation, Nyquist and Nichols plot computation, and modern control design tools, including a Ricatti equation and a pole place solver. Time-response computation functions and steady-state analysis tools are also included.

Robust Control Module

The Xmath Robust Control Module provides a library of advanced tools for analyzing and developing control solutions for systems with model uncertainties. The added library of functions includes a number of commands for performing robustness analysis on closed-loop systems and evaluating the performance of those systems. It also includes functions for synthesizing controllers based on the three most commonly used techniques for robust control - H∞ control synthesis, LQG (H2) control synthesis, and the loop transfer recovery method.

Optimization Module

The Xmath Optimization Module provides the ability to perform linear and nonlinear optimization on any linear, quadratic, or nonlinear Xmath or SystemBuild performance index. All values of the optimization process are user-defined, including cost, constraints, initial values and bounds, optimization and penalty parameters, and maximum and minimum iteration numbers. Optimization of linear and quadratic performance indexes features Karmarkar-style algorithms.

Model Reduction Module

The Xmath Model Reduction Module features tools for producing reduced-order, lower complexity controllers for high-order plant models. These tools are based on a number of different reduction techniques, which can be applied individually or in any combination depending on the specifications of the model. Additional utility functions are also included for computing the Hankel singular values, decomposing a system into stable and unstable parts, and performing a graphical comparison of full-order and reduced-order models.

Xμ Module

The Xmath Xμ Module includes a library of functions for designing, analyzing, and refining linear robust systems. The module begins with a library of functions that use the overloading features of Xmath to build, manipulate, and interconnect complex systems. It also includes a collection of model reduction functions to reduce high controller order -- which often results from μ-synthesis -- with little degradation in closed-loop performance. Finally, you can use controller synthesis functions, focusing on H∞ and H2 methods and refine them with a collection of D-K iteration commands.

Signal Analysis Module

The Xmath Signal Analysis Module uses the object-oriented nature of the MathScript language to help you simulate complex communication systems by chaining together series of lower-level generation functions. The library includes commands to represent function, signal, and noise generators. Analysis functions include linear and nonlinear operators, modulators, demodulators, spread spectrum, transforms, and special complex operators for efficient machine analysis and simulation. Finally, additional smart plotting utilities are added for refined signal display and analysis.

Interactive System Identification Module

The Xmath Interactive System Identification (ISID) Module provides a library of functions for identifying complex MIMO systems accessible graphically or from the Xmath command line. The ISID features many identification methodologies, including nonparametric, least squares, and recursive weighted error. Additional tools are included for state-space and polynomial model transformations and model validation. The graphical user interface of the ISID features an intuitive block chaining approach for organizing the steps of the identification process.

Interactive Control Design Module

The Xmath Interactive Control Design Module (ICDM) provides an interactive environment for synthesizing and refining controllers for SISO and MIMO systems. After loading a plant from Xmath, quickly develop a controller using PID, root locus, pole place, LQG, H∞, or multiloop synthesis techniques. You can visually evaluate controller behavior with the included plotting capabilities, analyze the robustness of one or more controllers as a result of the plant transfer function, and load the final controller directly into the Xmath environment for simulation against the original plant.

AutoCode Add-On Modules

AutoCode Fixed-Point Module for C or Ada

With the AutoCode Fixed-Point Module, you can automatically generate highly optimized C or Ada targeted specifically for fixed-point processors. Because the AutoCode extension takes advantage of the SystemBuild intrinsic fixed-point simulation capabilities, you do not have to maintain a separate fixed-point model for simulation and targeting. For C, the fixed-point arithmetic is implemented using functions and macros for fully customizable, user-accessible library files. For Ada, AutoCode takes advantage of the fixed-point types native to the Ada language.

AutoCode Multiprocessor Module for C or Ada

The AutoCode Multiprocessor Module helps you automatically generate optimized C or Ada code for use on a multiprocessor embedded system. Leveraging the hierarchical organization of SystemBuild models, you can quickly develop a multiprocessor configuration file that specifies subsystems or groups of subsystems for targeting on each processor. The result is separate source files for each processor, with all necessary communication additions included in the generated code.

Additional Resources

Visit the MATRIXx Developer's Forum
For MATRIXx product or purchasing questions, call (877) 493-2404 or email

Was this information helpful?