Skip to content

Finite-difference time-domain method to model electromagnetic field propagation.

Notifications You must be signed in to change notification settings

PretTy-Fish/EMSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Electromagnetic System

Implementation of finite-difference time-domain method to model electromagnetic field propagation in Python, with CUDA support. This is my final project for the computational lab PHYC20013 at the University of Melbourne in 2020.

Files

  • emsystem.py: Classes and functions for CPU use.
  • emsystem_gpu.py: Classes and functions for CUDA use.
    • Note: Only support GPUs with CUDA capability.
  • Examples.ipynb: Example applications

Preparation

The project depends on the following Python packages:

  • numpy
  • matplotlib
  • (for CUDA) numba

The following software is required for quality animation generation:

Examples

Below are some animations made in Examples.ipynb. The electric and magnetic fields are represented with red and blue quivers respectively.

Propagation of a plane electromagnetic pulse

Propagation of a plane electromagnetic pulse

Reflection of electromagentic pulse on other material

Reflection of electromagentic pulse on other material

Propagation of a point electromagnetic pulse

Propagation of a point electromagnetic pulse

About

Finite-difference time-domain method to model electromagnetic field propagation.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published