MATLAB化简矩阵为简化阶梯阵、使用分数(或小数)表示结果

使用MATLAB对矩阵进行初等行变换:
输入矩阵:

>> M = [0 3 6 9; -1 1 -2 -1]

M =

     0     3     6     9
    -1     1    -2    -1
    
>> A=M  

A =

     0     3     6     9
    -1     1    -2    -1
    
>> A([1,2],:)=A([2,1],:)  //交换A矩阵的第一列第二列位置

A =

    -1     1    -2    -1
     0     3     6     9

>> A(2,:)=A(2,:)/3      //把A的第二行元素除以3

A =

    -1     1    -2    -1
     0     1     2     3

>> A(1,:)=A(1,:)-A(2,:)  //A的第一行元素减第二行元素

A =

    -1     0    -4    -4
     0     1     2     3

>> A(1,:)=-A(1,:)  //A的第一行元素乘以-1
A =

     1     0     4     4
     0     1     2     3

//这样A就变成了简化阶梯阵了。

给出线性方程组的增广矩阵,求其通解: 可以使用函数rref(矩阵)把矩阵化简为简化阶梯阵:

>> B=[3 -4 2 0; -9 12 -6 0;-6 8 -4 0]    //设置矩阵

B =

     3    -4     2     0
    -9    12    -6     0
    -6     8    -4     0
    
>> rref(B)   //直接使用矩阵化简函数 rref(矩阵) 即可完成初等行变换。

ans =

    1.0000   -1.3333    0.6667         0
         0         0         0         0
         0         0         0         0


如上面的例子A:

>> rref(A)

ans =

     1     0     4     4
     0     1     2     3

使用分数(式)形式表示结果:命令format rat—如果想转回小数表示,使用命令format long;如果觉得小数位数太多了可以用format short
另外,紧凑形式:format compact,减少空白行的现实模式;长尾数的科学计数法表示:format long e,科学计数法表示,保留15位尾数。

>> format rat
>>  B=[3 -4 2 0; -9 12 -6 0;-6 8 -4 0]

B =

       3             -4              2              0       
      -9             12             -6              0       
      -6              8             -4              0       

>> ref(B)

ans =

       1             -4/3            2/3            0       
       0              0              0              0       
       0              0              0              0   
  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值