-
A modular extension for a computer algebra system
Authors:
Migran N. Gevorkyan,
Anna V. Korolkova,
Dmitry S. Kulyabov,
Leonid A. Sevastianov
Abstract:
Computer algebra systems are complex software systems that cover a wide range of scientific and practical problems. However, the absolute coverage cannot be achieved. Often, it is required to create a user extension for an existing computer algebra system. In this case, the extensibility of the system should be taken into account. In this paper, we consider a technology for extending the SymPy com…
▽ More
Computer algebra systems are complex software systems that cover a wide range of scientific and practical problems. However, the absolute coverage cannot be achieved. Often, it is required to create a user extension for an existing computer algebra system. In this case, the extensibility of the system should be taken into account. In this paper, we consider a technology for extending the SymPy computer algebra system with a low-level module that implements a random number generator.
△ Less
Submitted 11 May, 2020;
originally announced May 2020.
-
New Features in the Second Version of the Cadabra Computer Algebra System
Authors:
D. S. Kulyabov,
A. V. Korolkova,
L. A. Sevastianov
Abstract:
In certain scientific domains, there is a need for tensor operations. To facilitate tensor computations,computer algebra systems are employed. In our research, we have been using Cadabra as the main computer algebra system for several years. Recently, an operable second version of this software was released. In this version, a number of improvements were made that can be regarded as revolutionary…
▽ More
In certain scientific domains, there is a need for tensor operations. To facilitate tensor computations,computer algebra systems are employed. In our research, we have been using Cadabra as the main computer algebra system for several years. Recently, an operable second version of this software was released. In this version, a number of improvements were made that can be regarded as revolutionary ones. The most significant improvements are the implementation of component computations and the change in the ideology of the Cadabra's software mechanism as compared to the first version. This paper provides a brief overview of the key improvements in the Cadabra system.
△ Less
Submitted 6 June, 2019;
originally announced June 2019.
-
Implementing a Method for Stochastization of One-Step Processes in a Computer Algebra System
Authors:
D. S. Kulyabov,
M. N. Gevorkyan,
A. V. Demidova,
T. R. Velieva,
A. V. Korolkova,
L. A. Sevastianov
Abstract:
When modeling such phenomena as population dynamics, controllable ows, etc., a problem arises of adapting the existing models to a phenomenon under study. For this purpose, we propose to derive new models from the rst principles by stochastization of one-step processes. Research can be represented as an iterative process that consists in obtaining a model and its further re nement. The number of s…
▽ More
When modeling such phenomena as population dynamics, controllable ows, etc., a problem arises of adapting the existing models to a phenomenon under study. For this purpose, we propose to derive new models from the rst principles by stochastization of one-step processes. Research can be represented as an iterative process that consists in obtaining a model and its further re nement. The number of such iterations can be extremely large. This work is aimed at software implementation (by means of computer algebra) of a method for stochastization of one-step processes. As a basis of the software implementation, we use the SymPy computer algebra system. Based on a developed algorithm, we derive stochastic di erential equations and their interaction schemes. The operation of the program is demonstrated on the Verhulst and Lotka-Volterra models.
△ Less
Submitted 8 May, 2018;
originally announced May 2018.
-
Approaches to Stochastic Modeling of Wind Turbines
Authors:
M. N. Gevorkyan,
A. V. Demidova,
Robert A. Sobolewski,
I. S. Zaryadov,
A. V. Korolkova,
D. S. Kulyabov,
L. A. Sevastianov
Abstract:
Background. This paper study statistical data gathered from wind turbines located on the territory of the Republic of Poland. The research is aimed to construct the stochastic model that predicts the change of wind speed with time. Purpose. The purpose of this work is to find the optimal distribution for the approximation of available statistical data on wind speed. Methods. We consider four distr…
▽ More
Background. This paper study statistical data gathered from wind turbines located on the territory of the Republic of Poland. The research is aimed to construct the stochastic model that predicts the change of wind speed with time. Purpose. The purpose of this work is to find the optimal distribution for the approximation of available statistical data on wind speed. Methods. We consider four distributions of a random variable: Log-Normal, Weibull, Gamma and Beta. In order to evaluate the parameters of distributions we use method of maximum likelihood. To assess the the results of approximation we use a quantile-quantile plot. Results. All the considered distributions properly approximate the available data. The Weibull distribution shows the best results for the extreme values of the wind speed. Conclusions. The results of the analysis are consistent with the common practice of using the Weibull distribution for wind speed modeling. In the future we plan to compare the results obtained with a much larger data set as well as to build a stochastic model of the evolution of the wind speed depending on time.
△ Less
Submitted 8 November, 2017;
originally announced November 2017.
-
The Stochastic Processes Generation in OpenModelica
Authors:
M. N. Gevorkyan,
A. V. Demidova,
A. V. Korolkova,
D. S. Kulyabov,
L. A. Sevastianov
Abstract:
Background: Component-based modeling language Modelica (OpenModelica is open source implementation) is used for the numerical simulation of complex processes of different nature represented by ODE system. However, in OpenModelica standard library there is no routines for pseudo-random numbers generation, which makes it impossible to use for stochastic modeling processes. Purpose: The goal of this…
▽ More
Background: Component-based modeling language Modelica (OpenModelica is open source implementation) is used for the numerical simulation of complex processes of different nature represented by ODE system. However, in OpenModelica standard library there is no routines for pseudo-random numbers generation, which makes it impossible to use for stochastic modeling processes. Purpose: The goal of this article is a brief overview of a number of algorithms for generation a sequence of uniformly distributed pseudo random numbers and quality assessment of the sequence given by them, as well as the ways to implement some of these algorithms in OpenModelica system. Methods: All the algorithms are implemented in C language, and the results of their work tested using open source package DieHarder. For those algorithms that do not use bit operations, we describe there realisation using OpwnModelica. The other algorithms can be called in OpenModelica as C functions Results: We have implemented and tested about nine algorithms. DieHarder testing revealed the highest quality pseudo-random number generators. Also we have reviewed libraries Noise and AdvancedNoise, who claim to be adding to the Modelica Standard Library. Conclusions: In OpenModelica system can be implemented generators of uniformly distributed pseudo-random numbers, which is the first step towards to make OpenModelica suitable for simulation of stochastic processes.
△ Less
Submitted 1 April, 2017;
originally announced April 2017.