文件帮助中心文件
解线性方程组
x = linsolve(a,b)
X = Linsolve(A,B,OPTS)
[X,r]=linsolve(___)
例子
X= linsolve(一种那B.)解决了线性系统一种X=B.使用以下方法之一:
X= linsolve(一种那B.)
X
一种
B.
什么时候一种是广场那符号解法使用LU分解和部分数据透视。
符号解法
对于所有其他情况,符号解法使用柱子枢转的QR分解。
符号解法警告if.一种病态(对于平方矩阵)或秩亏(对于矩形矩阵)。
X= linsolve(一种那B.那选择)使用由选项结构确定的适当求解器选择.田野选择是描述矩阵属性的逻辑值一种。例如,如果一种是一个上三角矩阵,你可以设置opts.UT=true使符号解法使用为上三角矩阵设计的解算器。符号解法不进行测试以验证一种具有中指定的属性选择。
X= linsolve(一种那B.那选择)
选择
opts.UT=true
[X那R.]=林索尔夫(___)还返回R.,它是的条件数的倒数一种(对于方形矩阵)或等级一种(对于矩形矩阵)。您可以在以前的语法中使用任何输入参数组合。使用这种语法,符号解法不发出警告,如果一种病态的或等级不足的。
[X那R.]=林索尔夫(___)
R.
全部崩溃
用两者求解线性系统莫德利维和符号解法比较性能。
莫德利维
莫德利维是在MATLAB®中求解大多数线性方程组的推荐方法。但是,该函数对输入矩阵执行多项检查,以确定其是否具有任何特殊属性。如果您提前知道系数矩阵的属性,则可以使用符号解法避免对大矩阵的耗时检查。
创建一个10000×10000魔术方矩阵并提取较低三角形部分。设定书信电报场面的领域选择结构到符合事实的表明一种是一个下三角矩阵。
书信电报
符合事实的
a = tril(魔术(1e4));opts.lt = true;
为线性方程的右侧创建一个1向量 斧头 = B. 。中的行数一种和B.必须是平等的。
b=一(尺寸(A,2),1);
求解线性系统 斧头 = B. 使用莫德利维和计算的时间。
tic x1=A\b;t1=toc
t1=0.0860
现在,再次解决系统符号解法。指定选项结构,以便符号解法可以为较低三角形矩阵选择合适的求解器。
tic x2=linsolve(A、b、opts);t2=toc
t2=0.0685
比较执行时间以查看更快的程度符号解法是。与任何时序比较一样,结果可以在不同的计算机和释放的MATLAB之间变化。
speedup = t1 / t2
Speedup = 1.2548.
解决线性系统使用符号解法具有两个输出以抑制矩阵调节警告。
创建一个20×20的Hilbert测试矩阵。该矩阵几乎是奇异的,具有最大的奇异值2e18比最小的大。
2e18
a = hilb(20);
解一个线性系统,包括一种和符号解法。自从一种几乎是单数,符号解法返回警告。
b = oon(20,1);x = linsolve(a,b);
警告:矩阵接近奇异或严重缩放。结果可能是不准确的。rcond = 1.276108e-19。
现在,解决了相同的线性系统,但指定了两个输出到符号解法。MATLAB®抑制警告和第二个输出R.包含的条件数的倒数一种。您可以使用此语法来处理代码中具有特殊情况的不良状态矩阵,而无需代码产生警告。
[x,r] = linsolve(a,b)
X =20×110.8.× 0.0000 -0.0000 0.0008 -0.0144 0.1448 -0.8567 3.1338 -7.1545 9.9712 -8.4571 ⋮
r=1.2761e-19
系数矩阵。一种出现在左侧的线性方程系统中一种X=B.。中的行数一种必须等于行的数量B.。
一种不能是稀疏的。若要求解包含稀疏矩阵的线性系统,请使用莫德利维或分解反而。
分解
数据类型:单身的|双重的复数支持:金宝app是的
单身的
双重的
输入数组,指定为向量或矩阵。B.出现在右侧的线性方程系统中一种X=B.。如果B.是矩阵,然后矩阵中的每个列代表右侧的不同向量。
中的行数一种必须等于行的数量B.。
系数矩阵属性,指定为结构。使用此结构可指定一种那个符号解法用于为线性系统选择适当的求解器。结构中的字段包含符合事实的/错误的用于指示是否一种具有每个属性。默认情况下,结构中的所有字段都假定为错误的。此表列出了中可能的字段选择及其相应的矩阵属性。
错误的
较低的三角形(仅在主对角线或下方出现非零值)
犹他州
上三角形(仅在主对角线上以上出现非零值)
厄斯
Upper Hessenberg(所有零值下方的零值)
轶事
真正对称或复杂的隐士(矩阵等于其转置)
POSDEF.
正定(所有正特征值)
直肠
矩形矩阵(不同行数和列数)
交易
共轭转置-指定函数是否求解A*X=B(何时)opts.transa = false.)还是换位问题A'*X=B(何时)opts.TRANSA=true)
A*X=B
opts.transa = false.
A'*X=B
opts.TRANSA=true
例子:opts.UT=true指定一种是上三角形。
例子:opts.SYM=true,opts.POSDEF=true设置两个字段以指定一种是对称的和正定的。
opts.SYM=true,opts.POSDEF=true
此表的行列出了字段值的所有组合选择有效期为符号解法。空单元是默认值错误的和A.符合事实的/错误的条目表示符号解法接受任何值。
一种是较低的三角形
符合事实的/错误的
一种是上三角形
一种是上海森堡吗
一种是对称的
一种是矩形的
如果一种具有中的属性选择, 然后符号解法比以前快莫德利维, 因为符号解法立即调用相应的解算器,并且不执行任何测试来验证一种具有指定的属性。
如果一种做不是具有您指定的属性选择, 然后符号解法返回不正确的结果,不返回错误消息。因此,如果您不确定一种具有指定的属性,使用莫德利维或分解反而。
数据类型:结构
结构
线性系统解决方案,作为载体或矩阵的返回一种X=B.(或者一种T.X=B.如果opts.TRANSA=true)。的大小X取决于是否opts.TRANSA=true:
如果一种是m-借-N和B.是m-借-K., 然后X是N-借-K.并是解决方案一种X=B.。
m
N
K.
如果opts.TRANSA=true, 然后一种是m-借-N和B.是N-借-K..在这种情况下,X是m-借-K.并是解决方案一种T.X=B.。
倒数条件数或秩,作为标量返回。
如果一种这是一个方阵R.是互酷条件数一种。
如果一种是一个矩形矩阵,那么R.是等级一种。
如果选择指定,然后R.是条件数量的互惠一种除非直肠是符合事实的两者都有书信电报和犹他州是错误的, 在这种情况下,R.给出了一种。
速度效益符号解法根据矩阵结构和底层算法的相对优化,可能会有所不同。在某些情况下(例如,对于小矩阵),与莫德利维。速度效益符号解法通过避免昂贵检查大矩阵的性质,或者通过选择更适合输入的算法而不是选择的算法莫德利维制造。
使用说明和限制:
这选择结构必须是恒定的标量。代码生成不支持选项结构阵列。金宝app
代码生成仅优化以下情况:
厄斯=符合事实的(修订)交易可以是符合事实的或错误的)
轶事=符合事实的和POSDEF.=符合事实的
其他选项相当于使用莫德利维。
代码生成不支持此函数的稀疏矩阵输入。金宝app
分解|lsqminorm|莫德利维
lsqminorm
您有此示例的修改版本。是否要用您的编辑打开此示例?
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,以便在可用的地方进行翻译的内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:。
您还可以从以下列表中选择网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
联系当地办事处