Skip to content

FOSSEE/Chemical-Simulator-GUI

Repository files navigation

Chemical Simulator GUI

A cross-platform chemical process simulation GUI built using Python, PyQt5, and OpenModelica.

This project provides a graphical interface for creating and simulating chemical process flowsheets using unit operations and thermodynamic models.


Features

  • PyQt5-based graphical user interface
  • Flowsheet creation and editing
  • Material stream handling
  • Unit operation support
  • OpenModelica integration
  • Equation-based simulation support
  • Sequential modular simulation support
  • Undo / Redo functionality
  • CSV result generation
  • Cross-platform support (Windows + Linux)

Project Structure

Chemical-Simulator-GUI/
├── src/
│   └── main/
│       └── python/
├── requirements.txt
├── requirements-windows.txt
├── ChemicalSimulator.spec
├── README.md
└── .gitignore

Requirements

Common Requirements

  • Python 3.11
  • OpenModelica
  • pip
  • virtualenv

Python Dependencies

Install dependencies using:

pip install -r requirements.txt

OpenModelica Installation

Linux (Ubuntu/Debian)

Install OpenModelica:

sudo apt update
sudo apt install openmodelica

Verify installation:

which omc

Expected output:

/usr/bin/omc

Windows

Download and install OpenModelica from the official website:

https://openmodelica.org/download/download-windows

Default installation path:

C:\Program Files\OpenModelica1.25.4-64bit\bin\omc.exe

Linux Setup

1. Clone Repository

git clone <your-repository-url>
cd Chemical-Simulator-GUI

2. Create Virtual Environment

python3.11 -m venv env

3. Activate Environment

source env/bin/activate

4. Install Dependencies

pip install --upgrade pip setuptools wheel
pip install -r requirements.txt

5. Run Application

python src/main/python/Landing_page.py

Windows Setup

1. Clone Repository

git clone <your-repository-url>
cd Chemical-Simulator-GUI

2. Create Virtual Environment

python -m venv env

3. Activate Environment

env\Scripts\activate

4. Install Dependencies

pip install --upgrade pip setuptools wheel
pip install -r requirements.txt
pip install -r requirements-windows.txt

5. Run Application

python src/main/python/Landing_page.py

Cross-Platform Support

This project supports both:

  • Linux
  • Windows

Platform-specific functionality is handled internally using Python platform checks.


Common Issues

OpenModelica Not Found

Linux

Check:

which omc

Windows

Verify that OpenModelica is installed at:

C:\Program Files\OpenModelica1.25.4-64bit\bin\omc.exe

Missing Dependencies

Reinstall dependencies:

pip install -r requirements.txt

PyQt5 Errors

Install system dependencies on Linux:

sudo apt install python3-pyqt5

Development Notes

This project uses:

  • Python
  • PyQt5
  • OpenModelica
  • CSV-based result processing
  • Pandas for data handling

Recommended Improvements

Future improvements may include:

  • Better error handling
  • Automatic OpenModelica detection
  • Docker support
  • Executable packaging
  • Enhanced flowsheet editor
  • CI/CD integration
  • Plugin architecture
  • More unit operations

Git Ignore

Recommended .gitignore:

__pycache__/
*.pyc
env/
venv/
build/
dist/
*.csv
*.log

Contributing

Contributions are welcome.

You can contribute by:

  • Fixing bugs
  • Improving documentation
  • Adding unit operations
  • Improving Linux compatibility
  • Enhancing GUI features

License

Choose an open-source license before public release.

Recommended:

  • MIT License
  • Apache License 2.0

Project Status

Under Active Development


Acknowledgements

  • OpenModelica
  • PyQt5
  • Python Community

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors