Welcome to MVSTUDIUM Group site!

Our research group develops software tools of mathematical modeling, in close collaboration with scientists from Distributed Computing and Networking Department of the Saint-Petersburg State Polytechnic University Technical Cybernetics School.

Rand Model Designer (which is a newer version of academic product MvStudium) is a simulation modeling tool that allows the user to create and experiment with models of complex dynamic systems.



Brief summary of RMD:

RMD is a high-performance environment for the development of component models of complex dynamical systems. RMD uses an intuitive, object-oriented high-level modeling language, based on the object paradigm of UML, allowing quick and efficient creation of complex models. RMD allows to develop continuous, discrete and hybrid (continuous-discrete) models and conduct the interactive computational experiments with them.

Main areas of application of RMD are:
conducting scientific computational experiments;
designing the technical systems;
carrying out a strategic audit and risk analysis;
modeling of economic systems;
education;
development of mathematical models of physical systems and processes with the subsequent embedding them into external software applications;
creating computer simulators.

RMD allows quick developing the continuous, discrete and hybrid (continuous-discrete) models. Input language makes no demands for knowledge in programming: it uses an intuitive common form to describe mathematical dependences and visual diagrams to describe the structure and qualitative changes in the behavior of the simulated system.
Continuous behavior of systems is described by differential-algebraic equations of the first and second order (scalar or matrix) in any form (including unresolved with respect to derivatives). Equations are specified in a natural mathematical representation (as in MathCad). To describe the discrete and hybrid behavior RMD uses visual behavior charts, which are an extension of UML state diagrams. Discrete actions are specified by means of simple algorithmic language, that uses well-known basic elements of traditional algorithmic languages.
The program code of executable model is automatically generated based on a mathematical model and then compiled, which leads to high performance in conducting computational experiments. The automatic building of the aggregate system of equations takes into account its structure, reduces the dimension and part of the equations is solved symbolically, which together with applying the special numerical methods makes it possible to work with large systems of equations (thousands of differential-algebraic equations) including in real-time.
RMD provides powerful tools for debugging and demonstrating the results of experiments, two-dimensional and three-dimensional animation. The typical computational experiments are supported (receiving parametric dependencies, calculating the probability of an event, calculation of the value expectation of the variable, a global sensitivity analysis). Input language supports the possibility of an "internal" computational experiment during the functioning of the model.
Visual model can be used independently of the development environment and be utilized by the external application using a special API.

Existing competitors: MATLAB+Simulink+StateFlow+ToolBoxes, Dymola, OpenModelica, MathModelica, Ptolemy, AnyLogic.
RMD is the only universal tool to create all kinds of models of dynamic systems:
one-component continuous models;
one-component discrete event models;
one-component hybrid models;
multi-component models with continuous, discrete or hybrid components and oriented links («block models»);
multi-component model with continuous, discrete and hybrid components and undirected links («physical models»);
multi-component model with variable set of components and variable structure of links.

RMD embodies an attempt to combine the strengths of the UML and Modelica approach: maintain a "physical modeling" as proposed in the Modelica language and at the same time use object paradigm and the state machine of UML. «Payback» for this decision was the need to perform a part of the analysis of the aggregate system of equations at the runtime for each switching. But it turned out that this analysis can be performed with algorithms of «linear complexity» and industrial models created by RMD build of components with undirected connections work successfully in real time.

Please see Rand Model Designer presentation here.