MATLAB裡產生平滑函式的問題

2021-10-10 17:25:50 字數 1035 閱讀 1341

#產生乙個隨機初相信號x(t) = 5*cos(t+φ)

最終程式

clc;clear

x = zeros(0,6);

l = unifrnd(0,2pi,1,3);

for k = 1:3

t = 1:0.1:100;

y = 5cos(t + l(k));

values = spcrv([[t(1) t t(end)];[y(1) y y(end)]],3);

plot(values(1,:),values(2,:));

hold on;

endxlabel(『t』);ylabel(『x(t)』);

grid on; axis tight;

title(『隨機初相信號的三條樣本曲線』);

1.關於unifrnd

l = unifrnd(0,2pi,1,3);

表示生成乙個13的矩陣,引數範圍(0,2pi)

2.關於迴圈

t = 1:0.1:100;

若使用for t = 1:100

…end

後面曲線無法生成,原因是這樣步長還有隨機數的大小都是雜亂的,導致spcrv時出現錯誤

3.關於spcrv,典型用法

values = spcrv([[t(1) t t(end)];[y(1) y y(end)]],3);

plot(values(1,:),values(2,:));直接plot只能生成折線圖

#spcrv測試程式

clc;clear;

x = 0:0.1:0.5*pi;

y = cos(x);

values = spcrv([[x(1) x x(end)];[y(1) y y(end)]],3);

plot(values(1,:),values(2,:));

hold on;

grid on;axis tight;

matlab學習之降噪平滑演算法

平滑降噪測試,如下 平滑降噪 fft變換和小波變換 clcclf clear length of sig 128 x linspace 0,2 pi,length of sig signal 5 sin x 2 sin 5 x randn x 書上的這個是錯的,隨機數裡的引數要求是整數 raw 5 ...

Matlab矩陣的產生

1.簡易陣列 matlab的運算事實上是以陣列 array 及矩陣 matrix 方式在做運算,而這二者在matlab的基本運算性質不 同,陣列強調元素對元素的運算,而矩陣則採用線性代數的運算方式。而宣告一變數為陣列或是矩陣時,如果是要個別鍵入元素,須用中括號 將元素置於其中。陣列為一維元素所構成,...

MATLAB 產生頻寬訊號

clc clear all close all 產生中心頻率150mhz 頻寬50mhz,取樣率252mhz的頻寬訊號 tp 65.015e 6 發射時寬.控制點數.比如要輸出的點數是l,tp l fs 16384 252e6 65.015e 6 b 50e6 發射頻寬 k b tp 發射調頻率 f...