| 注册
home doc ppt pdf
请输入搜索内容

热门搜索

年终总结个人简历事迹材料租赁合同演讲稿项目管理职场社交

清华大学数值分析实验报告

文***享

贡献于2020-12-15

字数:20456

数值分析实验报告

实验31
题目:
考虑线性方程组编制动选取元手动选取元求解线性代数方程组Gauss消程
(1)取矩阵方程解取计算矩阵条件数分序Gauss消元列元Gauss消元完全选元Gauss消元方法求解结果?
(2)现选择程序中手动选取元功步消程选取模模元素作元进行消元观察记录计算结果步消程总选取模元素作元结果?分析实验结果
(3)取矩阵阶数n20者更重复述实验程观察记录分析问题消程中选择元时计算结果差异说明元素选取消程中作
(4)选取感兴趣问题者机生成矩阵计算条件数重复述实验观察记录分析实验结果


1 算法介绍
首先分析种算法消程计算公式
序高斯消法:
第k步消中设增广矩阵中元素(等零判定系数矩阵奇异矩阵停止计算)k行行计算分增广矩阵第行加第行增广矩阵中第列中元素消零重复方法第1步进行第n1步终增广矩阵
列元高斯消法:
第k步消中增广矩阵中子方阵中选取时中第行第行交换然序消法相步骤进行重复方法第1步进行第n1步终增广矩阵
完全元高斯消法:
第k步消中增广矩阵中应子方阵中选取中第行第行第列第列交换然序消法相步骤进行重复方法第1步进行第n1步终增广矩阵
接分析回代程求解公式容易出述种消元法均计算公式:

2 实验程序设计
输入实验求初始条件
二计算系数矩阵A条件数方程组理解
三方法编程计算输出终计算结果
3 计算结果分析
(1)
先计算系数矩阵条件数结果
知系数矩阵条件数较问题属病态问题 bA扰动引起解较误差
采序高斯消法计算结果:

终解x(1000000000000000 1000000000000000 1000000000000000 1000000000000001 0999999999999998 1000000000000004 0999999999999993 1000000000000012 0999999999999979 1000000000000028)T
穷范数衡量误差2842170943040401e14发现采序高斯消元法求解精确解间误差较通进步观察发现序高斯消法计算时选取元值矩阵中元素相序高斯消法方式没结果造成特影响
采列元高斯消元法结果:

终解x(1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000)T
样穷范数衡量误差0
完全元高斯消元法结果

终解x(1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000 1000000000000000)T
样穷范数衡量误差0
(2)
步选取模元素元计算结果

终解x(1000000000000000 1000000000000000 1000000000000000 1000000000000001 0999999999999998 1000000000000004 0999999999999993 1000000000000012 0999999999999979 1000000000000028)T
穷范数衡量误差2842170943040401e14完全元消法误差0
(1)(2)实验结果发现列元消法完全元消法精确解序高斯消法模量元素元消法没精确解两种消法中程序计算时舍入误差终结果产生定影响方程组维度较低元素间相差误差较
进步分析计算述4种方法步选取元数值列表进行较结果:
第n次消元

列元
完全元

1
6000000000000000
8
8
6000000000000000
2
4666666666666667
8
8
4666666666666667
3
4285714285714286
8
8
4285714285714286
4
4133333333333333
8
8
4133333333333333
5
4064516129032258
8
8
4064516129032258
6
4031746031746032
8
8
4031746031746032
7
4015748031496063
8
8
4015748031496063
8
4007843137254902
8
8
4007843137254902
9
4003913894324853
8
8
4003913894324853
10
4001955034213099
0015617370605469
0015617370605469
4001955034213099
表发现方程组言序高斯消选取元恰事模量元素列元完全元选取元素84数量级差计算程中累积误差较终4种方法输出结果均较精确
里具体解释序法模法计算结果完全致原该矩阵消元程中次选取元列两非零元素角线元素4左右正方元素8该列余位置元素均0样情况默认元该列元两种方法计算结果致
理说完全高斯消法误差次列元高斯消法选取模元素作元时误差方程组特殊性(元素相差维度高)理现象里没充分体现出
(3)
时重复述实验程种方法计算结果示里采穷范数衡量绝误差

序高斯消法
列元高斯消
完全元高斯消
选取模元素作元消
X
1000000000000000 1000000000000000 1000000000000000 1000000000000001 0999999999999998 1000000000000004 0999999999999993 1000000000000014 0999999999999972 1000000000000057 0999999999999886
1000000000000227 0999999999999547 1000000000000902 0999999999998209 1000000000003524 0999999999993179 1000000000012732 0999999999978173 1000000000029102
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1000000000000000 1000000000000000 1000000000000000 1000000000000001 0999999999999998 1000000000000004 0999999999999993 1000000000000014 0999999999999972 1000000000000057 0999999999999886
1000000000000227 0999999999999547 1000000000000902 0999999999998209 1000000000003524 0999999999993179 1000000000012732 0999999999978173 1000000000029102

2910205409989430e11
0
0
2910205409989430e11
出时列元完全元计算结果精确值序高斯消模方法然产生定误差两者误差致n10时候误差相n20时误差增长约1000倍计算程中舍入误差断累积致果进步增加矩阵维数应该出更明显现象
(4)
矩阵维度误差里方便起见选取2条件数维度系数矩阵进行较
维度
条件数
序消
列元
完全元
模量

17e+3
284e14
0
0
284e14

18e+6
291e11
0
0
291e11

57e+7
931e10
0
0
931e10

18e+9
298e08
0
0
298e08

19e+12
305e05
0
0
305e05

38e+16
328e+04
388e12
388e12
328e+04

85e+16
352e+13
42e3
42e3
352e+13
表出着维度增加方法计算误差影响逐渐体现增长较快舍入误差逐步累计造成方法二方法三维度40情况精确解两种方法累计误差远方法方法四慢样出前面相原方法方法四计算结果保持致方法二方法三计算结果保持致
4 结
文矩阵中元素差模模元素没数量级差异元选取方式计算结果影响维度较低情况明显四种方法足够精确
四种方法发现采列元高斯消者完全元高斯消法量抑制误差算法精确低阶矩阵说四种方法求解出结果误差均较
外完全选元方法选元程中计算量较发现列元法已达高精确程度实际计算中选列元法进行计算
附录:程序代码
clear
clc
format long

方法选择
ninput('矩阵A阶数n')
disp('选取求解方式')
disp('1 序Gauss消元法2 列元Gauss消元法3 完全选元Gauss消元法4 模元素作元')
ainput('求解方式序号:')

赋值Ab
Azeros(nn)
bzeros(n1)
for i1n
A(ii)6
if i>1
A(ii1)8
end
if i A(ii+1)1
end
end
for i1n
for j1n
b(i)b(i)+A(ij)
end
end
disp('定系数矩阵:')
A
disp('右端量:')
b

求条件数理解
disp('线性方程组精确解:')
X(A\b)'
fprintf('矩阵A1条件数 f \n'cond(A1))
fprintf('矩阵A2条件数 f \n'cond(A))
fprintf('矩阵A穷条件数 f \n'cond(Ainf))



序Gauss消元法
if a1
A1Ab1b
for k1n
if A1(kk)0
disp('元零序Gauss消元法法进行')
break
end
fprintf('第d次消元选取元:g\n'kA1(kk))
disp('次消元系数矩阵:')
A1
for pk+1n
lA1(pk)A1(kk)
A1(pkn)A1(pkn)l*A1(kkn)
b1(p)b1(p)l*b1(k)
end
end
x1(n)b1(n)A1(nn)
for kn111
for wk+1n
b1(k)b1(k)A1(kw)*x1(w)
end
x1(k)b1(k)A1(kk)
end
disp('序Gauss消元法解')
disp(x1)
disp('求解精确解差穷范数')
norm(x1Xinf)
end

列元Gauss消元法
if a2
A2Ab2b
for k1n
[max_imax_j]find(A2(k)max(abs(A2(knk))))
if max_i~k
A2_changeA2(k)
A2(k)A2(max_i)
A2(max_i)A2_change
b2_changeb2(k)
b2(k)b2(max_i)
b2(max_i)b2_change
end
if A2(kk)0
disp('元零列元Gauss消元法法进行')
break
end
fprintf('第d次消元选取元:g\n'kA2(kk))
disp('次消元系数矩阵:')
A2
for pk+1n
lA2(pk)A2(kk)
A2(pkn)A2(pkn)l*A2(kkn)
b2(p)b2(p)l*b2(k)
end
end
x2(n)b2(n)A2(nn)
for kn111
for wk+1n
b2(k)b2(k)A2(kw)*x2(w)
end
x2(k)b2(k)A2(kk)
end
disp('列元Gauss消元法解')
disp(x2)
disp('求解精确解差穷范数')
norm(x2Xinf)
end

完全选元Gauss消元法
if a3
A3Ab3b
for k1n
VVeye(n)
[max_imax_j]find(A3(knkn)max(max(abs(A3(knkn)))))
if numel(max_i)0
[max_imax_j]find(A3(knkn)max(max(abs(A3(knkn)))))
end
Weye(n)
W(max_i(1)+k1max_i(1)+k1)0
W(kk)0
W(max_i(1)+k1k)1
W(kmax_i(1)+k1)1
Veye(n)
V(kk)0
V(max_j(1)+k1max_j(1)+k1)0
V(kmax_j(1)+k1)1
V(max_j(1)+k1k)1
A3W*A3*V
b3W*b3
VVVV*V

if A3(kk)0
disp('元零完全选元Gauss消元法法进行')
break
end
fprintf('第d次消元选取元:g\n'kA3(kk))
disp('次消元系数矩阵:')
A3
for pk+1n
lA3(pk)A3(kk)
A3(pkn)A3(pkn)l*A3(kkn)
b3(p)b3(p)l*b3(k)
end
end
x3(n)b3(n)A3(nn)
for kn111
for wk+1n
b3(k)b3(k)A3(kw)*x3(w)
end
x3(k)b3(k)A3(kk)
end
disp('完全选元Gauss消元法解')
disp(x3)
disp('求解精确解差穷范数')
norm(x3Xinf)
end

模元素作元
if a4
A4Ab4b
for k1n
AAA4
AA(AA0)NaN
[min_ij]find(AA(knk)min(abs(AA(knk))))
if numel(min_i)0
[min_ij]find(AA(knk)min(abs(AA(knkn))))
end
Weye(n)
W(min_i(1)+k1min_i(1)+k1)0
W(kk)0
W(min_i(1)+k1k)1
W(kmin_i(1)+k1)1
A4W*A4
b4W*b4
if A4(kk)0
disp('元零模Gauss消元法法进行')
break
end
fprintf('第d次消元选取元:g\n'kA4(kk))
A4
for pk+1n
lA4(pk)A4(kk)
A4(pkn)A4(pkn)l*A4(kkn)
b4(p)b4(p)l*b4(k)
end
end
x4(n)b4(n)A4(nn)
for kn111
for wk+1n
b4(k)b4(k)A4(kw)*x4(w)
end
x4(k)b4(k)A4(kk)
end
disp('模Gauss消元法解')
disp(x4)
disp('求解精确解差穷范数')
norm(x4Xinf)
end
二实验33
题目:
考虑方程组解中系数矩阵HHilbert矩阵:

著名病态问题通首先定解(例取分量均1)计算出右端办法出确定问题
(1)选择问题维数6分Gauss消法(LU分解)J迭代法GS迭代法SOR迭代法求解方程组结果?计算结果问题解较结
(2)逐步增问题维数述方法解计算结果?计算结果说明什?
(3)讨病态问题求解算法
1 算法设计
意线性方程组分析种方法计算公式
(1)Gauss消法:
首先系数矩阵进行LU分解原方程转化令原方程分两步回代求解:

具体方法里赘述
(2)J迭代法:
首先分解构造迭代矩阵中 进行迭代计算直误差满足求
(3)GS迭代法:
首先分解构造迭代矩阵 中 进行迭代计算直误差满足求
(4)SOR迭代法:
首先分解构造迭代矩阵 中进行迭代计算直误差满足求
2 实验程
根维度n确定矩阵H元素b分量值
二选择计算方法( Gauss消法J迭代法GS迭代法SOR迭代法)迭代法设定初值外SOR方法需设定松弛子
三进行计算直满足误差求(迭代法设定相邻两次迭代结果差穷范数00001SOR方法设定输出迭代100次结果误差值)输出实验结果
3 计算结果分析
(1)时问题具体定义

计算结果
Gauss消法
第1次消元选取元:1
第2次消元选取元:00833333
第3次消元选取元:000555556
第4次消元选取元:0000357143
第5次消元选取元:226757e05
第6次消元选取元:143155e06
解X(0999999999999228 1000000000021937 0999999999851792 1000000000385369 0999999999574584 1000000000167680)T
穷范数衡量误差4254160357319847e10
J迭代法
设定迭代初值零计算 J法迭代矩阵B谱半径430853>1J法收敛
GS迭代法
设定迭代初值零计算GS法迭代矩阵G谱半径:0999998<1GS法收敛541次迭代计算结果X(1001178105812706 0999144082651860 0968929093984902 1047045569989162 1027323158370281 0954352032784608)T
穷范数衡量误差0047045569989162
SOR迭代法
设定迭代初值零量设定计算SOR法迭代矩阵谱半径0999999433815223100次迭代计算结果
X(1003380614145078 0962420297458423 1031857023134559 1061814901289881 1014037815827164 0917673642493527)T
穷范数衡量误差0082326357506473
SOR方法变改变值计算结果列表





迭代次数
100
100
100
100
迭代矩阵谱半径
0999999433815223
0999998867083155
0999996830135013
0999982309342386
X
1003653917714694 0974666041209353 1011814573842440 1042837929171827 1017190220902681 0945462001336268
1014676015634604
0896636864424096
1090444578936265
1107070542628148
1006315452225331
0873244842279255
1028022215505147
0790604920509843
1267167365524072
1061689730857891
0990084054872602
0846005956774467
1051857392323966
0653408758549156
1486449891152510
0783650360698119
1349665420488270
0664202350634588

0054537998663732
0126755157720745
0267167365524072
0486449891152510
发现松弛子取值迭代速度造成影响述四种方法中松弛子05时收敛相较快
综四种算法结果列表:
算法
Gauss消法
Jacobi法
GS法
SOR法(取)
迭代次数

收敛
541
100
迭代矩阵谱半径

430853
0999998
0999999433815223
X
0999999999999228 1000000000021937 0999999999851792 1000000000385369 0999999999574584 1000000000167680

1001178105812706 0999144082651860 0968929093984902 1047045569989162 1027323158370281 0954352032784608
1003380614145078 0962420297458423 1031857023134559 1061814901289881 1014037815827164 0917673642493527

4254160357319847e10

0047045569989162
0082326357506473
计算矩阵H条件数>>1病态问题表出四种方法求解存定误差面分析误差源:
LU分解方法误差存Hilbert矩阵元素分数形式转换数形式时情况会出现舍入误差进行LU分解时存问题结果方程精确解 结果显示该方法误差非常
Jacobi迭代矩阵谱半径430853迭代法收敛
GS迭代法迭代次数541次时方程似解误差约005 较GS迭代矩阵谱半径0999998接1GS迭代法收敛速度较慢
SOR迭代法迭代次数100次时误差约008误差较SOR迭代矩阵谱半径0999999接1时SOR迭代法收敛速度快相GS法迭代速度方面已明显提高外SOR方法迭代速度会相应变化果选佳松弛子实现更快收敛
(2)
考虑维度情况时
算法
Gauss消
J法
GS法
SOR法(w05)
计算结果

0999999999966269 1000000001809060 0999999976372676 1000000127868103 0999999655764116 1000000487042164 0999999653427125 1000000097774747

0997829221945349
1037526203106839
0896973261976015
1020345136375036
1069071166932576
1051179995036612
0996814757185364
0926343237325536
1012938972275634
0939713836855171
0988261805073081
1064637090535154
1083633345093974
1045060177115514
0970603024778469
0880212649657655
迭代次数


356
100
谱半径

604213
1
0999999999208776






算法
Gauss消法
Jacobi法
GS法
SOR法(w05)
计算结果

0999999994751197 1000000546746354 0999985868343700 1000157549468631 0999063537004329 1003286333127805 0992855789229370 1009726486881556 0991930155925812 1003729850349020 0999263885025643

0997442073306751
1019069909358409
0992278247786739
0956441858313237
0986420333361353
1021301611956591
1038701026806608
1035942773498533
1016693763149422
0985716454946250
0947181287500697
1015776039786572
0966429147064483
0928674868157910
0996931548482727
1066737803913537
1097792430596468
1088030440855069
1048110620811192
0989919418572424
0922840813704142
0853252417221922
迭代次数


1019
100
谱半径

864964
1
0999999999999966






算法
Gauss消法
Jacobi法
GS法
SOR法(w05)
计算结果

0999999968723799 1000002417094896 0999994922439769 0998640261957706 1025668111139297 0781933485305194 2066840925345890 2279036697492128 7532393125791018 7355047567109081 7380667063930484
1129041418095142 0425748747257065 1733284233971601 0817952344733362

收敛
1004385740641590
1046346067877554
0907178347707729
0905763455949053
0972521802788457
1043731445367903
1091535169448764
1110090020703944
1103129684679768
1077168651146056
1038514736265176
0992259990832041
0942151390478003
0890785366684065
0839876442493220
迭代次数


262
100
谱半径

604213
>1
1000000000000000

8355047567109082


0160123557506780
分析结果发现着n值增加Gauss消法误差逐渐增误差增速度快维数等10情况Gauss消法结果误差较维数达15时计算结果误差已达精确解倍
J法迭代收敛n取值谱半径始终1J法收敛J迭代法Hilbert矩阵求解
GS迭代法SOR迭代法两种方法均收敛GS迭代法SOR迭代法松弛子取值1特例SOR方法受取值影响会收敛情况出GS迭代矩阵谱半径1接1收敛速度慢然着维数增需迭代次数逐渐减少维数达15时候GS法已收敛出结GS迭代方法Hilbert矩阵维数较低时够定程度满足迭代求解需求迭代速度慢外着矩阵维数增加 SOR法误差水基稳定误差接受范围
较出结果求解较低维度Hibert矩阵问题Gauss消法GS迭代法SOR迭代法均Gauss消法结果精确度较高果需求解较高维度Hibert矩阵问题采SOR迭代法
(3)
系数矩阵条件数较时病态方程实验知Gauss法解述方程时结果存误差收敛迭代法通选取优松弛子方法求解然迭代次数相较结果较精确
总体般病态方程组求解采方式:
1 低维度采Gauss消法直接求解行
Jacobi迭代方法适宜求解病态问题
GS迭代方法解决维数较低病态问题谱半径非常趋1导致迭代算法收敛速度慢维数较时候GS法收敛
SOR方法较适合求解病态问题特矩阵维数较高时候优势更明显
2 采高精度运算选双倍更倍字长运算提高收敛速度
3 原方程组作某预处理效降低系数矩阵条件数
4 实验结
(1)Hibert矩阵问题条件数会着维度增加迅速增加病态性会越越明显维度较低时候Gauss消法GS迭代法SOR迭代法均优先Gauss消法果需求解较高维度Hibert矩阵问题SOR迭代法够求解
(2)SOR方法较适合求解病态问题特矩阵维数较高时候优点更明显次实验出着矩阵维数增SOR方法需迭代次数减少误差基稳定解决病态问题适宜方法
附录:程序代码
clear all
clc
format long

矩阵赋值
ninput('矩阵H阶数n')
for i1n
for j1n
H(ij)1(i+j1)
end
end
bH*ones(n1)
disp('H矩阵:')
H
disp('量b:')
b

方法选择
disp('选取求解方式')
disp('1 Gauss消法2 J迭代法3 GS迭代法4 SOR迭代法')
ainput('求解方式序号:')

Gauss消法
if a1
H1Hb1b
for k1n
if H1(kk)0
disp('元零Gauss消法法进行')
break
end
fprintf('第d次消元选取元:g\n'kH1(kk))
for pk+1n
m5H1(pk)H1(kk)
H1(pkn)H1(pkn)+m5*H1(kkn)
b1(p)b1(p)+m5*b1(k)
end
end
x1(n)b1(n)H1(nn)
for kn111
for vk+1n
b1(k)b1(k)H1(kv)*x1(v)
end
x1(k)b1(k)H1(kk)
end
disp('Gauss消法解')
disp(x1)
disp('解精确解差穷范数')
norm((x1a)inf)
end

Ddiag(diag(H))
Ltril(H1)
Utriu(H1)


J迭代法
if a2
定初始x0
iniinput('初始值设定x0')
x0(1)ini*diag(ones(n))
disp('初始解量')
x0
xj(1)x0(1)
B(D^(1))*(L+U)
f(D^(1))*b
fprintf('(J法B矩阵谱半径:g\n'vrho(B))
if vrho(B)<1
for m215000
xj(m2+1)B*xj(m2)+fj
if norm((xj(m2+1)xj(m2))inf)<00001
break
end
end
disp('J法计算结果')
xj(m2+1)
disp('解精确解差穷范数')
norm((xj(m2+1)diag(ones(n)))inf)
disp('J迭代法迭代次数')
m2
else
disp('B矩阵谱半径1J法收敛')
end
end


GS迭代法
if a3
定初始x0
iniinput('初始值设定x0')
x0(1)ini*diag(ones(n))
disp('初始解量')
x0

xG(1)x0(1)
Ginv(DL)*U
fGinv(DL)*b
fprintf('GS法G矩阵谱半径:g\n'vrho(G))
if vrho(G)<1
for m315000
xG(m3+1)G*xG(m3)+fG
if norm((xG(m3+1)xG(m3))inf)<00001
break
end
end
disp('GS迭代法计算结果')
xG(m3+1)
disp('解精确解差穷范数')
norm((xG(m3+1)diag(ones(n)))inf)
disp('GS迭代法迭代次数')
m3
else
disp('G矩阵谱半径1GS法收敛')
end
end

SOR迭代法
if a4
定初始x0
iniinput('初始值设定x0')
x0(1)ini*diag(ones(n))
disp('初始解量')
x0
AH
for i1n
b(i)sum(A(i))
end

x_starones(n1)
format long
winput('松弛子w')
Lwinv(Dw*L)*((1w)*D+w*U)
fw*inv(Dw*L)*b
disp('迭代矩阵谱半径:')
pvrho(Lw)
time_max100迭代次数
xzeros(n1)迭代初值
for i1time_max
xLw*x+f
end
disp('SOR迭代法解')
x
disp('解精确解差穷范数')
norm((x_starx)inf)
end

pause

三实验41
题目:
牛顿法拟牛顿法进行非线性方程组数值求解
(1)述两种方法分计算面两例子达精度相前提较迭代次数CPU时间等

(2)取初值结果?反复选取初值较结果
(3)总结纳实验结果试说明种方法适问题
1 算法设计
需求解非线性方程组言牛顿法拟牛顿法迭代公式
(1)牛顿法:

牛顿法单步迭代法需取初值
(2)拟牛顿法:(Broyden秩1法)


拟牛顿法需求解导数节省量运算时间需定矩阵初值取
2 实验程
输入初值
二根误差求公式进行迭代计算
三输出数
3 计算结果分析
(1)首先求解方程组(1)里设定精度求
方法
牛顿法
拟牛顿法
初始值


计算结果X
x1
0905539609855914
0905539493347151
x2
1085219168370031
1085218882394940
x3
0672193668718306
0672193293825304
迭代次数
3
13
CPU计算时间s
3777815
2739349
出初始值相情况牛顿法拟牛顿法达样计算精度情况结果基相牛顿法迭代次数明显少次迭代需求解矩阵逆牛顿法次迭代CPU计算时间更长
求解方程组(2)样设定精度求
方法
牛顿法
拟牛顿法
初始值


计算结果X
x1
0500000000009699
0499999994673600
x2
0000000001063428
0000000572701856
x3
0523598775570483
0523598762908871
迭代次数
4
12
CPU计算时间s
2722437
3920195
样出初始值相情况牛顿法拟牛顿法达样计算精度情况结果基相牛顿法迭代次数明显少样次迭代中求解矩阵逆运算牛顿法次迭代CPU计算时间较长
(2)方程组(1)取初值计算结果列表样设定精度求
初始值
方法
牛顿法
拟牛顿法

计算结果
0905539609855914
1085219168370031
0672193668718305
9211852562357894
5574005400255346
18118173639381205
迭代次数
4
58
CPU计算时间s
3907164
4818019

计算结果
0905539609855914
1085219168370031
0672193668718305
9211849682114591
5573999165383549
18118182491302807
迭代次数
4
2735
CPU计算时间s
8127286
5626023

计算结果
0905539609855914
1085219168370031
0672193668718306
0905539493347151
1085218882394940
0672193293825304
迭代次数
3
13
CPU计算时间s
3777815
2739349

计算结果
0905539609855914
1085219168370031
0672193668718306
0905548384395773
1085220084502458
0672219278250136
迭代次数
4
188
CPU计算时间s
3835697
2879070

计算结果
9211852448563722
5574005155684773
18118173976918605
Matlab警告矩阵接奇异值程序进入长期循环计算中
迭代次数
19

CPU计算时间s
4033868


计算结果
0905539609857335
1085219168371536
0672193668734922
Matlab警告矩阵接奇异值程序进入长期循环计算中
迭代次数
13

CPU计算时间s
12243263

表发现方程组(1)存(92 56 181)T附动点初值选取会直接影响牛顿法拟牛顿法收敛点
总说设定初值离动点越远需迭代次数越初始值选取非常重合适初值更快收敛果初始值偏离精确解较远会出现迭代次数增加直法收敛情况
拟牛顿法种似方法拟牛顿法需迭代次数明显更收敛情况牛顿法(初值够接时甚会出现奇异矩阵情况)牛顿法求解较复杂计算时间较长
样方程组(2)取初值计算结果列表样设定精度求
初始值
方法
牛顿法
拟牛顿法

计算结果
0500000000009699
0000000001063428
0523598775570483
0499999994673600
0000000572701856
0523598762908871
迭代次数
4
12
CPU计算时间s
2722437
3920195

计算结果
0500000000011085
0000000001215427
0523598775566507
0331099293590753
0260080189442266
76532092226437129
迭代次数
5
57
CPU计算时间s
5047111
5619752

计算结果
0500000000000916
0000000000100410
0523598775595672
10e+02 *
0001221250784775
0000149282572886
1754185881622843
迭代次数
6
62
CPU计算时间s
3540668
3387829

计算结果
0500000000000152
0000000000016711
0523598775597862
10e+04 *
0000026556790770
0000020396841295
1280853105748650
迭代次数
7
55
CPU计算时间s
2200571
2640901

计算结果
0500000000000005
0000000000000503
0523598775598286
矩阵奇异值法输出准确结果
迭代次数
8

CPU计算时间s
1719072


计算结果
0500000000002022
0000000000221686
0523598775592500
矩阵奇异值法输出准确结果
迭代次数
149

CPU计算时间s
2797116


计算结果
矩阵奇异值法输出准确结果
矩阵奇异值法输出准确结果
迭代次数


CPU计算时间s


里前文类似发现赘述
里出牛顿法更区间实现压缩映射原理更范围选取初值终收敛精确解附
初始值较接动点时牛顿法拟牛顿法计算结果基相然迭代次数差计算总需时间相
(3)
牛顿法迭代程中矩阵求逆迭代收敛充分条件迭代满足区间映性矩阵求逆程较简单较区间满足映性问题适合应牛顿法进行计算般言函数单调者具单值特性函数适合应牛顿法初始值敏感程度较低算法具收敛性
外需说明次计算出CPU时间计算机时运行状态关时代码运行时间定致数具参考价值
4 实验结
牛顿法拟牛顿法存初始值越接精确解需迭代次数越现象
应牛顿法拟牛顿法优势迭代次数说牛顿法更加精确需迭代次数更少单次迭代说牛顿法计算步骤更计算更加复杂次迭代需时间更长拟牛顿法采简化似公式次迭代更加迅速非线性方程组求逆程较简单时方程组1情况时拟牛顿法具明显优势非线性方程组求逆程较复杂时方程组2情况拟牛顿法体现出优势然循环次数增加CPU耗时反更少
外方程组压缩映射区间说般言区间函数呈现单调者具单值特性函数适合应牛顿法初始值敏感程度较低算法具收敛性拟牛顿法需迭代程中矩阵求逆利差商代矩阵求导初始误差较时倒数矩阵差商偏差较初始值敏感程度较
附录:程序代码
方程1牛顿法
tic
format long
初值
disp('请输入初值')
ainput('第1分量:')
binput('第2分量:')
cinput('第3分量:')
disp('选定初值')
x[abc]

误差求
E00001
迭代
i0
e2*E
while e>E
F[12*x(1)x(2)^24*x(3)7x(1)^2+10*x(2)x(3)11x(2)^3+10*x(3)8]
f[122*x(2)42*x(1)10103*x(2)^210]
det_x((f)^(1))*(F)
xx+det_x
emax(norm(det_x))
ii+1
end
disp('迭代次数')
i
disp('迭代次数')
x
toc

方程1拟牛顿法
tic
format long
初值
初值
disp('请输入初值')
ainput('第1分量:')
binput('第2分量:')
cinput('第3分量:')
disp('选定初值')
x0[abc]
误差求
E00001
迭代
i0
e2*E
A0eye(3)
while e>E
F0[12*x0(1)x0(2)^24*x0(3)7x0(1)^2+10*x0(2)x0(3)11x0(2)^3+10*x0(3)8]
x1x0A0^(1)*F0
sx1x0
F1[12*x1(1)x1(2)^24*x1(3)7x1(1)^2+10*x1(2)x1(3)11x1(2)^3+10*x1(3)8]
yF1F0
A1A0+(yA0*s)*s'(s'*s)
x0x1
A0A1
emax(norm(s))
ii+1
end
disp('迭代次数')
i
disp('迭代次数')
x0
toc

方程2牛顿法
tic
format long
初值
disp('请输入初值')
ainput('第1分量:')
binput('第2分量:')
cinput('第3分量:')
disp('选定初值')
x[abc]
误差求
E00001
迭代
i0
e2*E
while e>E
F[3*x(1)cos(x(2)*x(3))05x(1)^281*(x(2)+01)^2+sin(x(3))+106exp(1)^(x(1)*x(2))+20*x(3)+(10*pi3)3]
f[3x(3)*sin(x(2)*x(3))x(2)*sin(x(2)*x(3))2*x(1)162*x(2)815cos(x(3))x(2)*exp(1)^(x(1)*x(2))x(1)*exp(1)^(x(1)*x(2))20]
det_x((f)^(1))*(F)
xx+det_x
emax(norm(det_x))
ii+1
end
disp('迭代次数')
i
disp('迭代次数')
x
toc

方程2拟牛顿法
tic
format long
初值
初值
disp('请输入初值')
ainput('第1分量:')
binput('第2分量:')
cinput('第3分量:')
disp('选定初值')
x0[abc]
误差求
E00001
迭代
i0
e2*E
A0eye(3)
while e>E
F0[3*x0(1)cos(x0(2)*x0(3))05x0(1)^281*(x0(2)+01)^2+sin(x0(3))+106exp(1)^(x0(1)*x0(2))+20*x0(3)+(10*pi3)3]
x1x0A0^(1)*F0
sx1x0
F1[3*x1(1)cos(x1(2)*x1(3))05x1(1)^281*(x1(2)+01)^2+sin(x1(3))+106exp(1)^(x1(1)*x1(2))+20*x1(3)+(10*pi3)3]
yF1F0
A1A0+(yA0*s)*s'(s'*s)
x0x1
A0A1
emax(norm(s))
ii+1
end
disp('迭代次数')
i
disp('迭代次数')
x0
toc

文档香网(httpswwwxiangdangnet)户传

《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档

下载文档,方便阅读与编辑

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 2 香币 [ 分享文档获得香币 ]

该文档为用户出售和定价!

购买文档

相关文档

《数值分析》课程实验报告

《数值分析》课程实验报告姓 名: 学 号: 学 院: 机 电 学 院 日 期: 2015 年 X 月X 日 目 录实验一 函数插值方法 1实验二 函数逼近与曲线拟合 5实验三 数值积分与数值微分 7实验四 线方程组的直接解法 9实验五 解线性方程组的迭代法

文***品 3年前 上传2088   0

数值计算方法实验报告

学 生 实 验 报 告实验课程名称 数值计算方法I 开课实验室 数学实验室 学 院 理学院 年级11专业班 信息与计算科学 学 生 姓 名 学 号 开 课 时 间 2013 至 2014 学年第 1 学期评分细则评分报告表述的清晰程度和

文***享 1年前 上传420   0

数值分析答案

习题二2-1 已知y=f(x)的数值如下:(1) x0123y2312147(2)x-2-101y154524求Lagrange插值多项式并写出截断误差。解:(1)(2)2-2 已知函数lnx的如下数据x8101214y2.079442.302592.484912.63906试分别用Lagrange线性

文***品 2年前 上传641   0

数值积分上机实验报告

数值积分上机实验报告题一:数学上已经证明了0141+x2dx=π成立,所以可以通过数值积分来求π的近似值。1.分别使用复合梯形、复合Simpson求积公式计算π的近似值。选择不同的h,对每种求积公式,试将误差刻画为h的函数,并比较两方法的精度。是否存在某个值,当低于这个值之后,再继续减小h的值,计算精度不再有所改进,为什么?2.实现Romberg求积方法,并重复上面的计算;3.实现自

文***享 1年前 上传573   0

数值分析试题及答案

数值分析试题一、 填空题(2 0×2′)1. 设x=0。231是精确值x*=0.229的近似值,则x有 2 位有效数字.2. 若f(x)=x7-x3+1,则f[20,21,22,23,24,25,26,27]= 1 , f[20,21,22,23,24,25,26,27,28]= 0 。3. 设,‖A‖∞=___5

z***u 1年前 上传2457   0

数值分析选择题

数值计算方法选择题1 设某数,那么的有四位有效数字且绝对误差限是的近似值是( B )(A)0.693 (B)0.6930 (C)0.06930 (D)0.0069302 已知n对观测数据。这n个点的拟合直线,是使( D )最小的解。(A) (B) (C) (D)3 用选主元方法解方程组,是为了( B )(A)提高运算速度 (B)减少舍入误差 (

文***品 2年前 上传1086   0

数值分析选择题

数值分析选择题 (1)1. 以下误差限公式不正确的是( ) A. B。 C. D. 2. 步长为的等距节点的插值型求积公式,当时的牛顿-科茨求积公式为( ) A. B. C. D.3. 通过点的拉格朗日插值基函数满足( ) A.=0, B. =0, C.=1, D.

文***品 1年前 上传436   0

数值分析计算实习题

 《数值分析》计算实习题姓名: 学号: 班级: 第二章1、程序代码Clear;clc;x1=[0.2 0.4 0.6 0.8 1.0];y1=[0.98 0.92 0.81 0.64

文***品 2年前 上传760   0

数值分析复习题及答案

数值分析复习题一、选择题1. 3.142和3.141分别作为的近似数具有( )和( )位有效数字.   A.4和3          B.3和2    C.3和4          D.4和42. 已知求积公式,则=( )A.      B.      C.     D.3. 通过点的拉格朗日插值基函数满足(    )   A.=0,        B. =0,      

z***u 1年前 上传586   0

数值分析检测题

数值分析第一章检测题(黄)一、 填空题(每空4')1. 已知x=62.1341是由准确数a经四舍五入得到的a的近似值,试给出x的绝对误差限_______________.2. 设x和y的相对误差均为0.001,则x*y的相对误差约为____________.3. π取四位有效数字是 ,e取五位有效数字是 ,此时π/e的误差限是 。4. 根

文***品 2年前 上传1157   0

数值线性代数上机习题第四章实验报告

第四章上机习题1考虑两点边值问题容易知道它的精确解为为了把微分方程离散化,把[0,1]区间n等分,令h=1/n,得到差分方程简化为从而离散化后得到的线性方程组的系数矩阵为对分别用Jacobi迭代法,G-S迭代法和SOR迭代法求线性方程组的解,要求有4位有效数字,然后比较与精确解得误差。对考虑同样的问题。解 (1)给出算法:为解,令,其中,利用Jacobi迭

文***享 1年前 上传404   0

数值分析题库不含答案

一. 单项选择题(每小题2分,共10分)1. 在下列四个数中,有一个数具有4位有效数字,且其绝对误差限为 ,则该数是( )A 0.001523 B 0.15230C 0.01523 D 1.523002. 设方阵A可逆,且其n个特征值满足:,则的主特征值

文***品 2年前 上传1150   0

数值分析测试题答案

测 试 题——数值分析一、选择题 1. 设近似值有位有效数字,,则其相对误差限为 A. B. C. 2. 要使的近似值的相对误差限小于,则要取的有效数字有 位。 A.4 B. 3 C. 53. 插

z***u 1年前 上传1174   0

数值分析模拟试卷(七)

 数值分析模拟试卷(七)班级 学号 姓名 一、填空(共30分,每空3分)1 设,则A的谱半径______,A的条件数=________.2 设,则=________, =________.3 设,是以0,1,2为节点的三次样条函数,则b=________,c=________.4 设是区

文***享 3年前 上传721   0

数值分析模拟试卷(六)

数值分析模拟试卷(六)班级 学号 姓名 一、 填空题(每空2分,共30分)1. 近似数关于真值有____________位有效数字;2. 为了减少运算次数,应将表达式改写为__________________________________________________

文***享 3年前 上传728   0

数值分析模拟试卷(九)

数值分析模拟试卷(九)班级 学号 姓名 一、 填空题(每空3分,共30分)1. 设,则差商 __________ ; 2.在用松弛法(SOR)解线性方程组时,若松弛因子满足,则迭代法______ ;3.要使求的Newton迭代法至少三阶收敛,需要满足______ ;4. 设,用Newton迭代法求具有

文***享 3年前 上传800   0

数值分析题库填空部分

数值分析题库-填空部分一. 填空 2.Gauss型求积公式不是 插值型求积公式。(限填“是”或“不是”)3.设lk(x)是关于互异节点x0, x1,…, xn, 的Lagrange 插值基函数,则 º0 m=1,2,…,n4.,则 , , ;答:4,3.6180340,5;5.用个不同节点作不超过次的多项式插值,分别采用Lagran

z***u 1年前 上传467   0

数值分析各算法流程图

数值分析各算法流程图 一、插值 1、 拉格朗日插值流程图:( 相应程序:lagrintp(x,y,xx)) 2、 牛顿插值流程图 (1)产生差商表的算法流程图(相应程序:divdiff(x,y))

文***品 5年前 上传1738   0

数值分析部分填空练习

数值分析-部分填空练习1 绪论(1). 要使的近似值的相对误差限£0.1%, 应至少取___4____位有效数字。=0.4…´10, a1=4, er£´10-(n-1)< 0.1% ,故可取n³4, 即4位有效数字。(2). 要使的近似值的相对误差限£0.1%, 应至少取___4___位有效数字,此时的绝对误差限为 (3). 设y=f (x1,x2) 若x1,x2,的近似值分别为x

文***享 1年前 上传323   0

数值分析模拟试卷(三)

数值分析模拟试卷(三)班级 学号 姓名 一、填空题(共20分,每题2分) 1、设x*=2.3149578…,取5位有效数字,则所得的近似值x=_______________ ;.2、设一阶差商,,则二阶差商__________ ;3、数值微分中,已知等距节点的函数值,则由三点的求导公式,有______

文***享 3年前 上传802   0

数值分析模拟试卷(五)

数值分析模拟试卷(五)班级 学号 姓名 一、填空题(每空2分,共30分)1.已知数 e=2.718281828...,取近似值 x=2.7182,那麽x具有的有效数字是 ____位;2.若,改变计算式=__________________,使计算结果更精确;3.已知, 则谱半径 __________ ;

文***享 3年前 上传849   0

数值分析模拟试卷(四)

数值分析模拟试卷(四)班级 学号 姓名 一、 填空题(每空2分,共20分) 1、已知数 e = 2.718281828..., 取近似值 x =2.7182, 则x具有 位有效数字;2、迭代过程 (k=1,2,…)收敛的充要条件是 ;3、解非线性方程f(x)=0的牛顿迭代法具有

文***享 3年前 上传725   0

需求分析实验报告

需求分析实验报告 沙漠绿洲书店是福州大学附近最大的民营书店。长期以来,城市沙漠书店为福大学子乃至整个城市读者提供了不少的便利。在2005年,该书店扩大了书店的面积,大大提高了库存量,使得读者可以购买到更多的书籍。但是,原来的图书销售已经渐渐无法适应市场的发展,因为图书销售的顾客群慢慢固定。为了进一步扩大市场,书店决定开发一套新的销售系统,以自动化的方式进行图书的销

w***j 13年前 上传6781   0

编译原理语法分析实验报告

编译原理语法分析实验报告软工班一、 实验内容二、 实验目的三、 实验要求四、 程序流程图l 主函数;l scanner();l irparser()函数l yucu() /*语句串分析*/l statement()/*语句分析函数*/l expression()/*表达式分析函数*/l term()/*项分析函数*/ l factor()/*因子分析函数*/五、 程

文***享 2年前 上传940   0

期货技术分析实验报告

实验(实训)课程实习报告实验(实训)时间: 2013 年 X 月 X 日 指导教师评分: 姓名XX班级、学号XX指导老师XX实验课程期货模拟交易实训实验项目对螺纹钢期货技术分析实验名称:对螺纹钢期货的技术分析实验目的:以近期螺纹钢期货为例,运用技术分析的方法分析螺纹钢期货的未来价格走势,同时确定买卖的最佳时机。通过这个实验,熟练掌握技术分析的方

文***享 2年前 上传468   0