主要内容

mscohere

幅度平方相干

描述

cxy=mscohere(xy查找震级平方相干估计,cxy,输入信号的,xy

  • 如果xy都是向量,它们的长度必须相同。

  • 如果一个信号是矩阵,另一个是向量,那么向量的长度必须等于矩阵中的行数。该函数展开向量并返回一个逐列幅值平方相干估计矩阵。

  • 如果xy矩阵的行数相同但列数不同,那么mscohere返回多重一致性矩阵。这个第列cxy包含所有输入信号与输入信号之间的相关程度的估计值输出信号。看到平方的一致性了解更多信息。

  • 如果xy那么矩阵的大小是相等的吗mscohere操作列:cxy(:,n)=mscohere(x(:,n),y(:,n)).要获得多重相干矩阵,请附加“mimo”到参数列表。

cxy=mscohere(xy使用xy分成段并执行窗口操作。您必须使用至少两个段。否则,所有频率的振幅平方相干性为1。在MIMO的情况下,段的数量必须大于输入通道的数量。

cxy=mscohere(xynoverlap使用noverlap相邻段之间重叠的示例。

例子

cxy=mscohere(xynoverlapnfft使用nfft计算离散傅里叶变换的采样点。

例子

cxy=mscohere(___(“mimo”)计算矩阵输入的多重相干矩阵。此语法可以包括来自以前语法的输入参数的任意组合。

cxyw]=mscohere(___返回标准化频率的向量,w时,估计出振幅平方相干性。

例子

cxyf]=mscohere(___fs返回频率向量,f,以采样率表示,fs时,估计出振幅平方相干性。fs必须是到的第六个数字输入mscohere.若要输入一个抽样率并且仍然使用前面可选参数的默认值,请将这些参数指定为空,[]

cxyw]=mscohere(xynoverlapw返回中规定的归一化频率处的幅度平方相干估计w

cxyf]=mscohere(xynoverlapffs返回在中指定的频率处的幅值平方相干估计值f

___]=mscohere(xy___频率范围在指定的频率范围内返回幅度平方相干估计频率范围.有效选项频率范围“片面的”“双面的”“居中”

例子

mscohere(___在没有输出参数的情况下,在当前图形窗口中绘制幅值平方相干估计。

例子

全部崩溃

计算并绘制两个有色噪声序列之间的相干性估计。

产生由高斯白噪声组成的信号。

r=randn(16384,1);

要创建第一个序列,带通滤波器的信号。设计一个16阶滤波器,通过0.2 ~ 0.4π rad/sample之间的归一化频率。指定一个60 dB的阻带衰减。过滤原始信号。

dx=设计过滤器(“bandpassiir”“过滤器订单”,16,...“阻带频率1”, 0.2,“阻带频率2”,0.4,...“止损绷带”、60);x =过滤器(dx, r);

为了创建第二个序列,设计一个16阶滤波器,使归一化频率停止在0.6π和0.8πrad/sample之间。指定0.1 dB的通带纹波。过滤原始信号。

dy=设计过滤器(“bandstopiir”“过滤器订单”,16,...“通带频率1”,0.6,“通带频率2”,0.8,...“PassbandRipple”, 0.1);y =过滤器(dy, r);

估计的振幅的平方相干性xy.使用512个样本汉明窗口。指定相邻线段和2048个DFT点之间重叠的500个样本。

[cxy, fc] = mscohere (x, y,汉明(512),500年,2048年);

绘制相干函数并叠加滤波器的频率响应。

[qx,f]=freqz(dx);qy=freqz(dy);绘图(fc/pi,cxy)保持在…上情节(f /π,abs(季度)、f /π,abs (qy))

图中包含一个轴。该轴包含3个类型为line的对象。

生成随机双通道信号,x. 产生另一个信号,y,通过对两个通道进行低通滤波并将其相加。指定一个截止频率为0.3π并使用矩形窗口设计的30阶FIR滤波器。

h=fir1(30,0.3,rectwin(31));x=randn(16384,2);y=和(滤波器(h,1,x),2);

计算的多相干估计xy.使用1024个样本Hann窗口对信号进行窗口处理。指定相邻段和1024个DFT点之间重叠的512个样本。绘制估计值。

noverlap=512;nfft=1024;mscohere(x,y,hann(nfft),noverlap,nfft,“mimo”

图中包含一个轴。通过Welch进行标题一致性估计的轴包含一个line类型的对象。

将相干性估计值与滤波器的频率响应进行比较。相干性下降对应于频率响应的零点。

[H,f]=freqz(H);保持在…上yyaxis正确的图(f/pi,20*log10(abs(H))保持

图中包含一个轴。通过Welch进行标题一致性估计的轴包含2个line类型的对象。

计算并绘制地震波的普通震级平方相干估计xy. 任何信道的估计值均未达到1。

图mscohere (x, y,损害(nfft) noverlap, nfft)

图中包含一个轴。通过Welch进行标题一致性估计的轴包含2个line类型的对象。

产生两个多通道信号,每个采样在1 kHz 2秒。第一个信号,即输入,由三个频率为120 Hz、360 Hz和480 Hz的正弦波组成。第二个信号是输出信号,由两个频率为120 Hz和360 Hz的正弦波组成。其中一个正弦波滞后于第一个信号π/2。另一个正弦波有π/4的延迟。两个信号都嵌入了高斯白噪声中。

fs=1000;f=120;t=(0:1/fs:2-1/fs);(inpt=sin(2*pi*f*[1 3 4].*t);inpt=inpt+randn(size(inpt));oupt=sin(2*pi*f*[1 3].[t-[pi/2 pi/4]);oupt=oupt+randn(size(oupt));

估计所有输入信号和每个输出通道之间的相关度。使用长度为100的汉明窗口对数据进行窗口处理。mscohere为每个输出通道返回一个相干函数。相干函数在输入和输出共享的频率处达到最大值。

[Cxy f] = mscohere (inpt oupt,汉明(100),[],[],fs,“mimo”);k = 1:尺寸(oupt, 2)次要情节(大小(oupt, 2), 1, k)情节(f, Cxy (:, k))标题([“输出”int2str(k)'所有输入'])结束

图中包含2个轴。轴1带有标题输出1,所有输入包含一个line类型的对象。轴2带有标题输出2,所有输入包含一个line类型的对象。

切换输入和输出信号并计算多重相干函数。使用相同的汉明窗口。在480 Hz时,输入和输出之间没有相关性。因此,第三个相关函数中没有峰值。

[Cxy,f]=mscohere(oupt,inpt,hamming(100),[],[],fs,“mimo”);k=1:size(inpt,2)子地块(size(inpt,2),1,k)绘图(f,Cxy(:,k))标题([“输入”int2str(k)'所有输出'])结束

图中包含3个轴。标题为Input 1的轴1,所有输出包含一个类型为line的对象。标题为Input 2的轴2,所有输出包含一个类型为line的对象。轴3,标题为Input 3,所有输出包含一个类型为line的对象。

使用的打印功能重复计算mscohere

clf mscohere (oupt inpt,汉明(100),[],[],fs,“mimo”

图中包含一个轴。通过Welch进行标题一致性估计的轴包含3个line类型的对象。

计算第二个信号的普通相干函数和第一个信号的前两个通道。非峰值不同于多重相干函数。

[Cxy,f]=mscohere(oupt,inpt(:,[12]),hamming(100),[],[],fs);plot(f,Cxy)

图中包含一个轴。该轴包含两个类型为line的对象。

通过计算最大相干性点处的交叉谱角来求相位差。

Pxy=cpsd(输出,输入(:,[12]),hamming(100),[],[],[],fs);[~,mxx]=max(Cxy);k=1:2 fprintf('相位滞后%d = %5.2f*pi\n', k,角(Pxy (mxx (k), k)) / pi)结束
相位滞后1 = -0.51*pi相位滞后2 = -0.22*pi

生成两个正弦信号,每个信号以1kHz的频率采样1秒。每个正弦信号的频率为250Hz。其中一个信号的相位滞后于另一个π/3弧度。将两个信号嵌入单位方差的高斯白噪声中。

fs=1000;f=250;t=0:1/fs:1-1/fs;um=sin(2*pi*f*t)+rand(size(t));un=sin(2*pi*f*t-pi/3)+rand(size(t));

使用mscohere计算并绘制信号的幅度平方相干性。

mscohere(嗯,联合国,[],[],[],财政司司长)

图中包含一个轴。通过Welch进行标题一致性估计的轴包含一个line类型的对象。

修改绘图的标题、绘图的标签x-轴,以及y-轴心国。

头衔(“平方一致性”)xlabel(“f (Hz)”)ylim([01.1])

图形包含一个轴。标题大小平方一致的轴包含一个line类型的对象。

使用gca获取当前坐标轴的句柄。更改标记的位置。去掉标签y-轴心国。

ax=gca;ax.XTick=0:250:500;ax.YTick=0:0.25:1;ax.YLabel.String=[];

图形包含一个轴。标题大小平方一致的轴包含一个line类型的对象。

打电话给孩子们属性更改打印线的颜色和宽度。

ln=ax.儿童;ln.Color=[0.80];ln.线宽=1.5;

图形包含一个轴。标题大小平方一致的轴包含一个line类型的对象。

或者,使用收到修改行属性。

设置(get)(gca,“孩子”),“颜色”,[0 0.4 0],“线条样式”'--'“线宽”,1)

图形包含一个轴。标题大小平方一致的轴包含一个line类型的对象。

输入参数

全部崩溃

输入信号,指定为向量或矩阵。

例子:因为(π/ 4 * (0:159))+ randn (1160)指定嵌入高斯白噪声中的正弦信号。

数据类型:仅有一个的|双重的
复数的支持:万博1manbetx

窗口,指定为整数或行或列向量。使用将信号分成若干段:

  • 如果是一个整数,那么mscoherexy分成若干段每个部分都有一个相同长度的汉明窗。

  • 如果那么,这是一个向量mscoherexy分成与向量长度相同的段,并使用

如果xy不能精确地划分为整数个具有noverlap重叠样本,然后相应地截断信号。

如果您指定那就空着吧mscohere使用汉明窗口,以便xy分为八个部分,包括noverlap重叠样本。

有关可用窗口的列表,请参阅窗户

例子:汉恩(N+1)(1-cos(2 *π* (0:N) / N)) / 2两者都指定一个长度为的Hann窗口N+ 1.

数据类型:仅有一个的|双重的

重叠样本的数量,指定为正整数。

  • 如果是标量,那么noverlap必须小于

  • 如果那么,这是一个向量noverlap必须小于的长度

如果您指定noverlap那就空着吧mscohere使用在段之间产生50%重叠的数字。如果未指定段长度,函数将设置noverlap到⌊N/ 4.5⌋,N为输入和输出信号的长度。

数据类型:双重的|仅有一个的

DFT点的数目,指定为正整数。如果您指定nfft那就空着吧mscohere将此参数设置为最大值(256,2p哪里p=⌈日志2N用于长度为的输入信号N

数据类型:仅有一个的|双重的

采样率,指定为正标量。采样率是每单位时间的采样数。如果时间单位为秒,则采样率的单位为Hz。

标准化频率,指定为至少包含两个元素的行或列向量。标准化频率以rad/sample为单位。

例子:w=[pi/4 pi/2]

数据类型:双重的

频率,指定为至少包含两个元素的行或列向量。频率以每单位时间的周期为单位。单位时间由采样率指定,fs如果fs具有采样单位/秒,然后f有赫兹的单位。

例子:fs=1000;f=[100 200]

数据类型:双重的

幅度平方相干估计的频率范围,规定为“片面的”“双面的”“居中”。默认值为“片面的”对于实值信号和“双面的”对于复数信号。

  • “片面的”-返回两个实值输入信号之间的幅度平方相干估计的单边估计,xy如果nfft是偶数,cxynfft/2 + 1行,并在区间内计算[0,πrad/样本。如果nfft很奇怪,cxy有(nfft+1)/2行,间隔为[0,πrad/样本。如果您指定fs,相应的间隔为[0,fs/2]周期/单位时间为偶数nfft和[0,fs/2) 奇数周期/单位时间nfft

  • “双面的”-返回两个实值或复数输入信号之间的幅度平方相干估计的双边估计,xy.在这种情况下,cxynfft行和在间隔内计算[0,2πrad/样本。如果您指定fs,区间为[0,fs)周期/单位时间。

  • “居中”-返回两个实值或复数输入信号之间的幅值平方相干估计的中心双边估计,xy.在这种情况下,cxynfft行和在间隔内计算(-ππrad /样品nfft(-ππrad/奇数样本nfft。如果你指定fs,对应的区间为(-fs/2,fs/2]周期/单位时间为偶数nfft和(-fs/2,fs/2) 奇数周期/单位时间nfft

输出参数

全部崩溃

幅值平方相干估计,作为向量、矩阵或三维数组返回。

标准化频率,作为实值列向量返回。

频率,作为实值列向量返回。

更多关于

全部崩溃

平方的一致性

幅度平方相干估计是频率的函数,其值介于0和1之间。这些值表明了x对应于y在每个频率。振幅平方相干性是功率谱密度的函数,PxxfPyyf,以及交叉功率谱密度,Pxyf属于xy:

C x y f | P x y f | 2 P x x f P y y f

对于多输入/多输出系统,多重相干函数变为

C X y f P X y __ f P X X 1 f P X y f P y y f P x 1 y * f P x y * f P x 1 x 1 f P x 1 x 2 f P x 1 x f P x 2 x 1 f P x 2 x 2 f P x 2 x f P x x 1 f P x x 2 f P x x f 1 P x 1 y f P x y f 1 P y y f

对于th输出信号,其中:

  • X对应的数组投入。

  • PXy-输入和输出之间的交叉功率谱密度的维数向量y

  • PXX-借-输入功率谱密度和交叉功率谱密度矩阵。

  • Pyy是输出的功率谱密度。

  • 匕首(†)代表复杂共轭转置。

算法

mscohere估计振幅平方相干函数[2]使用Welch的重叠平均周期图方法[3][5]

工具书类

[1] Gómez González,A.,J.Rodríguez,X.Sagartzazu,A.Schumacher和I.Isasa.“非平稳信号噪声和振动传输路径分析的时域多重相干方法。”2010年国际噪声与振动工程会议记录,ISMA2010-2010.第3927-3941页。

Kay, Steven M。现代谱估计。恩格尔伍德悬崖,新泽西州:普伦蒂斯大厅,1988年。

[3] 拉宾纳、劳伦斯R.和伯纳德·戈尔德。数字信号处理的理论与应用。恩格尔伍德悬崖,新泽西州:普伦蒂斯大厅,1975年。

[4] 斯托伊卡、彼得和伦道夫·摩西。信号的频谱分析。上鞍河,新泽西州:普伦蒂斯大厅,2005年。

[5] 快速傅里叶变换在功率谱估计中的应用:一种基于短时间平均的方法,修正的周期图IEEE®音频和电声学学报。《非洲联盟》第15卷,1967年,第70-73页。

扩展能力

C/C++代码生成
使用Matlab®编码器生成C和C++代码™.

在R2006a之前引入