内容发布更新时间 : 2024/12/24 3:51:50星期一 下面是文章的全部内容请认真阅读。
数值分析编程作业
数值分析
2012年12月
第二章
14.考虑梯形电阻电路的设计,电路如下:
电路中的各个电流{i1,i2,…,i8}须满足下列线性方程组:
2i1?2i2?2i1?5i2?2i3?2i2?5i3?2i4?2i3?5i4?2i5?2i4?5i5?2i6?2i5?5i6?2i7?V/R?0?0?0?0?0
?2i6?5i7?2i8?0?2i7?5i8?0这是一个三对角方程组。设V=220V,R=27?,运用追赶法,求各段电路的电流量。 Matlab程序如下:
function chase () %追赶法求梯形电路中各段的电流量 a=input('请输入下主对角线向量a='); b=input('请输入主对角线向量b='); c=input('请输入上主对角线向量c='); d=input('请输入右端向量d='); n=input('请输入系数矩阵维数n='); u(1)=b(1); for i=2:n
l(i)=a(i)/u(i-1); u(i)=b(i)-c(i-1)*l(i); end
y(1)=d(1); for i=2:n
y(i)=d(i)-l(i)*y(i-1); end
x(n)=y(n)/u(n); i=n-1; while i>0
x(i)=(y(i)-c(i)*x(i+1))/u(i); i=i-1; end x
输入如下:
2(共18页)
数值分析
>> chase
请输入下主对角线向量a=[0,-2,-2,-2,-2,-2,-2,-2]; 请输入主对角线向量b=[2,5,5,5,5,5,5,5];
请输入上主对角线向量c=[-2,-2,-2,-2,-2,-2,-2,0]; 请输入方程组右端向量d=[220/27,0,0,0,0,0,0,0]; 请输入系数矩阵阶数n=8 运行结果如下:
x = 8.1478 4.0737 2.0365 1.0175 0.5073 0.2506 0.1194 0.0477
第三章
14.试分别用(1)Jacobi迭代法;(2)Gauss-Seidel迭代法解线性方程组
(0)x迭代初始向量
?101234??x1??12??19?12?3??x???27????2????2?173?5??x3???14???????x32312?1?17???4?????4?3?5?115????12?? ?x5????(0,0,0,0,0)T。
(1)雅可比迭代法程序如下:
function jacobi() %Jacobi迭代法 a=input('请输入系数矩阵a='); b=input('请输入右端向量b='); x0=input('请输入初始向量x0='); n=input('请输入系数矩阵阶数n='); er=input('请输入允许误差er='); N=input('请输入最大迭代次数N='); for i=1:n for j=1:n if i==j
d(i,j)=a(i,j); else
d(i,j)=0; end end end
m=eye(5)-d\\a; %迭代矩阵 g=d\\b;
x=m*x0+g; k=1;
while k<=N %进行迭代 for i=1:5
if max(abs(x(i)-x0(i))) >er x=m*x+g; k=k+1;
3(共18页)