1 / 68

§2.4 求解线性方程组

§2.4 求解线性方程组. 一、求解齐次线性方程组 AX=0. 方法: null(A) 或 null(A, ’r’). 注:. 此命令给出齐次线性方程组 AX=0 的基础解系, 即 解空间的一组基。 前者是数值解,后者是有理形式的基。 从而可写出通解:基础解系的线性组合。. 例、. 解:. >> A=[1 1 2 -1;2 1 1 -1;2 2 1 2]; >> null(A ). ans = 0.3621 - 0.8148 0.3621 0.2716. 解: >>A=[1 1 2 -1 ; 2 1 1 -1 ; 2 2 1 2] ;

kendis
Download Presentation

§2.4 求解线性方程组

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. §2.4求解线性方程组 • 一、求解齐次线性方程组AX=0 • 方法:null(A) 或 null(A, ’r’) 注: • 此命令给出齐次线性方程组AX=0的基础解系,即解空间的一组基。 • 前者是数值解,后者是有理形式的基。 • 从而可写出通解:基础解系的线性组合。

  2. 例、 • 解: >> A=[1 1 2 -1;2 1 1 -1;2 2 1 2]; >> null(A) ans = 0.3621 -0.8148 0.3621 0.2716

  3. 解:>>A=[112-1;211-1;2212]; • >>null(A,’r’) ans = 4/3 -3 4/3 1 • 通解为X=k(4/3 -3 4/3 1)^T, • k为任意常数.

  4. 注:其中的‘r’表示格式以有理数的形式显示,即是将系数矩阵化成简化行简阶梯形求得的基础解系。注:其中的‘r’表示格式以有理数的形式显示,即是将系数矩阵化成简化行简阶梯形求得的基础解系。 若使用null(A)命令,得到的是解空间的一组标准正交基,即X’*X=E.此时的X是近似值,待入有 AX不等于零,近似为零。

  5. 如上例 >>x= null(A) x = 0.3621 -0.8148 0.3621 0.2716 >> A*x ans = 1.0e-15 * 0 -0.3886 -0.6661 >> x'*x ans = 1.0000

  6. 例、 解:>> A=[1 2 1 -1;3 6 -1 -3;5 10 1 -5]; >> null(A,'r') ans= -2 1 1 0 0 0 0 1

  7. B=null(A) B = -0.3229 0.8538 -0.2891 -0.4997 -0.0000 -0.0000 -0.9012 -0.1456 >> B'*B ans = 1.0000 -0.0000 -0.0000 1.0000

  8. 二、求解非齐次线性方程组 • 1、当AX=b有唯一解时,X=A\b给出唯 一解;特别当A是方阵时也可用 X=inv(A)*b 例、

  9. 解:>>A =[120-4;1-1-49;2-315;3 -2 -5 1]; >> b=[-3;22;-3;3]; >> rank(A),rank([A,b]) ans = 4 ans = 4 >> X=A\b(或inv(A)*b) X = -1 3 -2 2

  10. 例、 >> A=[1 2 3;4 5 6;7 8 0;2 5 8]; >> b=[61515 15]'; >> rank(A),rank([A,b]) ans = 3 ans= 3 >> A\b ans = 1.0000 1.0000 1.0000

  11. 2、当AX=b有无穷多解时,用pinv(A)*b给出一个特解.2、当AX=b有无穷多解时,用pinv(A)*b给出一个特解. • 例、

  12. 解: >> b=[1;2;1;5]; >> A=[1 2 4 -3;3 5 6 -4;4 5 -2 3;3 8 24 -19]; >> rank(A),rank([A,b]) ans = 2 ans= 2 >> pinv(A)*b ans = 0.1173 0.1732 0.1006 -0.0447

  13. 注:这是它的一个特解,可以检验:A*(pinv(A)*b)=b,用null命令可求到对应的齐次线性方程组的基础解系,从而可求到通解.注:这是它的一个特解,可以检验:A*(pinv(A)*b)=b,用null命令可求到对应的齐次线性方程组的基础解系,从而可求到通解. >> null(A,'r') ans = 8 -7 -6 5 1 0 0 1 • 即为基础解系。

  14. 若想用线代教材中的高斯消元法求解,我们可以把增广矩阵化成简化行阶梯形,从而得到通解。若想用线代教材中的高斯消元法求解,我们可以把增广矩阵化成简化行阶梯形,从而得到通解。 • 如上例 >> B=[A,b]; >> rref(B) ans = 1 0 -8 7 -1 0 1 6 -5 1 0 0 0 0 0 0 0 0 0 0

  15. 对应的齐次的基础解系为: • 非齐次的特解为:

  16. 故通解为:

  17. 例、求解下面的非齐次线性方程组

  18. 解: >> A=[2 3 1;1 -2 4;3 8 -2;4 -1 9]; >> b=[4;-5;13;-6]; >> rref([A,b]) ans = 1 0 2 -1 0 1 -1 2 0 0 0 0 0 0 0 0

  19. 由此可得通解为:

  20. 例、 解: >> A=[2 1 -1 1;4 2 -2 1;2 1 -1 -1]; >> b=[1;2;1]; >> rank(A),rank([A,b]) ans = 2 ans = 2

  21. >> pinv(A)*b ans = 0.3333 0.1667 -0.1667 -0.0000 >> A*pinv(A)*b ans = 1.0000 2.0000 1.0000 • 注:pinv(A)*b给出它的一个特解.

  22. >> x=A\b Warning: Rank deficient, rank = 2, tol = 1.884111e-15. x = 0.5000 0 0 0.0000 >> A*x ans = 1.0000 2.0000 1.0000 • 注:A\b也给出它的一个特解.

  23. >> null(A,'r') ans = -0.5000 0.5000 1.0000 0 0 1.0000 0 0 • 给出对应的齐次基础解系。从而得通解

  24. 3、当求解非齐次线性方程组无解时 可用pinv(A)*b给出一个最小二乘解,即使误差向量AX-b的平方和最小化的解。 • 例、AX=b >> b=[1;2;1]; >> A=[1 2 3;4 5 6;246;];

  25. 解: >> B=[A,b]; >> rank(A),rank(B) ans = 2 ans= 3 >> pinv(A)*b ans = 0.3222 0.1556 -0.0111 • 最小二乘解!

  26. 例、 >> A=[1 2 3;4 5 6;7 8 0;2 5 8]; >> b=[366 804 351 514]'; >> rank(A),rank([A,b]) ans = 3 ans= 4 注:可知AX=b无解。

  27. >> pinv(A)*b ans = 247.9818 -173.1091 114.9273 • 最小二乘解!

  28. 作业 1、至少用三种方法解方程组AX=b,如矩阵除法、求逆矩阵、初等变换等,其中

  29. 2、判断AX=b的解,并用适当命令求解,其中

  30. 3、解方程组,并验证得出的解满足原方程.

  31. §2.5、特征值、特征向量的计算 • 一、如何理解矩阵A的特征值、 • 特征向量 • ? • 在Matlab中可用命令eigshow来显示X和AX在单位圆周上的运动效果

  32. 例、 >> A=[5/4 0;0 3/4]; >> eigshow(A) • 若X为单位特征向量,则X与AX共线,且AX的长就是相应的特征值。

  33. 二、二维和三维图形 • 1、命令:plot(x,y) • 例、y=sin(x) >> x=0:pi/100:2*pi; >> y=sin(x); >> plot(x,y)

  34. 注:可增加注记。

  35. >> plot(x,y),... xlabel('x'),ylabel('sin(x)'), title('plot of the Sine function') • 或 >> plot(x,y),... xlabel('x'),... ylabel('sin(x)'),... title('plot of Sine function')

  36. 注:可在同一坐标系下画出不同函数图形 • 例、y=sin(x),y=cos(x) >> x=0:pi/100:2*pi; y=sin(x); plot(x,y) >> hold on %添加到同一张图中 >> y2=cos(x); >> plot(x,y2,'r:'),... legend('sin','cos')

  37. 2、三维图形 • 命令: • [x,y]=meshgrid(初值:步长:终值); • z=f(x,y); • surf(x,y,z) 例、 >> [x,y]=meshgrid(-2:.2:2); >> z=x.*exp(-x.^2-y.^2); >> surf(x,y,z)

  38. 三、eig(A): 表示求矩阵A的特征值。 >> A=[0 1;-1 0]; 1. >> eig(A) 例、 ans = 0.0000 + 1.0000i 0.0000 - 1.0000i

  39. 注:我们知道矩阵A的特征值是它的 • 特征多项式的根,所有我们也可求出它的特征多项式。 2 . >> p=poly(A) p = 1 0 1 • 注:输出的这些数是特征多项式中各项的系数,按降幂排列。

  40. >> x=-8:0.1:8; >> y=polyval(p,x); >> plot(x,y)

  41. >> syms a >> f=a^2+1; >> solve(f==0,a) ans= i -i

  42. 例、 >> A=[-1 1 0;-4 3 0;1 0 2]; >> poly(A) ans = 1 -4 5 -2

  43. >> x=-4:1:4; >> y=polyval(p,x); >> plot(x,y)

More Related