数值分析方法(讲义)-推荐下载

合集下载

数值分析简明教程讲义

数值分析简明教程讲义

第1章 绪论数值计算方法是一门与计算机使用密切结合的实用性很强的数学课程,其特点如下: 第一,面向计算机,要根据计算机特点提供实际可行的有效算法,即算法只能包括加、减、 乘、除运算和逻辑运算,是计算机能直接处理的。

第二,有可靠的理论分析,能任意逼近并达到精度要求,对近似算法要保证收敛性和数值稳 定性,还要对误差进行分析,这些都建立在相应数学理论基础上。

第三,要有好的计算复杂性,时间复杂性好是指节省时间,空间复杂性好是指节省存储量, 这也是建立算法要研究的问题,它关系到算法能否在计算机上实现。

第四,要有数值实验,即任何一个算法除了从理论上要满足上述三点外,还要通过数值试验 证明是行之有效的。

误差的基本概念除了极个别的情况外,数值计算总是近似计算,实际计算结果与理论结果之间存在着误差。

数值分析的任务之一是将误差控制在一定的容许范围内或者至少对误差有所估计。

一、误差的来源 1、模型误差用计算机解决科学计算问题首先要建立数学模型,它是对被描述的实际问题进行抽象,简化而得到的,因而是近似的,数学模型与实际问题之间出现的这种误差称为模型误差。

这种误差可忽略不计,在数值计算方法中不予讨论。

2、观测误差在数学模型中往往还有一些根据观测得到的物理量,如温度,长度,电压等等,测量的结果不可能绝对正确,由此产生的误差称为观测误差。

观测误差在数值计算方法中也不予讨论。

3、截断误差(方法误差)在数学模型不能得到精确解时,通常要用数值方法求它的近似解,其近似解与精确解之间的误差称为截断误差或方法误差。

4、舍入误差在计算过程中,由于计算机的字长有限,采用计算机数系中和实际数据比较接近的数来表示,由此产生的误差以及计算过程又可能产生新的误差,这些误差称为舍入误差。

二、绝对误差和相对误差1、绝对误差秘绝对误差限设数x (精确值)有一个近似值为*x ,记*)(x x x e -=称e(x)为近似值*x 的绝对误差,简称误差。

数值分析课件

数值分析课件

第3章线性方程组的解法本章探讨大型线性方程组运算机求解的经常使用数值方式的构造和原理,要紧介绍在运算机上有效快速地求解线性方程组的有关知识和方式.重点论述Jacobi迭代法、Seidel迭代法、Guass消元法及LU分解法的原理、构造、收敛性等内容。

实际案例问题的描述与大体概念解线性方程组问题在线性代数中已有很优美的行列式解法,但对大型的线性方程组(阶数n>40)的求解问题利用价值并非大,因为其计算量太大。

实际问题中常常碰到自变量个数n都专门大的线性方程组求解问题,这些线性方程组要借助运算机的帮忙才能求出解。

n 个变元12,,,n x x x ⋯的线性方程组的一样形式为11112211211222221122n n n n m m mn n ma x a x a xb a x a x a x b a x a x a x b +++=⎧⎪+++=⎪⎨⎪⎪+++=⎩ ()式中,a ij 称为系数,b i 称为右端项,它们都是已知的常数。

若是有***1122,,,n nx x x x x x ===使方程组()成立,那么称值***12,,,nx x x为线性方程组的()的一组解。

本章在不作专门说明的情形下,要紧讨论m=n 的线性方程组11112211211222221122n n n n n n nn n na x a x a xb a x a x a x b a x a x a x b +++=⎧⎪+++=⎪⎨⎪⎪+++=⎩的求解问题,且假设它有唯一解。

线性方程组的矩阵表示Ax b =式中A称为系数矩阵,b称为右端项。

数值分析中,线性方程组的数值解法要紧分为直接法和迭代法两大类。

直接法是用有限次计算就能够求出线性方程组“准确解”的方式(不考虑舍入误差);迭代法是由线性方程组构造出迭代计算公式,然后以一个猜想的向量作为迭代计算的初始向量慢慢迭代计算,来取得知足精度要求的近似解。

迭代法是一种逐次逼近的方式。

数值分析课件

数值分析课件

辛普森方法
一种基于矩形法思想的数值积分方法 ,适用于计算定积分。
自适应辛普森方法
一种基于辛普森方法和梯形法的自适 应数值积分方法,能够根据函数性质 自动选择合适的积分策略。
常微分方程的数值求解
01
欧拉方法
一种基于常微分方程初值 问题的数值求解方法,通 过逐步逼近的方式求解近 似解。
02
龙格-库塔方法
定积分是函数在区间上积分和的极限;不定积分是函数在 某个区间上的原函数。
02
应用领域
积分广泛应用于物理、工程、经济等领域,如求曲线下面 积、求解变速直线运动位移等。
03
数值计算方法
使用数值积分方法(如梯形法、辛普森法等)来近似计算 定积分和不定积分的值。这些方法将积分区间划分为若干 个小段,并使用已知的函数值和导数值来近似计算每个小 段的积分值,最后求和得到积分的近似值。
一种基于常微分方程初值 问题的数值求解方法,通 过构造龙格-库塔曲线来 逼近解。
03
阿达姆斯-图灵 方法
一种基于常微分方程初值 问题的数值求解方法,通 过构造阿达姆斯-图灵曲 线来逼近解。
04
自适应步长控制 方法
一种基于欧拉方法和龙格 -库塔方法的自适应步长 控制方法,能够根据误差 自动调整步长。
偏微分方程的数值求解
高斯消元法的步骤
1. 将方程组按照行进行排列,并将每个方程中的未知数 按照列排列。
2. 对于每个方程,选取一个未知数作为主元,并将其余 的未知数用主元表示。
3. 将主元所在的行与其他行进行交换,使得主元位于对 角线上。
4. 将主元所在的列中位于主元下方的元素消为0,从而得 到一个阶梯形矩阵。
线性方程组的解法
数值分析是一种工具,它可以帮助我 们更好地理解和解决实际问题,同时 也可以帮助我们更好地理解和应用数 学理论。

《数值分析》完整版讲义

《数值分析》完整版讲义

2.1.3 多项式插值 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.1.4 基函数插值法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.1.1 为什么要插值 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1.2 什么是插值 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.1.2 数值分析的研究内容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.3 学习建议 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
i
· ii ·
目录
2.2 Lagrange 插值 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.2.1 Lagrange 基函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.2.2 Lagrange 插值多项式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.2.3 插值余项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.2.4 Lagrange 基函数性质 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

数值分析第六章课件

数值分析第六章课件

a(1) 1n
x1
b(1) 1
a(1) 21
a(1) 22
a(1) 2n
x2
b(1) 2
.
a(1) m1
a(1) m2
a(1) mn
xn
b(1) m
将(2.1)记为A(1)x=b(1),其中
a(1) 11
a(1) 12
a(1) 1n
a11
a12
a1n
A(1)
a(1) 21
5.2 高斯消去法
本节介绍高斯消去法(逐次消去法)及消去法和 矩阵三角分解之间的关系. 虽然高斯消去法是一种 古老的求解线性方程组的方法(早在公元前250年 我国就掌握了解方程组的消去法),但由它改进、 变形得到的选主元素消去法、三角分解法仍然是目 前计算机上常用的有效方法.我们在中学学过消去 法,高斯消去法就是它的标准化的、适合在计算机 上自动计算的一种方法.
有的问题的数学模型中虽不直接表现为含线性方 程组,但它的数值解法中将问题“离散化”或“线性 化”为线性方程组.因此线性方程组的求解是数值分 析课程中最基本的内容之一.
关于线性方程组的解法一般有两大类:
1. 直接法 经过有限次的算术运算,可以求得方程组的精确解( 假定计算过程没有舍入误差).如线性代数课程中提到 的克莱姆算法就是一种直接法.但该法对高阶方程组 计算量太大,不是一种实用的算法.
下面讨论求解一般线性方程组的高斯消去法.由
a11 x1 a12 x2 a1n xn b1 a21 x1 a22 x2 a2n xn b2
am1 x1 am2 x2 amn xn bm
a(1) 11
a(1) 21
x1 x1
a(1) 12
x2

数值分析讲义

数值分析讲义

第1章数值分析中的误差一、重点内容误差设精确值x* 的近似值x,差e=x-x* 称为近似值x 的误差(绝对误差)。

误差限近似值x 的误差限 是误差e 的一个上界,即|e|=|x-x*|≤ε。

相对误差e r是误差e 与精确值x* 的比值,。

常用计算。

相对误差限是相对误差的最大限度,,常用计算相对误差限。

绝对误差的运算:ε(x1±x2)=ε(x1)+ε(x2)ε(x1x2)≈|x1|ε(x2)+|x2|ε(x1)有效数字如果近似值x 的误差限ε 是它某一个数位的半个单位,我们就说x 准确到该位。

从这一位起到前面第一个非0 数字为止的所有数字称为x 的有效数字。

关于有效数字:(1) 设精确值x* 的近似值x,x=±0.a1a2…a n×10ma1,a2,…,a n是0~9 之中的自然数,且a1≠0,|x-x*|≤ε=0.5×10m-l,1≤l≤n则x 有l位有效数字.(2) 设近似值x=±0.a1a2…a n×10m有n 位有效数字,则其相对误差限(3) 设近似值x=±0.a1a2…a n×10m的相对误差限不大于则它至少有n 位有效数字。

(4) 要求精确到10-3,取该数的近似值应保留4 位小数。

一个近似值的相对误差是与准确数字有关系的,准确数字是从一个数的第一位有效数字一直数到它的绝对误差的第一位有效数字的前一位,例如具有绝对误差e=0.0926 的数x=20.7426 只有三位准确数字2,0,7。

一般粗略地说,具有一位准确数字,相对于其相对误差为10% 的量级;有二位准确数字,相对于其相对误差为1% 的量级;有三位准确数字,相对于其相对误差为0.1% 的量级。

二、实例例1 设x*= =3.1415926…近似值x=3.14=0.314×101,即m=1,它的误差是0.001526…,有|x-x*|=0.001526…≤0.5×101-3即l=3,故x=3.14 有 3 位有效数字。

数值分析全册完整课件

数值分析全册完整课件
似算法的收敛性和数值稳定性; 要有好的计算复杂性,节省时间及存储量; 有数值实验,证明算法有效。
算法基本结构:顺序,分支,循环
算法描述:程序或流程图
常采用的处理方法:
构造性方法 离散化方法 递推化方法 迭代法 近似替代方法 以直代曲法 化整为零的处理方法 外推法
数学基础:
微积分的若干定理: 罗尔定理和微分中值定理; 介值定理及推论; 泰勒公式(一元、二元); 积分中值定理;
设y=f(x)为一元函数,自变量准确值x*,对应函数准确 值y*=f(x*),x误差为e(x),误差限为ε(x),函数近似值 误差e(y),误差限为ε(y)。则(可由Taylor公式推得)
( y) | f '(x) | (x)
r
(
y)
|
xf |f
'(x) (x) |
|
r
(
x)
对于多元函数 z f (x1, x2 ,, xn )
定义1.1 设x*为某一数据的准确值,x为x*的一个近 似值,称e(x)=x-x*(近似值-准确值)为近似值x的绝对 误差,简称误差。
e(x) 可正可负,当e(x) >0时近似值偏大,叫强近似值;当e(x) <0时近似值偏小,叫弱近似值。
由于x*通常无法确定,只能估计其绝对误差值 不超过某整数ε(x),即
设准确值
z* f (x1*, x2*,, xn* )
由多元函数Taylor公式,可得误差估计:
n
(z)
k 1
f xk
(xk )
相对误差限为:
r (z)
n k 1
xk
f xk
r (xk )
z
2. 算术运算的误差估计:

数值分析讲义

数值分析讲义

由于除数很小,将导致商很大,有可能出现“溢出”现 象另外. ,设x* ,y* 的近似值分别为x,y,则z=x÷y是z*=x*÷y*
的近似值.此时,z的绝对误差满足估计式
e(z) z* z (x* x) y x( y y* ) y e(x) x e( y)
yy*
y2
可见,若除数太小,则可能导致商的绝对误差很大。
n k, k 1,...2,1
类似地可得
Ik
I
* k
(1) nk
k!( n!
I
n
I
* n
)
,
k n, n 1,...,1,0
可见,近似误差Ik-I*k是可控制的,算法是数值稳定的。
例如,由于
e 1 10
01 x9e1dx
I9
01 x9dx
1 10
取近似值 I9
1 (e1 1 ) 0.0684 2 10 10
§3 绝对误差、相对误差和有效数字
设x是精确值x*的一个近似值,记 e=x*-x
称e为近似值x的绝对误差,简称误差。如果满足 |e|≤
则称为近似值x的绝对误差限,简称误差限。 精确值x* 、近似值x和误差限之间满足: x-≤x*≤x+
通常记为 x*=x±
绝对误差有时并不能很好地反映近似程度的好坏,如
随着计算机的飞速发展,数值分析方法已深入到计算 物理、计算力学、计算化学、计算生物学、计算经济学等 各个领域。本课仅限介绍最常用的数学模型的最基本的数 值分析方法。
§2 误差的来源和分类
误 1.差模是型描误述差数值数计学算模之型中通近常似是值由的实精际确问程题度抽,象在得数到值的, 计一般算带中有十误分差重,要这,种误误差差按称来为源模可型分误为差模。型误差、观测误差、 截断误2.差观和测舍误入差误差数四学种模。型中包含的一些物理参数通常是 通过观测和实验得到的,难免带有误差,这种误差称为观 测误差。

《数值分析教程》课件

《数值分析教程》课件
总结词
一种适用于大规模计算的数值方法
详细描述
谱方法适用于大规模计算,通过将问题分解为较小的子问 题并利用多线程或分布式计算等技术进行并行计算,可以 有效地处理大规模的计算任务。
感谢您的观看
THANKS
具有简单、稳定和可靠的优点。
05
数值积分与微分
牛顿-莱布尼兹公式
要点一
总结词
牛顿-莱布尼兹公式是数值积分中的基本公式,用于计算定 积分。
要点二
详细描述
牛顿-莱布尼兹公式基于定积分的定义,通过选取一系列小 区间上的近似值,将定积分转化为一系列小矩形面积之和 ,从而实现了数值积分。
复化求积公式
总结词
算机实现各种算法,为各个领域的科学研究和技术开发提供了强有力的支持。
数值分析的应用领域
总结词
数值分析的应用领域非常广泛,包括科学计算、工程 、经济、金融、生物医学等。
详细描述
数值分析的应用领域非常广泛,几乎涵盖了所有的科学 和工程领域。在科学计算方面,数值分析用于模拟和预 测各种自然现象,如气候变化、生态系统和地球科学等 。在工程领域,数值分析用于解决各种复杂的工程问题 ,如航空航天、机械、土木和电子工程等。在经济和金 融领域,数值分析用于进行统计分析、预测和优化等。 在生物医学领域,数值分析用于图像处理、疾病诊断和 治疗等。总之,数值分析已经成为各个领域中不可或缺 的重要工具。
03
线性方程组的数值解法
高斯消去法
总结词
高斯消去法是一种直接求解线性方程组的方法,通过一系列 行变换将系数矩阵变为上三角矩阵,然后求解上三角方程组 得到解。
详细描述
高斯消去法的基本思想是将系数矩阵通过行变换化为上三角 矩阵,然后通过回带求解得到方程组的解。该方法具有较高 的稳定性和精度,适用于中小规模线性方程组的求解。

数值分析讲义——线性方程组的解法

数值分析讲义——线性方程组的解法

数值分析讲义第三章线性方程组的解法§3.0 引言§3.1 雅可比(Jacobi)迭代法§3.2 高斯-塞德尔(Gauss-Seidel)迭代法§3.3 超松驰迭代法§3.7 三角分解法§3.4 迭代法的收敛性§3.8 追赶法§3.5 高斯消去法§3.9 其它应用§3.6 高斯主元素消去法§3.10 误差分析§3 作业讲评3 §3.11 总结§3.0 引言重要性:解线性代数方程组的有效方法在计算数学和科学计算中具有特殊的地位和作用.如弹性力学、电路分析、热传导和振动、以及社会科学及定量分析商业经济中的各种问题.分类:线性方程组的解法可分为直接法和迭代法两种方法.(a) 直接法:对于给定的方程组,在没有舍入误差的假设下,能在预定的运算次数内求得精确解.最基本的直接法是Gauss消去法,重要的直接法全都受到Gauss消去法的启发.计算代价高.(b) 迭代法:基于一定的递推格式,产生逼近方程组精确解的近似序列.收敛性是其为迭代法的前提,此外,存在收敛速度与误差估计问题.简单实用,诱人.§3.1 雅可比Jacobi 迭代法 (AX =b )1基本思想:与解f (x )=0 的不动点迭代相类似,将AX =b 改写为X =BX +f 的形式,建立雅可比方法的迭代格式:X k +1=BX (k )+f ,其中,B 称为迭代矩阵.其计算精度可控,特别适用于求解系数为大型稀疏矩阵(sparse matrices)的方程组. 2问题:(a) 如何建立迭代格式?(b) 向量序列{X k }是否收敛以及收敛条件? 3 例题分析:考虑解方程组⎪⎩⎪⎨⎧=+--=-+-=--2.453.82102.7210321321321x x x x x x x x x (1)其准确解为X *={1, 1.2, 1.3}. 建立与式(1)相等价的形式:⎪⎩⎪⎨⎧++=++=++=84.02.01.083.02.01.072.02.01.0213312321x x x x x x x x x (2) 据此建立迭代公式:⎪⎩⎪⎨⎧++=++=++=+++84.02.01.083.02.01.072.02.01.0)(2)(1)1(3)(3)(1)1(23)(2)1(1k k k k k k kk k x x x x x x x x x (3) 取迭代初值0)0(3)0(2)0(1===x x x ,迭代结果如下表. JocabiMethodP31.cpp迭代次数 x1 x2 x30 0 0 01 0.72 0.83 0.842 0.971 1.07 1.153 1.057 1.1571 1.24824 1.08535 1.18534 1.282825 1.095098 1.195099 1.2941386 1.098338 1.198337 1.2980397 1.099442 1.199442 1.2993358 1.099811 1.199811 1.2997779 1.099936 1.199936 1.29992410 1.099979 1.199979 1.29997511 1.099993 1.199993 1.29999112 1.099998 1.199998 1.29999713 1.099999 1.199999 1.29999914 1.1 1.2 1.315 1.1 1.2 1.34Jocobi迭代公式:设方程组AX=b, 通过分离变量的过程建立Jocobi迭代公式,即),,2,1()(1),,2,1(0,11n i x a b a x n i a b x a n ij j j ij i iii ii ni i j ij =∑-==≠∑=≠== 由此我们可以得到Jacobi 迭代公式:),,2,1()(11)1(n i x a b a xn ij j k i ij i iik i=∑-=≠=+[Jacobi 迭代公式的算法] 1: 初始化. n , (a ij ), (b j ), (x 1) , M . 2: 执行k =1直到M 为止. ① 执行i =1直到n 为止.ii nij j j ij i i a x a b u /)(1∑-←≠= ;② 执行i =1直到n 为止.i i u x ← ;③输出k , (x i ).另外,我们也可以建立Jacobi 迭代公式的矩阵形式. 设方程组AX =b ,其中,A =(a ij )n 为非奇异阵,X =(x 1,x 2,…,x n )T , b =(b 1,b 2,…,b n )T将系数阵A 分解为: A =U +D +L ,U 为上三角矩阵,D 为对角矩阵,L 为下三角矩阵.于是AX =b 可改写为 (U +D +L )X =b⇔ X =D -1b -D -1(U +L )X由此可得矩阵形式的Jocobi 迭代公式: X k +1=BX (k )+f □§3.2 高斯-塞德尔Gauss-Seidel 迭代法注意到利用Jocobi 迭代公式计算)1(+k ix 时,已经计算好)(1)(2)(1,,,k i k k x x x - 的值,而Jocobi 迭代公式并不利用这些最新的近似值计算,仍用)(1)(2)(1,,,k i k k x x x - .这启发我们可以对其加以改进,即在每个分量的计算中尽量利用最新的迭代值,得到),,2,1()(1111)1()1(n i x a x a b a xn i j k jij i j k j ij i iik i=∑-∑-=+=-=++上式称为Gauss-Seidel 迭代法. 其矩阵形式是X =-(D +L )-1UX +(D +L )-1b , X k +1=BX (k )+f .迭代次数 x1 x2 x3 0 0 0 0 1 0.72 0.902 1.1644 2 1.04308 1.167188 1.282054 3 1.09313 1.195724 1.2977714 1.099126 1.199467 1.2997195 1.09989 1.199933 1.2999656 1.099986 1.199992 1.2999967 1.099998 1.199999 1.2999998 1.1 1.2 1.3§3.3 超松驰迭代法SOR 方法1基本思想:逐次超松弛迭代法(Successive Over Relaxation Method,简写为SOR)可以看作带参数ω的高斯-塞德尔迭代法,是G-S 方法的一种修正或加速.是求解大型稀疏矩阵方程组的有效方法之一. 2 SOR 算法的构造:设方程组AX =b , 其中,A =(a ij )n 为非奇异阵,X =(x 1,x 2,…,x n )T , b =(b 1,b 2,…,b n )T . 假设已算出x (k ),),,2,1()(1111)1()1(n i x a x a b a xn i j k j ij i j k j ij i iik i=∑-∑-=+=-=++ (1)相当于用高斯-塞德尔方法计算一个分量的公式. 若对某个参数ω,作)1(+k ix与)(k i x 加权的平均,即)()1()()1()()1()(1k i k ik i k ik ik ix xx xxx-+=+-=+++ωωω (2)其中,ω称为松弛因子.用(1)式代入(2)式,就得到解方程组AX =b 的逐次超松弛迭代公式:⎪⎩⎪⎨⎧=∑-∑-=∆∆+==-=++),,2,1()()(11)1()()1(n i x a x a b a x x x x n ij k j ij i j k j ij i iii i k i k i ω (3) 显然,当取ω=1时,式(3)就是高斯-塞德尔迭代公式. 3 例题分析:利用SOR 方法解方程组⎪⎩⎪⎨⎧=+---=-+-=--3322242024321321321x x x x x x x x x (1) 其准确解为X *={1, 1, 2}. 建立与式(1)相等价的形式:⎪⎪⎩⎪⎪⎨⎧++=-+=+=132315.05.05.025.05.021*******x x x x x x x x x (2) 据此建立迭代公式:⎪⎪⎩⎪⎪⎨⎧++=-+=+=+++132315.05.05.025.05.0)(2)(1)1(3)(3)(1)1(23)(2)1(1k k k k k k kk k x x x x x x x x x (3)利用SOR 算法,取迭代初值1)0(3)0(2)0(1===x x x ,ω=1.5,迭代结果如下表.逐次超松弛迭代法次数 x1 x2 x3 1 0.625000 0.062500 1.750000 2 0.390625 0.882813 1.468750 3 1.017578 0.516602 1.8085944 0.556885 0.880981 1.7104495 1.023712 0.743423 1.8681036 0.746250 0.908419 1.8387377 0.997715 0.860264 1.9138948 0.864050 0.936742 1.9086059 0.986259 0.922225 1.94552310 0.928110 0.958649 1.94749311 0.985242 0.955944 1.96619812 0.961661 0.973818 1.96952113 0.988103 0.974699 1.97928914 0.979206 0.983746 1.98217215 0.991521 0.985318 1.98741616 0.988509 0.990038 1.98951317 0.994341 0.991414 1.99239718 0.993538 0.993946 1.99380619 0.996367 0.994950 1.99542420 0.996313 0.996342 1.99633121 0.997724 0.997018 1.99725422 0.997871 0.997798 1.99782223 0.998596 0.998234 1.998355GS迭代法须迭代85次得到准确值X*={1, 1, 2};而SOR方法只须55次即得准确值.由此可见,适当地选择松弛因子ω,SOR法具有明显的加速收敛效果. □§3.4 迭代法的收敛性1. 向量和矩阵范数 (a) 向量范数R n 空间的向量范数 || · || ,对任意n R y x ∈,, 满足下列条件:00||||;0||||)1(=⇔=≥x x x (正定性)||||||||||)2(x x⋅=αα (齐次性)||||||||||||)3(y x y x+≤+ (三角不等式)常见的向量范数有: (1) 列范数:(2) 谱范数:(欧几里德范数或向量的长度,模)(3) 行范数:(4) p 范数:上述范数的几何意义是:∞||||x =max(|x 2-x 1|,|y 2-y 1|) ; 1||||x =|x 2-x 1|+|y 2-y 1| ;2122122)()(||||y y x x x -+-=.向量序列}{)(k x依坐标收敛于向量x * 的充要条件是向量序列}{)(k x 依范数收敛于向量x *,即0||||lim *)(=-∞→x x k k .(b) 矩阵范数n m R ⨯空间的向量范数 || ·|| ,对任意 n m R B A ⨯∈,, 满足下列条件:|||||||| || AB || (4)||||||||||||)3(||||||||||)2(00||||;0||||)1(B A B A B A A A A A A ≤+≤+⋅==⇔=≥αα常见的矩阵范数有:∑==∞≤≤nj ij a A ni 1||max ||||1 (行和范数)∑==≤≤ni ij a A nj 11||max ||||1 (列和范数))(||||max 2A A A T λ= (谱范数)若A 对称,则有)()(2max max A A A T λλ=.矩阵A 的谱半径记为)(||||2A A ρ=,ρ(A ) =||max1i ni λ≤≤,其中λi 为A 的特征根。

数值分析方法(讲义)

数值分析方法(讲义)

第十章 数值分析方法在生产实际中,常常要处理由实验或测量所得到的一批离散数据,数值分析中的插值与拟合方法就是要通过这些数据去确定某一类已经函数的参数,或寻求某个近似函数使之与已知数据有较高的拟合精度。

插值与拟合的方法很多,这里主要介绍线性插值方法、多项式插值方法和样条插值方法,以及最小二乘拟合方法在实际问题中的应用。

相应的理论和算法是数值分析的内容,这里不作详细介绍。

§1 数据插值方法及应用在生产实践和科学研究中,常常有这样的问题:由实验或测量得到变量间的一批离散样点,要求由此建立变量之间的函数关系或得到样点之外的数据。

与此有关的一类问题是当原始数据),(,),,(),,(1100n n y x y x y x 精度较高,要求确定一个初等函数)(x P y =(一般用多项式或分段多项式函数)通过已知各数据点(节点),即n i x P y i i ,,1,0,)( ==,或要求得函数在另外一些点(插值点)处的数值,这便是插值问题。

1、分段线性插值这是最通俗的一种方法,直观上就是将各数据点用折线连接起来。

如果b x x x a n =<<<= 10那么分段线性插值公式为n i x x x y x x x x y x x x x x P i i i i i i i i i i ,,2,1,,)(11111 =≤<--+--=-----可以证明,当分点足够细时,分段线性插值是收敛的。

其缺点是不能形成一条光滑曲线。

例1、已知欧洲一个国家的地图,为了算出它的国土面积,对地图作了如下测量:以由西向东方向为x 轴,由南向北方向为y 轴,选择方便的原点,并将从最西边界点到最东边界点在x 轴上的区间适当的分为若干段,在每个分点的y 方向测出南边界点和北边界点的y 坐标y1和y2,这样就得到下表的数据(单位:mm )。

根据地图的比例,18 mm 相当于40 km 。

根据测量数据,利用MA TLAB 软件对上下边界进行线性多项式插值,分别求出上边界函数)(2x f ,下边界函数)(1x f ,利用求平面图形面积的数值积分方法—将该面积近似分成若干个小长方形,分别求出这些长方形的面积后相加即为该面积的近似解。

数值分析原理课件第一章

数值分析原理课件第一章

第一章 绪 论本章以误差为主线,介绍了计算方法课程的特点,并概略描述了与算法相关的基本概念,如收敛性、稳定性,其次给出了误差的度量方法以及误差的传播规律,最后,结合数值实验指出了算法设计时应注意的问题.§1.1 引 言计算方法以科学与工程等领域所建立的数学模型为求解对象,目的是在有限的时间段内利用有限的计算工具计算出模型的有效解答。

由于科学与工程问题的多样性和复杂性,所建立的数学模型也是各种各样的、复杂的. 复杂性表现在如下几个方面:求解系统的规模很大,多种因素之间的非线性耦合,海量的数据处理等等,这样就使得在其它课程中学到的分析求解方法因计算量庞大而不能得到计算结果,且更多的复杂数学模型没有分析求解方法. 这门课程则是针对从各种各样的数学模型中抽象出或转化出的典型问题,介绍有效的串行求解算法,它们包括(1)非线性方程的近似求解方法;(2)线性代数方程组的求解方法;(3)函数的插值近似和数据的拟合近似;(4)积分和微分的近似计算方法;(5)常微分方程初值问题的数值解法;(6)优化问题的近似解法;等等从如上内容可以看出,计算方法的显著特点之一是“近似”. 之所以要进行近似计算,这与我们使用的工具、追求的目标、以及参与计算的数据来源等因素有关.计算机只能处理有限数据,只能区分、存储有限信息,而实数包含有无穷多个数据,这样,当把原始数据、中间数据、以及最终计算结果用机器数表示时就不可避免的引入了误差,称之为舍入误差.我们需要在有限的时间段内得到运算结果,就需要将无穷的计算过程截断,从而产生截断误差. 如的计算是无穷过程,当用作为的 +++=!21!111e !1!21!111n e n ++++= e 近似时,则需要进行有限过程的计算,但产生了截断误差.e e n - 当用计算机计算时,因为舍入误差的存在,我们也只能得到的近似值,也就是n e n e *e 说最终用近似,该近似值既包含有舍入误差,也包含有截断误差.*e e 当参与计算的原始数据是从仪器中观测得来时,也不可避免得有观测误差.由于这些误差的大量存在,我们得到的只能是近似结果,进而对这些结果的“可靠性”进行分析就是必须的,它成为计算方法的第二个显著特点. 可靠性分析包括原问题的适定性和算法的收敛性、稳定性.所谓适定性问题是指解存在、惟一,且解对原始数据具有连续依赖性的问题. 对于非适定问题的求解,通常需要作特殊的预处理,然后才能做数值计算. 在这里,如无特殊说明,都是对适定的问题进行求解.对于给定的算法,若有限步内得不到精确解,则需研究其收敛性. 收敛性是研究当允许计算时间越来越长时,是否能够得到越来越可靠的结果,也就是研究截断误差是否能够趋于零.对于给定的算法,稳定性分析是指随着计算过程的逐步向前推进,研究观测误差、舍入对于同一类模型问题的求解算法可能不止一种,常希望从中选出高效可靠的求解算法. 如我国南宋时期著名的数学家秦九韶就提出求n 次多项式值0111a x a x a x a n n nn ++++-- 的如下快速算法;n a s =; k n a t -=t sx s +=),,2,1(n k =它通过n 次乘法和n 次加法就计算出了任意n 次多项式的值. 再如幂函数可以通过如下64x 快速算法计算出其值;x s =;循环6次s s s ⋅=如上算法仅用了6次乘法运算,就得到运算结果.算法最终需要在计算机上运行相应程序,才能得到结果,这样就要关注算法的时间复杂度(计算机运行程序所需时间的度量)、空间复杂度(程序、数据对存储空间需求的度量)和逻辑复杂度(关联程序的开发周期、可维护性以及可扩展性). 事实上,每一种算法都有自己的局限性和优点,仅仅理论分析是很不够的,大量的实际计算也非常重要,结合理论分析以及相当的数值算例结果才有可能选择出适合自己关心问题的有效求解算法. 也正因如此,只有理论分析结合实际计算才能真正把握准算法.§1.2 误差的度量与传播一、误差的度量误差的度量方式有绝对误差、相对误差和有效数字.定义1.1 用作为量的近似,则称为近似值的绝对误差.*x x )(:**x e x x =-*x 由于量x 的真值通常未知,所以绝对误差不能依据定义求得,但根据测量工具或计算情况,可以估计出绝对误差绝对值的一个较小上界,即有ε (1.1)ε≤-=x x x e **)(称正数为近似值的绝对误差限,简称误差. 这样得到不等式ε*x εε+≤≤-**x x x 工程中常用ε±=*x x 表示近似值的精度或真值x 所在的范围.*x 误差是有量纲的,所以仅误差数值的大小不足以刻划近似的准确程度. 如量 (1.2)m m cm s μ50001230000005.023.15.0123±=±=±=为此,我们需要引入相对误差定义1.2 用作为量的近似,称为近似值的相对误差. 当0*≠x x )(:**x e xxx r =-*x 是x 的较好近似时,也可以用如下公式计算相对误差*x (1.3)***)(xx x x e r -= 显然,相对误差是一个无量纲量,它不随使用单位变化. 如式(1.2)中的量s 的近似,无论使用何种单位,它的相对误差都是同一个值.同样地,因为量x 的真值未知,我们需要引入近似值的相对误差限,它是相*x )(*x r ε对误差绝对值的较小上界. 结合式(1.1)和(1.3),相对误差限可通过绝对误差限除以近似*x 值的绝对值得到,即(1.4)***)()(xx x r εε=为给出近似数的一种表示法,使之既能表示其大小,又能体现其精确程度,需引入有效数字以及有效数的概念.定义1.3 设量的近似值有如下标准形式x *x p n ma a a a x 21*.010⨯±= (1.5)()pm p n m n m m a a a a ----⨯++⨯++⨯+⨯±101010102211 =其中且,m 为近似值的量级. 如果使不等式}9,,1,0{}{1 ⊂=pi i a 01≠a (1.6)n m x x -⨯≤-1021*成立的最大整数为n ,则称近似值具有n 位有效数字,它们分别是、、… 和 . *x 1a 2a n a 特别地,如果有,即最后一位数字也是有效数字,则称是有效数.p n =*x 从定义可以看出,近似数是有效数的充分必要条件是末位数字所在位置的单位一半是绝对误差限. 利用该定义也可以证明,对真值进行“四舍五入”得到的是有效数. 对于有效数,有效数字的位数等于从第一位非零数字开始算起,该近似数具有的位数. 注意,不能给有效数的末位之后随意添加零,否则就改变了它的精度.例1.1 设量,其近似值,,. 试回答这三个近π=x 141.3*1=x 142.3*2=x 722*3=x 似值分别有几位有效数字,它们是有效数吗?解 这三个近似值的量级,因为有1=m 312*110211021005.000059.0--⨯=⨯=≤=- x x 413*2102110210005.00004.0--⨯=⨯=≤=- x x571428571428.3*3=x 312*310211021005.0001.0--⨯=⨯=≤=- x x 所以和都有3位有效数字,但不是有效数. 具有4位有效数字,是有效数.*1x *3x *2x 二、误差的传播这里仅介绍初值误差传播,即假设自变量带有误差,函数值的计算不引入新的误差. 对于函数有近似值,利用在点处),,,(21n x x x f y =),,,(**2*1*n x x x f y =),,,(**2*1n x x x 的泰勒公式(Taylor Formula),可以得到 )(),,,()(*1**2*1**i i ni n i x x x x xf y y y e -≈-=∑=(1.7))(),,,(*1**2*1i ni n i x e x x xf ∑== 其中,是的近似值,是的绝对误差. 式(1.7)表明函ii x f f ∂∂=:*i x i x )(*i x e *i x ),,2,1(n i =数值的绝对误差近似等于自变量绝对误差的线性组合,组合系数为相应的偏导数值. 从式(1.7)也可以推得如下函数值的相对误差传播近似计算公式 (1.8))(),,,()(***1**2*1*i r i ni ni r x e yx x x x f y e ∑=≈对于一元函数,从式(1.7)和(1.8)可得到如下初值误差传播近似计算公式)(x f y = (1.9))()()(***x e x f y e '≈ (1.10))()()(*****x e yx x f y e r r '≈式(1.9)表明,当导数值的绝对值很大时,即使自变量的绝对误差比较小,函数值的绝对误差也可能很大.例1.2 试建立函数的绝对误差(限)、相对误差n n x x x x x x f y +++== 2121),,,(的近似传播公式,以及时的相对误差限传播公式.{}ni i x 1*0=> 解 由公式(1.7)和(1.8)可分别推得和的绝对误差、相对误差传播公式如下(1.11)∑∑==≈ni i ini nix e x e x x xf y e 1**1**2*1*)()(),,,()(= (1.12)∑∑==≈ni i r i i r i ni ni r x e yx x e y x x x x f y e 1******1**2*1*)()(),,,()(= 进而有∑∑∑===≤≤≈ni i n i ini ix x e xe y e 1*1*1**)()()()(ε于是有和的绝对误差限近似传播公式 ∑=≈ni ixy 1**)()(εε当时,由式(1.3)推得相对误差限的近似传播公式{}ni i x 1*=>)(max )(max )(max )()()(*11***11***11****1**i r ni ni i ir n i ni i i r n i ni i r i ni ir x yx x yx x x y x yxy εεεεεε≤≤=≤≤=≤≤====≤=≈∑∑∑∑ 例1.3使用足够长且最小刻度为1mm 的尺子,量得某桌面长的近似值3.1304*=a mm ,宽的近似值mm (数据的最后一位均为估计值). 试求桌子面积近似值的绝8.704*=b 对误差限和相对误差限.解 长和宽的近似值的最后一位都是估计位,尺子的最小刻度是毫米,故有误差限 mm ,mm 5.0)(*=a ε5.0)(*=b ε面积,由式(1.7)得到近似值的绝对误差近似为ab S =***b a S = )()()(*****b e a a e b S e +≈进而有绝对误差限 mm 255.10045.03.13045.08.704)()()(*****=⨯+⨯=+≈b a a b S εεε相对误差限 %11.00011.08.7043.130455.1004)()(***=≈⨯=≈S S S r εε§1.3 数值实验与算法性能比较本节通过几个简单算例说明解决同一个问题可以有不同的算法,但算法的性能并不完全相同,他们各自有自己的适用范围,并进而指出算法设计时应该注意的事项. 算例1.1 表达式,在计算过程中保留7位有效数字,研究对不同)1(1111+=+-x x x x 的x ,两种计算公式的计算精度的差异.说明1:Matlab 软件采用IEEE 规定的双精度浮点系统,即64位浮点系统,其中尾数占52位,阶码占10位,尾数以及阶码的符号各占1位. 机器数的相对误差限(机器精度)eps=2-52≈2.220446×10-16,能够表示的数的绝对值在区间(2.2250739×10-308,1.797693×10308)内,该区间内的数能够近似表达,但有舍入误差,能够保留至少15位有效数字. 其原理可参阅参考文献[2, 4].分析算法1: 和算法2: 的误差时,精确解用双精111)(1+-=x x x y )1(1)(2+=x x x y 度的计算结果代替. 我们选取点集中的点作为x ,比较两种方法误差的差异.301}{=i i π 从图1.1可以看出,当x 不是很大时,两种算法的精度相当,但当x 很大时算法2的精度明显高于算法1. 这是因为,当x 很大时,和是相近数,用算法1进行计算时出x 111+x 现相近数相减,相同的有效数字相减后变成零,于是有效数字位数急剧减少,自然相对误差增大. 这一事实也可以从误差传播公式(1.12)分析出. 鉴于此,算法设计时,应该避免相近数相减.在图1.2中我们给出了当x 接近时,两种算法的精度比较,其中变量x 依次取为1-. 从图中可以看出两种方法的相对误差基本上都为,因而二者的精度相当.{}3011=--i iπ710-图1.1 算例1.1中两种算法的相对误差图()+∞→x图1.2 算例1.1中两种算法的精度比较)1(-→x 算例1.2 试用不同位数的浮点数系统求解如下线性方程组⎩⎨⎧=+=+2321200001.02121x x x x 说明2:浮点数系统中的加减法在运算时,首先按较大的阶对齐,其次对尾数实施相应的加减法运算,最后规范化存入计算机.算法1 首先用第一个方程乘以适当的系数加至第二个方程,使得第二个方程的的系1x 数为零,这时可解出;其次将带入第一个方程,进而求得(在第三章中称该方法为高2x 2x 1x 斯消元法). 当用4位和7位尾数的浮点运算实现该算法,分别记之为算法1a 和算法1b . 算法 2 首先交换两个方程的位置,其次按算法1计算未知数 (第三章中称其为选主元的高斯消元法). 当用4位和7位尾数的浮点运算实现该算法,分别记之为算法2a 和算法2b .方程组的精确解为, ,用不同的算法计算出的...25000187.01=x ...49999874.02=x 结果见表1.1.表1.1 对算例1.2用不同算法的计算结果比较算例1.2*1x )(*1x r ε*2x )(*2x r ε算法1a 0.00000.10×1010.50000.25×10-7算法2a 0.25000.75×10-70.50000.25×10-7算法1b 0.26000000.40×10-10.49999870.10×10-6算法2b0.25000200.50×10-80.50000000.25×10-7对于算例1.2,表中的数据表明,当用4位尾数计算时,算法1给出错误的结果,算法2则给出解很好的近似. 这是因为在实现算法1时,需要给第一个方程乘以加00001.0/2-至第二个方程,从而削去第二个方程中的系数,但在计算的系数时需做如下运算1x 2x(1.13)661610000003.0104.0103.0104.03200001.02⨯⨯⨯⨯=+⨯+=-+--对上式用4位尾数进行计算,其结果为. 因为舍入误差,给相对较大的数加以6104.0⨯-相对较小的数时,出现大数“吃掉”小数的现象. 计算右端项时,需做如下运算(1.14)661610000002.0102.0102.0102.02100001.02⨯⨯⨯⨯=+⨯+=-+--同样出现了大数吃小数现象,其结果为. 这样,得到的变形方程组6102.0⨯-⎩⎨⎧⨯-=⨯-⨯=⨯+⨯62612114102.0104.0101.0102.0101.0x x x 中没有原方程组中第二个方程的信息,因而其解远偏离于原方程组的解. 该算法中之所以出现较大数的原因是因为运算,因而算法设计中尽可能避免用绝对值较大的数00001.0/2-除以绝对值较小的数. 其实当分子的量级远远大于分母的量级时,除法运算还会导致溢出,计算机终止运行.虽从单纯的一步计算来看,大数吃掉小数,只是精度有所损失,但多次的大数吃小数,累计起来可能带来巨大的误差,甚至导致错误. 例如在算法1a 中出现了两次大数吃小数现象,带来严重的后果. 因而尽可能避免大数吃小数的出现在算法设计中也是非常必要的. 当用较多的尾数位数进行计算,舍入误差减小,算法1和2的结果都有所改善,算法1的改进幅度更大些.算例1.3 计算积分有递推公式,已知⎰+=1055dx x x I n ),2,1(511 =-=-n I nI n n . 采用IEEE 双精度浮点数,分别用如下两种算法计算的近似值.56ln 0=I 30I算法1 取的近似值为,按递推公式计算0I 6793950.18232155*0=I *1*51--=n n I nI *30I 算法2 因为,取的近似值为)139(5156)139(611039103939+⨯=<<=+⨯⎰⎰dx x I dx x 39I ,按递推公式计算3333330.004583332001240121*39≈⎪⎭⎫ ⎝⎛+=I ⎪⎭⎫ ⎝⎛-=-**1151n n I n I *30I 算法1和算法2 的计算结果见表1.2. 误差绝对值的对数图见图1.3.表1.2 算例1.3的计算结果算法1算法2n *nI n n I I -*n *nI nn I I -*18.8392e-002 1.9429e-01639 4.5833e-0033.9959e-0042 5.8039e-0029.8532e-016384.2115e-0037.9919e-0053 4.3139e-002 4.9197e-01537 4.4209e-003 1.5984e-0054 3.4306e-002 2.4605e-01436 4.5212e-003 3.1967e-0065 2.8468e-002 1.2304e-01335 4.6513e-003 6.3935e-0076 2.4325e-002 6.1520e-01334 4.7840e-003 1.2787e-007………33 4.9255e-003 2.5574e-00825 1.1740e+001 1.1734e+00132 5.0755e-003 5.1148e-00926-5.8664e+001 5.8670e+00131 5.2349e-003 1.0230e-00927 2.9336e+002 2.9335e+002 305.4046e-003 2.0459e-01028-1.4667e+003 1.4668e+003 297.3338e+0037.3338e+003 30-3.6669e+004 3.6669e+004图1.3 算例1.3用不同算法计算结果的误差绝对值的对数图从表1.2中的计算结果可以看出,算法1随着计算过程的推进,绝对误差几乎不断地以5的倍数增长,即有0*02*221*1*555I I I I I I I I n n n n n n n -≈≈-≈-≈----- 成立. 对于逐步向前推进的算法,若随着过程的进行,相对误差在不断增长,导致产生不可靠的结果,这种算法称之为数值不稳定的算法. 对于算法1绝对误差按5的幂次增长,但真值的绝对值却在不断变小且小于1,相对误差增长的速度快于5的幂次,导致产生错误的结果,因而算法1数值不稳定,不能使用. 而算法2随着计算过程的推进,绝对误差几乎不断地缩小为上一步的1/5,即有m m n m n n n n n n n I I I I I I I I 5/5/5/*22*21*1*++++++-≈≈-≈-≈- 成立. 绝对误差不断变小,真值的绝对值随着过程向前推进却在变大,这样相对误差也越来越小,这样的方法称之为数值稳定的算法. 算法1和算法2的误差对数示意图见图1.3. 这个算例告诉我们应该选用数值稳定的算法.知识结构图⎪⎪⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎪⎪⎨⎧⎪⎩⎪⎨⎧⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎨⎧⎩⎨⎧⎪⎩⎪⎨⎧⎩⎨⎧算法设计要点数值方法的稳定性数值方法的收敛性算法多元函数一元函数传播有效数字相对误差(限)绝对误差(限)度量截断误差舍入误差误差的产生误差误差与算法习题一1 已知有效数,,. 试给出各个近似值的绝对误105.3*1-=x 4*210125.0⨯=x 010.0*3=x 差限和相对误差限,并指出它们各有几位有效数字.2 证明当近似值是x 的较好近似时,计算相对误差的计算公式和相差一个*x x x x -***xxx -和同阶的无穷小量.2*⎪⎪⎭⎫⎝⎛-x x x 3 设x 的近似值具有如式(1.5)的表示形式,试证明*x 1)若具有n 位有效数字,则相对误差;*x n r a x e -⨯≤11*1021)(2)若相对误差,则至少具有n 位有效数字.n r a x e -⨯+≤11*10)1(21)(*x 4 试建立二元算术运算的绝对误差限传播近似计算公式.5 试建立如下表达式的相对误差限近似传播公式,并针对第1题中数据,求下列各近似值的相对误差限.1) ; 2) ; 3) *3*2*1*1x x x y +=3*2*2x y =*3*2*3/x x y =6若例题1.3中使用的尺子长度是80mm ,最小刻度为1mm ,量得某桌面长的近似值mm ,宽的近似值mm . 试估计桌子长度、宽度的绝对误差限,并3.1304*=a 8.704*=b 求用该近似数据计算出的桌子面积的绝对误差限和相对误差限.7 改变如下计算公式,使其计算结果更为精确.1) 且0,cos 1≠-x xx1<<x 2)1,1ln )1ln()1(ln 1>>--++=⎰+N N N N N xdx N N3) 1,133>>-+x x x 8 (数值试验)试通过分析和数值试验两种手段,比较如下三种计算近似值算法的可靠性.1-e 算法1 ;∑=--≈mn nn e 01!)1( 算法2 ;101!1-=-⎪⎭⎫ ⎝⎛≈∑m n n e算法3 ;101)!(1-=-⎪⎪⎭⎫ ⎝⎛-≈∑m n n m e9 (数值试验)设某应用问题归结为如下递推计算公式 ,,72.280=y 251-=-n n y y,2,1=n 在计算时取为具有5位有效数字的有效数. 试分析近似计算公式的2*c **1*5c y y n n -=-绝对误差传播以及相对误差传播情况,并通过数值实验验证 (准确值可以用IEEE 双精度浮点运算结果代替),该算法可靠可用吗?。

数值分析简明教程讲义

数值分析简明教程讲义

第1章 绪论数值计算方法是一门与计算机使用密切结合的实用性很强的数学课程,其特点如下: 第一,面向计算机,要根据计算机特点提供实际可行的有效算法,即算法只能包括加、减、 乘、除运算和逻辑运算,是计算机能直接处理的。

第二,有可靠的理论分析,能任意逼近并达到精度要求,对近似算法要保证收敛性和数值稳 定性,还要对误差进行分析,这些都建立在相应数学理论基础上。

第三,要有好的计算复杂性,时间复杂性好是指节省时间,空间复杂性好是指节省存储量, 这也是建立算法要研究的问题,它关系到算法能否在计算机上实现。

第四,要有数值实验,即任何一个算法除了从理论上要满足上述三点外,还要通过数值试验 证明是行之有效的。

1.1 误差的基本概念除了极个别的情况外,数值计算总是近似计算,实际计算结果与理论结果之间存在着误差。

数值分析的任务之一是将误差控制在一定的容许范围内或者至少对误差有所估计。

一、误差的来源 1、模型误差用计算机解决科学计算问题首先要建立数学模型,它是对被描述的实际问题进行抽象,简化而得到的,因而是近似的,数学模型与实际问题之间出现的这种误差称为模型误差。

这种误差可忽略不计,在数值计算方法中不予讨论。

2、观测误差在数学模型中往往还有一些根据观测得到的物理量,如温度,长度,电压等等,测量的结果不可能绝对正确,由此产生的误差称为观测误差。

观测误差在数值计算方法中也不予讨论。

3、截断误差(方法误差)在数学模型不能得到精确解时,通常要用数值方法求它的近似解,其近似解与精确解之间的误差称为截断误差或方法误差。

4、舍入误差在计算过程中,由于计算机的字长有限,采用计算机数系中和实际数据比较接近的数来表示,由此产生的误差以及计算过程又可能产生新的误差,这些误差称为舍入误差。

二、绝对误差和相对误差1、绝对误差秘绝对误差限设数x (精确值)有一个近似值为*x ,记 称e(x)为近似值*x 的绝对误差,简称误差。

当e(x)为正时,近似值*x 偏大,叫做强近似值 ;当它为负时,近似值*x 偏小,叫作弱近似值。

数值分析方法(讲义)-推荐下载

数值分析方法(讲义)-推荐下载

第十章 数值分析方法在生产实际中,常常要处理由实验或测量所得到的一批离散数据,数值分析中的插值与拟合方法就是要通过这些数据去确定某一类已经函数的参数,或寻求某个近似函数使之与已知数据有较高的拟合精度。

插值与拟合的方法很多,这里主要介绍线性插值方法、多项式插值方法和样条插值方法,以及最小二乘拟合方法在实际问题中的应用。

相应的理论和算法是数值分析的内容,这里不作详细介绍。

§1 数据插值方法及应用在生产实践和科学研究中,常常有这样的问题:由实验或测量得到变量间的一批离散样点,要求由此建立变量之间的函数关系或得到样点之外的数据。

与此有关的一类问题是当原始数据精度较高,要求确定一个初等函数(一般用多项式或分),(,),,(),,(1100n n y x y x y x )(x P y =段多项式函数)通过已知各数据点(节点),即,或要求得函数在另外n i x P y i i ,,1,0,)( ==一些点(插值点)处的数值,这便是插值问题。

1、分段线性插值这是最通俗的一种方法,直观上就是将各数据点用折线连接起来。

如果bx x x a n =<<<= 10那么分段线性插值公式为ni x x x y x x x x y x x x x x P i i i i i i i i i i ,,2,1,,)(11111 =≤<--+--=-----可以证明,当分点足够细时,分段线性插值是收敛的。

其缺点是不能形成一条光滑曲线。

例1、已知欧洲一个国家的地图,为了算出它的国土面积,对地图作了如下测量:以由西向东方向为x 轴,由南向北方向为y 轴,选择方便的原点,并将从最西边界点到最东边界点在x 轴上的区间适当的分为若干段,在每个分点的y 方向测出南边界点和北边界点的y 坐标y1和y2,这样就得到下表的数据(单位:mm )。

x 7.010.513.017.534.040.544.548.056.0y1444547505038303034y24459707293100110110110x 61.068.576.580.591.096.0101.0104.0106.5y1363441454643373328y2117118116118118121124121121x 111.5118.0123.5136.5142.0146.0150.0157.0158.0y1326555545250666668y2121122116838182868568根据地图的比例,18 mm 相当于40 km 。

数值分析讲义第四章数值积分

数值分析讲义第四章数值积分

方法的选取
不同的数值积分方法具有不同 的收敛性和稳定性,应根据具 体问题选择合适的方法。
初值和边界条件
初值和边界条件对数值积分的 收敛性和稳定性也有影响,不 合理的初值和边界条件可能导 致数值积分发散或误差增大。
05
数值积分的应用实例
在物理模拟中的应用
01
流体动力学模拟
数值积分被广泛应用于流体动力 学模拟中,如计算流体速度、压 力、温度等的分布。
02
数值积分方法
矩形法
总结词:简单直观
详细描述:矩形法是一种基本的数值积分方法,它将积分区间划分为若干个小的矩形,然后求和近似计算积分值。由于计算 简单直观,适用于初学者理解数值积分的基本思想。
梯形法
总结词:易于理解
详细描述:梯形法是另一种数值积分方法,它将积分区间划分为若干个小的梯形,然后求和近似计算 积分值。与矩形法相比,梯形法更接近于真实曲线下面积的形状,因此误差相对较小。
衍生品定价
通过数值积分方法,可以 对复杂的衍生品进行定价, 如期权、期货等。
蒙特卡洛模拟
蒙特卡洛模拟是一种基于 随机抽样的数值积分方法, 常用于估计预期收益和风 险。
在图像处理中的应用
图像滤波
通过数值积分方法,可以 对图像进行滤波处理,如 平滑、锐化等。
图像重建
在图像重建中,数值积分 常用于从部分图像数据中 恢复完整的图像。
辛普森法
总结词:精度较高
详细描述:辛普森法是数值积分的一种改进方法,它利用了被积 函数在积分区间的端点和中心点的函数值进行近似计算,因此精 度相对较高。辛普森法是数值积分中常用的方法之一。
高斯法
总结词:高精度
VS
详细描述:高斯法是一种基于高斯积 分的数值积分方法,它利用了被积函 数在积分区间内的高斯点的函数值进 行近似计算,具有很高的精度。高斯 法适用于需要高精度计算的情况,但 计算过程相对复杂。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第十章 数值分析方法在生产实际中,常常要处理由实验或测量所得到的一批离散数据,数值分析中的插值与拟合方法就是要通过这些数据去确定某一类已经函数的参数,或寻求某个近似函数使之与已知数据有较高的拟合精度。

插值与拟合的方法很多,这里主要介绍线性插值方法、多项式插值方法和样条插值方法,以及最小二乘拟合方法在实际问题中的应用。

相应的理论和算法是数值分析的内容,这里不作详细介绍。

§1 数据插值方法及应用在生产实践和科学研究中,常常有这样的问题:由实验或测量得到变量间的一批离散样点,要求由此建立变量之间的函数关系或得到样点之外的数据。

与此有关的一类问题是当原始数据精度较高,要求确定一个初等函数(一般用多项式或分),(,),,(),,(1100n n y x y x y x )(x P y =段多项式函数)通过已知各数据点(节点),即,或要求得函数在另外n i x P y i i ,,1,0,)( ==一些点(插值点)处的数值,这便是插值问题。

1、分段线性插值这是最通俗的一种方法,直观上就是将各数据点用折线连接起来。

如果bx x x a n =<<<= 10那么分段线性插值公式为ni x x x y x x x x y x x x x x P i i i i i i i i i i ,,2,1,,)(11111 =≤<--+--=-----可以证明,当分点足够细时,分段线性插值是收敛的。

其缺点是不能形成一条光滑曲线。

例1、已知欧洲一个国家的地图,为了算出它的国土面积,对地图作了如下测量:以由西向东方向为x 轴,由南向北方向为y 轴,选择方便的原点,并将从最西边界点到最东边界点在x 轴上的区间适当的分为若干段,在每个分点的y 方向测出南边界点和北边界点的y 坐标y1和y2,这样就得到下表的数据(单位:mm )。

x 7.010.513.017.534.040.544.548.056.0y1444547505038303034y24459707293100110110110x 61.068.576.580.591.096.0101.0104.0106.5y1363441454643373328y2117118116118118121124121121x 111.5118.0123.5136.5142.0146.0150.0157.0158.0y1326555545250666668y2121122116838182868568根据地图的比例,18 mm 相当于40 km 。

根据测量数据,利用MATLAB 软件对上下边界进行线性多项式插值,分别求出上边界函数,下边界函数,利用求平面图形面积的数值积分方法—将该面积近似分成若干个小)(2x f )(1x f 长方形,分别求出这些长方形的面积后相加即为该面积的近似解。

ii ni i n x f f S ∆-=∑=∞→)]()([lim 112ξξ式中,。

],[1i i i x x -∈ξ这里线性插值和面积计算源程序如下:clear allx=[7.0 10.5 13.0 17.5 34.0 40.5 44.5 48.0 56.0 61.0 68.5 76.5 80.5 91.0 96.0 101.0 104.0 106.5 111.5 118.0 123.5 136.5 142.0 146.0 150.0 157.0 158.0];y1=[44 45 47 50 50 38 30 30 34 36 34 41 45 46 43 37 33 28 32 65 55 54 52 50 66 66 68];y2=[44 59 70 72 93 100 110 110 110 117 118 116 118 118 121 124 121 121 121 122 116 83 81 82 86 85 68];newx=7:0.1:158;newy1=interp1(x,y1,newx,’linear’);newy2=interp1(x,y2,newx,’linear’);Area=sum(newy2- newy1)*0.1/18^2*1600最后计算的面积约为42414平方公里。

2、多项式插值 设有次多项式m mm m m a x a x a x a x P ++++=--1110)( 通过所有个点,那么就有1+n ),(,),,(),,(1100n n y x y x y x ni y a x a x a x a i m i m m im i ,,1,0,1110 ==++++--可以证明当且时,这样的多项式存在且唯一。

若要求得到函数表达式,n m =n x x x <<< 10可直接解上面方程组。

若只要求得函数在插值点处数值,可用下列Lagrange 插值公式)()(,00∏∑≠==--=nij j ji j ni i n x x x x y x P 多项式插值光滑但不具有收敛性,一般不宜采用高次多项式(如)插值。

7>m 例2、在万能拉拨机中有一个园柱形凸轮,其底园半径R=300mm ,凸轮的上端面不在同一平面上,而要根据动杆位移变化的需要进行设计制造。

按设计要求,将底园周18等分,旋转一周。

第个分点对应柱高,数据见下表。

为了数控加工,需要计算出园周上任一i )18,,2,1,0( =i y i 点的柱高。

凸轮高度的数据(单位:mm )分点i 0和1812345柱高502.8525.0514.3451.0326.5188.6分点i67891011柱高92.259.662.2102.7147.1191.6分点i121314151617柱高236.0280.5324.9369.4413.8458.3我们将园周展开,借助MATLAB 软件画出对应的柱高曲线散点图(左下图)。

clear;close;x=linspace(0,2*pi*300,19);y=[502.8,525.0,514.3,451.0,326.5,188.6,92.2,59.6,62.2,102.7,147.1,191.6,236.0,280.5,324.9,369.4,413.8,458.3,502.8];plot(x,y,’o’);axis([0,2000,0,550]);可见,可以用三次多项式插值,下面给出借助MATLAB 软件画出的柱高插值曲线图(右上图)。

xi=0:2*pi*300;yi=interp1(x,y,xi,’cubic’);plot(xi,yi);3、样条插值这是最常用的插值方法。

数学上所说的样条,实质上是指分段多项式的光滑连接。

设有bx x x a n =<<<= 10称分段函数为k 次样条函数,若它满足)(x S (1) 在每个小区间上是次数不超过次的多项式;)(x S k (2) 在上具有直到阶的连续导数。

)(x S ],[b a 1-k 用样条函数作出的插值称为样条插值。

工程上广泛采用三次样条插值。

例3、某居民区的自来水是由一个园柱形的水塔提供。

水塔高12.2米,直径17.4米。

水塔由水泵根据塔中水位高低自动加水,一般每天水泵工作两次。

按照设计,当水塔内的水位降至约8.2米时,水泵自动启动加水;当水位升至约10.8米时,水泵停止工作。

现在需要了解该居民区用水规律,这可以通过用水率(单位时间的用水量)来反映。

通过间隔一段时间测量水塔中的水位来估算用水率。

下表是某一天的测量记录数据,测量了28个时刻(单位:小时)的水位(单位:米),但由于其中有3个时刻正遇到水泵在向水塔供水,而无水位记录(表中用符号//表示)。

时刻0.9211.8432.9493.8714.9785.900水位9.6779.4799.3089.1258.9828.8148.686时刻7.0067.9828.9679.98110.92510.95412.032水位8.5258.3888.220////10.82010.500时刻12.95413.87514.98215.90316.82617.93119.037水位10.2109.9369.6539.4099.1808.9218.662时刻19.95920.83922.01522.95823.88024.98625.908水位8.4338.220//10.82010.59110.35410.180先通过体积公式,利用上表中的水位高,得到不同时刻水塔中水的体积。

为h d v 24π=h i t i v 提高精度,采用二阶差商来估算时刻的水流速度,即。

i t i i v t f 2)(-∇= 具体地,因为所有数据被水泵两次工作分割成三组数据,对每组数据的中间数据采用中心差商,前后两个数据不能够采用中心差商,改用向前或向后差商。

中心差商公式)(1288121122i i i i i i i t t v v v v v -+-+-=∇+--++向前差商公式)(2341122i i ii i i t t v v v v --+-=∇+++向后差商公式 )(2431212----+-=∇i i i i i i t t v v v v估算出水塔中水的流速(单位:立方米/小时)见下表。

时刻00.921 1.843 2.949 3.871 4.978 5.900流速54.51642.32038.08541.67933.29737.81430.748时刻7.0067.9828.9679.98110.92510.95412.032流速38.45532.12241.718////73.68676.434时刻12.95413.87514.98215.90316.82617.93119.037流速71.68660.19068.33359.21752.01156.62663.023时刻19.95920.83922.01522.95823.88024.98625.908流速54.85955.439//57.60257.76651.89136.464先用MATLAB 画出水流速散点图。

t=[0 0.921 1.843 2.949 3.871 4.978 5.9 7.006 7.982 8.967 10.954 12.032 12.954 13.875 14.982 15.903 16.826 17.931 19.037 19.959 20.839 22.958 23.88 24.986 25.908];r=[54.516 42.320 38.085 41.679 33.297 37.814 30.748 38.455 32.122 41.718 73.686 76.434 71.686 60.19 68.333 59.217 52.011 56.626 63.023 54.859 55.439 57.602 57.766 51.891 36.464];plot(t,r,’b+’); % (t,r)表示时间和流速title(‘流速散点图’);xlabel (’时间(小时)’); ylabel(‘流速(立方米/小时)’)使用MATLAB 软件中的三次样条插值命令得到用水率函数如下图所示。

相关文档
最新文档