數(shù)字濾波器而已~~搞清原理就簡單啦~~~定義個數(shù)組,或者把濾波器參數(shù)也定義在數(shù)組里方便修改,來一個新數(shù)據(jù)移位一下就行了
十余年的越城網(wǎng)站建設經(jīng)驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。成都營銷網(wǎng)站建設的優(yōu)勢是能夠根據(jù)用戶設備顯示端的尺寸不同,自動調(diào)整越城建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“越城網(wǎng)站設計”,“越城網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
用C# Math轉換
Math.Sqrt 對應二次方,其他的一點一點對吧。
C語言沒有這個函數(shù)
MATLAB中有這個函數(shù)
說明
巴特沃斯濾波器設計
語法
[z,p,k]=butter(n,Wn)
[z,p,k] = butter(n,Wn,'ftype')
[b,a]=butter(n,Wn)
[b,a]=butter(n,Wn,'ftype')
[A,B,C,D]=butter(n,Wn)
[A,B,C,D] = butter(n,Wn,'ftype')
[z,p,k]=butter(n,Wn,'s')
[z,p,k] = butter(n,Wn,'ftype','s')
[b,a]=butter(n,Wn,'s')
[b,a]=butter(n,Wn,'ftype','s')
[A,B,C,D]=butter(n,Wn,'s')
[A,B,C,D] = butter(n,Wn,'ftype','s')
描述
butter 用來設計低通、帶通、高通、和帶阻數(shù)字和模擬的巴特沃斯濾波器。巴特沃斯濾波器的特征是通帶內(nèi)幅度響應最大平坦,且整體上是單調(diào)的。
巴特沃斯濾波器犧牲了在通帶和阻帶內(nèi)的單調(diào)衰減陡度。除非需要巴特沃斯濾波器的平滑性,橢圓或切比雪夫濾波器可以用更小的濾波器階數(shù)獲得更陡峭的衰減特性。
數(shù)字域
[z,p,k] = butter(n,Wn) 設計一個階數(shù)為n,歸一化截止頻率為Wn的低通數(shù)字巴特沃斯濾波器。此函數(shù)用n列的向量z和p返回零點和極點,以及用標量k返回增益。
[z,p,k] = butter(n,Wn,'ftype') 設計一個高通、低通或帶阻濾波器,字符串'ftype'取值是:
'high' 用于設計歸一化截止頻率為Wn的高通數(shù)字濾波器
'low' 用于設計歸一化截止頻率為Wn的低通數(shù)字濾波器
'stop' 用于設計階數(shù)為2*n的帶阻數(shù)字濾波器,Wn應該是有兩個元素的向量Wn=[w1 w2]。阻帶是w1 ω w2.
截止頻率 是幅度響應為處的的頻率。對巴特沃斯濾波器,歸一化截止頻率Wn必須是介于0和1之間的數(shù),這里的1對應于尼奎斯特頻率,即每秒π弧度(π rad/s)。
如果Wn是含有兩個元素的向量,Wn=[w1 w2],butter 返回階數(shù)為 2*n的數(shù)字帶通濾波器,通頻帶為w1 ω w2.
通過返回不同數(shù)量的輸出參數(shù),butter 直接地得到其它的濾波器實現(xiàn)。要獲得傳輸函數(shù)形式,使用如下所示的兩個輸出參數(shù)。
注意 參考下面的限制 了解關于影響形成傳輸函數(shù)的數(shù)值問題。
[b,a] = butter(n,Wn) 設計一個階為n,歸一化截止頻率為Wn的數(shù)字低通巴特沃斯濾波器。它返回濾波器系數(shù)在長度為n+1的行向量b和a中,這兩個向量包含z的降冪系數(shù)。
[b,a] = butter(n,Wn,'ftype') 設計一個高通、低通或帶阻濾波器,字符串'ftype' 是上面描述的'high'、'low'、或 'stop'。
要獲得狀態(tài)空間形式,使用下面所示的4個輸出參數(shù):
[A,B,C,D] = butter(n,Wn) 或
[A,B,C,D] = butter(n,Wn,'ftype') 其中 A、 B,、C,、和D 是
并且u是輸入, x是狀態(tài)向量, y 是輸出。
模擬域
[z,p,k] = butter(n,Wn,'s') 設計一個階n,截止角頻率為Wn rad/s的模擬低通巴特沃斯濾波器。它返回零點和極點在長n或2*n的列向量z和p中,標量k返回增益。butter的截止角頻率Wn必須大于0 rad/s。
如果Wn是有兩個元素w1w2的向量, butter(n,Wn,'s') 返回階 2*n 帶通模擬濾波器,其通帶是w1 ω w2。
[z,p,k] = butter(n,Wn,'ftype','s') 通過使用上面描述的ftype 值可以設計一個高通、低通或帶阻濾波器。
只要返回不同數(shù)量的輸出參數(shù),butter 可以直接地獲得其它的模擬濾波器實現(xiàn)。要獲得傳輸函數(shù)形式,使用如下所示的兩個輸出參數(shù):
[b,a] = butter(n,Wn,'s') 設計一個階n、截止角頻率為Wn rad/s的模擬低通巴特沃斯濾波器。它返回濾波器的系數(shù)在長n+1的行向量b和a中,這兩個向量包含下面這個傳輸函數(shù)中s的降冪系數(shù):
[b,a] = butter(n,Wn,'ftype','s') 通過設置上面描述的ftype 值,可以設計一個高通、低通或帶阻濾波器。
要獲得狀態(tài)空間形式,使用下面的四個參數(shù):
[A,B,C,D] = butter(n,Wn,'s') 或
[A,B,C,D] = butter(n,Wn,'ftype','s') 其中A、 B、 C、和D 是
并且u 作為輸入, x 是狀態(tài)向量, y 是輸出。
舉例
高通濾波器
對于1000Hz的采樣,設計一個9階高通巴特沃斯濾波器,截止頻率300Hz,相應的歸一化值為0.6:
[z,p,k] = butter(9,300/500,'high');
[sos,g] = zp2sos(z,p,k); % 轉換為二次分式表示形式
Hd = dfilt.df2tsos(sos,g); % 創(chuàng)建dfilt對象
h = fvtool(Hd); % 繪制幅度響應
set(h,'Analysis','freq') % 顯示頻率響應