端山叶 2021-08-14 21:42 采纳率: 100%
浏览 117
已结题

matlab怎么求AX=B方程组,其中X和B都有未知数,具体方程为上千个方程和等量的未知数

类似A=【1 2 3;4 5 6;7 8 9;】,X=【d1;d2;1;】,B=【1;2;d3】。不要用solve,几千个未知量不现实。

  • 写回答

1条回答 默认 最新

  • joel_1993 2021-08-15 09:54
    关注

    这个很容易的,把矩阵分块就行
    AX = B变成
    A = [A11, A12; A21, A22];
    X = [X1; X2];
    B = [B1; B2];
    按照题主的意思,X1和B2作为未知量,有
    A11 * X1 + A12 * X2 = B1 (1)
    A21 * X1 + A22 * X2 = B2 (2)
    先可以由(1)得到X1:
    X1 = A11 \ ( B1 - A12 * X2);
    然后由(2)求B2
    B2 = A21 * X1 + A22 * X2;

    例子就按题主的来吧,我把A改成正定的!

    
    A = [3,1,1; 0,3,1; 1,1,4];
    A11 = A(1:2, 1:2);
    A12 = A(1:2, 3:end);
    A21 = A(3:end, 1:2);
    A22 = A(3:end, 3:end);
    X2 = [1];
    B1 = [1;2];
    % 要求的未知量
    X1 = A11 \ ( B1 - A12*X2)
    B2 = A21*X1 + A22*X2
    

    最后得到结果为

    X1 =
    
      -0.111111111111111
       0.333333333333333
    
    
    B2 =
    
       4.222222222222222
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏

报告相同问题?

问题事件

  • 系统已结题 8月23日
  • 已采纳回答 8月15日
  • 创建了问题 8月14日

悬赏问题

  • ¥15 Converting circular structure to JSON
  • ¥30 Hyper-v虚拟机相关问题,求解答。
  • ¥15 TSM320F2808PZA芯片 Bootloader
  • ¥45 谷歌浏览器出现开发者工具无法显示已创建的,但您可以调试已部署的代码。 状态代码 404, net::ERR HTTP RESPONSE CODE FAILURE
  • ¥15 如何解决蓝牙通话音频突发失真问题
  • ¥15 安装opengauss数据库报错
  • ¥15 【急】在线问答CNC雕刻机的电子电路与编程
  • ¥60 在mc68335芯片上移植ucos ii 的成功工程文件
  • ¥15 笔记本外接显示器正常,但是笔记本屏幕黑屏
  • ¥15 Python pandas