v2.1.3 May 2026
OpenPulse is a software written in Python for numerical modelling of low-frequency acoustically induced vibration in gas pipeline systems. It allows to create or/and import the geometry of the pipe system, insert materials properties, set standardized or customized sections, and import pressure/acceleration/force loads (from measurements or theory). OpenPulse performs an acoustic time-harmonic response analysis of the respective 1D acoustic domain using the Finite Element Transfer Matrix Method (FETM). The resulting pressure field is applied as a distributed load over the respective structural piping system, modeled with the Timoshenko beam theory and the Finite Element Method (FEM), in order to run a structural time-harmonic response analysis. In addition to simply boundary conditions as constraints on displacements, OpenPulse allows to insert lumped springs, masses and dampers along the domain.
After defining the FEM mesh for the model, you can plot the piping system geometry and run simulations such as modal analysis and harmonic analysis. It is possible to plot deformed shapes, frequency plots of acoustical and structural responses, stress fields and local stresses of desired sections.
What's new?
- New geometry interface adjustments: the user can draw geometry following the conventions of popular piping software.
- Adjustments and validation of the reciprocating compressor model.
- New reciprocating pump model for applications with liquids such as oil, fuels, and water.
- New interface and visualization tools (enhanced symbols for boundary condition, excitation, etc).
- Project file management improvements: structural and acoustic results can now be saved and retrieved.
- Enhanced animation of results (real and imaginary parts, phase monitoring, etc).
- Beam theory validity check assistant.
- Adjustments and validation of the pulsation suppression device editor.
- Install OpenPulse for Windows and Linux downloading the executables here.
-
Install Python 3.9.0 or later (download).
-
Install OpenPulse. Clone or download OpenPulse files. In the case of download, unzip the received file and open a terminal in the main folder (preferably, use PowerShell as administrator). Start by installing the uv module using the command:
pip install uv
then enter the following command to install all dependencies:
uv sync
Note: if some warning was logged repeat the command 'uv sync' before trying to run OpenPulse.
- Run OpenPulse. In the same folder, enter the following command in the terminal:
uv run pulse
Download and install the conda-forge (conda-forge). It is recommended to check the option Add Miniforge3 to my PATH environment variable in the program installation setup. Once conda-forge was installed, it is possible to enable the MUMPS solver in Vibra. To enable this solver we need to use conda instead of poetry. To generate the conda environment, just run:
conda env create -f environment.yml
If you are using Windows, the following commands will only work on cmd, and not on powershell.
To make this work propperly on powershell too, you need to run
conda init powershell
And then restart the powershell window.
After environment generation, we can activate and run Vibra by running the following commands:
conda activate pulse
Finally, enter the following command to execute the application:
python -m pulse
If some package changed since the generation, the environment can be updated using the following command:
conda env update --f environment.yml --prune
First you need to install InnoSetup with the following command:
winget install -e --id JRSoftware.InnoSetup
You may also need to add it to your Windows path.
Then, run the following commands (these may take a while):
poetry run pyinstaller pulse.spec --noconfirm
ISCC.exe /O"dist" /F"open-pulse-setup-x64" "pulse.iss"
Your installer will appear inside the dist folder, named as open-pulse-setup-x64.
-
You can read the API reference here.
-
Theory Reference for 1D Acoustics, Structural Vibration of Timoshenko Beams using FEM, Weak Fluid-Structure-Coupling FETM-FEM, Solution Types (May, 15th 21), Matrix Assembly Technique using Python and Stress Stiffening (Prestress).
-
Project page on Researchgate.
-
[Português] Demonstração rápida: MOPT YouTube.
OpenSD 2025 - The 2nd Open-source Scientific Computing in Structural Dynamics Conference and Summer School
- Internoise 2025, 24 - 27 August, São Paulo, Brazil.
If you have any questions you can open a new issue with the label 'question'.
The authors are members of MOPT - Multidisciplinary Optimization Group, from Federal University of Santa Catarina (Florianópolis, SC, Brazil).
- Olavo M. Silva - Engineer;
- Jacson G. Vargas - Engineer;
- Andre F. Fernandes - Computer Scientist;
- Rodrigo Schwartz - Computer Scientist;
- Diego M. Tuozzo - Engineer (Former Member);
- Lucas V. Q. Kulakauskas - Engineer (Former Member);
- Ana P. Rocha - Engineer (Former Member);
- José L. Souza - Computer Scientist (Former Member);
- Danilo Espindola - Interface with other softwares;
- Vitor Slongo - Mesh and Geometry Specialist;
- Gildean Almeida - Validation;
- Fabrício Cruz - Validation (Former Member);
- Gustavo C. Martins - Engineer;
- Vinicius H. Ribeiro - Computer Scientist;
- Guilherme Pierri - Computer Scientist;
- Taiana Barbosa Farias - Front-end.
**






