This project provides a graphical user interface (GUI) for Real-time Topology Optimization in 3D via Deep Transfer Learning that performs topology optimization using transfer learning models. The application allows users to select from pre-trained models and apply them to predict structures efficiently. The pre-trained models can be downloaded from here.
- Introduction
- Features
- Installation
- Usage
- Configuration
- Examples
- Troubleshooting
- Contributors
- License
- User-friendly GUI: Built using PyQt5 for an intuitive user experience.
- Pre-trained Models: Includes multiple pre-trained models for topology optimization.
- Visualization: Utilizes Matplotlib and VTK for 2D and 3D visualizations.
- Interactive Controls: Provides sliders, buttons, and forms for easy interaction and customization.
- Python 3.x
- PyQt5
- Keras
- NumPy
- Matplotlib
- SciPy
- VTK
-
Clone the repository:
git clone https://github.com/MohammadBeh/TO-TL-GUI.git cd TO-TL-GUI -
Install the required packages:
pip install -r requirements.txt
-
Ensure the pre-trained models are in the same directory or update the paths in the script.
-
Run the application:
python main.py
-
Use the GUI to select the desired pre-trained model and configure the input parameters.
-
Visualize the results using the built-in plotting tools.
The paths to the pre-trained models are hardcoded in the script. Ensure the models are available in the specified paths or update the script accordingly.
To visualize a sample optimization process:
-
Select the
TLmethod. -
Specify the dimension, domain, resolution, and boundary condition.
-
Click OK.
-
Change the force parameters to generate the structures interactively.
Note: Changing the parameters (except force parameters) requires clicking on
Resetbutton. After that you can repeat the steps 1 to 4.Note 2: In the method, you can select
TL + SIMPwhich runs a few iteration of SIMP solver on the predicted structure to obtain high quality and well connected structures (Only works for 2D structures).
- Ensure all dependencies are installed and properly configured.
- Verify the paths to the pre-trained models.
- Check the console output for any error messages.
- Mohammad Behzadi - MohammadBeh
This project is licensed under the MIT License. See the LICENSE file for details.