A comprehensive GUI-based calculator for sizing separators in oil and gas operations. This open-source tool assists engineers and professionals in determining the appropriate separator sizes for various phase combinations, ensuring efficient and reliable separation processes.
- Multi-Tab Interface:
- 2-phase Vertical Sizing
- 2-phase Horizontal Sizing
- 3-phase Vertical Sizing
- 3-phase Horizontal Separator
- User-Friendly Inputs: Easily enter and modify parameters through intuitive input fields.
- Dynamic Calculations: Perform complex sizing calculations based on industry-standard formulas.
- Results Display:
- Tables: View calculated values for different diameters and configurations.
- Selected Separator Sizes: Automatically highlights the most suitable separator sizes based on predefined criteria.
- Error Handling: Robust input validation and error messages to guide users.
- Python 3.x: Ensure you have Python installed on your system. You can download it from python.org.
The application relies on the following Python libraries:
tkinter
: Standard GUI library for Python (usually comes pre-installed).ttk
: Themed widget set fortkinter
(included withtkinter
).math
: Mathematical functions (standard library).
-
Clone the Repository
git clone https://github.com/ViaAnthroposBenevolentia/GasOilSeparatorSizingCalculator.git cd GasOilSeparatorSizingCalculator
-
(Optional) Create a Virtual Environment
It's good practice to use a virtual environment to manage dependencies.
python3 -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install Dependencies
Since
tkinter
andmath
are part of the standard library, no additional installations are required. However, ensure thattkinter
is installed on your system. If not, you can install it using:-
Ubuntu/Debian
sudo apt-get install python3-tk
-
Fedora
sudo dnf install python3-tkinter
-
macOS
tkinter
comes pre-installed with Python on macOS.
-
-
Run the Application
Navigate to the project directory and execute the Python script:
python gui_calculator.py
-
Navigate Through Tabs
- 2-phase Vertical Sizing: Calculate separator sizes for two-phase vertical systems.
- 2-phase Horizontal Sizing: Calculate separator sizes for two-phase horizontal systems.
- 3-phase Vertical Sizing: Calculate separator sizes for three-phase vertical systems.
- 3-phase Horizontal Separator: Calculate separator sizes for three-phase horizontal systems.
-
Input Parameters
- Enter the required parameters in the input fields. Default values are provided based on standard examples.
- Ensure all inputs are numerical to avoid calculation errors.
-
Perform Calculations
- Click the "Calculate" button to execute the sizing calculations.
- View the results in the displayed tables and the selected separator sizes based on the criteria.
Contributions are welcome! Whether it's reporting issues, suggesting features, or submitting pull requests, your input helps improve the project.
-
Fork the Repository
-
Create a New Branch
git checkout -b feature/YourFeature
-
Commit Your Changes
git commit -m "Add your message here"
-
Push to the Branch
git push origin feature/YourFeature
-
Create a Pull Request
This project is licensed under the MIT License.
- Developed using Python's
tkinter
library. - Inspired by industry-standard separator sizing methodologies.
For any questions or suggestions, feel free to reach out:
- Email: alikhanov.2004@gmail.com