VisSim/MATLAB Integration

VisSim offers several easy-to-use features for integrating MATLAB files, variables or functions within the VisSim simulation environment.

  • MATLAB File Import: Standard VisSim transferFunction and stateSpace blocks can be easily configured to import MATLAB .m or .MAT files that represent SISO (single-input single-output) transfer functions and/or MIMO (multi-input multi-output) state-space representations.
  • MatlabRead and MatlabWrite blocks: VisSim includes MatlabRead and MatlabWrite blocks that enable variables to be dynamically exchanged between MATLAB and VisSim.
  • Matlab Expression Block: VisSim also includes a MATLAB Expression Block that enables MATLAB scripts to be edited and executed directly from the VisSim environment.

Importing MATLAB System Designs
System designs developed in the MATLAB environment, comprising one or more SISO (single-input single-output) transfer functions and/or MIMO (multi-input multi-output) state-space representations can be easily incorporated into VisSim. The system specifications can be continuous or discrete and can be imported into VisSim using the transferFunction and/or the stateSpace blocks in VisSim. Either of these blocks can be configured to read a .m or a .MAT file specification of the system design, and use that design automatically in VisSim. There is no loss of performance because the file is read only once, at the start of the simulation.


For example, a standard way of designing control systems for complex nonlinear systems involves the Piece-wise Linear design approach, where the system is linearized about several user-defined operating zones. Once the operating zones are defined, a different linear control system is then designed for use in each operating zone. As an example, a design with six operating zones can be imported into VisSim using six blocks as described above; the blocks would then be connected to standard VisSim boolean blocks to specify which controller is active at any given time.
CAUTION: The MATLAB .m or .MAT file in this case must only be a linear system specification. It cannot be an arbitrary MATLAB function or statement.

Exchanging Variables with MatlabRead and MatlabWrite blocks
Using MatlabRead and MatlabWrite blocks, any variable defined in the MATLAB environment can be accessed interactively from within a VisSim simulation, and vice versa. When started, VisSim automatically invokes MATLAB and accesses any MATLAB variables used in a VisSim model. Typical examples of variables initialized in MATLAB would be control system coefficients or other system parameters. Examples of variables exported from VisSim into MATLAB would be simulation results for visualization or other post processing in MATLAB. Additionally users may run script files in MATLAB to initialize VisSim system simulation parameters and start/stop VisSim from the MATLAB command line. This would be especially useful to automate and perform large Monte Carlo simulations

Interactive MATLAB scripting with the MATLAB Expression Block
The Matlab Expression Block (see above) enables users to edit and run MATLAB scripts directly from the VisSim environment. This eliminates the need to switch back and forth between the two applications when developing or running an interactive VisSim-MATLAB co-simulation.
Examples of MATLAB expressions scripted in the MATLAB expression block include the computation of the eigenvalues of a system matrix or computing the optimal control coefficients of a linear quadratic regulator (LQR).

The Next Steps

What do our Customers say about us?

At 13-years old, my daughter’s research manuscript has been accepted for publication in a top tier peer-reviewed Environmental Science journal and OriginPro 8.6 will allow her to export the graphs in a wide variety of formats which can meet any publisher’s requirements. Kudos to OriginLab for designing innovative and intuitive software that can span the needs of both a burgeoning young scientist like my daughter to a PhD expert in their field. It is hard to imagine that other products offer this extraordinary level of user versatility.

Michael Grimmett, MD, FACP, FACS Ophthalmologist Palm Beach Gardens, Florida

Thanks again for your help. EndNote is a great product and I am constantly telling students, colleagues and friends about it.

JS, Dundee, UK

Your technicians are always really friendly, reassuring and helpful.

HM, Cambs, UK

This level of customer support will increase my likelihood to stay with Endnote and recommend it to colleagues. Actually outstanding on comparison to other site.


For the time being we are unable to offer the following product ranges although we are currently working hard to increase the number of products we can offer in the future. Please contact us to talk about alternative products that we may be able to offer you.