matlab切比雪夫拟合

Posted 王小会

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab切比雪夫拟合相关的知识,希望对你有一定的参考价值。

matlab中没有切比雪夫拟合的现成算法,这里把我程序中的这部分抽出来,说一下。

1、首先是切比雪夫计算式

function [ res ] = ChebyShev(num,i)

if i==0 
    res=1;
elseif i==1
    res=num;
else
    res=2*num*ChebyShev(num,i-1)-ChebyShev(num,i-2);
end
   
end

2、计算拟合系数

function [ coeff ] = ChebyCoeff( xfile,timefile )

x=load(xfile);
time=load(timefile);
B=zeros(length(time),11); %B
L=x;%L
sec_start=time(1);
sec_end=time(end);
for i=1:length(time)
     chang_sec=(2*time(i)-(sec_start+sec_end))/(sec_end-sec_start);
    for j=1:11
        B(i,j)=ChebyShev(chang_sec,j);
    end
end
coeff=(B*B)\(B*L);
end

3、根据系数计算拟合值

function [ res ] = ChebyValue( timefile,coeff,num )

res=0;
time=load(timefile);
change_time=(2*num-(time(1)+time(end)))/(time(end)-time(1));
for i=1:length(coeff)
    res=res+coeff(i)*ChebyShev(change_time,i);
end

end

 

以上是关于matlab切比雪夫拟合的主要内容,如果未能解决你的问题,请参考以下文章

阵列天线综合之切比雪夫低副瓣阵列设计Matlab

基于切比雪夫逼近法的滤波器的matlab设计与实现

利用MATLAB结合双线性变换法设计一个数字切比雪夫带通IIR滤波器

matlab 实现低通巴特沃斯滤波器切比雪夫1型/2型滤波器 和 椭圆滤波器

语音去噪基于matlab GUI切比雪夫+椭圆形低通滤波器语音去噪含Matlab源码 2198期

什么是切比雪夫多项式?