MATLAB求线性方程组
MATLAB计算方法3解线性方程组计算解法

直到(n-1) 原方程组化为
a11 x1 a12 x2 a1n xn a1,n1 a22 x2 a2 n xn a2 ,n1
ann xn an ,n1
(上三角方程组) (3.2) 以上为消元过程。
(n) 回代求解公式
a n ,n1 xn a nn n x k 1 [a k ,n1 a kj x j ] a kk j k 1 ( k n 1, n 2,...,1)
由矩阵乘法 (1) 1) l11 a11 l11
umj 1 ukj a kj ukj a kj l km umj
m 1
k 1
2 求L的第k列:用L的第i行 u的第k列
(i k 1, , n),即 ( l i 1 , , l ik , l kk , 0 0) ( u1k , u2 k , , ukk , 0 0)' a ik
( 2) 1)求u的第2行:用L的第2行 u的第j列 (j 2, , n) l 21 u1 j 1 u2 j a 2 j u2 j a 2 j l 21u1 j 2)求L的第2列:用L的第i行 u的第2列 (i 3,4, , n) l i 1 u12 l i 2 u22 a i 2 l i 2 (a i 2 l i 1 u12 ) / u22
m 1
l
k 1
im
umk l ik ukk a ik
k 1
l ik a ik l im umk ukk m 1
LU分解式: u1 j a1 j ( j 1,2, n) l i 1 a i 1 u11 ( i 2,3, , n) k 1 ukj a kj l km umj a kj m 1 ( j k , k 1, , n) k 1 l ik a ik l im umk ukk a ik m 1 ( i k 1, , n) ( k 2, 3, , n )
第三章MATLAB线性方程组及矩阵特征值

情形2:m<n(不定方程)
- 0.8000
情形3:m>n(超定方程),多用于曲线拟合。
解线性方程组的一般函数文件如下:
function [x,y]=line_solution(A,b)
[m,n]=size(A);y=[];
if norm(b,1)>0
%非齐次方程组
if rank(A)==rank([A,b]) %方程组相容
for i=1:3
if i~=2, a(i,:)=a(i,:)-a(i,2)*a(2,:); end
end
a
a(3,:)=a(3,:)/a(3,3)
for i=1:3;
if i~=3, a(i,:)=a(i,:)-a(i,3)*a(3,:); end;
end; a A_inv = a(:,4:6) A*A_inv
2in
ai 2
,对调2
r2行.
消元:用a22把ai2消为0 (i 3, 4, , n) :
第2 行
ai 2 a22
第i行,则
aij
a2 j
ai 2 a22
aij (i
3, 4,
, n;j
2, 3,
, n 1)
到此原方程组化为
a11x1 a12 x2 a13 x3
a22 x2 a23 x3
2, 3,
, n;j 1, 2,
, n 1)
到此原方程组化为
a11 x1 a12 x2 a22 x2
ai2 x2
an2 x2
a1n xn a1,n1 a2n xn a2,n1
ain xn ai,n1
ann xn an,n1
(2) 找r2,使 ar2 2
sor迭代法matlab

sor迭代法matlabSOR迭代法是一种求解线性方程组的方法,它是Jacobi迭代法和Gauss-Seidel迭代法的改进。
SOR迭代法通过引入松弛因子来加速收敛速度,从而提高求解效率。
在Matlab中,可以使用sor函数来实现SOR迭代法。
该函数的语法格式如下:x = sor(A, b, omega, tol, maxit)其中,A为系数矩阵,b为常数向量,omega为松弛因子,tol为误差容限,maxit为最大迭代次数。
函数返回值x为方程组的解向量。
下面我们将详细介绍如何使用Matlab中的sor函数进行线性方程组求解。
1. 准备数据首先需要准备系数矩阵A和常数向量b。
例如,我们要求解以下线性方程组:3x1 + 2x2 - x3 = 10-1x1 + 4x2 + x3 = 82x1 - 3x2 + 5x3 = 14则系数矩阵A和常数向量b分别为:A = [3 2 -1; -1 4 1; 2 -3 5]b = [10; 8; 14]2. 调用sor函数接下来,在Matlab中调用sor函数进行求解。
假设松弛因子omega 取0.5,误差容限tol取1e-6,最大迭代次数maxit取1000,则代码如下:x = sor(A, b, 0.5, 1e-6, 1000)函数返回的解向量x为:x = [3.0000; 1.0000; 2.0000]可以通过将解向量代入原方程组验证解的正确性。
3. 调整松弛因子松弛因子omega对SOR迭代法的收敛速度有很大影响。
如果选择不合适的松弛因子,可能会导致收敛速度变慢甚至不收敛。
因此,需要根据实际情况对松弛因子进行调整。
通常情况下,可以通过试验法来确定最佳的松弛因子。
例如,在Matlab中可以编写一个循环来尝试不同的松弛因子,并比较它们的收敛速度。
代码如下:for omega = 0.1:0.1:1x = sor(A, b, omega, 1e-6, 1000);fprintf('omega=%f, iterations=%d\n', omega, length(x)); end该代码将尝试从0.1到1之间以步长为0.1递增的所有松弛因子,并输出它们所需的迭代次数。
运用雅可比迭代和高斯塞德尔迭代法求的解matlab

运用雅可比迭代和高斯塞德尔迭代法求的解matlab雅可比迭代和高斯塞德尔迭代法是解线性方程组的常用方法,它们都是迭代法的一种。
在Matlab中,可以通过编写程序实现这两种迭代法来求解线性方程组。
首先,我们需要了解什么是线性方程组。
线性方程组是一组等式,其中每个等式都是由一些未知量的系数和一个已知量组成的,这些未知量和已知量的关系是线性的。
例如,下面的方程组就是一个线性方程组:2x + 3y = 85x - 2y = 1要求解这个方程组,我们可以使用矩阵的形式表示它:|2 3| |x| = |8||5 -2| |y| |1|接下来,我们可以用雅可比迭代法和高斯塞德尔迭代法来求解这个线性方程组。
雅可比迭代法是一种简单的迭代法,它的基本思想是将方程组的每个未知量视为新的未知量,然后用当前的未知量估计下一个未知量的值。
具体实现方法是将原方程组改写为下面的形式:x = D^(-1)(b - (L+U)x)其中,D是原方程组的对角线部分,L是原方程组的下三角部分(除去对角线),U是原方程组的上三角部分(除去对角线)。
这个迭代公式表示,每次使用上一次迭代得到的未知量来估计下一个未知量的值,直到达到一定的精度为止。
在Matlab中,可以使用以下代码来实现雅可比迭代法求解线性方程组:function [x,k]=jacobi(A,b,x0,maxk,tol)n=length(b); x=x0; k=0;while(k<maxk)k=k+1;for i=1:nx(i)=(b(i)-A(i,1:i-1)*x0(1:i-1)-A(i,i+1:n)*x0(i+1:n))/A(i,i);enderr=norm(x-x0);if err<tol; return; endx0=x;endend其中,A是系数矩阵,b是常数向量,x0是初始解向量,maxk是最大迭代次数,tol是迭代精度。
高斯塞德尔迭代法和雅可比迭代法类似,只是在推导迭代公式时使用了更多的新的未知量来计算下一个未知量的值。
matlab线性方程组的矩阵解法

function x=lupdsv(A,b) n=length(b); [LU,p]=lupd(A); y(1)=b(p(1)); for i=2:n y(i)=b(p(i))-LU(i,1:i-1)*y(1:i-1)'; end x(n)=y(n)/LU(n,n); for i=(n-1):-1:1 x(i)=(y(i)-LU(i,i+1:n)*x(i+1:n)')/LU(i,i); end
lupdsv.m %功能:调用列主元三角分解函数 [LU,p]=lupd(A) % 求解线性方程组Ax=b。 。 求解线性方程组
%解法:PA=LU, Ax=b←→PAx=Pb 解法: 解法 % % LUx=Pb, Ly=f=Pb, y=Ux f(i)=b(p(i))
%输入:方阵A,右端项 (行或列向量均可) 输入:方阵 ,右端项b(行或列向量均可) 输入 %输出:解x(行向量) 输出: 输出 (行向量)
Ax = d 用矩阵表示 应用追赶法求解三对角线性方程组。追赶法仍然 追赶法求解三对角线性方程组 应用追赶法求解三对角线性方程组。追赶法仍然 保持LU分解特性,它是一种特殊的LU分解。 LU分解特性 LU分解 保持LU分解特性,它是一种特殊的LU分解。充分利用 了系数矩阵的特点,而且使之分解更简单, 了系数矩阵的特点,而且使之分解更简单,得到对三对 角线性方程组的快速解法。 角线性方程组的快速解法。
matlab期末考试题目及答案

matlab期末考试题目及答案1. 题目:编写一个MATLAB函数,实现矩阵的转置操作。
答案:可以使用`transpose`函数或`.'`操作符来实现矩阵的转置。
例如,对于一个矩阵`A`,其转置可以通过`A'`或`transpose(A)`来获得。
2. 题目:使用MATLAB求解线性方程组Ax=b,其中A是一个3x3的矩阵,b是一个3x1的向量。
答案:可以使用MATLAB内置的`\`操作符来求解线性方程组。
例如,如果`A`和`b`已经定义,求解方程组的代码为`x = A\b`。
3. 题目:编写MATLAB代码,计算并绘制函数f(x) = sin(x)在区间[0, 2π]上的图像。
答案:首先定义x的范围,然后计算对应的函数值,并使用`plot`函数绘制图像。
代码示例如下:```matlabx = linspace(0, 2*pi, 100); % 定义x的范围y = sin(x); % 计算函数值plot(x, y); % 绘制图像xlabel('x'); % x轴标签ylabel('sin(x)'); % y轴标签title('Plot of sin(x)'); % 图像标题```4. 题目:使用MATLAB编写一个脚本,实现对一个给定的二维数组进行排序,并输出排序后的结果。
答案:可以使用`sort`函数对数组进行排序。
如果需要对整个数组进行排序,可以使用`sort`函数的两个输出参数来获取排序后的索引和值。
代码示例如下:```matlabA = [3, 1, 4; 1, 5, 9; 2, 6, 5]; % 给定的二维数组[sortedValues, sortedIndices] = sort(A(:)); % 对数组进行排序sortedMatrix = reshape(sortedValues, size(A)); % 将排序后的值重新构造成矩阵disp(sortedMatrix); % 显示排序后的结果```5. 题目:编写MATLAB代码,实现对一个字符串进行加密,加密规则为将每个字符的ASCII码值增加3。
利用MATLAB求线性方程组

《MATLAB语言》课成论文利用MATLAB求线性方程组姓名:郭亚兰学号:12010245331专业:通信工程班级:2010级通信工程一班指导老师:汤全武学院:物电学院完成日期:2011年12月17日利用MATLAB求解线性方程组(郭亚兰 12010245331 2010 级通信一班)【摘要】在高等数学及线性代数中涉及许多的数值问题,未知数的求解,微积分,不定积分,线性方程组的求解等对其手工求解都是比较复杂,而MATLAB语言正是处理线性方程组的求解的很好工具。
线性代数是数学的一个分支,它的研究对象是向量,向量空间(或称线性空间),线性变换和有限维的线性方程组。
因而,线性代数被广泛地应用于抽象代数和泛函分析中;由于科学研究中的非线性模型通常可以被近似为线性模型,使得线性代数被广泛地应用于自然科学和社会科学中。
线性代数是数学的一个分支,它的研究对象是向量,向量空间(或称线性空间),线性变换和有限维的线性方程组。
因而,线性代数被广泛地应用于抽象代数和泛函分析中;由于科学研究中的非线性模型通常可以被近似为线性模型,使得线性代数被广泛地应用于自然科学和社会科学中。
线性代数是讨论矩阵理论、与矩阵结合的有限维向量空间及其线性变换理论的一门学科。
【关键字】线性代数MATLAB语言秩矩阵解一、基本概念1、N级行列式A:A等于所有取自不同性不同列的n个元素的积的代数和。
2、矩阵B:矩阵的概念是很直观的,可以说是一张表。
3、线性无关:一向量组(a1,a2,…,an)不线性相关,既没有不全为零的数k1,k2,………kn使得:k1*a1+k2*a2+………+kn*an=04、秩:向量组的极在线性无关组所含向量的个数成为这个向量组的秩。
5、矩阵B的秩:行秩,指矩阵的行向量组的秩;列秩类似。
记:R(B)6、一般线性方程组是指形式:⎪⎪⎩⎪⎪⎨⎧=+++=+++=*+++ssn s s n n n n b a x a x a b x a x a x a b x a x a x n 22112222212111212111x ********a 二、基本理论三种基本变换:1,用一非零的数乘某一方程;2,把一个方程的倍数加到另一方程;3,互换两个方程的位置。
MATLAB-平方根法和改进平方根法求解线性方程组例题与程序演示教学

M A T L A B-平方根法和改进平方根法求解线性方程组例题与程序(2)设对称正定阵系数阵线方程组12345678424024000221213206411418356200216143323218122410394334411142202531011421500633421945x x x x x x x x -⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥---⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥----⎢⎥⎢⎥⎢⎥----⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥----⎢⎥⎢⎥⎢⎥----⎢⎥⎢⎥⎢⎢⎥⎢⎥⎢---⎢⎥⎢⎥⎢--⎢⎥⎢⎢⎥⎣⎦⎣⎦⎣⎦⎥⎥⎥⎥ (1,1,0,2,1,1,0,2)T x *=--二、数学原理 1、平方根法解n 阶线性方程组Ax=b 的choleskly 方法也叫做平方根法,这里对系数矩阵A 是有要求的,需要A 是对称正定矩阵,根据数值分析的相关理论,如果A 对称正定,那么系数矩阵就可以被分解为的T A=L L •形式,其中L 是下三角矩阵,将其代入Ax=b 中,可得:T LL x=b 进行如下分解:T L xL by y ⎧=⎨=⎩ 那么就可先计算y,再计算x ,由于L 是下三角矩阵,是T L 上三角矩阵,这样的计算比直接使用A 计算简便,同时你应该也发现了工作量就转移到了矩阵的分解上面,那么对于对称正定矩阵A 进行Cholesky 分解,我再描述一下过程吧: 如果你对原理很清楚那么这一段可以直接跳过的。
设T A=L L •,即1112111112112122221222221212....................................n n n n n n nn n n nn nn a a a l l l l aa a l l l l a a a l l l l ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦其中,,1,2,...,ij ji a a i j n ==第1步,由矩阵乘法,211111111,i i a l a l l ==g 故求得111111,2,3,...i i a l l i n a === 一般的,设矩阵L 的前k-1列元素已经求出 第k 步,由矩阵乘法得112211k k kk kmkkik im km ik kkm m a l l a l l l l --===+=+∑∑, 于是11(2,3,...,n)1(),1,2,...kk k ik ik im km m kk l k l a l l i k k n l -=⎧=⎪⎪=⎨⎪=-=++⎪⎩∑ 2、改进平方根法在平方根的基础上,为了避免开方运算,所以用TLDL A =计算;其中,11122.........n d D D D d ⎤⎤⎡⎤⎥⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥===⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎢⎢⎥⎣⎦⎣⎣;得1121212212111111n n n n n d l l l d l A l l d ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦L L M MO O O M L按行计算的L 元素及D 对元素公式 对于n i ,,2,1Λ=11(1,21)j ij ij ik jk k t a t l j i -==-=-∑…,./(1,2,)ij ij j l t d j ==…,i-1.11i i ii ik ikk d a t l -==-∑计算出LD T =的第i 行元素(1,2,i-1)ij t j =…,后,存放在A 的第i 行相置,然后再计算L 的第i 行元素,存放在A 的第i 行.D 的对角元素存放在A 的相应位置.对称正定矩阵A 按T LDL 分解和按T LL 分解计算量差不多,但T LDL 分解不需要开放计算。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
§3.1 求线性方程组的唯一解或特解 一. 用克拉默法则 例3.1.1. 求方程组 3.1.1. =1 5 x1 + 6 x2 x1 + 5 x2 + 6 x3 =0 x2 + 5 x3 + 6 x4 =0 x3 + 5 x4 + 6 x5 = 0 x4 + 5 x5 = 1 的解. 的解
第三章 线性方程组
§3.2 求线性方程组的通解
>> >> >> >>
A=[1 1 -3 -1;3 -1 -3 4;1 5 -9 -8]; b=[1 4 0]’;B=[A b];n=4; %未知量的个数 R_A=rank(A);R_B=rank(B);format rat R_A==R_B&R_A==n,X=A\ if R_A==R_B&R_A==n,X=A\b %这是有唯一解的情况 elseif R_A==R_B&R_A<n,C=rref(B) %化B为行最简形 solves’ else X= ‘Equation has no solves’ %无解的情况 %MATLAB运行后得到如下结果 end %MATLAB运行后得到如下结果
即
X =
x4 + 5 x5 = 1
-79/133
1507/665
-229/133
37/35
212/665
第三章 线性方程组
§3.1 求线性方程组的唯一解或特解
二. 用矩阵除法
>> %把该方程组记为AX=b,则X=A\b 把该方程组记为AX=b AX=b, X=A\ >> A=[5,6,0,0,0; 1,5,6,0,0; 0,1,5,6,0; 0,0,1,5,6; 0,0,0,1,5]; b=[1;0;0;0;1];format rat,X=A ,X=A\ >> b=[1;0;0;0;1];format rat,X=A\b X = 1507/665 -229/133 37/35 -79/133 212/665
第三章 线性方程组
§3.1 求线性方程组的唯一解或特解
>> >> >> >> >> >> >> >> >> >> >> >>
a_1=[5;1;0;0;0];a_2=[6;5;1;0;0]; a_3=[0;6;5;1;0];a_4=[0;0;6;5;1]; a_5=[0;0;0;6;5];b=[1;0;0;0;1]; D=det([a_1,a_2,a_3,a_4,a_5]); D_1=det([b,a_2,a_3,a_4,a_5]); D_2=det([a_1,b,a_3,a_4,a_5]); D_3=det([a_1,a_2,b,a_4,a_5]); =1 5 x1 + 6 x2 D_4=det([a_1,a_2,a_3,b,a_5]); x1 + 5 x2 + 6 x3 =0 D_5=det([a_1,a_2,a_3,a_4,b]); x_1=D_1/D;x_2=D_2/D;x_3=D_3/D;x_4=D_4/D; x2 + 5 x3 + 6 x4 =0 x_5=D_5/D; rat,X=[x_1,x_2,x_3,x_4,x_5] x3 + 5 x4 + 6 x5 rat,X=[x_1;x_2;x_3;x_4;x_5] format rat,X=[x_1,x_2,x_3,x_4,x_5] = 0 ,X=[x_1;x_2;x_3;x_4;x_5]
第三章 线性方程组
§3.1 求线性方程组的唯一解或特解
三. 用矩阵的初等变换
>> A=[5,6,0,0,0;1,5,6,0,0;0,1,5,6,0; 0,0,1,5,6;0,0,0,1,5]; >> b=[1;0;0;0;1]; >> B=[A,b]; %增广矩阵 >> format rat 用初等行变换把B >> C=rref(B); %用初等行变换把B化为行最简形 >> X=C(:,6) %取C的最后一列 X = 911/402 -229/133 37/35 -79/133 95/298
X = Equation has no solves
第三章 线性方程组
§3.2 求线性方程组的通解
例3.2.3. 求方程组 3.2.3.
x1 + x2 − 3 x3 − x4 = 1 3 x1 − x2 − 3 x3 + 4 x4 = 4 x1 + 5 x2 − 9 x3 − 8 x4 = 0
的通解. 的通解. 1 2 2 1 先用函数null求系数矩阵 解: 先用函数null求系数矩阵 2 1 −2 −2
1 −1 −4 −3
的零空间的一组基: 的零空间的一组基:
第三章 线性方程组
§3.2 求线性方程组的通解
>> A=[1,2,2,1;2,1,-2,-2;1,-1,-4,-3]; %系数矩阵 A=[1,2,2,1;2,1,-2,-2;1,-1,-4,format rat,求A的零空间的标准正交基 C=null(A,’r’) % D=null(A,’r’) >> B=null(A)’r’) %求A的零空间的基 C=null(A,’r’ rat, D=null(A,’r’) ’r’ D = C B 2.0000 0.7177 5/30.0286 2 -1.6667 -0.6084-4/30.2725 -2 2.0000 -1.3333 1.0000 0.0857 0 -0.6241 1 0 0.3277 1 0.7317 0 0 1.0000
.
x1 = 3 / 2 x3 − 3 / 4 x4 + 5 / 4 x = 3 / 2 x + 7 / 4 x − 1/ 4 3 4 2 所以原方程组的通解为 3/ 2 −3 / 4 5 / 4 3/ 2 7 / 4 −1/ 4 X = k1 + k2 0 + 0 , 1 0 1 0 其中k 为任意实数. 其中k1, k2为任意实数.
C = 1 0 0 0 1 0 -3/2 -3/2 0 3/4 -7/4 0 5/4 -1/4 0
可见原方程组有无数多组解, 可见原方程组有无数多组解,且
第三章 线性方程组
§3.2 求线性方程组的通解
x1 − 3 / 2 x3 + 3 / 4 x4 = 5 / 4 x − 3 / 2 x − 7 / 4 x = −1/ 4 3 4 2
第三章 线性方程组
§3.2 求线性方程组的通解
§3.2 求线性方程组的通解 一. 求齐次线性方程组的通解 例3.2.1. 求方程组 3.2.1.
x1 + 2 x2 + 2 x3 + x4 = 0 2 x1 + x2 − 2 x3 − 2 x4 = 0 x1 − x2 − 4 x3 − 3 x4 = 0
的通解. 的通解
>> >> >> >> A=[1 1 -3 -1;3 -1 -3 4;1 5 -9 -8]; b=[1 4 0]’;B=[A b];n=4; %未知量的个数 R_A=rank(A);R_B=rank(B);format rat R_A==R_B&R_A==n,X=A\ if R_A==R_B&R_A==n,X=A\b %这是有唯一解的情况 elseif R_A==R_B&R_A<n,C=rref(B) %化B为行最简形 X=‘Equation solves’% else X=‘Equation has no solves’%无解的情况 %MATLAB运行后得到如下结果 end %MATLAB运行后得到如下结果
的一个特解. 的一个特解 先用MATLAB把该方程组的增广矩阵 解: 先用 把该方程组的增广矩阵
1 1 −1 −1 1 3 −1 −3 4 4 1 5 −9 −8 0
化为行最简形
第三章 线性方程组
§3.1 求线性方程组的唯一解或特解
>> >> >> >>
A=[1,1,-1,-1;3,-1,-3,4;1,5,-9,-8]; A=[1,1,-1,-1;3,-1,-3,4;1,5,-9,b=[1;4;0]; B=[A,b]; %增广矩阵 用初等行变换把B C=rref(B); %用初等行变换把B化为行最简形
第三章 线性方程组
§3.2 求线性方程组的通解
二. 求非齐次线性方程组的通解 例3.2.2. 求解方程组 3.2.2.
x1 − 2 x2 + 3 x3 − x4 = 1 3 x1 − x2 + 5 x3 − 3 x4 = 2 2 x1 + x2 + 2 x3 − 2 x4 = 3
C = 1.0000 0 0 0 1.0000 0 0 0 1.0000 0.7500 -1.7500 0 1.2500 -0.2500 0
从中可以看出该方程组有无数多解, 从中可以看出该方程组有无数多解,而且 X=[1.25, – 0.25,0,0]T 就是该方程组的一个特解. 就是该方程组的一个特解.
第三章 线性方程组
§3.2 求线性方程组的通解
>> >> >> >> >> >> >>
A=[1 -2 3 -1;3 -1 5 -3;2 1 2 -2]; %系数矩阵 b=[1 2 3]’; B=[A b]; %增广矩阵 n=4; %未知量的个数 x1 % 2 x2 + 3 x3 R_A=rank(A); −系数矩阵的秩 − x4 = 1 R_B=rank(B); %增广矩阵的秩− 3 x = 2 3 x1 − x2 + 5 x3 4 if R_A==R_B&R_A==n, X=A\b %这是有唯一解的情况 2 x = 3 X=A\ 2 x 1 + x2 + 2 x3 − 4 elseif R_A==R_B&R_A<n, C=rref(B) %这是有无穷多个解的情况 X=‘Equation solves’% else X=‘Equation has no solves’%无解的情况 %MATLAB运行后得到如下结果 end %MAБайду номын сангаасLAB运行后得到如下结果