The Computational Challenge
Photonic Crystals (PCs) are the semiconductors of light. However, simulating Magnetized Plasma Metallic PCs is computationally expensive due to the complex interaction between electromagnetic fields and plasma dispersion. Standard simulators lacked the specific discretization grids needed to model these materials accurately.
I developed a custom simulation engine from the ground up to solve these edge cases, formulating the mathematical models and translating them into executable code.
Algorithmic Architecture
1. The FDTD Engine (MATLAB)
I implemented a Finite Difference Time Domain (FDTD) simulator, the gold standard algorithm for computational electromagnetics.
- Source Code: View on GitHub
- The Innovation: Unlike standard solvers, I developed a "Non-conventional Discretization Grid". This custom data structure allowed for stable numerical simulation of the magnetized plasma medium, which often causes instability in standard "Yee Grid" implementations.
- Optimization: Optimized the core update loop to handle massive 2D matrix operations efficiently, balancing memory usage with simulation accuracy.
2. Research Impact & Publications
This software wasn't just a theoretical exercise; it produced novel scientific data published in high-impact journals.
-
Single-Authored Breakthrough:
- "Non-conventional discretization grid based FDTD for EM wave propagation in magnetized plasma metallic photonic crystal"
- Journal: Progress In Electromagnetics Research M (2016)
- Significance: Sole author and architect of the algorithm.
- Read Paper
-
Lead Author Research:
- "Tuning photonic bands in plasma metallic photonic crystals"
- Journal: Physics of Plasmas (2016)
- Significance: First Author; led the experimental design and computational modeling.
- Read Paper
Why This Matters to Software Architecture
Building this engine required:
- Numerical Stability: Understanding floating-point errors and algorithmic convergence.
- Performance: Writing tight loops where $O(n^2)$ vs $O(n)$ differences meant days vs. hours of compute time.
- Modeling: Translating abstract constraints (Physics) into concrete logic (Code).