分步傅里叶算法的MATLAB程序实现

上传人:hs****ma 文档编号:511735737 上传时间:2022-07-28 格式:DOC 页数:6 大小:62KB
返回 下载 相关 举报
分步傅里叶算法的MATLAB程序实现_第1页
第1页 / 共6页
分步傅里叶算法的MATLAB程序实现_第2页
第2页 / 共6页
分步傅里叶算法的MATLAB程序实现_第3页
第3页 / 共6页
分步傅里叶算法的MATLAB程序实现_第4页
第4页 / 共6页
分步傅里叶算法的MATLAB程序实现_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《分步傅里叶算法的MATLAB程序实现》由会员分享,可在线阅读,更多相关《分步傅里叶算法的MATLAB程序实现(6页珍藏版)》请在金锄头文库上搜索。

1、分步傅里叶算法的MATLAB程序实现举例模型:2.仁 UI 一;z 2 :x2.2d nn = U (x, z j +d (z )2 ex其中:d z i=exp z 或 d z = exp -、z线性部分:两边同时对dU = I c2u;z2 ;x2x变量作傅里叶变换两边积分x h 2 1 x h 2 I2x =dU = % - r dz U2最后有U (x + h/2)=U (x)exp I;(险 f *再对x变量作作傅里叶逆变换U (x + h/2)=FFT-1 FFTU(x)expgz )非线性部分:U:z二 inU两边积分xh 1x hx jdU = x IndzlnU2L.inhU

2、 x最后有U x h = U x exp inh折射率部分|2n = U (x, z)+ d(z)马ex两边同时对x变量作傅里叶变换n =FFTu2 d z * ifft u 212d z再对x变量作作傅里叶逆变换n=FFT-1FFT _U 212d zMATLAB程序实现:clear alldelta=1;x0=1;%n=2048;hx=0.06;x=(- n/2:n /2-1)*hx;hw=2*pi/( n*hx);w=fftshift(- n/2: n/2-1)*hw);%q=exp(-1*(x-x0).A2/2)+ exp(-1*(x+x0).A2/2); % q=sech(x);u1

3、(:,1)=(abs(q)A2):%L=500;nm=L*100;h=L/ nm;%for j=1: nmj;Dz二exp(delta*j*h)D二exp(i*(i*w)八2/2)*h/2);qstep1=ifft(D.*fft(q);nn dex=ifft(fft(abs(qstep1).A2)./(Dz*w.A2+1);N=exp(i* nn dex*h);qstep2二N.*qstep1;q=ifft(D.*fft(qstep2);u=abs(q);r=floor(2+(j-1)/L);u1(:,r)=u;endz=O:L*h:L;figure(1)mesh(x,z,u1);view(0

4、,90)figure(2)plot(x,u1(:,e nd),r,x,V,b)虚时间变换:作虚时间变换:z iz得到2nU pR(x)U =0.:U 仁 U r 2Z 2 :x|2n = U (x, z j +d-2:-n-2.x22两边积分MATLAB程序实现:2线性部分:;:U 仁 2u:z 2 :x两边同时傅里叶变换X h2 1X h 2 12d U =i;-, ,dzu x 2即U x h/212 hIn二二 i ,*U x22最后有12 hU(x + h/2)=U(x)exp 协巧* 才再作傅里叶逆变换U (x + h/2)=FFT-1 FFT-U(x)expg(陆非线性部分: nU

5、 pR(x)U:z两边积分x “h 1x -hdU = ! n pR(x) Idz x ULx当h 0时.U x h口 n PR x *h最后有U x h =U x expn pR *hclear allLh=0;p=1;omega=1;Dz=0;%n=2048;hx=0.06;x=(- n/2:n /2-1)*hx;hw=2*pi/( n*hx);w=fftshift(- n/2: n/2-1)*hw);%q=exp(-1*(x).A2/2);% q=sech(x);intensity=2;u1(:,1)=(abs(q)八2):%V=p*(cos(omega*x).八2.*(1+Lh*exp

6、(-x48/128);%L=500; nm=L*100;h=L/nm;%for j=1:nmj;D=exp(i*w).A2/2)*h/2);qstep1=ifft(D.*fft(q); n_index=ifft(fft(abs(qstep1).A2)./(Dz*w.A2+1); N=exp(V+n_index)*h);qstep2=N.*qstep1;q=ifft(D.*fft(qstep2); q=sqrt(intensity)*q/sqrt(sum(abs(q).A2)*hx); u=abs(q);r=floor(2+(j-1)/L);u1(:,r)=u;endkin=-sum(q(3:end)-q(1:end-2).A2)/4/hx; p_i=sum(2*q.A2.*(abs(q).A2+V+n_index)*hx; b=(kin+p_i)/2/intensityz=0:L*h:L;figure(1) mesh(x,z,u1);view(0,90)figure(2)plot(x,u1(:,end),r,x,V,b)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号