曲线拟合的最小二乘法讲解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三 函数逼近与曲线拟合

一、问题的提出:

函数逼近是指“对函数类A 中给定的函数)(x f ,记作A x f ∈)(,要求在另一类简的便于计算的函数类B 中求函数A x p ∈)(,使 )(x p 与)(x f 的误差在某中度量意义下最小”。函数类A 通常是区间],[b a 上的连续函数,记作],[b a C ,称为连续函数空间,而函数类B 通常为n 次多项式,有理函数或分段低次多项式等,函数逼近是数值分析的基础。主要内容有:

(1)最佳一致逼近多项式

(2)最佳平方逼近多项式

(3)曲线拟合的最小二乘法

二、实验要求:

1、构造正交多项式;

2、构造最佳一致逼近;

3、构造最佳平方逼近多项式;

4、构造最小二乘法进行曲线拟合;

5、求出近似解析表达式,打印出逼近曲线与拟合曲线,且打印出其在数据点上的偏差;

6、探讨新的方法比较结果。

三、实验目的和意义:

1、学习并掌握正交多项式的MATLAB 编程;

2、学习并掌握最佳一致逼近的MATLAB 实验及精度比较;

3、学习并掌握最佳平方逼近多项式的MATLAB 实验及精度比较;

4、掌握曲线拟合的最小二乘法;

5、最小二乘法也可用于求解超定线形代数方程组;

6、 探索拟合函数的选择与拟合精度之间的关系;

四、 算法步骤:

1、正交多项式序列的生成

{n ϕ(x )}∞

0:设n ϕ(x )是],[b a 上首项系数a ≠n 0的n 次多项式,)(x ρ为],[b a 上权函数,如果多项式序列{n ϕ(x )}

∞0

满足关系式⎩⎨⎧=>≠==⎰.,0,,

0)()()()(),(k j A k j x d x x x k

k j b

a

k j ϕϕρϕϕ

则称多项式序列{n ϕ(x )}∞

0为在],[b a 上带权)(x ρ正交,称n ϕ(x )为],[b a 上带权)(x ρ 的n 次正交多项式。

1)输入函数)(x ρ和数据b a ,;

2)分别求))(),(()),(,(x x x x j j j n

ϕϕϕ的内积; 3)按公式①)())

(),(())

(,()(,1)(1

0x x x x x x x x j n j j j

j n n

n ϕϕϕ

ϕϕϕ∑-=-

==计算)(x n ϕ,生成正交多项式;

流程图:

开始

结束

2、 最佳一致逼近多项式

],[)(b a C x f ∈,

若存在n n H x P ∈)(*使得n n E P f =∆),(*,则称)(*

x P n 是)(x f 在],[b a 上的最佳一致逼近多项式或最小偏差逼近多项式,简称最佳逼近多项式。 现在我们所求的是最佳一次逼近多项式x x P 101)(αα+=,其中

)()

()(21x f a

b b f a f '=--=

α ①

2

)()(2)()(2

20x a a b a f b f x f a f +--

+=α ② 1)输入函数)(x f 和数据b a ,; 2)计算1α和)(x f '; 3)求2x 和)(2x f ; 4)按公式②,计算0α; 5)生成最佳一次逼近多项式;

流程图:

3、最佳平方逼近多项式

对],[)(b a C x f ∈及],[b a C 中的一个子集)}(),...,(),({10x x x span n ϕϕϕϕ=,若存在

.)(*ϕ∈x S 使||.)]()()[(min

||)()(||min ||)()(2

)(22

)(22*

dx x S x f x x S x f x S x f b

a

x S x S ⎰

-=-=-∈∈ρϕϕ

则称)(*

x S 是)(x f 在子集],[b a C ⊂ϕ中的最佳平方逼近函数。

若取],1,0[)(,1)(,)(C x f x x x k

k ∈≡=ρϕ则要在n H 中求n 次最佳平方逼近多项式

,...)(**1*0*n

n x a x a a x s +++=

此时,1

1

))(),((1

++=

=

+j k dx x x x j k k j ϕϕk k k d dx x x f x x f ≡=⎰10)())(),((ϕ

若用H 表示),...,,1(n

n x x G G =对应的矩阵,既

⎥⎥

⎥⎥

⎥⎦

⎤⎢⎢⎢⎢⎢

⎣⎡+++++=⎥

⎥⎥⎥⎦⎤⎢

⎢⎢⎢⎣⎡=)12/(1)

2/(1)

1/(1)2/(13/12/1)1/(12

/11

),()

,(),(),()

,(),(),(),(),(111

10

101000n n n n n H n n n n n n n

ϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕ称为希尔伯特距阵,记,),...,,(,),...,,(1010T

n T n d d d d a a a a ==则d Ha =的解

),...,1,0(*

n k a a k

k ==即为所求。平方误差为))(),((||)(||||)(||0

*

22

22x f x a x f x k n

k k ϕδ∑=-=;

1)输入函数)(x f 和数据b a ,;

2)求T

n d d d d ),...,,(10=;

3)解方程组 d Ha =,解出 T

n a a a a ),...,,(10=;

4)生成最佳平方逼近多项式;

相关文档
最新文档