﻿功能:傅里叶级数拟合

格式:
[a,b,error]=FourierFit(x,y,Cycle,n)
[a,b,error]=FourierFit(x,y,Cycle)
[a,b,error]=FourierFit(x,y)

x:矩阵变量存储的自变量
y:与x维数对应的因变量
Cycle:x变量的循环周期,默认为6.28318530717958,即2π
n:拟合的最高次数,默认为4

a:拟合的系数
b:拟合的系数
error:拟合的残差平方和

说明:
1、本函数主要是针对如下关系式进行拟合得到a、b

y = a[0]/2 + a[1]*cos(2π*1*x/Cycle) + b[1]*sin(2π*1*x/Cycle) + a[2]*cos(2π*2*x/Cycle) + b[2]*sin(2π*2*x/Cycle) + …… + a[n]*cos(2π*n*x/Cycle) + b[n]*sin(2π*n*x/Cycle)

2、注意本函数与{FourierFitGA<矩阵运算\FourierFitGA>}函数区别(本函数的周期已知)

例子:

x=1:10;y=4+5*sin(x);//先产生测试数据,即y=a[0]/2+b[1]*sin(x)，即a[0]=8,a[1]=0,b[1]=5

[a,b,er]=FourierFit(x,y)//回车得到如下结果，和我们预想的结果很符合
a =
[ 7.99999999999999   -3.0808525190E-14   -3.9486784819E-16   -2.5638734311E-14   -2.9010956345E-14 ]
b =
[ 5.00000000000000   -2.3985970315E-14   -2.5422699014E-14   -1.5938429973E-15 ]
er =
[ 3.6159781009E-28 ]