www.gusucode.com > Fox-Li模拟谐振腔,含有条形,矩形,圆形腔,并做成GUI可是界面源码程序 > code3/bar.m

    function bar(edit1_button,edit4_button,edit5_button,edit6_button,handles)
N=399;
A=ones(N+1,1);
B=zeros(N+1,1);
a=edit1_button;
L=edit4_button;
b=edit5_button;
k=2*pi/b;
c=sqrt(i*exp(-i*k*L)/(b*L));
delta=2*a/N;
diedai=edit6_button;
m=1:N+1;
j=1;
for n=1:diedai
  while j<N+2
      B(j)=c*exp(-i*k*(delta*(j-m)).^2/(2*L))*A*delta;
      j=j+1;
  end
  j=1;
    ma=max(B);
    A=B/ma;
    x=-a+2*a*(m-1)/N;
    y=abs(A);
    axes(handles.axes1)
    plot(x,y)
    axes(handles.axes2)
    plot(x,angle(A))
    mywaitbar(diedai,300,10,n)
    set(handles.text17,'String',[num2str(n*100/diedai),'%'])   
end
mywaitbaroff(diedai,300,10)