📄 part_3.br
字号:
// Precalcute input pulse
t[0]=dt;
gauss[0]=0;
for (i=1; i<N; i++) {
t[i]=t[i-1]+dt;
gauss[i]= exp(-( ((t[i]-t0)*(t[i]-t0))/(tau*tau)));
}
// Define Exterior Size
insizex = xsize;
insizey = ysize;
// Initialize our C field and constant arrays
// 1D X Arrays
for (i=0; i<nx; i++) {
aKex[i]=1;
aKhx[i]=1;
abex[i]=0;
abhx[i]=0;
acex[i]=0;
achx[i]=0;
}
// 1D Y Arrays
for (i=0; i<ny; i++) {
aKey[i]=1;
aKhy[i]=1;
abey[i]=0;
abhy[i]=0;
acey[i]=0;
achy[i]=0;
}
// 2D Arrays
for (j=0; j<ny; j++) {
for (i=0; i<nx; i++) {
aHy[nx*j+i]=0;
aHx[nx*j+i]=0;
aEz[nx*j+i]=0;
aCs[nx*j+i]=0;
aCeze[nx*j+i]=1.0;
aChxh[nx*j+i]=1.0;
aChyh[nx*j+i]=1.0;
aCezh[nx*j+i]=(dt/eps0);
aChxe[nx*j+i]=(dt/mu0);
aChye[nx*j+i]=(dt/mu0);
apsi[nx*j+i]=0;
}
}
// Set PEC Boundary
// (Easy way, fill with PEC then fill internal with air)
for (j=0; j<ny; j++) {
for (i=0; i<nx; i++) {
aCeze[nx*j+i]=(1-(ce*1e30))/(1+(ce*1e30));
aCezh[nx*j+i]=((2*ce)/(1+(ce*1e30)));
}
}
for (j=2; j<ny-2; j++) {
for (i=2; i<nx-2; i++) {
aCeze[nx*j+i]=1.0;
aCezh[nx*j+i]=(dt/eps0);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -