**EM Lab**

500 West University Ave.

El Paso, TX 79968

Twitter: @UTEPEMLab

E-Mail: rcrumpf@utep.edu

COMPUTATIONAL ELECTROMAGNETICS

- Homework 1 -- Dartboard
- Homework 2 -- Wave Derivations
- Homework 3 -- Transfer Matrix Method
- Homework 4 -- Parameter Sweeps
- Benchmarking Aid for TMM
- Benchmarking Aid for PWEM
- Benchmarking Aid for RCWA 1x1
- Benchmarking Aid for RCWA 3x3
- Benchmarking Aid for RCWA 3x3 with oblique incidence

- Lecture 0 -- Rules and Procedures
- Lecture 1 -- Introduction to CEM
- Lecture 2 -- Maxwell's Equations
- Lecture 3 -- Electromagnetic Principles
- Lecture 4 -- Transfer Matrix Method
- Lecture 5 -- TMM Using Scattering Matrices
- Lecture 5.5 -- Parameter Sweeps
- Lecture 6 -- Periodic Structures (Lecture 7 from EM21)
- Lecture 7 -- Diffraction Gratings and the Plane Wave Spectrum
- Lecture 8 -- Perfectly Matched Layer
- Lecture 9 -- Finite Difference Method
- Lecture 10 -- Maxwell's Equations on a Yee Grid
- Lecture 11 -- Finite-Difference Analysis of Waveguides
- Lecture 12 --FDFD Formulation
- Lecture 13 -- FDFD Implementation
- Lecture 14 -- FDFD Extras
- Lecture 15 -- Finite-Difference Time-Domain
- Lecture 16 -- Beam Propagation Method
- Lecture 17 -- Maxwell's Equations in Fourier Space
- Lecture 18 -- Plane Wave Expansion Method
- Lecture 18b -- PWEM Extras
- Lecture 19 -- RCWA Formulation
- Lecture 20 -- RCWA Implementation
- Lecture 21 -- RCWA Extras
- Lecture 22 -- Method of Lines
- Lecture 23 -- Slice Absorption Method
- Lecture 24 -- Introduction to Variational Methods
- Lecture 27 -- Optimization

- Lecture 1 -- Introduction to CEM
- Lecture 2 -- Maxwell's Equations
- Lecture 3 -- Electromagnetic Principles
- Lecture 4 -- Transfer Matrix Method
- Lecture 5 -- TMM Using Scattering Matrices
- Lecture 6 -- Periodic Structures
- Lecture 7 -- Diffraction Gratings and the Plane Wave Spectrum
- Lecture 8 -- Perfectly Matched Layer
- Lecture 9 -- Finite-Difference Method
- Lecture 10 -- Maxwell's Equations on a Yee Grid
- Lecture 11 -- Finite-Difference Analysis of Waveguides
- Lecture 12 -- Formulation of Finite-Difference Frequency-Domain
- Lecture 13 -- Implementation of Finite-Difference Frequency-Domain
- Lecture 14 -- Examples of Finite-Difference Frequency-Domain
- Lecture 15 -- Finite-Difference Time-Domain
- Lecture 16 -- Beam Propagation Method
- Lecture 17 -- Maxwell's Equations in Fourier Space
- Lecture 18 -- Plane Wave Expansion Method
- Lecture 19 -- Formulation of Rigorous Coupled-Wave Analysis
- Lecture 20 -- Implementation of Rigorous Coupled-Wave Analysis
- Lecture 21 -- RCWA Extras
- Lecture 22 -- Method of Lines
- Lecture 23 -- Slice Absorption Method
- Lecture 24 -- Introduction to Variational Methods
- Lecture 27 -- Optimization

- Stereo image of a 3D Yee cell
- Download .zip file of MATLAB codes
**test_star.p**-- In Homework #4, you are required to write the function star() which combines two scattering matrices. The test_star.p file is a MATLAB program that tests and verifies your star() function to ensure that all features are working properly. See Homework #4 for details.**test_cascn.p**-- In Homework #4, you are required to write the function cascn() which cascades an arbitary number of scattering matrices. The test_cascn.p file is a MATLAB program that tests and verifies your cascn() function to ensure that all features are working properly. See Homework #4 for details.**test_yeeder.p**-- In Homework #5, you are required to write the function yeeder() which builds the derivative matrices. The test_yeeder.p file is a MATLAB program that tests and verifies your yeeder() function to ensure that all features are working properly. See Homework #5 for details.**little_yeeder.p**-- This function works just like yeeder() from Homework #5 to construct derivative matrices, but limits the size of the matrices can be be constructed. It is intended only to help you troubleshoot your yeeder() function by providing the correct matrices. See Homework #5 for details on yeeder().**test_calcpml2d.p**-- In Homework #5, you are required to write the function calcpml2d() which calculates the PML functions sx and sy. The test_calcpml2d.p file is a MATLAB program that tests and verifies your calcpml2d() function to ensure that all features are working properly. See Homework #5 for details.**test_convmat.p**-- In Homework #8, you are required to write the function convmat() which constructs convolution matrices. The test_convmat.p file is a MATLAB program that tests and verifies your convmat() function to ensure that all features are working properly. See Homework #8 for details.