Integration of FreeFOAM in Salome
Document typeBachelor thesis
Rights accessOpen Access
The aim of this study is to extend and adapt the CFD (Computational Fluid Dynamics) software used in advanced studies on hemodynamics at the RMEE team at UPC/EPSEM. The FOSS (Free and Open Source Software) CFD software FreeFOAM (Open Field Operation and Manipulation) is used for this purpose. FreeFOAM is a fork of the widely used OpenFOAM CFD software. It is geared towards freeing OpenFOAM from its system dependency (using Cmake), enabling it to run natively on as many operating systems as possible and improved documentation. The software concerns a a C++ toolbox for the development of customized numerical solvers, and pre-/post-processing utilities for the solution of continuum mechanics problems, including computational fluid dynamics (CFD). For CFD studies, a Graphic User Interface (GUI) program is often desired to create complex geometries. For example geometries of arteries used for hemodynamics (blood flows) studies, done at UPC/EPSEM. Though OpenFOAM/FreeFOAM is one of the most advanced CFD tools under a the FOSS GPL licence, its main drawback is the lack of a Graphic User Interface for integrated displaying pre-processing and post-processing results. In order to get the functionality of the OpenFOAM / FreeFOAM CFD software in some GUI programs, the CFD libraries will need their functionality in Python scripts. This is obtained by the creation of modules that are derived from the libraries and can be loaded in Python scripts or programs. In this study we will focus to obtain python modules from the FreeFOAM libraries. The SALOME GUI desktop, embeds a Python console allowing the user to access different SALOME functionalities via Python interfaces. PyFreeFOAM intends to define a new level of flexibility and user interaction scenario for numerical simulation software. Our aim is to use this project for the creation of a python front-end for the FreeFOAM CFD software to get its functionality in Salome.