%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % This Matlab script propagates a pulse down a parallel % plate metallic waveguide % % It requires the Matlab script called MakeQTMovie %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% c=3e8; % speed of light m=1; % mode number d=1; % waveguide thickness in m %the close d is to the cutoff (d=pi c/w) the larger the difference in speeds w=1e9; % angular frequency B=sqrt((w/c)^2-(m*pi/d)^2); %the propagation constant Bp=w/(c^2*sqrt((w/c)^2-(m*pi/d)^2)); % the derivative of the propagation constant vp=(B/w)^(-1) %the pahse velocity vg=(Bp)^(-1) % the group velocity W=3e-15; %the width of the pulse z=linspace(0,100,501); % the total length of the waveguide tt=linspace(2e-7,2.3e-7,51); % the time steps MakeQTMovie start 'pulse.mov' clf for lp_t=1:length(tt) t=tt(lp_t); A=exp(-(t-Bp*z).^2/W); P=cos(w*t-B*z); I=A.*P; %plot the % (1) total pulse % (2) the pulse envelope % (3) the carrier subplot(3,1,1) plot(z,I) subplot(3,1,2) plot(z,A) subplot(3,1,3) plot(z,P) MakeQTMovie addframe end MakeQTMovie finish