首页> 商业 > 详情

【天天报资讯】FSPM12/10反电势FFTmatlab出图码

2023-03-12 01:05:08来源:哔哩哔哩

%作反电势频谱图

%J是基波频率

J=FFTmatrix(3,1);


(相关资料图)

%FFTmatrix是以数组形式(矩阵)形式导入的FFT全部数据

%根据极对数与频次成正比得到谐波阶次

order=FFTmatrix(:,1)./J;

%FFTmatrix(:,1)表示第一列所有元素(这里正是频率、时间),点乘 . 表示第一列所有元素与基频相除获得谐波阶次。 

%绘制条状频谱图

bar(order,FFTmatrix(:,2),0.4);

%bar(order,FFTmatrix(:,3),0.4);

%bar(order,FFTmatrix(:,4),0.4);

%bar(x,y,width) 设置条形的相对宽度以控制组中各个条形的间隔。将 width 指定为标量值。bar(x,y) 在 x 指定的位置绘制条形。

%绘制FFTmatrix第二列、第三列、第四列的条图。

xlabel('谐波阶次');

ylabel('电压幅值(V)');

title('反电势频谱分布图')

grid;

%计算THD

b1=FFTmatrix(3,2);

b2=FFTmatrix(3,3);

b3=FFTmatrix(3,4); 

%取出每一列数据的基频有效值

i=1;

s=0;

r=size(FFTmatrix,1)

%取出FFTmatrix的行数

while i<=length(r)

x1=FFTmatrix(i,2)*FFTmatrix(i,2);

s=s+x1;

i=i+1;

end

%计算所有谐波与基波的比值  方和根 

THD=sqrt(s)/b1;

sprintf('THD=%2.2f%%',THD*100)

标签:

上一篇:
下一篇: