單位脈衝序列的m檔案:
function [x,n] = impseq(n0,n1,n2)
if ((n0 < n1) | (n0 > n2) | (n1 > n2))
error('引數必須滿足 n1 <= n0 <= n2')
endn = [n1:n2];
x = [(n-n0) == 0];
呼叫例如:
[x,n] = impseq(2,0,5);%表示從0開始共6個點,第二個點為1。
單位階躍序列的m檔案:
function [x,n] = stepseq(n0,n1,n2)
if ((n0 < n1) | (n0 > n2) | (n1 > n2))
error('引數必須滿足 n1 <= n0 <= n2')
endn = [n1:n2];
x = [(n-n0) >= 0];
呼叫:[x,n] = stepseq(2,0,5);
另外我在測試的時候發現了這樣的報錯:cannot find an exact (case-sensitive) match for...。這種情況好像是因為出現了大小寫不同。
把檔名(包括.m)和函式名一律改為小寫即可。
matlab中可以用y = conv(x,h)來計算兩個有限長度序列的卷積。該函式無法得知位置資訊,預設x和h位置向量都是從零開始。可以根據需要擴充套件。
這裡注意,matlab預設序列從零開始,即為0:n-1。但是變數的下標(即括號中的序號)倒是從1開始的,即為1:n。
卷積的輸出序列長度區間為n = 0:length(x)+length(y)-1。
說到卷積,則相關函式也是卷積的形式,例如x和y的互相關表示為y(m)和x(-m)的卷積,x的自相關表示為x(m)和x(-m)的卷積。
注意相關函式也是隨n變化的。如果x和y的互相關在n0處有峰值,說明y和x移位n0後相似。
lti系統可以用差分方程來描述。但差分方程不一定描述lti系統,必須滿足所謂的鬆弛條件。
matlab解差分方程可以用y = filter(b,a,x)來實現。b是x那邊的係數向量,a是y那邊的係數向量,x是輸入序列。
此外,可以用[h,n] = impz(b,a,n)來求解h(n)。
數字訊號處理 時域離散系統
單位脈衝響應 h n 是反映系統 t cdot 特性的乙個序列.不同的系統,單位脈衝響應不同.單位脈衝響應就是系統輸入乙個單位脈衝訊號之後的輸出.對於乙個線性時不變系統而言,系統的輸出可以看作是單位脈衝響應和輸入訊號的卷積 y n h n x n 系統的輸入輸出之間滿足線性疊加性原理的系統稱為線性系...
連續訊號和離散訊號
連續余弦訊號 xa t acos t a cos 2 ft 離散余弦訊號 x n a cos n ac os 2 fn x fs t 為連續訊號角速度 單位為 rad s 為單位樣本的弧度,即離散訊號角速度 f為連續訊號頻率 單位為 hz f為相對頻率或歸一化頻率 ff s,fs 是離散訊號取樣率 ...
訊號與系統時域分析(1)綜述
一 訊號的分類 對訊號進行研究首先要知道這是什麼訊號,訊號可以從不同角度分類 1.確定性訊號 隨機訊號 確定性訊號 對某一時刻可確定一相應的函式值 隨機訊號 只可能知道訊號的統計特性,如在某時刻的取值概率分布 2.週期訊號 非週期訊號 週期訊號 依一定時間間隔周而復始 f t f t nt n為正整...