Simulating electromagnetic wave propagation

Technologies
python, cuda, openmp, mpi, opencl
Topics
science, engineering, geophysics, electromagnetics, ground penetrating radar
Simulating electromagnetic wave propagation
gprMax is open source software that simulates electromagnetic wave propagation. It uses Yee's algorithm to solve Maxwell’s equations in 3D using the Finite-Difference Time-Domain (FDTD) method. It is designed for simulating Ground Penetrating Radar (GPR) and is used to model electromagnetic wave propagation in fields such as engineering, geophysics, archaeology, and medicine. There are a wide range of applications from assessing infrastructure such as bridges and roads, locating buried utilities, mapping glaciers, finding anti-personnel landmines, to detecting tumours in the human body, and exploring the sub-surface of Mars and the Moon. gprMax is command-line-driven software written in Python with performance-critical parts written in Cython. It does not currently feature a graphical user interface (GUI) which allows it to be very flexible and scriptable software that can run in high-performance computing (HPC) environments, i.e. on supercomputers. gprMax can be run on either CPU or GPU. The CPU solver has been parallelised using OpenMP which enables it to run on multi-core CPUs. The GPU solver has been developed using the NVIDIA CUDA programming model. gprMax also features a Messaging Passing Interface (MPI) task farm, which can operate with CPU nodes or multiple GPUs.
2024 Program

Successful Projects

Contributor
Bianca Pham
Mentor
Craig, Antonis
Organization
gprMax
Apple Metal Port
The project focuses on developing an Apple Metal port of the Finite-Difference Time-Domain (FDTD) solver machine for gprMax. The current version of...
Contributor
Lihao Bi
Mentor
Craig, Antonis
Organization
gprMax
"Optimisation of CUDA and OpenCL performance" proposal from Lihao
The proposal for the GSOC project focuses on the "Optimization of CUDA and OpenCL performance" within the gprMAX software, a tool utilizing the...
Contributor
Jung Whan Lee
Mentor
Antonis, Iraklis Giannakis
Organization
gprMax
AI Chatbot and Assistant for Support
This project aims to improve the user experience of gprMax, an open-source software for simulating electromagnetic wave propagation by modelling...
Contributor
Yutian Chen
Mentor
Craig, Antonis
Organization
gprMax
Cache-Efficient Acceleration of the FDTD Method in gprMax via XPU Technology
This proposal aims to improve the performance of the Finite-Difference Time-Domain (FDTD) algorithm within the gprMax software by integrating XPU...