1. 程式人生 > >matlab線性擬合在濾波器設計中的應用

matlab線性擬合在濾波器設計中的應用

一般的,濾波器結構如下:
在這裡插入圖片描述

不同的電壓,會對應濾波器不同的頻率,由於測試,不可能窮盡所有的頻率,通常是在測試完一些基礎頻率後,用matlab的線性擬合功能,完成圖形的繪製。

初步測試資料如下:
在這裡插入圖片描述

初步在excel中畫出來:可以看出,基本呈現線性關係
在這裡插入圖片描述

下面是matlab程式碼:
%線性擬合

x=[4,5,6,7,8,9,10,11,12]; %濾波器電壓
y=[1855,2000,2100,2200,2355,2440,2540,2601,2706];%濾波器頻率
p=polyfit(x,y,1); % polyfit是曲線擬合函式
x1=linspace(min(x),max(x)); %linspace 是用來生成一個等差數列的lin是linear的縮寫,就是將生成一個以a和b為斷點 共劃分為n個區間的向量
y1=polyval(p,x1); % polyval是求值函式,可求得多項式在x1處的值y1
plot(x,y,’*’,x1,y1); % plot是畫圖函式,將兩個圖花在一起

%Polyfit–呼叫方法:polyfit(x,y,n)。用多項式求過已知點的表示式,其中x為源資料點對應的橫座標,可為行向量、矩陣,y為源資料點對應的縱座標,可為行向量、矩陣,n為你要擬合的階數,一階直線擬合,二階拋物線擬合,並非階次越高越好,看擬合情況而定。

%polyfit 做出來的值從左到右表示從高次到低次的多項式係數,給出係數的個數是n+1。

在這裡插入圖片描述