MATLAB实验六--答案
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序如下: clear a1=[1 -1 2 4]'; a2=[0 3 1 2]'; a3=[3 0 7 14]'; a4=[1 -1 2 0]'; a5=[2 1 5 6]'; A=[a1 a2 a3 a4 a5] b=rank(A) [R,jb]=rref(A) A(:,jb) %b=3,故向量组线性相关 %求极大无关组所在列 %向量组的极大无关组
河南财经政法大学数学与信息科学学院
3
实验报告
x 0 6.求行列式 0 y
程序如下: clear syms x y
y x 0 0
0 y x 0
0 0 y x
A=[x y 0 0;0 x y 0;0 0 x y;y 0 0 x] det(A)
syms x y; A=x*eye(4); for i=1:3 A(i,i+1)=y; end A(4,4)=x; A(4,1)=y; A det(A)
实验要求
1、学生在实验操作过程中自己动手独立完成,1 人为 1 组。 2、完成实验报告:按照试验的每个题目的具体要求完成
实验数据记录及分析(命令与结果)
1、建立 4 阶魔方阵 A,然后将 A 的第一行乘以 1,第二行乘以 2,……,第 4 行乘以 4.(相当于 A 与一个对角阵相乘) A=magic(4) B=[ones(4,1) 2*ones(4,1) 3*ones(4,1) 4*ones(4,1)] A.*B
1 1 1 8、设矩阵 A= 1 1 1 ,求一正交矩阵 Q 使得 Q-1AQ 为对角矩阵 1 1 1
程序如下: clear A=[1,1,1;1,1,1;1,1,1]; [V,D]=eig(A) 河南财经政法大学数学与信息科学学院 7 %按Q'AQ算的
实验报告 V'*V Q=V Q'AQ %判断可知V是正交阵 %把V赋给Q %Q'AQ是对角阵
disp('rank(A)< rank(B),所以λ=-4/5时此方程组无解.')
clear syms y; A=[2 y -1;y -1 1;4 5 -5]; b=[1 2 -1]'; DA=det(A) solve(DA,'y') %下面求y取不同值时,解的情况: %1、当y不等于-4\5且不等于1时,方程有唯一解,求解为: X=A\b% %当y= -4/5时: syms y; y= -4/5; A=[2 y -1;y -1 1;4 5 -5]; b=[1 2 -1]'; if rank(A)==rank([A,b]) fprintf('y= -4/5时,方程组有无穷多解\n ' ) X=A\b else fprintf('y= -4/5时,方程组无解\n ' ) 河南财经政法大学数学与信息科学学院 5
m=[2 a -1; a -1 1;4 5 -5] b=[1;2;-1] [m,n]=size(A); y=[]; if norm(b)>0 %非齐次方程组% %有唯一解% if rank(A)==rank([A,b]) if rank(A)==n x=A\b; else x=A\b; y=null(A,'r'); end else x=[]; end else x=zeros(n,1); if rank(A)<n disp('原方程有无穷个解,基础解系为y'); y=null(A,'r'); end 河南财经政法大学数学与信息科学学院 6 %非0解% %齐次方程组% %0解% disp('原方程有零解x'); %方程无解% disp('此方程无解'); %方程有无穷多个解,基础解系% disp('原方程有无穷个解,其特解为x,齐次方程的基础解系为y'); disp('原方程有唯一解x');
disp('rank(A)= rank(B)=2<3,所以λ=1时次方程组有无穷多组解.') 河南财经政法大学数学与信息科学学院 4
实验报告 format rat C=null(A,'r'); [R1,jb]=rref(A); syms k1 k2 x1 x2 D1=k1*R1(:,1)+k2*R1(:,2); disp('齐次方程组的为通解为X1') X1=[x1*k1;x2*k2;0] R2=rref(B); D2=R2(:,4); disp('此非齐次方程组的一个特解为X2') X2=[1;-1;0] disp('此非齐次方程组的通解为X') X=[x1*k1+1;x2*k2-1;0] disp('当λ=-4/5时:') clear A=[2 -4/5 -1;-4/5 -1 1;4 5 -5]; B=[2 -4/5 -1 1;-4/5 -1 1 2;4 5 -5 -1]; rA=rank(A) rB=rank(B) %rA =2 %rB =3 %求解齐次方程的有理基
的秩,并判断其线性相关性,求极大无关组。
clc a1=[1,-1,2,4]'; a2=[0,3,1,2]'; a3=[3,0,7,14]'; a4=[1,-1,2,0]'; a5=[2,1,5,6]'; a=[a1,a2,a3,a4,a5]; [R,jb]=rref(a) r=length(jb) %求矩阵a的秩 if (r==4) %满秩 fprintf('这五个向量线性无关\n') else fprintf('这五个向量线性相关\n') end fprintf('极大无关组为:') a(:,jb) 4、已知 A=[1 2 3;6 3 4;6 3 1] 程序如下: clear A=[1 2 3;6 3 4;6 3 1] [V,D]=eig(A) b=rank(V) %rank(V)=3,V满秩,故A可对角化 求 A 的特征值、特征向量以及能否对角化
程序如下:
%tezh.m文件 function [ T , M ] = tezh (A) n=size(A); T=(eig(A))'; M=[ ]; for i =1:n(1) if T(i)>0 m=1; else m=0; end M=[M,m]; end %命令文件 A=[1 -1 2 1;-1 3 0 -3;2 0 9 -6;1 -3 -6 19] [T,M] = tezh(A) ans: T= 0.0643 2.2421 7.4945 22.1991 M= 1 1 1 1
河南财经政法大学数学与信息科学学院
2
实验报告
2 x 1 3 x 2 4 x 3 1 5.求方程 5 x 1 4 x 2 x 3 4 的解 7 x1 3 x 2 2 x 3
(1)求齐次线性方程组的基础解系、并化为阶梯型 clear all A=[2 3 4;5 4 1;1 3 2]; b=[1 4 7]'; [m,n]=size(A); R=rank(A); B=[A b]; Rr=rank(B); format rat if R==Rr&&R==n % n为未知数的个数,判断是否有唯一解 x=A\b elseif R==Rr&&R<n x=A\b C=null(A, r) %应的基础解系 % 这种情形方程组通解xx=k(p)*C(:,P)(p=1…n-R) else X= 'No solution' end %判断是否有无穷解 %求特解 %求AX=0的基础解系,所得C为n-R列矩阵,这n-R列即为对 %输入矩阵A,b
[V,D]=eig(ones(3)) a1=null(ones(3)) a2=null(ones(3)-3*eye(3)) B=[a1 a2] B'*ones(3)*B
9、判断
2 2 2 f 2 x12 3 x2 9 x3 19 x4 2 x1 x2 4 x1 x3 2 x1 x4 6 x2 x4 12 x3 x4 是否正定。
实验报告
实验六:线性代数的运算
实验目的:
1、熟悉 MATLAB 的矩阵初等运算; 2、掌握求矩阵的秩、逆、特征值、特征向量、化最简阶梯形的命令; 3、会用 MATLAB 求解线性方程组及化二次型为标准型.
实验内容
1. 2. 3. 4. 5. 求矩阵的秩、逆 判断向量组是否线性相关,并找出向量组中的一个最大线性无关组 求解线性方程组(用分解) 求矩阵的特征值、特征向量以及矩阵能否对角化 化二次型为标准型.
A=magic(4) B=[1 0 0 0;0 2 0 0;0 0 3 0;0 0 0 4]' C=B*A
A=magic(4) B=diag(1:4) C=B*A
2、将上魔方阵进行一下变换或计算 (1)A的转置 (2)A旋转90度 (3)A实行左右旋转 (4)A实行上下旋转 (5)A的逆矩阵 A' rot90(A) %逆时针rot90(A,3) %顺时针 fliplr(A) flipud(A) rank(A)=3,A是奇异阵,故A的广义逆为pinv(A) 1
7.
2 x1 x 2 x 3 1 取何值时,线性方程组 x1 x 2 x 3 2 无解、唯一解、无穷多解?并求出有无 4 x 5 x 5 x 1 2 3 1
穷多解时的通解. 程序如下: clc clear; syms a; A=[2 a -1;a -1 1;4 5 -5]; B=[2 a -1 1;a -1 1 2;4 5 -5 -1]; f=det(A); a=solve(f); %ans:a=[1 -4/5]' disp('当λ=1时:') clear A=[2 1 -1;1 -1 1;4 5 -5]; B=[2 1 -1 1;1 -1 1 2;4 5 -5 -1]; rA=rank(A) rB=rank(B) %rA =2 %rB =2 %B是A的增广矩阵
河南财经政法大学数学与信息科学学院
实验报告 (6)A的行列式 (7)A的迹 3、求向量组 1 det(A) trace(A)
1, 1, 2, 4 , 2 0, 3, 1, 2 , 3 3, 0, 7, 14 ,
T T T T T
ห้องสมุดไป่ตู้
4 1, 1, 2, 0 , 5 2, 1, 5, 6
实验报告 end %当y=1时: syms y; y=1; A=[2 y -1;y -1 1;4 5 -5]; b=[1 2 -1]'; if rank(A)==rank([A,b]) fprintf('y=1时,方程组有无穷多解') else fprintf('y=1时,方程组无解') end format rat %指定有理格式输出 B=null(A) %求解空间的有理基 C=rref(A) syms k1 k2 X=k1*B(:,1)'+k2*B(:,2)'%写出方程组的通解
实验报告 end
syms t; A=[2,t,-1;t,-1,1;4,5,-5]; B=[2,t,-1,1;t,-1,1,2;4,5,-5,-1]; C=solve(det(A)); fprintf('有唯一解时 取值不为:'); C(1,1) C(2,1) B(1,2)= C(1,1); A(1,2)=B(1,2); B(1,2)=C(1,1); A(2,1)=B(1,2); if rank(A)==rank(B) fprintf('有无穷多组解时 取值为:'); C(1,1) D=reff(B) else C(1,1) fprintf('时,无解'); end B(1,2)= C(2,1); A(1,2)=B(1,2); B(1,2)=C(2,1); A(2,1)=B(1,2); if rank(A)==rank(B) fprintf('有无穷多组解时 取值为:'); C(2,1) D=reff(B) else C(2,1) fprintf('时,无解'); end
(2)采用左除算子 程序如下: clear A=[2 3 4;5 4 1;1 3 2]; b=[1;4;7] det(A) X=A\b (3)LU 分解 程序如下: clear A=[2 3 4;5 4 1;1 3 2]; b=[1;4;7] ; det(A) [L,U]=lu(A); X=U\(L\b) %LU 分解的解 %左除求得的解
河南财经政法大学数学与信息科学学院
3
实验报告
x 0 6.求行列式 0 y
程序如下: clear syms x y
y x 0 0
0 y x 0
0 0 y x
A=[x y 0 0;0 x y 0;0 0 x y;y 0 0 x] det(A)
syms x y; A=x*eye(4); for i=1:3 A(i,i+1)=y; end A(4,4)=x; A(4,1)=y; A det(A)
实验要求
1、学生在实验操作过程中自己动手独立完成,1 人为 1 组。 2、完成实验报告:按照试验的每个题目的具体要求完成
实验数据记录及分析(命令与结果)
1、建立 4 阶魔方阵 A,然后将 A 的第一行乘以 1,第二行乘以 2,……,第 4 行乘以 4.(相当于 A 与一个对角阵相乘) A=magic(4) B=[ones(4,1) 2*ones(4,1) 3*ones(4,1) 4*ones(4,1)] A.*B
1 1 1 8、设矩阵 A= 1 1 1 ,求一正交矩阵 Q 使得 Q-1AQ 为对角矩阵 1 1 1
程序如下: clear A=[1,1,1;1,1,1;1,1,1]; [V,D]=eig(A) 河南财经政法大学数学与信息科学学院 7 %按Q'AQ算的
实验报告 V'*V Q=V Q'AQ %判断可知V是正交阵 %把V赋给Q %Q'AQ是对角阵
disp('rank(A)< rank(B),所以λ=-4/5时此方程组无解.')
clear syms y; A=[2 y -1;y -1 1;4 5 -5]; b=[1 2 -1]'; DA=det(A) solve(DA,'y') %下面求y取不同值时,解的情况: %1、当y不等于-4\5且不等于1时,方程有唯一解,求解为: X=A\b% %当y= -4/5时: syms y; y= -4/5; A=[2 y -1;y -1 1;4 5 -5]; b=[1 2 -1]'; if rank(A)==rank([A,b]) fprintf('y= -4/5时,方程组有无穷多解\n ' ) X=A\b else fprintf('y= -4/5时,方程组无解\n ' ) 河南财经政法大学数学与信息科学学院 5
m=[2 a -1; a -1 1;4 5 -5] b=[1;2;-1] [m,n]=size(A); y=[]; if norm(b)>0 %非齐次方程组% %有唯一解% if rank(A)==rank([A,b]) if rank(A)==n x=A\b; else x=A\b; y=null(A,'r'); end else x=[]; end else x=zeros(n,1); if rank(A)<n disp('原方程有无穷个解,基础解系为y'); y=null(A,'r'); end 河南财经政法大学数学与信息科学学院 6 %非0解% %齐次方程组% %0解% disp('原方程有零解x'); %方程无解% disp('此方程无解'); %方程有无穷多个解,基础解系% disp('原方程有无穷个解,其特解为x,齐次方程的基础解系为y'); disp('原方程有唯一解x');
disp('rank(A)= rank(B)=2<3,所以λ=1时次方程组有无穷多组解.') 河南财经政法大学数学与信息科学学院 4
实验报告 format rat C=null(A,'r'); [R1,jb]=rref(A); syms k1 k2 x1 x2 D1=k1*R1(:,1)+k2*R1(:,2); disp('齐次方程组的为通解为X1') X1=[x1*k1;x2*k2;0] R2=rref(B); D2=R2(:,4); disp('此非齐次方程组的一个特解为X2') X2=[1;-1;0] disp('此非齐次方程组的通解为X') X=[x1*k1+1;x2*k2-1;0] disp('当λ=-4/5时:') clear A=[2 -4/5 -1;-4/5 -1 1;4 5 -5]; B=[2 -4/5 -1 1;-4/5 -1 1 2;4 5 -5 -1]; rA=rank(A) rB=rank(B) %rA =2 %rB =3 %求解齐次方程的有理基
的秩,并判断其线性相关性,求极大无关组。
clc a1=[1,-1,2,4]'; a2=[0,3,1,2]'; a3=[3,0,7,14]'; a4=[1,-1,2,0]'; a5=[2,1,5,6]'; a=[a1,a2,a3,a4,a5]; [R,jb]=rref(a) r=length(jb) %求矩阵a的秩 if (r==4) %满秩 fprintf('这五个向量线性无关\n') else fprintf('这五个向量线性相关\n') end fprintf('极大无关组为:') a(:,jb) 4、已知 A=[1 2 3;6 3 4;6 3 1] 程序如下: clear A=[1 2 3;6 3 4;6 3 1] [V,D]=eig(A) b=rank(V) %rank(V)=3,V满秩,故A可对角化 求 A 的特征值、特征向量以及能否对角化
程序如下:
%tezh.m文件 function [ T , M ] = tezh (A) n=size(A); T=(eig(A))'; M=[ ]; for i =1:n(1) if T(i)>0 m=1; else m=0; end M=[M,m]; end %命令文件 A=[1 -1 2 1;-1 3 0 -3;2 0 9 -6;1 -3 -6 19] [T,M] = tezh(A) ans: T= 0.0643 2.2421 7.4945 22.1991 M= 1 1 1 1
河南财经政法大学数学与信息科学学院
2
实验报告
2 x 1 3 x 2 4 x 3 1 5.求方程 5 x 1 4 x 2 x 3 4 的解 7 x1 3 x 2 2 x 3
(1)求齐次线性方程组的基础解系、并化为阶梯型 clear all A=[2 3 4;5 4 1;1 3 2]; b=[1 4 7]'; [m,n]=size(A); R=rank(A); B=[A b]; Rr=rank(B); format rat if R==Rr&&R==n % n为未知数的个数,判断是否有唯一解 x=A\b elseif R==Rr&&R<n x=A\b C=null(A, r) %应的基础解系 % 这种情形方程组通解xx=k(p)*C(:,P)(p=1…n-R) else X= 'No solution' end %判断是否有无穷解 %求特解 %求AX=0的基础解系,所得C为n-R列矩阵,这n-R列即为对 %输入矩阵A,b
[V,D]=eig(ones(3)) a1=null(ones(3)) a2=null(ones(3)-3*eye(3)) B=[a1 a2] B'*ones(3)*B
9、判断
2 2 2 f 2 x12 3 x2 9 x3 19 x4 2 x1 x2 4 x1 x3 2 x1 x4 6 x2 x4 12 x3 x4 是否正定。
实验报告
实验六:线性代数的运算
实验目的:
1、熟悉 MATLAB 的矩阵初等运算; 2、掌握求矩阵的秩、逆、特征值、特征向量、化最简阶梯形的命令; 3、会用 MATLAB 求解线性方程组及化二次型为标准型.
实验内容
1. 2. 3. 4. 5. 求矩阵的秩、逆 判断向量组是否线性相关,并找出向量组中的一个最大线性无关组 求解线性方程组(用分解) 求矩阵的特征值、特征向量以及矩阵能否对角化 化二次型为标准型.
A=magic(4) B=[1 0 0 0;0 2 0 0;0 0 3 0;0 0 0 4]' C=B*A
A=magic(4) B=diag(1:4) C=B*A
2、将上魔方阵进行一下变换或计算 (1)A的转置 (2)A旋转90度 (3)A实行左右旋转 (4)A实行上下旋转 (5)A的逆矩阵 A' rot90(A) %逆时针rot90(A,3) %顺时针 fliplr(A) flipud(A) rank(A)=3,A是奇异阵,故A的广义逆为pinv(A) 1
7.
2 x1 x 2 x 3 1 取何值时,线性方程组 x1 x 2 x 3 2 无解、唯一解、无穷多解?并求出有无 4 x 5 x 5 x 1 2 3 1
穷多解时的通解. 程序如下: clc clear; syms a; A=[2 a -1;a -1 1;4 5 -5]; B=[2 a -1 1;a -1 1 2;4 5 -5 -1]; f=det(A); a=solve(f); %ans:a=[1 -4/5]' disp('当λ=1时:') clear A=[2 1 -1;1 -1 1;4 5 -5]; B=[2 1 -1 1;1 -1 1 2;4 5 -5 -1]; rA=rank(A) rB=rank(B) %rA =2 %rB =2 %B是A的增广矩阵
河南财经政法大学数学与信息科学学院
实验报告 (6)A的行列式 (7)A的迹 3、求向量组 1 det(A) trace(A)
1, 1, 2, 4 , 2 0, 3, 1, 2 , 3 3, 0, 7, 14 ,
T T T T T
ห้องสมุดไป่ตู้
4 1, 1, 2, 0 , 5 2, 1, 5, 6
实验报告 end %当y=1时: syms y; y=1; A=[2 y -1;y -1 1;4 5 -5]; b=[1 2 -1]'; if rank(A)==rank([A,b]) fprintf('y=1时,方程组有无穷多解') else fprintf('y=1时,方程组无解') end format rat %指定有理格式输出 B=null(A) %求解空间的有理基 C=rref(A) syms k1 k2 X=k1*B(:,1)'+k2*B(:,2)'%写出方程组的通解
实验报告 end
syms t; A=[2,t,-1;t,-1,1;4,5,-5]; B=[2,t,-1,1;t,-1,1,2;4,5,-5,-1]; C=solve(det(A)); fprintf('有唯一解时 取值不为:'); C(1,1) C(2,1) B(1,2)= C(1,1); A(1,2)=B(1,2); B(1,2)=C(1,1); A(2,1)=B(1,2); if rank(A)==rank(B) fprintf('有无穷多组解时 取值为:'); C(1,1) D=reff(B) else C(1,1) fprintf('时,无解'); end B(1,2)= C(2,1); A(1,2)=B(1,2); B(1,2)=C(2,1); A(2,1)=B(1,2); if rank(A)==rank(B) fprintf('有无穷多组解时 取值为:'); C(2,1) D=reff(B) else C(2,1) fprintf('时,无解'); end
(2)采用左除算子 程序如下: clear A=[2 3 4;5 4 1;1 3 2]; b=[1;4;7] det(A) X=A\b (3)LU 分解 程序如下: clear A=[2 3 4;5 4 1;1 3 2]; b=[1;4;7] ; det(A) [L,U]=lu(A); X=U\(L\b) %LU 分解的解 %左除求得的解