声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1806|回复: 1

[综合讨论] 关于matlab应用傅立叶变换求函数的一阶矩问题!

[复制链接]
发表于 2011-1-4 13:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
关于应用傅立叶变换求函数的一阶矩问题!
利用函数的傅立叶变换可以求函数的积分和一阶矩!下面例子结果不是理想,差距较大,请教高手,如何改善! % 利用fft求函数的积分和一阶矩

clear all

intf2=@(t)2*exp(-3*t);%被积函数

intv2=quadgk(intf2,0,3);%积分;



intf1=@(t)2*exp(-3*t).*t;

intv1=quadgk(intf1,0,3);%被积函数的一阶矩;



%数值解

N=2^10;

t=linspace(0,3,N);

f=2*exp(-3*t);%被积函数:intf2=@(t)2*exp(-3*t);



ts=t(2)-t(1);

ws=2*pi/ts;

F=fft(f);

fc=fftshift(F)*ts;%傅立叶变换的数值解;

w=ws*(-N/2:N/2-1)/N;



index=find(w==0);%找零点的索引;

dv=diff(fc)./diff(w);%求导;

disp([0.5i*dv(index)/pi,intv1,fc(index),intv2]);%前两项是一阶矩,后两是函数积分值!
复制代码
结果差异比较大,恳请不吝赐教!(本帖曾在仿真论坛发过)
回复
分享到:

使用道具 举报

 楼主| 发表于 2011-1-4 16:10 | 显示全部楼层
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-29 18:32 , Processed in 0.052913 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表