FDFD Solver for Julia
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore added .gitignore ti gitignore Oct 25, 2018
2DFDFD.jl Merge branch 'master' of https://github.com/kiranshila/FDFD Nov 27, 2018
BDG.jl Working on k_inc magnitude Nov 21, 2018
FDFD.jl First commit Oct 18, 2018
README.md Create README.md Nov 25, 2018
Utilities.jl Seperated FDFD code from meshing code Oct 25, 2018
Yee.jl First commit Oct 18, 2018


A Finite Difference Frequency Domain Solver in Julia

This code follows the procedure of the FDFD method outlined in Dr. Raymond Rumpf's lecture notes from the EE 5337 course at UTEP. This code was written as a final project for EEL 6935 Linear Algebra Course at USF.

Curent Status

As of the latest commit, the solver is working for a 24 GHz binary diffraction grating using a slight modification to how the incident wave vector is being calculated. It is currently off by a scale of 0.0012.


  • Julia 1.0
  • IterativeSolvers
  • SparseArrays
  • LinearAlgebra
  • Makie (for plotting)


Simply run the script

$ julia 2DFDFD.jl

Future Work

I intend to discover why the k_inc section of the code is incorrect. Once I do that, I will add support for 3D solving and importing step file geometry. Included is an STL rasterizer in Utilities.jl. Additionally, I will add iterative convergance, a better iterative solver using Incomplete LU preconditioning, and calculations for transmitted and reflected power.