Graphical shell development for parallel calculations based on the OpenFOAM platform
Graphical interfaces are an essential element of human-computer interaction. They form input data for programs and visualize results. Commercial software mainly comes with built-in graphical interaction tools. At the same time, some open software solutions (the OpenFOAM platform in particular) do not have built-in interaction tools. This problem remains relevant since the existing graphical interfaces have disadvantages. This paper presents a step-by-step process of developing a graphical shell for implementing user interaction with the OpenFOAM platform, i.e for setting up numerical experiments applied to problems of continuum mechanics in the parallel execution mode. To achieve this goal, there is a defined list of tasks and necessary tools: Python 3.5 programming language, PyQt5 interface element description framework, PyCharm integrated development environment. The paper gives diagrams showing the interconnection of program modules and a program operation mechanism. The results of the application development and testing are formed by the example of a project of one of the standard tasks of continuum mechanics, which are a part of the OpenFOAM platform distribution kit. The authors provide scientific novelty of the research, in particular: serialization of numerical experiment parameters using the Python Pickle module and database tables in the SQLite format; the ability to create different versions of files with continuum mechanics task parameters; the ability to run console commands using bash scripts. They also identify the practical value of the work and future prospects.