2.3方程组的病态问题

合集下载

2.3矩阵的条件数与病态方程组

2.3矩阵的条件数与病态方程组
得:ans=1.000,1,000,1.000,1.000,0.9999 1.0002,0.9996,1.0004,0.9998,1.000
输入: n 5; H hilb(n);b H *ones(n,1); x H \ b; x,
得:ans=1.000,1,000,1.000,1.000,1.000 输入: n 10; H hilb(n);b H *ones(n,1); x H \ b; x,
2.3 矩阵的条件数与病态方程组
一、矩阵的条件数 二、线性方程组的性态 三、病态线性方程组的求解
2.3 矩阵的条件数与病态方程组
例1 方程组
3.03001
11

x1 x2
4.04001
准确解: x1 , x2 T 1 , 1T
若A及b作微小变化,考虑扰动后的方程组:
3 2.9999
11

x1 x2
4.04002
准确解:
x1 , x2 T 2
, 10T
方程组解的几何解释为:平面上两条接近于平行的直线的 交点,当其中一条直线稍有变化时,新的交点与原交点相 差很远。
例2 方程组 10 7 8 7 x1 32
7
8 7
5 6 5
6 10 9
5 190

x2 x3 x4
23 3331
(准1确A)解对0为0.00右0.081:端00b0.0(0..004x作211 ,微x00200..小11,1x扰3,00x动00..2042):T (2()1,1对,1,系1)数T 矩阵A作微小扰动:
10 7 8 7 x1 32.1
10 7 8.1 7.2 x1 32
7
8 7
5 6 5

2范数和条件数病态方程组

2范数和条件数病态方程组

由于
( I A)( I A)1 I ( I A)1 A( I A)1 I
( I A)1 I A( I A)1
在最后一式两端取范数,得
( I A) 1 I A ( I A) 1
1 A

( I A) 1 I 1.
练习:计算矩阵
1 2 A 3 4 的各种范数.
答案 : 6,7, 15 221 , 30
§2.3 矩阵的条件数与病态线性方程组
2.3.1
矩阵的条件数与线性方程组的性态
给定线性方程组 Ax =b,现在考察,系数矩阵 A 和常数列 b 有了微小变化 △A,△b ,它如何影 响解向量 x,即,解向量 x 的变化量 △x 何样? 由于A (或 b)的元素是测量得到的,或者是 计算的结果,在前种情况下, A (或 b)常常带有 某些观测误差,在后种情况下, A (或 b)包含舍 入误差,因此我们处理的实际矩阵是A + △A (或 b+ △b )。
n×n矩阵 A,式(1.2)中定义的函数是一种矩阵范 数,并且它与给定的向量范数是相容的.
A max Ax
单位球上的 最大像值
x 1
(1.2)
证明 先证相容性. 对任意的n×n矩阵A和n维非零向
量 y. 由于
y 1 max Ax A Ay . x 1 y y
所以有
Ay y max Ax y A ,
考察方程组 Ax = b, 当 A 或 b 有微小扰动时, 对解的影响, 首先看一个例子:
1 x1 2 1 , 1 1.0001 x2 2 1 x1 2 1 x 1 1.0001 2.0001 2

第2次作业(题目) 病态线性方程组的计算

第2次作业(题目) 病态线性方程组的计算

第2次作业病态线性方程组的计算在科学技术、工程和经济等领域中都会遇到求解线性方程组问题。

在很多有广泛背景的数学问题中,如样条逼近、微分方程边值问题的差分法和有限元方法都要求求解线性方程组,而且通常会遇到求解大型方程组的问题。

在数值求解大型方程的过程中,一般会遇到很到计算上的问题,矩阵的病态性是其中之一。

矩阵的病态性质一般来自两个方面,一是由于矩阵本身的性质所引起,如希尔伯特矩阵。

这种矩阵,虽然阶数可能不大,但其条件数却非常大;另一类病态性质是由于矩阵的阶数所引起的。

矩阵在阶数比较小时,性质很好;但当阶数升高后,条件数则变得很大。

如用差分法或有限元法离散微分方程后得到的线性方程组。

它们的理论性质很好,甚至在理论上可证明它们是对称正定的。

然而,由于矩阵得阶数很高,可达到上百万阶,因而矩阵得条件数是相当大的。

方程的病态性质给方程组的数值求解带来巨大麻烦,甚至使某些看似理论性质很好的方程如对称正定矩阵,也不太可能得到通常意义下唯一的数值解。

病态矩阵是指矩阵有很小的扰动时,所引起解的变化很大的矩阵。

矩阵的病态性质一般可用矩阵的条件数来指示。

矩阵的条件数记为:-(cond)=AAA虽然矩阵的病态性,如上面提到的,可能来自两个方面,但在与具体问题相联系的求解过程中遇到的问题是基本一致。

下面这个方程组来自对偏微分方程(Stokes方程)的某种有限元方法离散后得到的。

该微分方程为⎪⎩⎪⎨⎧=Ω∈=Ω∈=∇+∆Ω∂0),( , 0 div ),( , ),(u y x u y x y x f p u 其中)),(),,((),(21y x u y x u y x u =为二维空间的向量函数,为标量函数),(y x p 。

为方便起见,现已经有方程组的系数矩阵和右端向量:这些数据存于数据文件‘stokes_coff_....mat ’中,可用Matlab 的load 命令调入即可。

关于数据文件中数据的说明:CoffA:方程组的系数矩阵;具有如下形式:⎪⎪⎭⎫ ⎝⎛=C B B ACoffA T变量BT 即为T B ;CoffA 为对称正定矩阵。

数值分析实验报告

数值分析实验报告

(此文档为word 格式,下载后您可任意编辑修改!)姓名:袁义平 学号:班级:信息与计算科学二班实验一 误差分析实验1.1(病态问题)实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。

对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。

通过本实验可获得一个初步体会。

数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。

病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。

问题提出:考虑一个高次的代数多项式)1.1()()20()2)(1()(201∏=-=---=k k x x x x x p显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。

现考虑该多项式的一个扰动其中是一个非常小的数。

这相当于是对(1.1)中的系数作一个小的扰动。

我们希望比较(1.1)和(1.2)根的差别,从而分析方程(1.1)的解对扰动的敏感性。

实验内容:为了实现方便,我们先介绍两个Matlab 函数:“roots ”和“poly ”。

其中若变量a 存储n+1维的向量,则该函数的输出u 为一个n 维的向量。

设a 的元素依次为,则输出u 的各分量是多项式方程01121=+++++-n n n n a x a x a x a的全部根;而函数的输出b 是一个n+1维变量,它是以n 维变量v 的各分量为根的多项式的系数。

可见“roots ”和“poly ”是两个互逆的运算函数。

上述简单的Matlab 程序便得到(1.2)的全部根,程序中的“ess ”即是(1.2)中的。

实验要求:(1) 选择充分小的ess ,反复进行上述实验,记录结果的变化并分析它们。

如果扰动项的系数很小,我们自然感觉(1.1)和(1.2)的解应当相差很小。

计算中你有什么出乎意料的发现?表明有些解关于如此的扰动敏感性如何?(2) 将方程(1.2)中的扰动项改成或其它形式,实验中又有怎样的现象出现?(3) (选作部分)请从理论上分析产生这一问题的根源。

一元二次方程变态题

一元二次方程变态题

一元二次方程变态题
一元二次方程是指形如ax^2 + bx + c = 0的方程,其中a、b、c为实数且a不等于0。

一元二次方程的解可以通过公式法、配方法、因式分解等多种方法来求解。

在解题过程中,我们需要注意一元二
次方程的判别式Δ=b^2-4ac,根据判别式的正负和零来判断方程的
根的情况。

变态题是指在解题过程中需要运用一些巧妙的方法或者进行一
些特殊的变换才能得到解答的题目。

在一元二次方程的变态题中,
可能会涉及到系数的特殊取值、方程的特殊形式以及与其他数学知
识的结合等方面。

举例来说,一个一元二次方程的变态题可以是,已知方程2x^2 kx + 3 = 0有两个不相等的实数根,求k的取值范围。

这样的题目
就需要我们通过判别式Δ=b^2-4ac的性质来解答,并且需要注意到
实数根的性质,通过分析不等式来得到k的取值范围。

另外,一元二次方程的变态题还可能涉及到几何问题、实际应
用问题等,需要我们将数学知识与实际情况相结合,通过建立方程、求解方程来得到问题的答案。

总之,一元二次方程的变态题需要我们综合运用所学的数学知识,灵活运用解题方法,从多个角度思考问题,才能得到准确的解答。

希望这个回答能够帮助你理解一元二次方程的变态题。

2.3方程组的病态问题

2.3方程组的病态问题

∆x = (A− ∆A) (∆b − ∆Ax)
−1
∆x = (I − A−1∆A)−1 A−1(∆b − ∆Ax)
≤ (I − A−1∆A)−1
A−1 ( ∆b + ∆Ax )
A−1 ≤ ( ∆b + ∆A x ) −1 1− A ∆A
注意 A−1∆A ≤ A−1
∆ , b = A ≤ A A x 知 x ,便 A ∆ A−1 ∆ x b A ∆ A ≤ + − 1 A x ∆ x 1− A A A ≤ A−1 1− A−1 A A ∆ b ∆ A b + A ∆ A A

k = cond( A) = A−1 ∆x ≤ x
A , 则 近 解~ 误 估 式 得 似 x 差 计 ∆b ∆A b + A ∆A 1− k A k (2 −8)
此时表明, ∆ A
A 很小时,解的相对
~ 误差约为 A 和
~ b相对误差的 k 倍; k 很大 ~ ~ 时,即使 A 和 b的相对误差很小,解的相
~ ∆A = A− A, ~ ∆b = b − b
同计算机运算和精度有关。计算精度越高,∆A 和 ∆b 必然越小。
例:
x1 + x2 = 2 x1 + 1.0001x2 = 2.0001 x1 + x2 = 2 x1 + 1.0001x2 = 2
比较两方程的准确解,可以发现它们的准 确解差别很大
x1 = x2 ,接近真 =1
实际问题很难计算条件数。下列现象可能表 示方程组是病态的: (1)系数矩阵的行或列近似线性相关。 (2)系数矩阵的元素,数量级相差悬殊。 (3)将系数矩阵的元素稍加改变,得出的解 变化较大。 (4)采用选主元的求解过程中,主元数量级 相差悬殊。 (5)求出的解与预期的解相差较远。

2-3矩阵的条件数与病态线性方程组

2-3矩阵的条件数与病态线性方程组
~ ~ ~ 其中A A A , b b b , x x x 。
~ ~ A~ x b
设 A
1 A
1
且 A 非奇异, b 0 ,则
1
~ ~ A~ x b 的解的存在性与唯一性
因为 A 1 A A 1 A 1 ,则 I A 1 A 非奇异,又 A 非奇异,故
x1 1 去法可得 。 x2 1
3 ) 残差校正法(迭代改善 )。
考虑求解Ax b , 求得的近似解为~ x ,一般 A~ x b, 即残差r b A~ x 0。
~ ~ 以残差r 为右端向量, 求解 Ax r 可得~ x 的修正量x , 记~ x x x , 如果
~ A A A A I A1A 非奇异。


2
估计 x的相对误差
A Ax x b b
x A 1b A 1Ax A 1Ax
1
A 1 A
x x

x A 1 b A 1 A x
x1 5 x2 6 x1 4.999x2 6.002
x1 1 x1 16 第一个方程组的解为 , 第二个方程组的解为 x 1 2 x2 -2
问题:出现这种差异的原因是什么?
~ ~ 考虑求解线性方程组 Ax b , 设 A和b 分别有了扰动A和b 成了A 和b ,即
计算残差的求解过程是 精确的, 即Ax r ,则
~ A~ x A~ x x b r r b
但实际计算时由于舍入 误差不可避免,故应重 复执行上述过程。
详细算法流程可参考page32-33。
2.3 矩阵的条件数与病态线性方程组

数值分析教案

数值分析教案

数值分析教案教师教案(2009 — 2010 学年第 2 学期)课程名称:数值分析授课学时:32授课班级:任课教师:师君教师职称:讲师教师所在学院:电⼦⼯程电⼦科技⼤学教务处第⼀章⼀、教学内容及要求(按节或知识点分配学时,要求反映知识的深度、⼴度,对知识点的掌握程度(了解、理解、掌握、灵活运⽤),技能训练、能⼒培养的要求等)教学内容:1)数值分析简介(了解)数值分析的原理和基本思想介绍;应⽤实例分析。

2)误差与有效数字(理解)误差、误差限、相对误差、相对误差限和有效数字的定义及相互关系;误差的来源和误差的基本特性;误差计算(估计)的基本⽅法。

3)算法的适定性问题(理解)数值分析中的病态和不稳定性问题介绍;病态问题和不稳定算法的实例分析;避免误差危害的若⼲原则。

教学要求:熟悉和了解数值分析的基本概念,掌握误差分析的基本⽅法,了解数值计算算法设计中应当关注的基本问题。

学时数分配:2学时⼆、教学重点、难点及解决办法(分别列出教学重点、难点,包括教学⽅式、教学⼿段的选择及教学过程中应注意的问题;哪些内容要深化,那些内容要拓宽等等)重点与难点:1)数值分析的概念与其在科学研究中的地位了解数值分析的概念与其在科学研究中的地位对于建⽴学⽣学习兴趣,明确学习⽬标⾄关重要。

教学⽅式与⼿段:采⽤多媒体教学,从学⽣前期课程中遇到的问题⼊⼿,展⽰如何利⽤数值分析⼿段解决上述问题,培养学⽣对本学科的兴趣。

2)算法的概念数值分析是研究算法的学科,在教学过程中必须给学⽣建⽴起算法的概念。

教学⽅法和⼿段:采⽤多媒体教学,通过定义释义和举例⼦,在学⽣中建⽴起算法的概念,明确算法研究中的所需要考虑的问题,主要包括算法的有效性、误差、运算量和稳定性的概念,并从正反两⽅⾯举例,说明上述问题在实际⼯程问题中的作⽤。

3)误差的概念误差分析是算法研究的关键问题之⼀,需要给学⽣明确误差的定义及⼯程中误差的来源。

教学⽅法和⼿段:采⽤多媒体教学,通过不同概念:绝对误差、绝对误差限、相对误差,相对误差限及有效数字的对⽐举例,加深学⽣对上述概念的把握。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
−5 10 1 1 −1 1 −1 A= , A = 1−105 1 −105 1 1 A∞ = 2, A−1 ∞ = 2 , cond(A)∞ = 4
方程组变为良态。
实际方程组平衡后未必变为良态,所以为避免 平衡时除法平生误差,通常并不真正执行平衡。 只是选主元时参照平衡措施,将选主元的原则, 由元素绝对值最大,改为除以该行绝对值最大素后 绝对值最大者。按此原则选主元求解上列第一个病 态方程组,在4位机上可得解 解。
对误差也可能很大。 数 k 反映了舍入误差对解可能影响的大小 ,同方程 A = b 组本身系数矩阵有关,因此 x 称为方程组 A = b 的条件数。它的值随 x 所取范数不同而略有不同;但对矩阵的相容范 数,均有 k = A A ≥ A A = I =1 ,均可粗略说是误差的放大倍数。
−1
− 1
k值很大的方程组称病态方程组, k值较 小的方程组称良态方程组。
x1 =100 000/ 99 999, x2 = 99 998/ 99 999
相差甚远。
对第二个方程组
1 1 A= 2 1 3 11 A∞ = , 6 1 2 1 3 1 4 1 3 − 36 30 9 1 − 1 , A = − 36 192 −180 4 30 −180 180 1 5 A−1
§ 2.3 方程组的病态问题
用直接法解线性方程组 Ax = b ,理应得出 准确解 x* 。但因存在舍入误差,只能得出近似
~ ~ ~,或者说近似方程组 A~ = b 的准确解。 解x x ~ ~的误差 近似矩阵 A 和近似向量 b
~ ∆A = A− A, ~ ∆b = b − b
同计算机运算和精度有关。计算精度越高,∆A 和 ∆b 必然越小。
≤ (I − A−1∆A)−1
A−1 ( ∆b + ∆Ax )
A−1 ≤ ( ∆b + ∆A x ) −1 1− A ∆A
注意 A−1∆A ≤ A−1
∆ , b = A ≤ A A x 知 x ,便 A ∆ A−1 ∆ x b A ∆ A ≤ + − 1 A x ∆ x 1− A A A ≤ A−1 1− A−1 A A ∆ b ∆ A b + A ∆ A A
x
分别满足方程组
( A − ∆A)(x − ∆x) = b − ∆b ,
Ax = b
(A− ∆A)∆x = ∆b − ∆Ax
当 ∆A很小时
A ∆A 很小,
−1
A− ∆A = A(E − A ∆A) 可逆,
−1
∆x = (A− ∆A) (∆b − ∆Ax)
−1
∆x = (I − A−1∆A)−1 A−1(∆b − ∆Ax)

k = cond( A) = A−1 ∆x ≤ x
A , 则 近 解~ 误 估 式 得 似 x 差 计 ∆b ∆A b + A ∆A 1− k A k (2 −8)
此时表明, ∆ A
A 很小时,解的相对
~ 误差约为 A 和
~ b相对误差的 k 倍; k 很大 ~ ~ 时,即使 A 和 b的相对误差很小,解的相
对第一个方程组,
5 5 1 10 1 −1 10 , A−1 = 5 A= 10 −1 1 −1 1 1
10 +1 A ∞ =10 +1 , A ∞= 5 10 −1 cond(A)∞ ≈100 003
5 5 −1
如在四位计算机上用列主元法求解,将得 到解 x2 =1, x1 = 0 ,而与真解
实际问题很难计算条件数。下列现象可能表 示方程组是病态的: (1)系数矩阵的行或列近似线性相关。 (2)系数矩阵的元素,数量级相差悬殊。 (3)将系数矩阵的元素稍加改变,得出的解 变化较大。 (4)采用选主元的求解过程中,主元数量级 相差悬殊。 (5)求出的解与预期的解相差较远。
为准确求解病态方程组,可以采取以下措 施,减少舍入误差影响:采用高精度计算;采用 稳定性好的算法,如全主元法;采取平衡措施; 迭代改善计算解。 所谓平衡措施,就是将系数矩阵的各行除以 该行绝对值最大的元素。例如上述第一个方程组 的系数矩阵,经平衡后变为

= 408 ,
cond( A)∞ 748
如 各 数 入 两 数 的 似 效 ,则 x1 = x2 将 分 舍 为 位 字 近 有 数 解 = x3 =1 为 1 = −6.222L, x2 = 38.25L, x3 = −33.65L, 变 x 变 面 全 o如 各 数 入 三 近 有 数 则 得 目 非 将 分 舍 为 位 似 效 , 解 为 1 =1.491L, x2 =1.0895L, x3 = 0.487 967L,与 变 x 真 仍 相 较 o 解 然 差 远
如下方程组都是病态方程组:
1 1 11 1 x + 2 x2 + 3 x3 = 6 5 5 x +10 x2 =10 1 1 13 1 ( ) 1 1 (2) x + x2 + x3 = 1 2 3 4 12 x + x2 = 2 1 1 1 47 1 x + x2 + x3 = 3 1 4 5 60
Hale Waihona Puke 例:x1 + x2 = 2 x1 + 1.0001x2 = 2.0001 x1 + x2 = 2 x1 + 1.0001x2 = 2
比较两方程的准确解,可以发现它们的准 确解差别很大
下面估计 ∆A和 ∆b 很小时解的误差
~。 ~ 和 ∆x = x − x x
两式相减,可得
x1 = x2 ,接近真 =1
相关文档
最新文档