📄 program_09_10.m
字号:
% 设置小波函数、时间间隔和采样点数
wname = 'morl';
A = 0; B = 64; P = 500;
% 计算采样周期和采样函数及真实频率
t = linspace(A,B,P);
delta = (B-A)/(P-1);
tab_OMEGA = [5,2,1];
tab_FREQ = tab_OMEGA/(2*pi);
tab_COEFS = [5,3,2];
x = zeros(1,P);
for k = 1:3;
x = x+tab_COEFS(k)*sin(tab_OMEGA(k)*t);
end
% 设置尺度并且使用scal2frq函数来计算准频率数列
scales = [1:1:60];
tab_PF = scal2frq(scales,wname,delta);
% 计算最近似的准周期和相应的尺度
for k=1:3
[dummy,ind] = min(abs(tab_PF-tab_FREQ(k)));
PF_app(k) = tab_PF(ind);
SC_app(k) = scales(ind);
end
% 进行连续分解并绘图
str1 = strvcat( ...
'500 samples of x = 5*sin(5t)+3*sin(2t)+2*sin(t) on [0,64]',...
['真实频率 (Hz): [5 2 1]/(2*pi) =~ [' ...
num2str(tab_FREQ,3) ']' ] ...
);
str2 = ['准周期和尺度: '];
str3 = [num2str([tab_PF',scales'],3)];
str4 = ['准频率 = ' num2str(PF_app,3)];
str5 = ['相应尺度 = ' num2str(SC_app,3)];
figure; cwt(x,scales,wname,'plot'); ax = gca; colorbar
axTITL = get(ax,'title');
axXLAB = get(ax,'xlabel');
set(axTITL,'String',str1)
set(axXLAB,'String',strvcat(str4, str5))
clc;
disp(strvcat(' ',str1,' ',str2,str3,' ',str4,str5))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -