第3讲 线性方程组
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中的A,B矩阵进行如下操作: 矩阵进行如下操作: 二、在命令空间调用1中的 在命令空间调用 中的 矩阵进行如下操作
扩展为4× 阶的矩阵 阶的矩阵C. (1) 将A,B扩展为 ×8阶的矩阵C. C=[A B] (2) 提取C中的 2, 4行;3,5,7列构成的新矩阵 提取 中的1, 行 , , 列构成的新矩阵D. 中的 列构成的新矩阵 D=C([1 2 4],[3 5 7]) 提取C中的 中的3 列构成新矩阵 (3) 提取 中的 ,5列构成新矩阵 . E=C(:,[3 5]) 建立与A同阶的单位阵 矩阵,零矩阵 同阶的单位阵,1矩阵 (4) 建立与 同阶的单位阵 矩阵 零矩阵 . F=eye(size(A)) 提取A矩阵中的 矩阵中的2行 列的元素 列的元素. (5) 提取 矩阵中的 行3列的元素. G=A(2,3)
0 1.0000 0
0 0 10.0000
答:特征值
λ1 = λ 2 = 1的全部特征向量为:
− 0 . 2981 0 . 8944 k 1 − 0 . 5963 + k 2 − 0 . 4472 − 0 . 7454 0
其中 k1 , k2 不能同时为零. 不能同时为零 特征值
λ 3= 10 的全部特征向量为:
。
0 . 3333 k 3 0 . 6667 ,k3 不能为零 − 0 . 6667
数学实验练习题
一、已知向量组A:
−1 1 0 −1 2 −1 1 4 α1 = , α 2 = , α 3 = , α 4 = 0 1 1 2 0 −1 −1 1
由xi≤100得K=78,以确定木工、电工、油漆工
x4=78
四、特征值与特征向量
格式1 格式1:T=eig (A) T为特征值列向量 T为特征值列向量 格式2 格式2: [D,T] = eig (A) 其中 T为由特征值构成的对角阵 D为由特征向量构成的矩阵
[例5] 求方阵 例
2 A= 2 − 2
三、求一般线性方程组Ax=b的通解 操作步骤如下: (1)输入系数矩阵A及常数项矩阵b; (2)生成增广矩阵B=[A b]; (3)计算:A的秩r1及B的秩r2; (4)判断r1与r2是否相等,若不等则方程组无解, 若相等则方程组有解; (5)有解时,求齐次线性方程组的基础解析; (6)求非齐次线性方程组的一个特解; (7)由(5)(6)写出通解。
(2) Matlab求解 >>A=[-11 1 6 3;2 -4 1 2;2 2 -5 1; 3 3 2 -9]; >>B=rref(A)
B= 1.0000 0 0 0 0 1.0000 0 0 0 0 1.0000 0 -0.9912 -1.2719 -1.1053 0
>>C=-B(:,4); >>C(4)=1; >>k=70; >>x=zeros(4,1); >>X=[]; >>while max(x)<=100 k=k+1; for i=1:4 x(i)=C(i)*k; end X=[X x]; end >>k=k-1 >>d=X(:,k-70)
[例3] 解线性方程组 x1 +2x2 +x3 -x4 = 4 3x1+6x2 -x3 -3x4 = 8 5x1+10x2 +x3-5x4 = 16 解: >>A=[1 2 1 -1;3 6 -1 -3;5 10 1 -5 ]; >>b=[4;8;16]; >>B=[A b]; >>r1=rank(A) r1=2 >>r2=rank(B) r2=2
2 5 −4
− 2 − 4
5
的特征值与特征向量
A = [2 2 -2 ; 2 5 -4 ; -2 –4 5]; C = eig (A) [D,T] = eig (A)
C= 1.0000 1.0000 10.0000 T= 1.0000 0 0
D= -0.2981 0.8944 -0.5963 -0.4472 -0.7454 0 0.3333 0.6667 -0.6667
数学实验练习题
文件编辑器中建立m文件 一、在m文件编辑器中建立 文件 文件编辑器中建立 (1) 输入矩阵
2 3 A= − 1 1
1 1 2 0
−3 0 4 −1
− 1 7 , − 2 5
2 1 B= − 3 2
3
5
−1 8 4 6 3 5
4 6 − 7 4
[例1] 设向量组A:
2 − 1 −1 1 2 1 1 − 2 1 4 a1 = , a 2 = , a 3 = , a 4 = , a 5 = 4 − 6 2 − 2 4 3 6 − 9 7 9
返回
实验三 线性方程组
实验目的
1、熟悉用MATLAB软件求矩阵的秩及矩阵 、熟悉用 软件求矩阵的秩及矩阵 的行简化阶梯形的命令 2、学会用MATLAB软件求解线性方程组 、学会用 软件求解线性方程组 3、学会用MATLAB软件求矩阵的特征 、学会用 软件求矩阵的特征 值和特征向量
一、向量组的秩及相关性 rank(A) %求矩阵A的秩 rref (A) %将A化为行简化阶梯形,其中 单位向量对应的列向量即为极大无关组所 含向量,且其它列向量的各分量Hale Waihona Puke Baidu用极大 无关向量组线性表示的组合系数。
If r1==r2 & r1==n %判断有唯一解 X=A\b elseif r1==r2 &r1<n %判断有无穷解 X0=A\b %求特解 C=null(A,’r’) %求AX=0的基础解系 else X=‘equation no solve’ %判断无解 end
[例4] 应用型实验:工资问题 应用型实验: 现有一个木工、一个电工、一个油漆工、 一个装修工,共同合作完成他们各自的住 房装修。为了用工分配合理,决定每人工 作13天,日工资不超过100元,且每人的总 收入与总支出相等,试建立数学模型,以合 理确定每人的日工资额。
解法2:先判断是唯一解 解法 先判断是唯一解 D=det(A); n=size(A); d=ones (n(1),1); for j=1:n(1) A1=A; A1(:,j)=b; d(j)=det(A1); end x=d/D x= 1 -2 0 1/2
二、求齐次线性方程组的通解 在Matlab中,函数null用来求解空间,即 满足AX=0的解空间,实际上是求出解空间的 一组基(基础解系). 格式:B=null(A) B的列向量为方程组的规 范正交基,满足B’B=I B=null(A,’r’) B的列向量是方程AX=0 的有理基。
运行结果 k= 78 d= 77.3158 99.2105 86.2105 78.0000
齐次线性方程组的通解为:
0 . 9912 1 . 2719 X = k 1 . 1053 1
及装修工每人每天的日工资: x1=77 x2=99 x3=86
k ∈ R且 k ≠ 0
(1)求向量组A的秩,并判断向量组A的相关性;
(2)求A的一个极大无关组; (3)将其余向量组用极大无关组线性表示。 二、求解下列线性方程组的通解:
(1)求A的秩; (2)求A的一个极大无关组; (3)将其余向量用极大无关组线性表示。
>>A1=[2 1 4 3 -1 1 -6 6 -1 -2 2 -9 1 1 -2 7 2 4 4 9]; >>A=A1'; >>r=rank(A) r= 3
>>A2=rref(A) A2= 1 0 0 0 0 1 0 0 -1 -1 0 0 0 4 0 3 1 -3 0 0
Di xi = ( i = 1, 2 , L , n ) D
[例2] 解线性方程组 x1 − x2 + x3 − 2 x4 = 2 2 x − x3 + 4 x4 = 4 1 = −1 3 x1 + 2 x2 + x3 − x1 + 2 x2 − x3 + 2 x4 = − 4 解法1: >>A=[1 2 3 -1 -1 0 2 2 1 -2 -1 4 1 0 -1 2 ] ;
工作天数分配方案
工种 天数 在木工家 的工作天数 在电工家 的工作天数 在油漆工家 的工作天数 在装修工家 的工作天数 木工 2 电工 1 油漆工 6 装修工 3
4
5
2
4
4
4
3
2
3
3
2
4
解:(1)问题分析与模型建立 问题分析与模型建立 木工、电工、油漆工、装修工,装修他 们的房子,每人共工作13天,每人的日工 资数应使得每人的总收入与总支出相等, 这是一个投入产出问题。 设木工、电工、油漆工、装修工的日工 资分别为:x1,x2,x3,x4。则收支平衡关 系式分别为:
(2) 求 A − B , A + B , A B , B ', A 2 , A , A − 1 . (3) 保存矩阵 A , B为ff.mat . (4) 保存m文件为ff.m .
打开编辑器,创建ff.m文件 打开编辑器,创建ff.m文件 A=[2 1 -3 -1;3 1 0 7;-1 2 4 -2;1 0 -1 5]; B=[2 3 5 4;1 -1 8 6;-3 4 6 -7;2 3 5 4]; C=A-B 在命令窗口键入 D=A+B E=A*B >>clear F=B‘ >>load ff A B G=A^2 H=det(A) >>A K=inv(A) >>B save ff A B
答:(1)r=3,向量组A线性相关; (2)它的一个极大线性无关组是:
a1,a2,a4;
(3)a3= -a1-a2,a5=4a1+3a2 -3a4 。
二、求线性方程组的唯一解或特解 Ax=b ,当det(A)≠0时,求解方法 1. 逆矩阵求解:X=inv(A)*b或 X =A \ b ; 2. 克莱姆法则求解: .
C= -2 1 0 0 1 0 0 1
X0=
k1 , k 2 ∈ R
0 1.5000 1.0000 0
在matlab中建立M文件 A=[1 2 1 -1;3 6 -1 -3;5 10 1 -5 ]; b=[4;8;16]; B=[A b]; n=4; r1=rank(A) r2=rank(B) format rat %指定有理式格式输出
>>C=null(A,’r’) >>X0=A\b >>syms k1 k2 >>X= k1 *C(:,1)+k2*C(:,2)+X0 非齐次线性方程组的通解是
−2 1 X = k1 + k 2 0 0 1 0 + 0 1 0 3 / 2 1 0
2x1+x2+6x3+3x4=13x1 4x1+4x2+3x3+2x4=13x3
4x1+5x2+2x3+4x4=13x2 3x1+3x2+2x3+4x4=13x4
得数学模型:
− 1 1 x1 + x 2 + 2 x1 − 4 x 2 2 x1 + 2 x 2 3 x1 + 3 x 2 xi ≤ 1 0 0 6 x3 + 3 x4 = 0 + x3 + 2 x4 = 0 − 5 x3 + x4 = 0 + 2 x3 − 9 x4 = 0 ( i = 1, 2 , 3 , 4 )
>> b=[2;4;-1;-4]; >>r=rank(A) >>x=inv(A)*b r= 4 x= 1 -2 0 1/2 或: >>x=A\b
x= 1 -2 0 1/2
或用函数rref求解: >>B=[A,b]
c=
>>C=rref(B)
1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 -2 0 0.5