Announcing Wolfram SystemModeler

Today I’m excited to be able to announce that our company is moving into yet another new area: large-scale system modeling. Last year, I wrote about our plans to initiate a new generation of large-scale system modeling. Now we are taking a major step in that direction with the release of Wolfram SystemModeler.

SystemModeler is a very general environment that handles modeling of systems with mechanical, electrical, thermal, chemical, biological, and other components, as well as combinations of different types of components. It’s based—like Mathematica—on the very general idea of representing everything in symbolic form.

In SystemModeler, a system is built from a hierarchy of connected components—often assembled interactively using SystemModeler‘s drag-and-drop interface. Internally, what SystemModeler does is to derive from its symbolic system description a large collection of differential-algebraic and other equations and event specifications—which it then solves using powerful built-in hybrid symbolic-numeric methods. The result of this is a fully computable representation of the system—that mirrors what an actual physical version of the system would do, but allows instant visualization, simulation, analysis, or whatever.

Here’s an example of SystemModeler in action—with a 2,685-equation dynamic model of an airplane being used to analyze the control loop for continuous descent landings:

Continuous descent landings for an aircraft shown in Wolfram SystemModeler

There’s a long and tangled history of products that do various kinds of system modeling. The exciting thing about SystemModeler is that from its very foundations, it takes a new approach that dramatically unifies and generalizes what’s possible. In the past, products tended either to be specific to a particular application domain (like electric circuits or hydraulics), or were based on rigid low-level component models such as procedural blocks.

What SystemModeler does is to use a fully symbolic representation of everything, which immediately allows both arbitrary domains to be covered, and much more flexible models for components to be used. In the past, little could have been done with such a general representation. But the major breakthrough is that by using a new generation of hybrid symbolic-numeric methods, SystemModeler is capable of successfully solving for the behavior of even very large-scale such systems.

When one starts SystemModeler, there’s immediately a library of thousands of standard components—sensors, actuators, gears, resistors, joints, heaters, and so on. And one of the key features of SystemModeler is that it uses the new standard Modelica language for system specifications—so one can immediately make use of model libraries from component manufacturers and others.

Libraries

SystemModeler is set up to automate many kinds of system modeling work. Once one’s got a system specified, SystemModeler can simulate any aspect of the behavior of the system, producing visualizations and 3D animations. It can also synthesize a report in the form of an interactive website—or generate a computable model of the system as a standalone executable.

These capabilities alone would make SystemModeler an extremely useful and important new product, for a whole range of industries from aerospace to automotive, marine, consumer, manufacturing, and beyond.

But there’s more. Remember that we have Mathematica too. And SystemModeler integrates directly with Mathematica—bringing in our whole 25-year Mathematica technology stack.

This makes possible many spectacular things. Just like Mathematica can operate on data or images or programs, so now it can also operate on computable models from SystemModeler. This means that it takes just a line or two of Mathematica code to do a parameter sweep, or a sensitivity analysis, or a sophisticated optimization on a model from SystemModeler.

And one gets all of the interface features of Mathematica—being able to do visualizations, instantly introduce interactive controls, or produce computable CDF documents as reports.

But even more than this, one gets to use all of the algorithms and analysis capabilities of Mathematica. So it becomes straightforward to take a model, and do statistical analysis on it, build a control system for it, or export results in any of the formats Mathematica supports.

When one builds models, it’s often important to bring in real-world data, say material properties or real-time weather or cost information. And through its direct link to Wolfram|Alpha—as well as its custom data import capabilities—Mathematica can supply these to SystemModeler.

To me, it’s very satisfying seeing all these parts of our technology portfolio working together. And this is just the beginning. As I discussed in my post last year, it’s going to be possible to integrate system modeling not only with Mathematica, but also at a deep level with Wolfram|Alpha and such things as our mobile apps.

But today, it’s exciting to me to launch Wolfram SystemModeler as a major new direction for our company. Mathematica allows us to represent a vast range of formal and algorithmic systems; SystemModeler extends our reach to large-scale practical engineering and other systems. We already know some of the important things that this will make possible. But I’m sure there will be many wonderful surprises to come in the years ahead, as we gradually realize just what the power of symbolic systems modeling really is.

Wolfram SystemModeler examples

(See the Wolfram SystemModeler website for more information—or check out our new courses about system modeling.)

Posted in: New Technology

19 comments

  1. SICK!

  2. Would it be possible to engineer new vocal cords for me with SystemModeler, because I’ve just lost the ability to talk. Simply stunned…

  3. Impressive. Maybe now someone can go build a time-machine.

  4. Hi,

    I have been working on Simulation Tool/Softwares like ProModel, Simul8 and Witness from past 4 years. Your software seems quite similar by what you have posted. Does it work the same way round? Can I get a trial version of your software?

    -Amar

  5. Great Product !!! I hope you will make available a hobbyist version of Mathematica+System Modeller soon for under $500 so that I could trade an IPad for this as a Christmas Present. Now, it is simply out of reach for a vast majority of us 🙁

  6. As a long time user of Mathematica (since version 2) I would be delighted to try SystemModeler. It surely looks exciting.

  7. Looks impressive. Will users have the ability to export their models to C code so they can integrate with hardware-in-the-loop systems like NI VeriStand or a dSpace system? Also, if I develop my controller code in SystemModeler will I be able to export it to C code for implementation on an embedded computing device (e.g. micro-controller)?

  8. Software such as this is very powerful and essential to all. We need to build a free open source version of this for common people.

  9. It’s amazing,great product! I really enjoy it!

  10. I expect, that this will create a revolution for technical inventors, but also push forward our understanding of biological systems.

    What will be needed are excellent tutorials, so that one can master step by step the full potential of it.

    I hope, that all students will get access to it.

    Claus Martin

  11. I think your production is fantastic,It can be very helpful for understanding the behavior of many systems.
    Thank you.

  12. Does your library support Bond graph modelling?

  13. Its more oriented engineering studies. Whether it can be used to do scientific works like designing of molecules , structuture solving, finding the density of states…

  14. Is it can be used for modelling of civil engineering structures such as Bridges or Buldings?

  15. If I only knew how to define the problems I have, I could solve them! Remember problem definition is the most difficult part of solving problems. Next one must plan a solution in accordance with the proper physical principles. Assumptions are made along the way and then Voila, we are ready for the System Modeler. Next we must verify our assumptions and if any are wrong we must alter the plan of solution and loop through the process until every thing checks out.

  16. Nice – can I play with the simulations in an artificial world? Like second life or any first person shooter? Take a look at how people have created ‘computational geometry’ (calculators!) in World of Minecraft. Computational redstone…

    I would like to use cellular automata to construct things in space/on mars/moon/asteroid, based on models. The ca’s can be realised by tonka trucks, or lego, that are time shared to folks back on earth. I think a lot of kids (big and small) would love to actually create a habitat on mars, by playing a game. A social game…

    The whole idea is to retire to something like a canadian shopping mall meets the burj in 1/3 of a gravity on mars.

    Could be done very quickly too.

    Talk about computational geometry eh?

  17. Would it be possible to model the Antikythera mechanism? At my ripe old age [79] I feel I´m not able to, but a young enthusiast just might….ndenboschbob@

  18. I can’t belviee I’ve been going for years without knowing that.