📄 fd2d1_fu.m
字号:
close all
clear all
IE=60;JE=60;
ic=IE/2;
jc=JE/2;
ddx=0.01;
dt=ddx/6e8;
epsz=8.8e-12;
kk=0;
kkk=1;
ga=zeros(IE,JE);
dz=zeros(IE,JE);
ez=zeros(IE,JE);
hx=zeros(IE,JE);
hy=zeros(IE,JE);
ga(:,:)=1.;
t0=20;
spread=6.0;
T=0;
nsteps=500;
for n=1:nsteps
T=T+1;
for j=2:JE
for i=2:IE
dz(i,j)=dz(i,j)+.5*(hy(i,j)-hy(i-1,j)-hx(i,j)+hx(i,j-1));
end
end
pulse= exp(-.5*((t0-T)/spread)^2);
dz(ic,jc)=pulse;
for j=1:JE-1
for i=1:IE-1
ez(i,j)=ga(i,j)*dz(i,j);
end
end
for j=1:JE-1
for i=1:IE-1
hx(i,j)=hx(i,j)+.5*(ez(i,j)-ez(i,j+1));
end
end
for j=1:JE-1
for i=1:IE-1
hy(i,j)=hy(i,j)+.5*(ez(i+1,j)-ez(i,j));
end
end
%记录动画帧
frame_step=3;
kk=kk+1;
if kk==frame_step
[x,y]=meshgrid(1:JE,1:IE);
contour(x,y,ez)
%view(2) %x为横坐标,y为纵坐标,ez为随x y 变换的函数
% axis([0 JE 0 IE -3 3]);
axis([0 JE 0 IE]);
Fe(kkk)=getframe;
kk=0;
kkk=kkk+1;
end
end
% [x,y]=meshgrid(1:60);
% mesh(x,y,ez) %x为横坐标,y为纵坐标,ez为随x y 变换的函数
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -