时间分辨率的谱熵——我怎么能修改它吗?

13个视图(30天)
约翰·纳瓦罗
约翰·纳瓦罗 2021年3月10日
评论道: 约翰·纳瓦罗2021年10月12日
大家好,
我有一个信号(时间表307200数据点)的采样率为20480 Hz(0.00005秒)和总长度的15.0秒。
当我应用命令 pentropy 我得到一个向量 te 长度为500点,相当于0.03秒的时间分辨率
我确认这个值如下所示。问题是,我需要信号的谱熵每个0.02秒和0.05秒。
任何方式,我可以调整或定义这个“ 时间分辨率 ”?
(se, te) = pentropy (Datos01.Sensor1 Fs)
意思是(diff (te))
ans =
0.02997
有人能帮我吗?谢谢
注:我打算使用调整时间命令和@pentropy作为输入,但给我一个错误。见下文
其他将会使用一个和一个移动的窗口,但不知道如何代码
DatosA =调整时间(Datos01,“普通”@pentropy,“步伐”秒(windowLength));
%的错误使用时间表/调整时间(第140行)
应用函数% pentropy的第一组在变量“Sensor01”生成以下错误:
%预计输入参数2将时间信息的形式数字标量采样频率,持续时间
%标量采样时间或数值数组/时间/日期时间随着时间的值。

接受的答案

Yazan
Yazan 2021年8月11日
编辑:Yazan 2021年10月12日
您需要提供Matlab函数的谱图,这谱图应该有你想要的时间分辨率。
看下面的例子。
clc,清晰
fs = 20480;
f = 0.01 * fs;
ts = 1 / f;
t = 0: ts: 15-ts;
x = cos(2 *π* f * t);
%计算功率谱图与时间分辨率等于0.02秒
%注意之间的重叠谱图窗口设置为零
%如果引入重叠窗口、时间分辨率
%被改变,保证“tp”是采样每0.02秒
(p, fp, tp) = pspectrum (x, fs,“TimeResolution”,0.02,“OverlapPercent”0,的谱图);
%计算谱熵
(se, te) = pentropy (p, fp, tp);
流(“谱熵估计每个% g交会\ n ',意味着(diff (te)));
谱熵估计每0.0199707秒

更多的答案(0)