数值分析课程设计报告.docx
- 文档编号:4585279
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:9
- 大小:94KB
数值分析课程设计报告.docx
《数值分析课程设计报告.docx》由会员分享,可在线阅读,更多相关《数值分析课程设计报告.docx(9页珍藏版)》请在冰豆网上搜索。
数值分析课程设计报告
数值分析课程设计报告
课程设计报告
题目:
数值分析课程设计报告
学院理学院
班级数学与应用数学2010级
学生姓名戴铭
学号201030470270
提交日期2013年8月20日
数值分析课程设计报告
[设计题一]
一.要求
编写解线性代数方程组的列主元高斯消去法的函数,并调用该函数计算某个9阶以上的非奇异阵A的逆矩阵。
通过计算AA-1检查答案,并与使用inv(A)所得结果和运行时间进行比较。
二.设计思路
①先确定求逆矩阵A为方阵,构造n*2n矩阵C,使得C=[A+E];
②令i=1,2,3……n,找出第i列中从i到n的绝对值最大元素C(k,i),如果k~=I,则两行调换位置,并且把换位信息传给记录矩阵flag,同时对第i行进行化一处理,对第i+1行到n行通过行列变换使得C[:
i]=0,最后得到C为前n*n是上三角的单位阵;
③通过行列变换把矩阵C的前n*n部分化成单位阵;
④把C的后n*n部分赋给B,则B就是所求的逆矩阵。
三.程序清单
functionB=inv_dm(A)
%用途:
列主元高斯消去法求逆矩阵
%A----------原矩阵
%B----------逆矩阵
[n,n]=size(A);
B=zeros(n,n);
C=zeros(n,2*n);
fori=1:
n
forj=1:
n
C(i,j)=A(i,j);
end
fork=n+1:
2*n
ifk~=n+i
C(i,k)=0;
else
C(i,k)=1;
end
end
end
%构造C=[A+E]
flag=1:
n;
%记录行顺序向量
fori=1:
n-1
t=find(abs(C(i:
n,i))==max(abs(C(i:
n,i))));
%寻找最大元素
t=t
(1)+i-1;
flag(i)=t;
ift~=i
p=C(i,:
);C(i,:
)=C(t,:
);C(t,:
)=p;
%换位
end
ifC(i,i)==0
error('矩阵不可逆');
end
C(i,:
)=C(i,:
)/C(i,i);
forj=i+1:
n
C(j,:
)=C(j,:
)-C(i,:
)*C(j,i);
end
end
C(n,:
)=C(n,:
)/C(n,n);
%因为循环结构问题,所以C[n,:
]并没有化一,所以在最后才把最后一行化一
fori=n:
-1:
2
forj=1:
i-1
C(j,:
)=C(j,:
)-C(i,:
)*C(j,i);
end
end
%通过行变换,使得C的前n列为单位阵形式
fori=n:
-1:
1
t=flag(i);
ift~=i
p=C(:
t);C(:
t)=C(:
i);C(:
i)=p;
end
end
%通过行变化矩阵还原行的顺序
fori=1:
n
forj=1:
n
B(i,j)=C(i,n+j);
end
end
%将C的后n列赋给B矩阵
四.程序运行操作过程与输出结果
操作时间
①给出所要求逆的矩阵A:
②执行inv_dm(A)
③执行inv(A)
④检验正确性
显然从数量级上我们可以容易判断这是一个单位阵,负号的出现是由于计算机默认误差造成细小误差。
[设计题二]
一.要求
对于迭代法
,它显然有不动点
。
试不用判定收敛阶的定理,设计1至2个数值实验(其中必须有一个不是直接用收敛阶的定义)得到收敛阶数的大概数值。
二.设计思路
1求出不动点,利用fixed.m函数:
确定包含不动点的区间[a,b],此处令a=-0.5,b=0.5,接着从b开始迭代,利用迭代公式,以x0=0.5开始迭代,终止条件为abs(x-x0)>=1e-6
或者迭代次数超过了10000次,最终返回不动点
2计算收敛阶m,利用jie.m函数:
1.由①知道当
所以根据收敛阶公式
其中C为非零常数,转化为
2.从1开始找出满足
的p,如果p不满足,令p=p+1,直至找到满足条件的p.
3.返回收敛阶n=p.
三.程序清单
1.求不动点函数fixed.m
functionx=fixed(x0,e)
%用途---求不动点
%x0-------初值,abs(x0)<0.5
%e-----迭代精度
x=0.99*x0-x0^2;
%迭代公式
n=1;
while(abs(x-x0)>=e)&&(n<10000)
x0=x;
x=0.99*x0-x0^2;
n=n+1;
end
%循环体
x=x0;
2.求收敛阶函数jie.m
functionn=jie(x0)
%用途---求阶函数
k=0;
symsx;
x1=0.99*x-x^2;
h=(abs(x0-x1))/(abs(x0-x))^k;
whilelimit(h,x,x0)==0
k=k+1;
h=(abs(x0-x1))/(abs(x0-x))^k;
end
n=k;
四.程序运行操作过程与输出结果
操作时间
1.求不动点调用fixed.m
由执行不动点结果可以看出确定了迭代精度1e-6后,根据迭代精度接近0,所以
.
2.求收敛阶调用jie.m
所以收敛阶数为1,即线性收敛。
[设计题四]
一.要求
某飞机头部的光滑外形曲线的型值点坐标由下表给出:
0
1
2
3
4
5
6
7
8
9
10
0
70
130
210
337
578
776
1012
1142
1462
1841
0
57
78
103
135
182
214
244
256
272
275
试建立其合适的模拟曲线(未必是用拟合方法),并求在点x=100,250,400,500,800处的函数值y及一阶、二阶导数值y’,y”。
绘出模拟曲线的图形。
二.设计思路
运用cftool工具箱,根据散点图,认为接近对数函数。
故设定拟合函数为
f(x)=a*log(x+b)+c
三.程序清单
都是在cftool工具箱上操作,无函数调用。
四.程序运行操作过程与输出结果
操作时间
1.输入数据
2.打开cftool工具箱
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数值 分析 课程设计 报告