| 查看: 2341 | 回复: 7 | ||
oewindbell铜虫 (小有名气)
|
[求助]
matlab 利用快速傅里叶变换计算谐振腔的模式
|
|
%%利用二维快速傅里叶变换方法计算谐振腔中的模式 clear; clc; lambda=1.064*10^-6; %波长 k=2*pi/lambda; %波数 a=0.5*10^-3; %镜子的半径 fnum=5; %菲涅尔数 z=a^2/fnum/lambda; %腔长 repet=100; %迭代次数 M=129;N=129; x=linspace(-a,a,M); y=linspace(-a,a,N); [X,Y]=meshgrid(x,y); u0=ones(M,N); u1=zeros(M,N); H=exp(1j*k*z).*exp(-1j*pi*lambda*z.*(X.^2+Y.^2)); for inter=1:repet U0=FFT(u0); U1=U0.*H; u1=ifft(U1); u1=u1./max(abs(u1( ));u0=u1; end Ie=u1.*conj(u1); Ie=Ie./max(Ie( );surf(X,Y,Ie); shading interp; axis([-a,a,-a,a,0,1]); box on; grid off; 本人是matlab初学者,请各位大神帮忙指点一二! 谢谢了 |
» 猜你喜欢
瑞典林雪平大学博士后招聘|PEC Water Splitting 方向
已经有130人回复
PRB投稿,Acknowledgment sent to author状态十天了
已经有3人回复
物理学I论文润色/翻译怎么收费?
已经有142人回复
PVA溶解
已经有2人回复
基金申请
已经有44人回复
CSC与新西兰维多利亚大学PhD奖学金项目
已经有0人回复
新西兰Robinson研究所 招聘CSC公派访问人员
已经有0人回复
帮我的英语口语老师找学生
已经有0人回复
什么时候开奖?
已经有11人回复
散金币祈福
已经有94人回复
» 本主题相关价值贴推荐,对您同样有帮助:
关于matlab进行傅里叶变换和逆变换的程序,求大神指导!
已经有9人回复
求教matlab傅里叶变换求解
已经有5人回复
求助:能不能帮忙写一个用matlab求一个函数的傅里叶变换的程序
已经有16人回复
matlab 傅里叶变换 频谱分析
已经有12人回复
如何用matlab进行快速傅里叶变换?(请教)
已经有5人回复
alorsmail
铁杆木虫 (著名写手)
- 应助: 52 (初中生)
- 金币: 7398.3
- 红花: 41
- 帖子: 2104
- 在线: 237小时
- 虫号: 2537936
- 注册: 2013-07-09
- 专业: 系统生物学
2楼2013-08-20 22:43:42
oewindbell
铜虫 (小有名气)
- 应助: 1 (幼儿园)
- 金币: 324.9
- 红花: 1
- 帖子: 120
- 在线: 213.9小时
- 虫号: 1828175
- 注册: 2012-05-21
- 性别: GG
- 专业: 光学
3楼2013-08-20 23:44:45

4楼2013-08-21 11:14:46
oewindbell
铜虫 (小有名气)
- 应助: 1 (幼儿园)
- 金币: 324.9
- 红花: 1
- 帖子: 120
- 在线: 213.9小时
- 虫号: 1828175
- 注册: 2012-05-21
- 性别: GG
- 专业: 光学
5楼2013-08-21 12:30:06

6楼2013-08-22 17:48:58
oewindbell
铜虫 (小有名气)
- 应助: 1 (幼儿园)
- 金币: 324.9
- 红花: 1
- 帖子: 120
- 在线: 213.9小时
- 虫号: 1828175
- 注册: 2012-05-21
- 性别: GG
- 专业: 光学
|
%%利用二维快速傅里叶变换方法计算谐振腔中的模式 clear; clc; lambda=1.064*10^-6; %波长 k=2*pi/lambda; %波数 a=0.5*10^-3; %镜子的半径 fnum=5; %菲涅尔数 z=a^2/fnum/lambda; %腔长 repet=100; %迭代次数 M=129;N=129; x=linspace(-a,a,M); y=linspace(-a,a,N); [X,Y]=meshgrid(x,y); u0=ones(M,N); u1=zeros(M,N); H=exp(1j*k*z).*exp(-1j*pi*lambda*z.*(X.^2+Y.^2)); for inter=1:repet U0=fft2(u0); U1=U0.*H; u1=ifft2(U1); u1=u1./max(abs(u1(:)); u0=u1; end Ie=u1.*conj(u1); Ie=Ie./max(Ie(:); surf(X,Y,Ie); shading interp; axis([-a,a,-a,a,0,1]); box on; grid off; 这是修改后的,结果还是有点问题 |
7楼2013-08-23 08:20:56
oewindbell
铜虫 (小有名气)
- 应助: 1 (幼儿园)
- 金币: 324.9
- 红花: 1
- 帖子: 120
- 在线: 213.9小时
- 虫号: 1828175
- 注册: 2012-05-21
- 性别: GG
- 专业: 光学
8楼2013-08-23 08:22:32









));
回复此楼
是什么么