| 查看: 1128 | 回复: 1 | |||
[求助]
matlab傅里叶变换和积分问题求教
|
| 我有一个函数B(rho),他是以rho为自变量的一个已知函数,现在需要对其进行傅里叶变换,使得S(eta)=fft(B(rho)),变换后变成了以eta为自变量的函数,现在需要这个以eta为自变量的函数与一个已知的函数MTF(eta)相乘后,在eta为(-20:20)的范围内积分,如何用matlab实现。 |
» 猜你喜欢
计算机、0854电子信息(085401-058412)调剂
已经有4人回复
基金申报
已经有3人回复
国自然申请面上模板最新2026版出了吗?
已经有9人回复
溴的反应液脱色
已经有6人回复
纳米粒子粒径的测量
已经有7人回复
常年博士招收(双一流,工科)
已经有4人回复
推荐一本书
已经有10人回复
参与限项
已经有5人回复
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
|
具体问题是这样:B(rho)是个时域的以rho为变量的函数,是是需要对其傅里叶变换后,变换到频域espolin的函数与另一个频域的函数进行相乘后积分,也就是说程序的问题在这里fft(B(eposilon)),应该怎么改? function y=B(rho) lamda=532e-9; C_2n=1e-14; R=3000; k=2*pi/lamda; aaa=k*rho.^2/(2*R); Omega_21=1.23*C_2n*k^(7/6)*(2*R)^(11/6); eta_y=3*(1+0.69*Omega_21^(6/5)); eta_x=2.61/(1+1.11*Omega_21^(6/5)); y=exp(0.15*Omega_21*eta_x^(7/6)*hypergeom(7/6,1,-k*rho.^2/(8*R)*eta_x)... +1.265*Omega_21*(k*rho.^2/(2*R)/eta_y).^(5/12).*besselk(5/6,(k*rho.^2/(2*R)*eta_y).^0.5))-1; end v=0:50; dim=size(v,2); y=zeros(size(v)); for i=1:dim fun=@(eposilon) abs(fft(B(eposilon)).*(abs(exp(-2.2*(log(eposilon./v(i))).^2))).^2; y(i)=integral(fun,0,250); end plot(v,y); |
2楼2017-03-07 10:48:13












回复此楼