MathModelica Professional
"Modeling and simulation are becoming more important on a yearly basis. MathModelica Professional is a very important tool here."
Roger Germundsson, Wolfram Research Inc.
Modeling, simulation, analysis, and documentation
Put your planning time and energy where it is most effective. Using MathModelica Professional you will have the tool you need to make the most out of your model-based design. Thanks to the object-oriented component-based approach of MathModelica, it is easy to divide models into sub-components and systems with the same topology as the actual physical system.
With its versatility, MathModelica Professional is suitable for modeling and simulation projects in industry as well as academia. Together with Mathematica it offers unparalleled analysis capabilities, including pre and post processing of models, simulations, and results.
Basic user examples
The following examples illustrate basic usage of MathModelica Professional.
- Hello World
The most basic Modelica model is a differential equation. In this example a differential equation is implemented and simulated. Also, the process of creating an icon representing the model graphically is described in detail. - Multi-engineering - a servo mechanism
This example shows how to develop a servo mechanism model step-by-step in MathModelica. It illustrates the multi-engineering capabilities and shows how you can use Simulation Center to analyze models created in System Designer, synthesize controllers, and carry out comparison studies. - Component based - simple curcuit
Block-based modeling is well suited for problems that have a well defined causality, i.e., direction of flow. An example of these types of signal-based systems is a control system. However in most cases the causality is not pre-defined, for instance a motor could also be used as a generator depending on whether or not the input signal is the current or torque. Another basic example is the AC circuit below.
In this example the circuit above will be used to illustrate the difference between a block-based approach and a component-based approach to model the circuit.
- External Functions - chirp signal
While it is easy to write Modelica functions, it is sometimes convenient to call a subroutine written in C or FORTAN. This example shows how to use an external function written in C. - Tank System
This example illustrates how you can build a hierarchical model using System Designer as well as make new libraries. A flat-tank model is first developed, followed by a similar component-based tank model. We then see the flexibility that this gives us to test new scenarios.
The following examples are pdf versions of Mathematica notebooks and illustrate what you can achieve by combining MathModelica with Mathematica.
- Hello World
The most basic Modelica model is a differential equation. In this example we implement and simulate a differential equation within the Mathematica notebook environment. - Electric Circuit
This notebook illustrates how a model of an electric circuit may be developed directly in a Mathematica notebook. - Frequency Analysis
This notebook is an example of how Mathematica can be utilized for frequency analysis. First we will define a Modelica model of a weak axis, then we will develop a simple Mathematica program to perform fourier analysis. - Optimization Sample
This notebook is an example of how the powerful scripting language of Mathematica can be utilized to solve non-trivial optimization problems that contain dynamic simulations. Using MathModelica System Designer Professional scripting we will find a damping for a translational spring-damper such that the step response is as "close" as possible to the step response from a first order system.
