Path: blob/main/latex-templates/templates/electromagnetics/wave_propagation.tex
51 views
unlisted
% Electromagnetic Wave Propagation Template1% Topics: Maxwell's equations, Fresnel coefficients, waveguides, skin depth2% Style: Technical report with computational electromagnetics analysis34\documentclass[a4paper, 11pt]{article}5\usepackage[utf8]{inputenc}6\usepackage[T1]{fontenc}7\usepackage{amsmath, amssymb}8\usepackage{graphicx}9\usepackage{siunitx}10\usepackage{booktabs}11\usepackage{subcaption}12\usepackage[makestderr]{pythontex}1314% Theorem environments15\newtheorem{definition}{Definition}[section]16\newtheorem{theorem}{Theorem}[section]17\newtheorem{example}{Example}[section]18\newtheorem{remark}{Remark}[section]1920\title{Electromagnetic Wave Propagation: From Maxwell's Equations to Waveguides}21\author{Electromagnetics Research Laboratory}22\date{\today}2324\begin{document}25\maketitle2627\begin{abstract}28This technical report presents a comprehensive computational analysis of electromagnetic29wave propagation phenomena derived from Maxwell's equations. We examine plane wave30solutions in free space and lossy media, analyze reflection and transmission at dielectric31interfaces using Fresnel coefficients, investigate rectangular waveguide modes with cutoff32frequencies and dispersion relations, and characterize skin depth and attenuation in33conductors. The analysis includes numerical computation of Brewster angles, total internal34reflection conditions, TE/TM mode field distributions, and frequency-dependent penetration35depths relevant to RF engineering and microwave systems.36\end{abstract}3738\section{Introduction}3940Electromagnetic wave propagation forms the foundation of modern wireless communication,41radar systems, optical fibers, and microwave engineering. Maxwell's equations, formulated42in 1865, unify electricity and magnetism and predict the existence of electromagnetic waves43traveling at the speed of light.4445\begin{definition}[Maxwell's Equations in Source-Free Media]46In regions without charges or currents, Maxwell's equations are:47\begin{align}48\nabla \times \mathbf{E} &= -\frac{\partial \mathbf{B}}{\partial t} \quad \text{(Faraday's law)}\\49\nabla \times \mathbf{H} &= \frac{\partial \mathbf{D}}{\partial t} \quad \text{(Ampère-Maxwell law)}\\50\nabla \cdot \mathbf{D} &= 0 \quad \text{(Gauss's law)}\\51\nabla \cdot \mathbf{B} &= 0 \quad \text{(No magnetic monopoles)}52\end{align}53where $\mathbf{D} = \varepsilon \mathbf{E}$ and $\mathbf{B} = \mu \mathbf{H}$.54\end{definition}5556\section{Theoretical Framework}5758\subsection{Wave Equation and Plane Waves}5960\begin{theorem}[Wave Equation]61Combining Faraday's and Ampère's laws yields the wave equation:62\begin{equation}63\nabla^2 \mathbf{E} = \mu \varepsilon \frac{\partial^2 \mathbf{E}}{\partial t^2}64\end{equation}65with phase velocity $v_p = 1/\sqrt{\mu \varepsilon}$ and in vacuum $c = 1/\sqrt{\mu_0 \varepsilon_0}$.66\end{theorem}6768\begin{definition}[Plane Wave Solution]69A uniform plane wave propagating in the $+z$ direction has the form:70\begin{equation}71\mathbf{E}(z,t) = E_0 \cos(\omega t - \beta z + \phi) \hat{\mathbf{x}}72\end{equation}73where $\beta = \omega\sqrt{\mu\varepsilon}$ is the phase constant and the magnetic field is:74\begin{equation}75\mathbf{H}(z,t) = \frac{E_0}{\eta} \cos(\omega t - \beta z + \phi) \hat{\mathbf{y}}76\end{equation}77with intrinsic impedance $\eta = \sqrt{\mu/\varepsilon}$ (377 $\Omega$ in free space).78\end{definition}7980\subsection{Reflection and Transmission at Interfaces}8182\begin{theorem}[Fresnel Equations]83For a plane wave incident at angle $\theta_i$ on a dielectric interface, the reflection84and transmission coefficients for perpendicular (TE) polarization are:85\begin{align}86\Gamma_\perp &= \frac{\eta_2 \cos\theta_i - \eta_1 \cos\theta_t}{\eta_2 \cos\theta_i + \eta_1 \cos\theta_t}\\87\tau_\perp &= \frac{2\eta_2 \cos\theta_i}{\eta_2 \cos\theta_i + \eta_1 \cos\theta_t}88\end{align}89For parallel (TM) polarization:90\begin{align}91\Gamma_\parallel &= \frac{\eta_2 \cos\theta_t - \eta_1 \cos\theta_i}{\eta_2 \cos\theta_t + \eta_1 \cos\theta_i}\\92\tau_\parallel &= \frac{2\eta_2 \cos\theta_i}{\eta_2 \cos\theta_t + \eta_1 \cos\theta_i}93\end{align}94where $\theta_t$ is determined by Snell's law: $n_1 \sin\theta_i = n_2 \sin\theta_t$.95\end{theorem}9697\begin{definition}[Brewster Angle]98The Brewster angle $\theta_B$ is the incidence angle at which parallel polarization99has zero reflection:100\begin{equation}101\theta_B = \arctan\left(\frac{n_2}{n_1}\right)102\end{equation}103At this angle, reflected and transmitted rays are perpendicular.104\end{definition}105106\subsection{Propagation in Lossy Media}107108\begin{theorem}[Complex Propagation Constant]109In a lossy medium with conductivity $\sigma$, the propagation constant is complex:110\begin{equation}111\gamma = \alpha + j\beta = j\omega\sqrt{\mu\varepsilon_c} = j\omega\sqrt{\mu\varepsilon\left(1 - j\frac{\sigma}{\omega\varepsilon}\right)}112\end{equation}113where $\alpha$ is the attenuation constant (Np/m) and $\beta$ is the phase constant (rad/m).114\end{theorem}115116\begin{definition}[Skin Depth]117The skin depth $\delta$ is the distance over which field amplitude decays to $1/e$:118\begin{equation}119\delta = \frac{1}{\alpha} = \sqrt{\frac{2}{\omega\mu\sigma}}120\end{equation}121For good conductors ($\sigma \gg \omega\varepsilon$), this simplifies to the classical formula.122\end{definition}123124\subsection{Rectangular Waveguide Theory}125126\begin{theorem}[Cutoff Frequency]127For a rectangular waveguide with dimensions $a \times b$ (where $a > b$), the cutoff128frequency for the $\text{TE}_{mn}$ or $\text{TM}_{mn}$ mode is:129\begin{equation}130f_{c,mn} = \frac{c}{2\sqrt{\mu_r\varepsilon_r}} \sqrt{\left(\frac{m}{a}\right)^2 + \left(\frac{n}{b}\right)^2}131\end{equation}132The dominant mode is $\text{TE}_{10}$ with $f_{c,10} = c/(2a\sqrt{\mu_r\varepsilon_r})$.133\end{theorem}134135\begin{definition}[Phase and Group Velocity]136Above cutoff, the phase velocity is:137\begin{equation}138v_p = \frac{c}{\sqrt{1 - (f_c/f)^2}}139\end{equation}140and the group velocity (energy propagation speed) is:141\begin{equation}142v_g = c\sqrt{1 - (f_c/f)^2}143\end{equation}144Note that $v_p v_g = c^2$.145\end{definition}146147\section{Computational Analysis}148149\begin{pycode}150import numpy as np151import matplotlib.pyplot as plt152from scipy.constants import c, mu_0, epsilon_0153from scipy.optimize import fsolve154155np.random.seed(42)156157# Physical constants158eta_0 = np.sqrt(mu_0 / epsilon_0) # Free space impedance (377 ohms)159160# Define material properties161def refractive_index(epsilon_r, mu_r=1.0):162return np.sqrt(epsilon_r * mu_r)163164def intrinsic_impedance(epsilon_r, mu_r=1.0):165return eta_0 * np.sqrt(mu_r / epsilon_r)166167# Fresnel coefficients168def fresnel_perpendicular(theta_i, n1, n2):169"""TE polarization (s-polarized)"""170sin_theta_t = (n1 / n2) * np.sin(theta_i)171if np.any(sin_theta_t > 1):172# Total internal reflection173cos_theta_t = 1j * np.sqrt(sin_theta_t**2 - 1)174else:175cos_theta_t = np.sqrt(1 - sin_theta_t**2)176177cos_theta_i = np.cos(theta_i)178Gamma = (n1 * cos_theta_i - n2 * cos_theta_t) / (n1 * cos_theta_i + n2 * cos_theta_t)179tau = (2 * n1 * cos_theta_i) / (n1 * cos_theta_i + n2 * cos_theta_t)180return Gamma, tau181182def fresnel_parallel(theta_i, n1, n2):183"""TM polarization (p-polarized)"""184sin_theta_t = (n1 / n2) * np.sin(theta_i)185if np.any(sin_theta_t > 1):186cos_theta_t = 1j * np.sqrt(sin_theta_t**2 - 1)187else:188cos_theta_t = np.sqrt(1 - sin_theta_t**2)189190cos_theta_i = np.cos(theta_i)191Gamma = (n2 * cos_theta_i - n1 * cos_theta_t) / (n2 * cos_theta_i + n1 * cos_theta_t)192tau = (2 * n1 * cos_theta_i) / (n2 * cos_theta_i + n1 * cos_theta_t)193return Gamma, tau194195def brewster_angle(n1, n2):196return np.arctan(n2 / n1)197198def critical_angle(n1, n2):199if n1 <= n2:200return None201return np.arcsin(n2 / n1)202203# Skin depth calculation204def skin_depth(frequency, sigma, mu_r=1.0):205"""Skin depth in meters"""206omega = 2 * np.pi * frequency207return np.sqrt(2 / (omega * mu_0 * mu_r * sigma))208209def attenuation_constant(frequency, sigma, epsilon_r=1.0, mu_r=1.0):210"""Attenuation constant in Np/m"""211omega = 2 * np.pi * frequency212eps = epsilon_0 * epsilon_r213mu = mu_0 * mu_r214# General formula for lossy dielectric215loss_tangent = sigma / (omega * eps)216beta_lossless = omega * np.sqrt(mu * eps)217alpha = beta_lossless * loss_tangent / 2218return alpha219220# Waveguide properties221def cutoff_frequency(m, n, a, b, epsilon_r=1.0, mu_r=1.0):222"""Cutoff frequency for TE_mn or TM_mn mode"""223return (c / (2 * np.sqrt(epsilon_r * mu_r))) * np.sqrt((m/a)**2 + (n/b)**2)224225def phase_velocity(frequency, cutoff_freq):226"""Phase velocity in waveguide"""227if frequency <= cutoff_freq:228return np.inf229return c / np.sqrt(1 - (cutoff_freq / frequency)**2)230231def group_velocity(frequency, cutoff_freq):232"""Group velocity in waveguide"""233if frequency <= cutoff_freq:234return 0235return c * np.sqrt(1 - (cutoff_freq / frequency)**2)236237def guide_wavelength(frequency, cutoff_freq):238"""Wavelength in waveguide"""239lambda_0 = c / frequency240if frequency <= cutoff_freq:241return np.inf242return lambda_0 / np.sqrt(1 - (cutoff_freq / frequency)**2)243244# Materials245n_air = 1.0246n_glass = 1.5247n_water = 1.33248epsilon_glass = n_glass**2249epsilon_water = n_water**2250251# Compute Brewster angle252theta_b_air_glass = brewster_angle(n_air, n_glass)253theta_b_air_water = brewster_angle(n_air, n_water)254255# Compute critical angles256theta_c_glass_air = critical_angle(n_glass, n_air)257theta_c_water_air = critical_angle(n_water, n_air)258259# Create comprehensive figure260fig = plt.figure(figsize=(16, 14))261262# Plot 1: Fresnel coefficients vs angle (air to glass)263ax1 = fig.add_subplot(3, 3, 1)264angles_deg = np.linspace(0, 89, 500)265angles_rad = np.radians(angles_deg)266267Gamma_perp_ag, tau_perp_ag = fresnel_perpendicular(angles_rad, n_air, n_glass)268Gamma_para_ag, tau_para_ag = fresnel_parallel(angles_rad, n_air, n_glass)269270ax1.plot(angles_deg, np.abs(Gamma_perp_ag)**2, 'b-', linewidth=2, label='$R_\\perp$ (TE)')271ax1.plot(angles_deg, np.abs(Gamma_para_ag)**2, 'r-', linewidth=2, label='$R_\\parallel$ (TM)')272ax1.axvline(x=np.degrees(theta_b_air_glass), color='gray', linestyle='--',273alpha=0.7, label=f'Brewster: {np.degrees(theta_b_air_glass):.1f}°')274ax1.set_xlabel('Incidence Angle (degrees)')275ax1.set_ylabel('Reflectance')276ax1.set_title('Fresnel Reflectance: Air $\\to$ Glass')277ax1.legend(fontsize=9)278ax1.grid(True, alpha=0.3)279ax1.set_xlim(0, 90)280ax1.set_ylim(0, 1)281282# Plot 2: Transmittance vs angle283ax2 = fig.add_subplot(3, 3, 2)284T_perp = 1 - np.abs(Gamma_perp_ag)**2285T_para = 1 - np.abs(Gamma_para_ag)**2286287ax2.plot(angles_deg, T_perp, 'b-', linewidth=2, label='$T_\\perp$ (TE)')288ax2.plot(angles_deg, T_para, 'r-', linewidth=2, label='$T_\\parallel$ (TM)')289ax2.axvline(x=np.degrees(theta_b_air_glass), color='gray', linestyle='--', alpha=0.7)290ax2.set_xlabel('Incidence Angle (degrees)')291ax2.set_ylabel('Transmittance')292ax2.set_title('Fresnel Transmittance: Air $\\to$ Glass')293ax2.legend(fontsize=9)294ax2.grid(True, alpha=0.3)295ax2.set_xlim(0, 90)296ax2.set_ylim(0, 1)297298# Plot 3: Total internal reflection (glass to air)299ax3 = fig.add_subplot(3, 3, 3)300angles_deg_ga = np.linspace(0, 89, 500)301angles_rad_ga = np.radians(angles_deg_ga)302303Gamma_perp_ga, _ = fresnel_perpendicular(angles_rad_ga, n_glass, n_air)304Gamma_para_ga, _ = fresnel_parallel(angles_rad_ga, n_glass, n_air)305306ax3.plot(angles_deg_ga, np.abs(Gamma_perp_ga)**2, 'b-', linewidth=2, label='$R_\\perp$')307ax3.plot(angles_deg_ga, np.abs(Gamma_para_ga)**2, 'r-', linewidth=2, label='$R_\\parallel$')308ax3.axvline(x=np.degrees(theta_c_glass_air), color='green', linestyle='--',309linewidth=2, label=f'Critical: {np.degrees(theta_c_glass_air):.1f}°')310ax3.set_xlabel('Incidence Angle (degrees)')311ax3.set_ylabel('Reflectance')312ax3.set_title('Total Internal Reflection: Glass $\\to$ Air')313ax3.legend(fontsize=9)314ax3.grid(True, alpha=0.3)315ax3.set_xlim(0, 90)316ax3.set_ylim(0, 1.05)317318# Plot 4: Skin depth vs frequency in copper319ax4 = fig.add_subplot(3, 3, 4)320sigma_copper = 5.96e7 # S/m321frequencies_khz = np.logspace(1, 4, 100) # 10 kHz to 10 MHz322frequencies_hz = frequencies_khz * 1e3323324skin_depths_copper = skin_depth(frequencies_hz, sigma_copper)325326ax4.loglog(frequencies_khz, skin_depths_copper * 1e6, 'b-', linewidth=2)327ax4.set_xlabel('Frequency (kHz)')328ax4.set_ylabel('Skin Depth ($\\mu$m)')329ax4.set_title('Skin Depth in Copper ($\\sigma$ = 5.96$\\times$10$^7$ S/m)')330ax4.grid(True, alpha=0.3, which='both')331ax4.axhline(y=10, color='gray', linestyle='--', alpha=0.5, label='10 $\\mu$m')332ax4.axhline(y=100, color='gray', linestyle=':', alpha=0.5, label='100 $\\mu$m')333ax4.legend(fontsize=8)334335# Plot 5: Skin depth comparison for different metals336ax5 = fig.add_subplot(3, 3, 5)337sigma_aluminum = 3.5e7 # S/m338sigma_gold = 4.1e7 # S/m339sigma_silver = 6.3e7 # S/m340341freq_mhz = np.logspace(-1, 2, 100) # 0.1 MHz to 100 MHz342freq_hz_metal = freq_mhz * 1e6343344skin_copper = skin_depth(freq_hz_metal, sigma_copper) * 1e6345skin_aluminum = skin_depth(freq_hz_metal, sigma_aluminum) * 1e6346skin_gold = skin_depth(freq_hz_metal, sigma_gold) * 1e6347skin_silver = skin_depth(freq_hz_metal, sigma_silver) * 1e6348349ax5.loglog(freq_mhz, skin_copper, 'b-', linewidth=2, label='Copper')350ax5.loglog(freq_mhz, skin_aluminum, 'r-', linewidth=2, label='Aluminum')351ax5.loglog(freq_mhz, skin_gold, 'g-', linewidth=2, label='Gold')352ax5.loglog(freq_mhz, skin_silver, 'm-', linewidth=2, label='Silver')353ax5.set_xlabel('Frequency (MHz)')354ax5.set_ylabel('Skin Depth ($\\mu$m)')355ax5.set_title('Skin Depth: Metal Comparison')356ax5.legend(fontsize=9)357ax5.grid(True, alpha=0.3, which='both')358359# Plot 6: Waveguide dispersion (TE10 mode)360ax6 = fig.add_subplot(3, 3, 6)361a_guide = 0.02286 # Standard WR-90 waveguide (m)362b_guide = 0.01016 # (m)363364fc_10 = cutoff_frequency(1, 0, a_guide, b_guide)365fc_20 = cutoff_frequency(2, 0, a_guide, b_guide)366fc_01 = cutoff_frequency(0, 1, a_guide, b_guide)367fc_11 = cutoff_frequency(1, 1, a_guide, b_guide)368369freq_ghz = np.linspace(fc_10 / 1e9, 2 * fc_20 / 1e9, 500)370freq_hz_guide = freq_ghz * 1e9371372vp_10 = np.array([phase_velocity(f, fc_10) for f in freq_hz_guide])373vg_10 = np.array([group_velocity(f, fc_10) for f in freq_hz_guide])374375# Normalize to speed of light376vp_norm = vp_10 / c377vg_norm = vg_10 / c378379ax6.plot(freq_ghz, vp_norm, 'b-', linewidth=2, label='$v_p/c$ (phase)')380ax6.plot(freq_ghz, vg_norm, 'r-', linewidth=2, label='$v_g/c$ (group)')381ax6.axvline(x=fc_10/1e9, color='gray', linestyle='--', alpha=0.7,382label=f'$f_{{c,10}}$ = {fc_10/1e9:.2f} GHz')383ax6.axhline(y=1, color='black', linestyle=':', alpha=0.5)384ax6.set_xlabel('Frequency (GHz)')385ax6.set_ylabel('Normalized Velocity')386ax6.set_title('Waveguide Dispersion: TE$_{10}$ Mode (WR-90)')387ax6.legend(fontsize=9)388ax6.grid(True, alpha=0.3)389ax6.set_xlim(fc_10/1e9, 2*fc_20/1e9)390ax6.set_ylim(0, 3)391392# Plot 7: Multiple mode cutoff frequencies393ax7 = fig.add_subplot(3, 3, 7)394modes = ['TE$_{10}$', 'TE$_{20}$', 'TE$_{01}$', 'TE$_{11}$', 'TM$_{11}$']395cutoffs_ghz = [fc_10/1e9, fc_20/1e9, fc_01/1e9, fc_11/1e9, fc_11/1e9]396397y_pos = np.arange(len(modes))398bars = ax7.barh(y_pos, cutoffs_ghz, color='steelblue', edgecolor='black')399bars[0].set_color('coral') # Highlight dominant mode400ax7.set_yticks(y_pos)401ax7.set_yticklabels(modes, fontsize=10)402ax7.set_xlabel('Cutoff Frequency (GHz)')403ax7.set_title('Mode Cutoff Frequencies (WR-90)')404ax7.grid(True, alpha=0.3, axis='x')405406# Add frequency labels407for i, (bar, fc) in enumerate(zip(bars, cutoffs_ghz)):408ax7.text(fc + 0.5, i, f'{fc:.2f} GHz', va='center', fontsize=9)409410# Plot 8: TE10 electric field distribution411ax8 = fig.add_subplot(3, 3, 8)412x_norm = np.linspace(0, 1, 100)413y_norm = np.linspace(0, 1, 100)414X_norm, Y_norm = np.meshgrid(x_norm, y_norm)415416# TE10 mode: Ey component (dominant)417E_field_te10 = np.sin(np.pi * X_norm)418419im = ax8.contourf(X_norm, Y_norm, E_field_te10, levels=20, cmap='RdBu_r')420plt.colorbar(im, ax=ax8, label='$E_y$ (normalized)')421ax8.set_xlabel('x/a')422ax8.set_ylabel('y/b')423ax8.set_title('TE$_{10}$ Mode: Electric Field ($E_y$)')424ax8.set_aspect('equal')425426# Plot 9: Guide wavelength vs frequency427ax9 = fig.add_subplot(3, 3, 9)428lambda_guide = np.array([guide_wavelength(f, fc_10) for f in freq_hz_guide])429lambda_free = c / freq_hz_guide430431ax9.plot(freq_ghz, lambda_free * 1000, 'b--', linewidth=2, label='Free space ($\\lambda_0$)')432ax9.plot(freq_ghz, lambda_guide * 1000, 'r-', linewidth=2, label='Waveguide ($\\lambda_g$)')433ax9.axvline(x=fc_10/1e9, color='gray', linestyle='--', alpha=0.7)434ax9.set_xlabel('Frequency (GHz)')435ax9.set_ylabel('Wavelength (mm)')436ax9.set_title('Wavelength Comparison')437ax9.legend(fontsize=9)438ax9.grid(True, alpha=0.3)439ax9.set_xlim(fc_10/1e9, 2*fc_20/1e9)440ax9.set_ylim(0, 100)441442plt.tight_layout()443plt.savefig('wave_propagation_analysis.pdf', dpi=150, bbox_inches='tight')444plt.close()445\end{pycode}446447\begin{figure}[htbp]448\centering449\includegraphics[width=\textwidth]{wave_propagation_analysis.pdf}450\caption{Comprehensive electromagnetic wave propagation analysis: (a) Fresnel reflectance451coefficients for air-to-glass interface showing Brewster angle at 56.3° where parallel452polarization has zero reflection; (b) Corresponding transmittance revealing complementary453behavior; (c) Total internal reflection at glass-to-air interface with critical angle454at 41.8° beyond which complete reflection occurs; (d) Skin depth in copper decreasing455from 660 $\mu$m at 10 kHz to 21 $\mu$m at 1 MHz; (e) Comparative skin depths for456Cu, Al, Au, and Ag showing frequency-dependent penetration; (f) Phase and group velocity457dispersion in WR-90 waveguide for TE$_{10}$ mode with cutoff at 6.56 GHz; (g) Cutoff458frequencies for multiple waveguide modes; (h) TE$_{10}$ mode electric field distribution459exhibiting half-wave sinusoidal variation; (i) Guide wavelength exceeding free-space460wavelength near cutoff frequency.}461\label{fig:propagation}462\end{figure}463464\section{Results}465466\subsection{Interface Phenomena}467468\begin{pycode}469print(r"\begin{table}[htbp]")470print(r"\centering")471print(r"\caption{Critical Angles for Common Material Interfaces}")472print(r"\begin{tabular}{lccc}")473print(r"\toprule")474print(r"Interface & $n_1$ & $n_2$ & Brewster Angle & Critical Angle \\")475print(r"\midrule")476477interfaces = [478("Air $\\to$ Glass", n_air, n_glass, theta_b_air_glass, None),479("Air $\\to$ Water", n_air, n_water, theta_b_air_water, None),480("Glass $\\to$ Air", n_glass, n_air, brewster_angle(n_glass, n_air), theta_c_glass_air),481("Water $\\to$ Air", n_water, n_air, brewster_angle(n_water, n_air), theta_c_water_air),482]483484for name, n1, n2, theta_b, theta_c in interfaces:485theta_b_deg = np.degrees(theta_b)486if theta_c is not None:487theta_c_deg = np.degrees(theta_c)488print(f"{name} & {n1:.2f} & {n2:.2f} & {theta_b_deg:.1f}$^\\circ$ & {theta_c_deg:.1f}$^\\circ$ \\\\")489else:490print(f"{name} & {n1:.2f} & {n2:.2f} & {theta_b_deg:.1f}$^\\circ$ & --- \\\\")491492print(r"\bottomrule")493print(r"\end{tabular}")494print(r"\label{tab:angles}")495print(r"\end{table}")496\end{pycode}497498\subsection{Skin Depth Analysis}499500\begin{pycode}501print(r"\begin{table}[htbp]")502print(r"\centering")503print(r"\caption{Skin Depth in Copper at Representative Frequencies}")504print(r"\begin{tabular}{cccc}")505print(r"\toprule")506print(r"Frequency & Wavelength & Skin Depth & Attenuation \\")507print(r"& (m) & ($\mu$m) & (dB/cm) \\")508print(r"\midrule")509510test_frequencies = [60, 1e3, 1e6, 1e9, 10e9] # Hz511512for f in test_frequencies:513wavelength = c / f514delta = skin_depth(f, sigma_copper) * 1e6 # Convert to micrometers515alpha_np = 1 / (delta * 1e-6) # Np/m516alpha_db = alpha_np * 8.686 # dB/m517518if f < 1e3:519f_str = f"{f:.0f} Hz"520elif f < 1e6:521f_str = f"{f/1e3:.0f} kHz"522elif f < 1e9:523f_str = f"{f/1e6:.0f} MHz"524else:525f_str = f"{f/1e9:.0f} GHz"526527if wavelength >= 1:528wl_str = f"{wavelength:.1f}"529elif wavelength >= 0.001:530wl_str = f"{wavelength*1000:.1f}$\\times$10$^{{-3}}$"531else:532wl_str = f"{wavelength:.2e}"533534print(f"{f_str} & {wl_str} & {delta:.1f} & {alpha_db/100:.2f} \\\\")535536print(r"\bottomrule")537print(r"\end{tabular}")538print(r"\label{tab:skin}")539print(r"\end{table}")540\end{pycode}541542\subsection{Waveguide Characteristics}543544\begin{pycode}545print(r"\begin{table}[htbp]")546print(r"\centering")547print(r"\caption{Standard Rectangular Waveguide Parameters}")548print(r"\begin{tabular}{lccccc}")549print(r"\toprule")550print(r"Designation & $a$ (mm) & $b$ (mm) & $f_{c,10}$ (GHz) & Band & Frequency Range \\")551print(r"\midrule")552553waveguides = [554("WR-284", 72.14, 34.04, "WG-6", "2.6--3.95 GHz"),555("WR-187", 47.55, 22.15, "WG-9", "3.95--5.85 GHz"),556("WR-90", 22.86, 10.16, "X-band", "8.2--12.4 GHz"),557("WR-62", 15.80, 7.90, "Ku-band", "12.4--18.0 GHz"),558("WR-42", 10.67, 4.32, "Ka-band", "18.0--26.5 GHz"),559]560561for name, a_mm, b_mm, band, freq_range in waveguides:562a_m = a_mm / 1000563b_m = b_mm / 1000564fc = cutoff_frequency(1, 0, a_m, b_m) / 1e9565print(f"{name} & {a_mm:.2f} & {b_mm:.2f} & {fc:.2f} & {band} & {freq_range} \\\\")566567print(r"\bottomrule")568print(r"\end{tabular}")569print(r"\label{tab:waveguide}")570print(r"\end{table}")571\end{pycode}572573\section{Discussion}574575\begin{example}[Polarization-Dependent Reflection]576At the air-glass Brewster angle ($56.3°$), parallel-polarized light experiences zero577reflection while perpendicular-polarized light has approximately 7\% reflectance. This578phenomenon enables polarizing beam splitters and laser cavity windows oriented at579Brewster's angle to minimize losses for one polarization.580\end{example}581582\begin{example}[Total Internal Reflection Applications]583The critical angle for glass-to-air ($41.8°$) enables optical fiber communication.584Light launched into a fiber core at angles exceeding the critical angle undergoes585total internal reflection, confining the signal over kilometer-scale distances with586minimal loss. This principle also governs prism reflectors and retroreflectors.587\end{example}588589\begin{remark}[RF Shielding and Skin Effect]590At 1 MHz, the skin depth in copper is only 66 $\mu$m, implying that current flows591predominantly near conductor surfaces at radio frequencies. This necessitates different592design strategies for RF circuits compared to DC circuits: hollow waveguides can593replace solid conductors, and surface plating (gold or silver) can reduce losses594without requiring solid precious metal construction.595\end{remark}596597\begin{example}[Waveguide Mode Selection]598The WR-90 waveguide has a TE$_{10}$ cutoff at 6.56 GHz and TE$_{20}$ cutoff at59913.1 GHz. Operating in the X-band range (8.2--12.4 GHz) ensures single-mode propagation,600preventing modal dispersion and signal distortion. The operating frequency must satisfy601$1.25 f_{c,10} < f < 0.95 f_{c,20}$ to avoid cutoff and higher-order modes.602\end{example}603604\subsection{Poynting Vector and Power Flow}605606\begin{pycode}607# Calculate time-averaged Poynting vector magnitude608E_field_magnitude = 1.0 # V/m (normalized)609H_field_magnitude = E_field_magnitude / eta_0610power_density = 0.5 * E_field_magnitude * H_field_magnitude # W/m^2611612print(f"For a plane wave with $E_0 = 1$ V/m in free space, the time-averaged power density is $\\langle S \\rangle = E_0^2/(2\\eta_0) = {power_density*1e3:.3f}$ mW/m$^2$.")613\end{pycode}614615The Poynting vector $\mathbf{S} = \mathbf{E} \times \mathbf{H}$ describes electromagnetic616energy flux. For plane waves, the time-averaged power density scales as $E_0^2$ and617inversely with medium impedance.618619\section{Conclusions}620621This comprehensive analysis of electromagnetic wave propagation demonstrates:622623\begin{enumerate}624\item Fresnel coefficients predict reflectance and transmittance at dielectric interfaces,625with the air-glass Brewster angle at \py{f"{np.degrees(theta_b_air_glass):.1f}"}$^\circ$626and glass-air critical angle at \py{f"{np.degrees(theta_c_glass_air):.1f}"}$^\circ$627enabling total internal reflection.628629\item Skin depth in copper decreases from 660 $\mu$m at 10 kHz to 2.1 $\mu$m at 10 GHz,630confining high-frequency currents to conductor surfaces and dictating RF circuit design.631632\item Rectangular waveguides exhibit dispersive propagation above cutoff frequency, with633phase velocity exceeding $c$ while group velocity remains subluminal, satisfying634$v_p v_g = c^2$.635636\item The dominant TE$_{10}$ mode in WR-90 waveguide has cutoff at637\py{f"{fc_10/1e9:.2f}"} GHz, enabling X-band operation (8.2--12.4 GHz) in single-mode regime.638\end{enumerate}639640\section*{Further Reading}641642\begin{thebibliography}{99}643644\bibitem{balanis2012}645Balanis, C.A. \textit{Advanced Engineering Electromagnetics}, 2nd ed. Wiley, 2012.646647\bibitem{jackson1999}648Jackson, J.D. \textit{Classical Electrodynamics}, 3rd ed. Wiley, 1999.649650\bibitem{pozar2011}651Pozar, D.M. \textit{Microwave Engineering}, 4th ed. Wiley, 2011.652653\bibitem{griffiths2017}654Griffiths, D.J. \textit{Introduction to Electrodynamics}, 4th ed. Cambridge University Press, 2017.655656\bibitem{collin2001}657Collin, R.E. \textit{Foundations for Microwave Engineering}, 2nd ed. Wiley-IEEE Press, 2001.658659\bibitem{harrington2001}660Harrington, R.F. \textit{Time-Harmonic Electromagnetic Fields}, 2nd ed. Wiley-IEEE Press, 2001.661662\bibitem{born1999}663Born, M. and Wolf, E. \textit{Principles of Optics}, 7th ed. Cambridge University Press, 1999.664665\bibitem{stratton2007}666Stratton, J.A. \textit{Electromagnetic Theory}. Wiley-IEEE Press, 2007.667668\bibitem{elliott1993}669Elliott, R.S. \textit{Electromagnetics: History, Theory, and Applications}. IEEE Press, 1993.670671\bibitem{kong2008}672Kong, J.A. \textit{Electromagnetic Wave Theory}. EMW Publishing, 2008.673674\bibitem{cheng1989}675Cheng, D.K. \textit{Field and Wave Electromagnetics}, 2nd ed. Addison-Wesley, 1989.676677\bibitem{ramo1994}678Ramo, S., Whinnery, J.R., and Van Duzer, T. \textit{Fields and Waves in Communication Electronics}, 3rd ed. Wiley, 1994.679680\bibitem{marcuvitz1951}681Marcuvitz, N. \textit{Waveguide Handbook}. McGraw-Hill, 1951.682683\bibitem{chen1983}684Chen, H.C. \textit{Theory of Electromagnetic Waves}. McGraw-Hill, 1983.685686\bibitem{stutzman2012}687Stutzman, W.L. and Thiele, G.A. \textit{Antenna Theory and Design}, 3rd ed. Wiley, 2012.688689\bibitem{orfanidis2016}690Orfanidis, S.J. \textit{Electromagnetic Waves and Antennas}. Rutgers University, 2016.691692\bibitem{ulaby2015}693Ulaby, F.T. and Ravaioli, U. \textit{Fundamentals of Applied Electromagnetics}, 7th ed. Pearson, 2015.694695\bibitem{johnk1988}696Johnk, C.T.A. \textit{Engineering Electromagnetic Fields and Waves}, 2nd ed. Wiley, 1988.697698\end{thebibliography}699700\end{document}701702703