Skip to content

kopsha/fbg-simulation-pyqt

Repository files navigation

FBG-Simulation-PyQt

FBG Simulation PyQt is an open-source project that builds upon the previous work of Gilmar Pereira's project FBG_SiMul and Benjamin Frey's project FBG-SimPlus.

Our goal is to provide a clean sample implementation of a Qt application that can be used in any simulations projects. It proves how to effectively decouple simulation code from GUI which is really tough to manage without years of experience in developing Qt or GUI.

And hopefully allows scientist and researchers to write richer simulation without the hassle of writing a stable and clean GUI application.

This project is released under BSD 3, and we adhere to the licensing and attribution requirements of the original projects that we have adapted.

Features

  • Easy-to-use interface for managing simulations
  • Decoupled implementation of FBG simulation (fully tested with pytest)
  • [WIP, will add more]

Getting Started

Prerequisites

The python application is built with PySide6 and uses pytest for all its unit tests.

Installation

Considering that you have Python already installed, you can install all required packages with just one command:

pip install -r requirements.txt

Then, you need to compile the translated messages by running the shell script

./compile-messages.sh

And you're good to go.

Usage

To start the application simply run the main.py and load the provided sample.txt datafile.

Application design diagram

The implementation of this application has completely decoupled GUI classes from the simulator. The simulation code is pure python code and can be further integrated in any kind of other applications (be it GUI or computing centric)

FBG Simulator diagram

Acknowledgments and Licensing

This project is built upon, and adapted from, the following open source projects:

Please make sure to review the licenses of these projects to understand their terms and conditions. Our project adheres to these licenses and provides proper attribution to the original authors.

Citation: If you choose to use elements of this application in your own work, please cite the following paper:

Frey, B., Snyder, P., Ziock, K., & Passian, A. (2021). "Semicomputational calculation of Bragg shift in stratified materials". Physical Review E, 104(5), 055307.

License

This project is licensed under the BSD-3 license. Please read the LICENSE file for full details.

About

This application is a fiber Bragg grating (FBG) simulation tool for Finite Element Method (FEM) models, implemented in Python, using PyQt and numpy.

Topics

Resources

License

Stars

Watchers

Forks