MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB数学相关] 【求助】如何将a=M*b中向量a、b内的元素对调 (https://www.labfans.com/bbs/showthread.php?t=11988)

bohr1982 2010-08-21 22:09

【求助】如何将a=M*b中向量a、b内的元素对调
 
问题的表示如下:
[a1 b1 a2 b2]' = M1*[a3 b3 a4 b4]';
[a1 a2 a3 a4]' = M2*[b1 b2 b3 b4]';
M1---?--->M2

M1要经过什么样的矩阵操作才能变换成M2
希望大家给点提示!
谢谢!

oooivy 2010-08-22 23:16

回复: 【求助】如何将a=M*b中向量a、b内的元素对调
 
由式子求出M1,M2,TEMP=M2/M1,M2=M1*TEMP

未注册 2010-09-14 10:56

回复: 【求助】如何将a=M*b中向量a、b内的元素对调
 
谢谢你的提示。不过好像行不通,就我看来没法实现求M1
和M2.

bohr1982 2011-02-16 16:36

回复: 【求助】如何将a=M*b中向量a、b内的元素对调
 
这么长时间一直没有回复真是对不起!我琢磨出处理方法,和大家分享一下!
[B]题设:[/B]
[B]a[/B] = [a1 b1 a4 b4]'
[B]b[/B] = [a2 b2 a3 b3]'
[B]c[/B] = [b1 b2 b3 b4]'
[B]d[/B] = [a1 a2 a3 a4]'
[B]a[/B] = [B]M1[/B]*[B]b[/B]
[B]求:[/B] 一个[B]M2[/B]使[B]c[/B] = [B]M2[/B]*[B]d[/B]

[B]解:[/B]
[b1 0 0 b4]' = [0 1 0 0;0 0 0 0;0 0 0 0;0 0 0 1]*[B]a[/B]
_________ = [0 1 0 0;0 0 0 0;0 0 0 0;0 0 0 1]*[B]M1[/B]*[B]b[/B]
[0 b2 b3 0]' = [0 0 0 0;0 1 0 0;0 0 0 1;0 0 0 0]*[B]b[/B]
将上面两式相加,得
[b1 b2 b3 b4] = {[0 1 0 0;0 0 0 0;0 0 0 0;0 0 0 1]*[B]M1[/B]+[0 0 0 0;0 1 0 0;0 0 0 1;0 0 0 0]}*[B]b[/B]
同样的处理方法得到
[a1 a2 a3 a4] = {[1 0 0 0;0 0 0 0;0 0 0 0;0 0 1 0]*[B]M1[/B]+[0 0 0 0;0 1 0 0;0 0 0 1;0 0 0 0]}*[B]b[/B]
将上两式想除得到
[B]M2[/B] = {[0 1 0 0;0 0 0 0;0 0 0 0;0 0 0 1]*[B]M1[/B]+[0 0 0 0;0 1 0 0;0 0 0 1;0 0 0 0]}/{[1 0 0 0;0 0 0 0;0 0 0 0;0 0 1 0]*[B]M1[/B]+[0 0 0 0;0 1 0 0;0 0 0 1;0 0 0 0]}


所有时间均为北京时间。现在的时间是 06:32

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.