fft之后求模值和相位_Matlab FFT后求解相位差,结果与原论文不对(附程序)

在Matlab中,作者对一个50Hz正弦信号进行线性插值并进行FFT运算,以求解相位差。然而,计算结果与预期论文中的结果不符,存在负值和较大误差。问题可能在于频率对齐或相位处理环节。
摘要由CSDN通过智能技术生成

原信号:sin(100*pi*t+初相角)是标准的50HZ的正弦信号,初相角从0度变化到14度

对该信号线性插值得到新序列:(t-t1)/(t0-t1)*sin(100*pi*t0+(q-1)/180*pi)+(t-t0)/(t1-t0)*sin(100*pi*t1+(q-1)/180*pi)

FFT后求解原序列与插值后新序列,对应50HZ信号的相位差,结果与原论文不对。请高人给予指点。

clc;

clear;

x1(:,1)=[0;0;0;0;0;  0;0;0;0;0;  0;0;0;0;0];

x2(:,1)=[0;0;0;0;0;  0;0;0;0;0;  0;0;0;0;0];

y1(1,:)=[0;0;0;0;0;0;0;0;  0;0;0;0;0;0;0;0;  0;0;0;0;0;0;0;0];

y2(1,:)=[0;0;0;0;0;0;0;0;  0;0;0;0;0;0;0;0;  0;0;0;0;0;0;0;0];

y1_max=[0;0;0;0;0;0;0;0;  0;0;0;0;0;0;0;0;  0;0;0;0;0;0;0;0]';

y2_max=[0;0;0;0;0;0;0;0;  0;0;0;0;0;0;0;0;  0;0;0;0;0;0;0;0]';

N=24;%24个点,23个区间,n本来用N表示,为了好理解不用了,只是表示是24个点采样

fs=24/0.02;

N=24;

format long;

for q=1:15%(初相角从0度变换到14度)

for  m=1:15%(每两个采样点之间的区间15等份)

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值