Modelling materials with complex electromagnetic properties
All electromagnetic phenomena are governed by the Maxwell’s equations, which describing how electric and magnetic fields are distributed due to charges and currents, and how they are changing in time. gprMax is open source software that simulates electromagnetic wave propagation by using Yee’s algorithm to solve (3+1)D Maxwell’s equations with Finite-Difference Time-Domain (FDTD) method. gprMax is command-line-driven software written in Python with performance-critical parts written in Cython.
What and why?
The behavior of the electromagnetic wave is closely dependent on the material in which it propagates. Some dispersive media have quite complex electromagnetic properties depending on the wavelength. This, for example, means that for different frequencies the wave can propagate with a different speed in different materials. This significantly affects the solver’s output.
The main goal of my project is to enhance series of scripts, which modelled electromagnetic properties of the variety range of materials. Initial series of scripts have been prepared, however, their technical improvement and coupling with main software gprMax is required.
- Stand alone scripts to modelling electromagnetic properties of different media using relaxation functions like Havriliak-Negami, Johnsher, CRIM methods and fitting to raw data by hybrid linear-nonlinear optimization in form of sub-package DebyeFit.
- Coupling stand alone scripts with existing gprMax software.
- User-friendly interface to use provided functions.
- Proper documentation and tests for provided components (tutorials for users) in form of jupyter notebooks.
Technologies used: Python
Github code: DebyeFit sub-package
- Hybrid Linear-Nonlinear Optimization Approach to the Approximation of Multi-Pole Debye Dielectric Function| by Sylwia Majchrowska | Towards Data Science
- https://sylwia-majchrowska.medium.com/modelling-dispersive-materials-with-gprmax-software-during-google-summer-of-code-2021-adventure-b9042b4e9341 | by Sylwia Majchrowska | Medium blog
Learn more about the project
Project’s website: GSoC 2021