使用matlab求解线性方程

使用matlab求解线性方程

   

Ax = B 形式

 A ,B为矩阵

共有三种方法求解:

example
clear all
A = [3 -9; 2 4];
b = [-42; 2];
% three methods
x = inv(A)*b       % good
x = A\b            % better
x = linsolve(A,b)  % best

 https://www.mathworks.com/help/matlab/ref/linsolve.html 

syms a b c d e f 
 M = [a b;c d];
 rhs = [e;f];
 z = inv(M)*rhs

>> z = inv(M)*rhs
 
z =
 
 (d*e)/(a*d - b*c) - (b*f)/(a*d - b*c)
 (a*f)/(a*d - b*c) - (c*e)/(a*d - b*c)
 
>> z = M^-1*rhs
 
z =
 
 (d*e)/(a*d - b*c) - (b*f)/(a*d - b*c)
 (a*f)/(a*d - b*c) - (c*e)/(a*d - b*c)
 
>> z = linsolve(M,rhs)
 
z =
 
 -(b*f - d*e)/(a*d - b*c)
  (a*f - c*e)/(a*d - b*c)


>> M = [3 -9;2 4]
>> rhs = [-42;2];

>> z = inv(M)*rhs

z =

   -5.0000
    3.0000

>> z = M^-1*rhs

z =

   -5.0000
    3.0000

>> z = linsolve(M,rhs)

z =

    -5
     3

  

上一篇:2021-01-09


下一篇:【Leetcode】NO.1716 计算力扣银行的钱(Python)【打卡】