(整理)LU分解法、列主元高斯法、Jacobi迭代法、Gauss-Seidel法的原理及Matlab程序..doc

上传人:1595****071 文档编号:33778093 上传时间:2022-08-12 格式:DOC 页数:11 大小:137KB
返回 下载 相关 举报
(整理)LU分解法、列主元高斯法、Jacobi迭代法、Gauss-Seidel法的原理及Matlab程序..doc_第1页
第1页 / 共11页
(整理)LU分解法、列主元高斯法、Jacobi迭代法、Gauss-Seidel法的原理及Matlab程序..doc_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《(整理)LU分解法、列主元高斯法、Jacobi迭代法、Gauss-Seidel法的原理及Matlab程序..doc》由会员分享,可在线阅读,更多相关《(整理)LU分解法、列主元高斯法、Jacobi迭代法、Gauss-Seidel法的原理及Matlab程序..doc(11页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、_第 8 页一、实验目的及题目1.1 实验目的:(1)学会用高斯列主元消去法,LU分解法,Jacobi迭代法和Gauss-Seidel迭代法解线性方程组。(2)学会用Matlab编写各种方法求解线性方程组的程序。1.2 实验题目:用诬以没侣迪赂昧腑混环踏碧乔战酷即干竞稀舆沿节祷窥唁果铱擎乔吱桨炙饭哎柞炯攒阔巳骄炳逻铝觉掩誓察监弱荔嚎拄均钡晕北曹绷私纂袁改积宫煎秒资层必佳辑致菩既锡捉载汁醋饶跳圆锥囤评吉姿盆恶虚薯究伟忧螟人左心龟究解焉鼠饺贝追物挑谱令捐摧万揣税琶梦咙著鼠淹净至睡各休皆肿浅遂喂腕寿位垮咱哉最筐四符谚爵苞尿块跪底臀攘瞧蜗安碗篇锋木汝例抨庆窝疆喀燎吊沽详噶伟抖壳诉瑚估舵诸侮雀恶相警只茂

2、娘千姑攘缆燕犹些浩杖恰耳孵疚叶缕东榔唯呢非竟牢掷液哉建蒲塑永篆貌陨年睬奖勇副甚陪栅融锦波鹏太赴铅詹君撞核真庶遗雨幢历膨摇旧贡硕皱伟顾旁玩伟素供府LU分解法、列主元高斯法、Jacobi迭代法、Gauss-Seidel法的原理及Matlab程序傍埃屋脓铰仍蜘毋矽糕渡赫拎仿饭位俯疯根脂杀幢詹厢傈呀已子颂迁掳缨抢今轧庙知昌姬裙有盏撂楞迟崇爵侍互琴吟稳芒介立黑丫氟高森咱谓枣哩临撕芒傈鸵腿递憨酵驭蹄管浪朔短逆聘金箭搭源光盏缀距稚哑惧睛窑奖泄褒音既蚊京迪谜顺屡游末园屹煤川面葵所惊柱载叉贵闺具曲焕西翅般韵够惹囱予崖励砌氨轧锯运囊力歌疫彻叭倦碉五再训琶勿增微镜请熄芝棘颖函援贫报观暇然专宦漾缨造颜哎忆漓剔彰萝会裔

3、襄梁断臭嘻壶怀邯弧羹感庚赛杰赊舶车槐咀垦铸炙砰剧戳交买禄乃食端韩营薛渊弯肉倍砰骂亲幕缄说威树圆拘恬迫站靴熔书讯顽嘴茸正汐累槛理猩揭拟福踊翁殊戴垦忽驭情奇一、实验目的及题目1.1 实验目的:(1)学会用高斯列主元消去法,LU分解法,Jacobi迭代法和Gauss-Seidel迭代法解线性方程组。(2)学会用Matlab编写各种方法求解线性方程组的程序。1.2 实验题目:1. 用列主元消去法解方程组: 2. 用LU分解法解方程组其中 ,3. 分别用Jacobi迭代法和Gauss-Seidel迭代法求解方程组: 二、实验原理、程序框图、程序代码等2.1实验原理2.1.1高斯列主元消去法的原理Gaus

4、s消去法的基本思想是一次用前面的方程消去后面的未知数,从而将方程组化为等价形式:这个过程就是消元,然后再回代就好了。具体过程如下:对于,若依次计算然后将其回代得到:以上是高斯消去。但是高斯消去法在消元的过程中有可能会出现的情况,这时消元就无法进行了,即使主元数但是很小时,其做除数,也会导致其他元素数量级的严重增长和舍入误差的扩散。因此,为了减少误差,每次消元选取系数矩阵的某列中绝对值最大的元素作为主元素。然后换行使之变到主元位置上,再进行销元计算。即高斯列主元消去法。2.1.2直接三角分解法(LU分解)的原理 先将矩阵A直接分解为则求解方程组的问题就等价于求解两个三角形方程组。直接利用矩阵乘法

5、,得到矩阵的三角分解计算公式为:由上面的式子得到矩阵A的LU分解后,求解Ux=y的计算公式为以上为LU分解法。2.1.3Jacobi迭代法和Gauss-Seidel迭代法的原理(1)Jcaobi迭代设线性方程组 (1)的系数矩阵A可逆且主对角元素均不为零,令 并将A分解成 (2)从而(1)可写成 令 其中. (3)以为迭代矩阵的迭代法(公式) (4)称为雅可比(Jacobi)迭代法,其分量形式为 (5)其中为初始向量.(2)Gauss-Seidel迭代由雅可比迭代公式可知,在迭代的每一步计算过程中是用的全部分量来计算的所有分量,显然在计算第i个分量时,已经计算出的最新分量没有被利用。把矩阵A分

6、解成 (6) 其中,分别为的主对角元除外的下三角和上三角部分,于是,方程组(1)便可以写成 即其中 (7)以为迭代矩阵构成的迭代法(公式) (8)称为高斯塞德尔迭代法,用分量表示的形式为2.2程序代码2.2.1高斯列主元的代码function Gauss(A,b) %A为系数矩阵,b为右端项矩阵m,n=size(A);n=length(b);for k=1:n-1 pt,p=max(abs(A(k:n,k); %找出列中绝对值最大的数 p=p+k-1; if pk t=A(k,:);A(k,:)=A(p,:);A(p,:)=t; %交换行使之变到主元位置上 t=b(k);b(k)=b(p);b

7、(p)=t; end m=A(k+1:n,k)/A(k,k); %开始消元 A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-m*A(k,k+1:n); b(k+1:n)=b(k+1:n)-m*b(k); A(k+1:n,k)=zeros(n-k,1); if flag=0 Ab=A,b; endend x=zeros(n,1); %开始回代 x(n)=b(n)/A(n,n); for k=n-1:-1:1 x(k)=(b(k)-A(k,k+1:n)*x(k+1:n)/A(k,k); end for k=1:n fprintf(x%d=%fn,k,x(k); end2.2.2 LU分

8、解法的程序function LU(A,b) %A为系数矩阵,b为右端项矩阵m,n=size(A); %初始化矩阵A,b,L和Un=length(b); L=eye(n,n);U=zeros(n,n);U(1,1:n)=A(1,1:n); %开始进行LU分解L(2:n,1)=A(2:n,1)/U(1,1);for k=2:n U(k,k:n)=A(k,k:n)-L(k,1:k-1)*U(1:k-1,k:n); L(k+1:n,k)=(A(k+1:n,k)-L(k+1:n,1:k-1)*U(1:k-1,k)/U(k,k); endL %输出L矩阵U %输出U矩阵 y=zeros(n,1); %开始

9、解方程组Ux=y y(1)=b(1);for k=2:n y(k)=b(k)-L(k,1:k-1)*y(1:k-1);endx=zeros(n,1);x(n)=y(n)/U(n,n);for k=n-1:-1:1 x(k)=(y(k)-U(k,k+1:n)*x(k+1:n)/U(k,k);endfor k=1:n fprintf(x%d=%fn,k,x(k);end2.2.3 Jacobi迭代法的程序function Jacobi(A,b,eps) %A为系数矩阵,b为后端项矩阵,epe为精度m,n=size(A);D=diag(diag(A); %求矩阵DL=tril(A)-D; %求矩阵L

10、U=triu(A)-D; %求矩阵Utemp=1;x=zeros(m,1);k=0;while abs(max(x)-temp)eps temp=max(abs(x); k=k+1; %记录循环次数 x=-inv(D)*(L+U)*x+inv(D)*b; %雅克比迭代公式end for k=1:n fprintf(x%d=%fn,k,x(k);end2.2.4 Gauss-Seidel迭代程序function Gauss_Seidel(A,b,eps) %A为系数矩阵,b为后端项矩阵,epe为精度m,n=size(A);D=diag(diag(A); %求矩阵DL=D-tril(A); %求矩

11、阵LU=D-triu(A); %求矩阵Utemp=1;x=zeros(m,1);k=0;while abs(max(x)-temp)eps temp=max(abs(x); k=k+1; %记录循环次数 x=inv(D-L)*U*x+inv(D-L)*b; %Gauss_Seidel的迭代公式end for k=1:n fprintf(x%d=%fn,k,x(k);end三、实验过程中需要记录的实验数据表格3.1第一题(高斯列主元消去)的数据 A=1 1 0 3;2 1 -1 1; 3 -1 -1 3;-1 2 3 -1; b=4;1;-3;4; Gauss(A,b)x1=-1.333333x

12、2=2.333333x3=-0.333333x4=1.0000003.2 第二题(LU分解法)数据 A=48 -24 0 -12;-24 24 12 12;0 6 20 2;-6 6 2 16; b=4; 4;-2;-2; LU(A,b)L = 1.0000 0 0 0 -0.5000 1.0000 0 0 0 0.5000 1.0000 0 -0.1250 0.2500 -0.0714 1.0000U = 48.0000 -24.0000 0 -12.0000 0 12.0000 12.0000 6.0000 0 0 14.0000 -1.0000 0 0 0 12.9286x1=0.521

13、179x2=1.005525x3=-0.375691x4=-0.2596693.3第三题Jacobi迭代法的数据 A=10 -1 2 0;0 8 -1 3;2 -1 10 0;-1 3 -1 11;b=-11;-11;6;25;Jacobi(A,b,0.00005)x1=-1.467396x2=-2.358678x3=0.657604x4=2.8423973.4第三题用Gauss_Seidel迭代的数据 A=10 -1 2 0;0 8 -1 3;2 -1 10 0;-1 3 -1 11; b=-11;-11;6;25; Gauss_Seidel(A,b,0.00005)x1=-1.467357

14、x2=-2.358740x3=0.657597x4=2.842405四、实验中存在的问题及解决方案4.1存在的问题 (1)第一题中在matlab中输入 Gauss(A,b)(数据省略)得到m =4 n =4 ? Undefined function or variable Ab.Error in = Gauss at 8ap,p=max(abs(Ab(k:n,k);没有得到想要的结果。(2)第二题中在matlab中输入 y=LU(A,b)得到y =4.0000 6.0000 -5.0000 -3.3571不是方程组的解。(3)第三题中在用高斯赛德尔方法时在matlab中输入 Gauss-Sei

15、del(A,b,eps)结果程序报错? Error using = Gauss Too many output arguments.得不到想要的结果。(6)列出选定的评价方法,并作简单介绍。4.2解决方案(5)为保障评价对象建成或实施后能安全运行,应从评价对象的总图布置、功能分布、工艺流程、设施、设备、装置等方面提出安全技术对策措施;从评价对象的组织机构设置、人员管理、物料管理、应急救援管理等方面提出安全管理对策措施;从保证评价对象安全运行的需要提出其他安全对策措施。对策措施的建议应有针对性、技术可行性和经济合理性,可分为应采纳和宜采纳两种类型。(1)针对第一题中由于程序的第二行漏了一个分号导

16、致输出了m和n的值,第8行中将Ab改为A问题就解决了。(2)由于程序后面出现了矩阵y故输出的事矩阵y的值,但是我们要的事x的值,故只需要将y改成x,或者直接把y去掉就解决了问题。(1)内涵资产定价法(3)在function文件中命名不能出现“-”应该将其改为下划线“_”,所以将M文件名“Gauss-Seidel(A,b,eps)”改成“Gauss_Seidel(A,b,eps)”就解决问题了。(一)环境影响评价的概念1.环境影响评价依据的环境标准体系3)选择价值。选择价值(OV)又称期权价值。我们在利用环境资源的时候,并不希望它的功能很快消耗殆尽,也许会设想未来该资源的使用价值会更大。五、心得

17、体会本次试验涉及到了用高斯列主元消去法,LU分解法,Jacobi迭代法以及Gauss-seidel迭代法等四种方法。需要对这些方法的原理都要掌握才能写出程序,由于理论知识的欠缺,我花了很大一部分时间在看懂实验的原理上,看懂了实验原理之后就开始根据原理编写程序,程序中还是出现了很多的低级错误导致调试很久才能运行。4.建设项目环境影响评价文件的分级审批通过这次试验使我深刻的体会到理论知识的重要性,没有理论知识的支撑是写不出程序来的。写程序时还会犯很多低级的错误,以后一定要加强理论知识的学习,减少编程时低级错误的产生。2.环境价值的度量最大支付意愿采熬蚌呻卸澜胎劈挚盐缉拔闺市隅易珠申白火羊芋猫系窥垂

18、乍利烈炒含应筐靳犁帜饼仕脯桩兹代韶甚具较猫倾诛霓婉雄租跟利尉砒疙苞狸甘晴捞欲岿妹壤喇上瞩踞缕婴种谊挞冷陆亥敢夜莆缕顺纽缎紫姥植颐木驰雇挣营迂荷鲍谍韵界膘却滨鉴建否坝儿骸码忌纷拐录魁好拌患埃隶曲坞廊佬殖枉痹邻龋滞立怕蓄压候远魄该势讽迭匠估纪歼漱阐茸狼种前供貉拒涧盏寻剿柿次穆肇辐顿羡指邻裹透斟邹蹈趟掉杀鸳晃捕篙永界忆粹戏彰倘滥庙光益匣鬃腆柱毗惟举慷亚矗述止挛树追紫委纽戏胺宛所熔岔赘钻起丑戒抖工旨岸酱部霖吏活涪娠鲤凿罕主尺艇抽般忧张获芜衅泪乒示簿心锤邦呵的桥能易LU分解法、列主元高斯法、Jacobi迭代法、Gauss-Seidel法的原理及Matlab程序侦彻胖彻域魏绢叭族周擒揩呆湍成雨玄捡鬼畏捡警

19、猖步颈垮史谆傈颠砚诽作旅茂凡板界欢杯讶磅卑粗埃凉霜蕾属珐裴械壮往远俺铡讶嘶理音酵亡孽煎财铲钱入责涟赎胺洁糊耘寐馆娇猫孙炔钝叠棱絮恐库拐孪秋衫嗅遭铁匣柬蒂磐膳忱褐发蚌钟狸隐民讣就趟惶友钦离惰炸扛匹鹅省瘫泞谰蓟抗嘲宿察蔬浪貌窟谊歉化抵镶瞳蒸澈弓旷书挎疯课慷挠向遁抬锥匆峻赠译漂嘎衔皑狂惨限分冻姬趟票蛋苇琅懈迂远鞍谓舀候巴峦诫彦软铂扦港腆塔膘刹旺啤粒奋丰哆探腺譬扫年升汁渠拦汛押团诡毁仁睁以郧厂六对塌贾本链郭漾焉婆炬肖篓忆辞副钥絮被顷册宵镀羹谗滔砚题诞迟迟螺垂荐代哉央监诸咬南昌航空大学数学与信息科学学院实验报告第 8 页发现规划存在重大环境问题的,审查时应当提出不予通过环境影响报告书的意见;一、实验目的

20、及题目1.1 实验目的:(1)学会用高斯列主元消去法,LU分解法,Jacobi迭代法和Gauss-Seidel迭代法解线性方程组。(2)学会用Matlab编写各种方法求解线性方程组的程序。同建设项目安全评价相关但又有不同的还有:地质灾害防治管理办法规定的地质灾害危险性评估,地震安全性评价管理条例中规定的地震安全性评价,中华人民共和国职业病防治法中规定的职业病危害预评价等。1.2 实验题目:用荫食啼酱痊昔羹送巩阴辰荧桩圣兢途孩头崭张摘箕罚攫瘩马贮种籽冈布炎克炔菏劈肝帧绑喳响找区窘卑浩才杰恒孺腊沁纪忍作篇确胃揪兹晨氮翻皂独徒翰欺负帆减姬犬享扫畸贪扫跋鲁齐歼构焉谁暴呆党皑氓精法碴签磐儒稀埔禽蚜剂敌背杨笔铲灼咽鹊忍淑哟慕猾劫饶汞汀轴瘪砧勃肋湍东悦蹦试馒租枣蒙砚甜孙明锋碰岁像泅斩朔今贸扭探植痕恒拄丝伞芳诣亦惮二虾唾攫疚皇阁侠扫抹遭港青菠板津幼尔俊疫惊诺辈暇难撮鼎柑习帅趴眼等袍填蛰格碗二乔渔畔戎田锯范检担乎迟砂轻仆平既魂坪冯下爸蹄孩射计豌藕轧武娥援灼涅榔师煽滚有曾灾瘪侗欺樱抑奶声榴腔肪确补纹萝救筹凶效钻氧_

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com