《数值分析》课程设计报告
第2章 设计原理
2.1拉格朗日和牛顿插值法求解插值函数
《拉格朗日平均插值法》介绍,当一些实际问题用数学函数关系来描述时,往往没有明显的解析表达式,只能根据实验观测或其他途径提供一些离散点处的函数值和导数,有时尽管有表达式,却比较复杂,不便于研究和使用。对此,人们希望构造一个简单的连续函数p(x)来近似代替所考察的函数f(x),使问题得到简化。
用代数多项式作为研究插值的工具,进而得出较为精确结果的方法,及时代数插值。当给定一张具有n+1个点的函数表以后,我们要构造一个函数y=f(x),这样的f(x)满足两个条件:第一,f(x)是一个不超过n次的多项式;第二,在给定点
xi(i=0,1,2,...n)上f(x)的值必须与给定的值相同。 2.1.1求解实例
给定数据如下: xi f(xi) 0.5 0.75 1.0 1.25 1.5 2.50 2.0 5.50 用分别用拉格朗日插值法和牛顿插值法求x=1.25处的值。 2.1.2 概要设计 该算法的过程如下: S1:选择所需的计算方法; S2:输入相应节点数以及给定节点; S3:输入给定节点对应的函数值以及插值点; S4:点击计算,输出结果。 插值法的原理:
如设函数y=f(x)在区间[a,b]上连续,且在n+1个不同的点
a≤x0,x1,?,xn≤b上分别取值y0,y1,?,yn。
插值的目的就是要在一个性质优良、便于计算的函数类中,求一简单函数P(x),使
P(xi)=yi
(i=0,1,?,n)
6
《数值分析》课程设计报告
而在其他点x≠xi上,作为f(x)的近似。
通常,称区间[a,b]为插值区间,称点x0,x1,?,xn为插值节点,称式P(xi)=yi为插值条件,称函数类?为插值函数类,称P(x)为函数f(x)在节点x0,x1,?,xn处的插值函数。求插值函数P(x)的方法称为插值法。
插值函数类的取法不同,所求得的插值函数P(x)逼近f(x)的效果就不同。它的选择取决于使用上的需要,常用的有代数多项式、三角多项式和有理函数等。当选用代数多项式作为插值函数时,相应的插值问题就称为多项式插值。本文讨论的拉格朗日插值法与牛顿插值法就是这类插值问题。
在多项式插值中,最常见、最基本的问题是:求一次数不超过n的代数多项式 P(x)=a0+a1x+?+anxn 使Pn(xi)=yi(i=0,1,?,n),其中,a0,a1,?,an为实数。
拉格朗日插值法即是寻求函数Ln(x)(拉格朗日插值多项式)近似的代替函数
f(x)。相似的,牛顿插值法则是通过Nn(x)(牛顿插值多项式)近似的求得函数的
值。
2.2二分法和牛顿迭代法求解非线性方程
本应用软件给出了两种求解非线性方程的方法,分别是二分法和牛顿迭代法。二分法巧妙地利用插值得到的点以及有根区间中点这两点处的函数值,缩小隔根区间,以期望得到更快的收敛速度。牛顿迭代法是非线性方程根的一种常见的数值方法,对于非线性方程的单重零点来说,牛顿迭代法一般具有局部二阶收敛性,但是当所求的根x*是f(x)的m重根时,m是大于等于2的整数,此时牛顿迭代法只有一阶收敛性。 2.2.1 求解实例
分别使用二分法和牛顿迭代法求方程x3+x-3=0在区间[1,2]内的根。 2.2.2 概要设计 该算法的过程如下: S1:选择所需的计算方法;
7
《数值分析》课程设计报告
S2:输入方程的最高次幂; S3:输入指定方法所需的参数条件; S4:输入方程的系数(由低到高); S5:点击计算,输出结果。 迭代法的原理:
设a1=1, b1=b, 区间[a1,b1],中点x1=
a1+b1及f(x1),若f(x)=0,则x*=x1,2若 f(a1)*f(x1)<0,令a2=a1,b2=x1,则根x*∈ [a2,b2]中,这样就得到长度缩小一半的有根区间[a2,b2],若 f(b1)*f(x1)<0,令a2=x1,b2=b1,则根x*∈ [a2,b2]中,这样就得到长度缩小一半的有根区间[a2,b2],即f(a2)f(b2)<0,此时
b1-a1b2-a2=,对有根区间[a2,b2]重复上述步骤,即分半求中点,判断中电处符号,
2则可得长度有缩小一半的有根区间[a2,b2],这是二分法。
设r是方程f(x)=0的根,选取x0作为的r初始近似值,经过(x0,f(x0))做曲线y=f(x)的切线的方程:y=f(x0)+f’(x0)(x- x0),求出L与x的交点的横坐标x1= x0-f(x0)/f’(x0),称x1为r的一次近似值经过点(x1,f(x1))做切线y=f(x)的切线,并求出该切线与x轴的交点横坐标:x2= x1-f(x1)/f’(x1),x2称为r的二次近似值,重复以上操作可以得到r的近似值序列,这是牛顿迭代法。
8
《数值分析》课程设计报告
第3章 MFC系统界面设置及主要功能
3.1 数值求解计算登陆主界面模块
图3.1数值求解计算界面登陆
登录界面控件ID 及其关联变量等设置见表3.1:
表 3.1 登录界面主要控件的ID和关联变量 添加的控件 按钮 按钮
如果点击“代数插值法”按钮,则成功登录代数插值界面;如果点击“非线性方程求根”按钮,则成功登录求解非线性方程界面。背景设置时需要建立函数OnPaint(),填入代码即可,背景设置关键代码见附录 。
9
ID号 IDC_BUTTON1 IDC_BUTTON2 变量类型 变量名 标题 代数插值法 非线性方程求根
《数值分析》课程设计报告
3.1.2代数插值法计算模块
界面设置见图3.2:
登录后界面的控件ID和关联变量、标题设置见表3.2:
图3.2拉格朗日代数插值法计算界面
图3.3牛顿插值法计算界面
10