About • Features • How it works • Tech Stack • Developers
2D Beam-Forming simulator This 2D Beamforming Simulator is a Python-based desktop application, built using PyQt, that demonstrates and visualizes the core principles of beamforming. The tool supports real-time parameter customization and provides synchronized viewers for understanding constructive and destructive interference and beam pattern analysis. Inspired by modern technologies like 5G, ultrasound imaging, and tumor ablation, this simulator allows users to experiment with various system configurations and phased array geometries.
- Two Modes of Operation:
- Transmitting Mode:
- Configure parameters for beam transmission:
- Frequency of the transmitted signal.
- Phase shift applied to the emitters.
- Number of emitters in the array.
- Geometry of the array:
- Linear Geometry: Adjust the distance between emitters.
- Curved Geometry: Modify the curvature of the array.
- Configure parameters for beam transmission:
- Transmitting Mode:
- Receiving Mode:
- Configure parameters for beam reception:
- Frequency of the received signal.
- Phase shift applied to the receivers.
- Number of receivers in the array.
- Distance between receivers in the array.
- Configure parameters for beam reception:
- Real-Time Parameter Customization: Adjust parameters in real-time to observe their impact on the beam profile and interference map.
- Visualization Tools: Synchronized viewers to display:
- Constructive/destructive interference maps.
- Beam profile for both transmitting and receiving modes.
- Predefined Scenarios: Load and modify pre-configured scenarios inspired by:
- 5G wireless communications.
- Ultrasound imaging.
- Tumor ablation techniques.
The following tools were used in the construction of the project:
The simulator uses Python and PyQt5 to create an interactive GUI that allows users to manipulate system parameters in real time. The tool demonstrates the fundamental principles of beamforming, including phase shifts, delays, and constructive/destructive interference, all visualized dynamically.
Before running the application, ensure you have Python installed and the required dependencies.
To run the project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/your-username/Beam-Forming.git
-
Navigate to the project folder:
cd Beam-Forming -
Install the required dependencies:
pyqt5 pyqtgraph numpy matplotlib
-
Run the application:
python main.py
This will start the 2D beam-forming simulator application locally.
| Talal Emara | Meram Mahmoud | Maya Mohammed | Nouran Hani | Nariman Ahmed |
|---|
To learn more about PyQt5 and Beamforming principles, check out these recources:





