找回密码
 注册
Simdroid-非首页
查看: 68|回复: 6

A=XB,求X

[复制链接]
发表于 2012-6-10 13:51:48 | 显示全部楼层 |阅读模式 来自 陕西西安
A=XB

A,B均为列向量,求矩阵X,谢谢
发表于 2012-6-11 09:13:00 | 显示全部楼层 来自 北京
Simdroid开发平台
x=A/B,A,B自己输入值就行了

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2012-6-11 10:08:32 | 显示全部楼层 来自 山东烟台
xianguo 发表于 2012-6-11 09:13
x=A/B,A,B自己输入值就行了

这种算法为什么能算出数来呢?
试了一下
a =

     0     1     2     3     4     5     6     7     8     9    10

>> b=1:11

b =

     1     2     3     4     5     6     7     8     9    10    11

>> a/b

ans =

    0.8696

这是怎么算出来的?
回复 不支持

使用道具 举报

发表于 2012-6-11 10:23:58 | 显示全部楼层 来自 北京
本帖最后由 xianguo 于 2012-6-11 10:24 编辑
zccbest 发表于 2012-6-11 10:08
这种算法为什么能算出数来呢?
试了一下
a =


A=[1;2;3];
B=[4;5;6];
X=A/B

X =

         0         0    0.1667
         0         0    0.3333
         0         0    0.5000
这个返回的是一个解,但是我想究其原因还是因为本身给的A=XB解是不唯一的
回复 不支持

使用道具 举报

发表于 2012-6-11 10:27:35 | 显示全部楼层 来自 北京
zccbest 发表于 2012-6-11 10:08
这种算法为什么能算出数来呢?
试了一下
a =

对于行向量,你给的a=bx是无实数解的,返回的可能是一个随机数吧:(

点评

不是随机数,是b'*x=a'最小二乘解的转置。  发表于 2012-6-11 10:32
回复 不支持

使用道具 举报

发表于 2012-6-11 10:30:14 | 显示全部楼层 来自 北京
本帖最后由 rocwoods 于 2012-6-11 10:31 编辑
zccbest 发表于 2012-6-11 10:08
这种算法为什么能算出数来呢?
试了一下
a =


帮助文档中的几句话:
  1. If B is an m-by-n matrix with m ~= n and A is a column vector with m components, or a matrix with several such columns, then X = B/A is the solution in the least squares sense to the under- or overdetermined system of equations XA = B.
  2. Note   Matrix right division and matrix left division are related by the equation B/A = (A'\B')'.
复制代码
上面的a/b应该是b'*x=a'的解x的转置,也就是b'*x=a'最小二乘解的转置。
回复 不支持

使用道具 举报

发表于 2012-6-11 10:33:24 | 显示全部楼层 来自 北京
rocwoods 发表于 2012-6-11 10:30
帮助文档中的几句话: 上面的a/b应该是b'*x=a'的解x的转置,也就是b'*x=a'最小二乘解的转置。 ...

原来如此,呵呵,没有好好看帮助文档。谢谢版主解答
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-3 06:52 , Processed in 0.037353 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表