第 0 章:绪论
主要内容:
- 数值计算方法的特点
- 误差与有效数字
- 计算复杂性与算法稳定性
- 范数
数值计算方法的特点
研究对象
- 数值计算方法,是一种研究数学问题数值近似解的方法,简称计算方法。
- 研究一些在理论上有解而又无法用手工计算的数学问题,以及没有解析解的数学问题。应用范围很广
数值计算方法的特点:
- 面向计算机
- 要根据计算机的特点提供实际可行的方法
- 要有可靠的理论分析
- 包括误差、稳定性、收敛性、计算量和存储量等
- 要有良好的计算复杂性以及数值试验
- 例如:求解 100 阶线性代数方程组
- Cramer 法则
- 乘除法运算次数:\(10^{162}\)
- 用“天河二号”需要 \(10^{138}\) 年
- Gauss 消元法
- 乘除法运算次数:3060
- Cramer 法则
- 例如:求解 100 阶线性代数方程组
解决复杂数值计算问题的主要途径有:
- 用有限代替无限
- 将非线性问题逐步线性化
例:设计数值计算方法计算 \(e^{x}\) 的近似值
- 输入:指数 x,迭代次数 m
- 输出:\(e^{x}\) 的近似值 p
![image]()
误差与有效数字
计算机中的数用二进制表示,非零机器数表示为:
其中,\(a\)i 为 0 或者 1,规定 \(a\)i 不为 0,称为尾数,t 是机器所能允许的位数;s 取正整数、负整数或者 0,称为阶数
在任何机器上,浮点数都是一个有限集合
问:在 32 位计算机上, x = 2/3 的二进制形式是什么?
误差的分类
- 定义 0.1:设 \(x^{*}\) 为精确值(准确值),x 是 \(x^{*}\) 的一个近似值,称 e = \(x^{*}\) - \(x\) 为近似 x 的绝对误差或误差
- 定义 0.2:如果精确值 \(x^{*}\) 与近似值 x 的误差的绝对值不超过某整数 ε,称 ε 为绝对误差限或误差限,即:
- 定义 0.3:设 \(x^{*}\) 为精确值,x 是 \(x^{*}\) 的一个近似值,称
为近似 x 的相对误差 - 定义 0.4:如果有正数 ε,使得
,则称 εr 为 \(x^{*}\) 的相对误差限 - 定义 0.5:当 x 的误差限为某一位的半个单位,则这一位到另一个非零位的位数称为 x 的有效位数。若有效数字共有 m 个,则称 x 有 n 位有效数字,或者说 x 精确到 n 位
- 例如:自然对数的底 \(e^*\) = 2.718281828459045...
- 取近似值 e = 2.718,有 4 位有效数字
- 取近似值 e = 2.7182,有 5 位有效数字
- 取近似值 e = 2.71828,有 6 位有效数字
- 例如:自然对数的底 \(e^*\) = 2.718281828459045...
病态问题与条件数
对于一个数值问题,若输入数据的微小扰动(即误差)会引起输出数据(即问题解)相对误差较大,称为病态问题。
计算函数值问题的条件数

算法的数值稳定性
一个算法如果原始数据有扰动,而计算过程中舍入不增长,则称此算法是数值稳定的;否则,若误差增长,则称此算法数值不稳定
- 数值不稳定的算法是不能使用的!
例:计算定积分:

- 算法一:先计算 \(I\)0, 然后再计算 \(I\)1
- 假设计算出 \(I\)0 的近似值为 \(I^*\)0,误差为 E(\(I^*\)0)= e
- 则:
![image]()
- 算法二:利用递推公式
![image]()
- 先计算 \(I\)7,\(I\)0 的误差只有 \(I\)7 误差的 五千分之一!
避免误差危害的若干原则
- 避免用绝对值很小的数做除法
- 避免两个相近的数相减
- 例如:求 \(x^2 - 16x + 1 = 0\) 的最小正根。取 \(\sqrt{63} = 7.94\)
- 由求根公式
直接计算得,\(x_1 ≈ 8 - 7.94 = 0.06\) - 或者进行变换得到
![image]()
- 由求根公式
- 例如,当 \(x ≈ 0\) 时,计算 \(1 - cosx\)
- 例如:求 \(x^2 - 16x + 1 = 0\) 的最小正根。取 \(\sqrt{63} = 7.94\)
- 简化计算步骤,注意运算次序,尽量减少运算次数
- 例如:计算多项式:\(p(x) = a_nx^n + ... + a_1x + a_0\)
- 秦九韶算法:\(S_n = a_n\), \(S_k = xS_{k+1} + a_k, k = n-1,n-2,......,1,0\)
- 只需要 n 次乘法和 n 次加法

- 答案应为:a
范数
向量范数的定义
设 \(X ∈ R^n\) 按照一个规则确定一个实数与它对应,记该实数为\(|| X ||\),若 \(|| X ||\) 满足以下条件:
- \(|| X || ≥ 0 且 || X || = 0 \Leftrightarrow X = 0\)
- \(|| αX || = |α|·||X||,α ∈ R(C)\)
- \(|| X + Y || ≤ ||X|| + ||Y||,\forall X,Y ∈ R^n\)
则称 ||X|| 是 X 的向量范数
常用的向量范数
例:\(X = (x_1,x_2,...,x_n)^T∈R^n\)
- 无穷范数或最大范数
![image]()
- 1-范数
![image]()
- 2-范数
![image]()
- p-范数
![image]()
例1:已知 \(X = (1,3,-5)^T,求||X||_\infty、||X||_1、||X||_2\)

范数的等价性
\(\forall X ∈ R^n, 设 ||·||_s 和 ||·||_t 是 R^n 上任意两种向量范数,则存在常数 M ≥ m ≥ 0,使得 m||x||_s ≤ ||X||_t ≤ M||X||_s\)

向量序列的极限
已知向量序列\({X^{(K)}}\)及向量\(X^*\)
![image]()
若

则称向量序列\({X^{(K)}}\)收敛与向量\(X^*\),记为

定理:

矩阵范数的定义
关于矩阵 \(A ∈ R^{n×n}\) 的某个实值非负函数 \(N(A) \equiv ||A||\),如果满足以下条件:
- \(||A|| ≥ 0,且||A|| = 0 \Leftrightarrow A = 0\)
- \(||αA|| = |α|||A||,α∈R\)
- \(||A+B||≤||A|| + ||B||,\forall A,B∈R^{n×n}\)
- \(||AB||≤||A||·||B||,\forall A,B∈R^{n×n}\)
则称 N(A) 是 \(R{n×n}\) 上的一个矩阵范数(或模)
矩阵的F范数

矩阵的算子范数
\(设x∈R,A∈R{n×n},已经给出了一种向量范数||x||_v,定义一个矩阵的非负函数\)

常用的矩阵范数
\(设x∈R^n,A∈R{n×n}\)
- A 的行范数
![image]()
- A 的列范数
![image]()
- A 的2-范数(谱范数)
![image]()
例子:


矩阵特征值的界
- \(设A∈R^{n×n},则ρ(A)≤||A||_v,||A||_v为满足相容条件的矩阵范数\)
- \(设A∈R{n×n}为对称矩阵,则||A||_2 = ρ(A)\)
![image]()
矩阵序列的极限







为近似 x 的相对误差
,则称 εr 为


直接计算得,










浙公网安备 33010602011771号