萍聚社区-德国热线-德国实用信息网

 找回密码
 注册

微信登录

微信扫一扫,快速登录

萍聚头条

查看: 3176|回复: 28

[求助] 做矩阵分块解析运算(证明也解决了,软件是不存在的,更新在3页)

[复制链接]
发表于 2010-10-24 12:56 | 显示全部楼层 |阅读模式
专业问题讨论
有效期至:
专业:

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册 微信登录

x
本帖最后由 orionsnow 于 2011-1-12 19:55 编辑

有什么软件可以做矩阵分块运算的?

mathematica 不行

maple?


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>


Dear Sean,

Thank you very much for the information.

the infor you gaved me is matrix decomposition.

but the one i want to use is block wise matrix decomposition.

maybe i am not make my question not clear



in detail.


here i have a big matrix E, which have 4 blocks

[A,B
C,D]

latex code

E = $\displaystyle \left[\begin{array}{cc} A & B \\ C & D
\end{array}\right]^{-1}$

A, B, C, D are full rank square matrix.

so the block wise inverse E^-1  is

[ S_d, S_d^-1 .B .D^-1,
   ..., ..............]


latex code:

$\displaystyle \left[\begin{array}{cc} S^{-1}_{D} & -S^{-1}_{D}BD^{-1}
\\ -D^{-1}CS^{-1}_{D} & D^{-1} + D^{-1}CS^{-1}_{D}BD^{-1}
\end{array}\right]$



in short,

i what repeat the precedure that listed here by mathematica7. that i
give ABCD, then mathematica inverse the E as a matrix of ABCD.

https://ccrma.stanford.edu/~jos/ ... decompositions.html

thank you again for all the help

Best Regards

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

----------------------------------------------------------------------------

Hello

If a function does not exist in Mathematica, you will have write it using
the already defined functions in Mathematica. As I stated in the previous
email, I do not believe the function you want is a predefined function in
Mathematica. However, defining this function in Mathematica should not be
too difficult.

I have attached a notebook showing how to access the different quadrants of
a matrix and recombine them. This should provide a useful starting point
for writing your function.

If you are not familiar with programming in Mathematica, please read the
documentation on lists and functions:

http://reference.wolfram.com/mathematica/howto/WorkWithLists.html
http://reference.wolfram.com/mat ... iningFunctions.html

If you have any specific questions about how to use the documented
functions in Mathematica while making this program, please let me know.

Sincerely,

Sean Clarke
Technical Support
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2010-10-25 14:10 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2010-10-25 15:44 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2010-10-25 17:19 | 显示全部楼层
本帖最后由 orionsnow 于 2010-10-25 17:27 编辑
matlab
johndoe 发表于 2010-10-25 15:44


谢了,刚才去网上找了下,看到有个 matrix2cell 命令。

可以把一个矩阵分块。 估计还有其他更多命令。 不知道你有没有其他的例子。

不过现在没有matlab 的lience,回头要去找别的同事试验一下。


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

我的问题和下边这个一模一样,我正在看。

http://www.mapleprimes.com/quest ... th-Matrix-In-Matrix

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>



  已解决
matlab矩阵分块与把分块矩阵还原
悬赏分:200 - 解决时间:2008-8-10 17:13

我有一个256*64的矩阵,我要把它分成16*16的矩阵,接着要把这个分好了块的矩阵又可以还原为原256*64的矩阵,请问matlab中该如何编写这个m文件~~谢谢~

提问者: zzyzzm - 三级
最佳答案

A=rand(256,64);

%将A分块
B=mat2cell(A,ones(256/16,1)*16,ones(64/16,1)*16);
%B{i,j}就是所要的分块矩阵

%将分块矩阵合并
C=cell2mat(B)
%C就是合并好的矩阵,即C=A

9
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2010-10-25 17:56 | 显示全部楼层
i am not using matlab for about five years. I think your problem is definitely within matlab's shot. Just try /help cell2mat or whatsoever. But I could also remember that cell2mat has to do with the transforming string into numerical values so pls be careful for that.

but honestly, do you really need any matrix with 256*64 dimensions? any matrix operation will be killed with curse of dimensionality.

sorry, i cannot put in any chinese on this computer and has to conclude this way.

评分

1

查看全部评分

Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2010-10-25 18:15 | 显示全部楼层
i am not using matlab for about five years. I think your problem is definitely within matlab's shot. ...
johndoe 发表于 2010-10-25 17:56

Nein, cell2num sollte den Befehl sein, mit dem eine Umsetzung von String nach numerical erfolgt.

评分

1

查看全部评分

Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2010-10-25 18:37 | 显示全部楼层
本帖最后由 orionsnow 于 2010-10-25 18:38 编辑

谢谢楼上两位的回贴, matlab 我也是以前写毕业论文的时候用过,主要是做的模拟。

到现在也有5,6年没有碰了,不过原理还是记得。关键知道能解决的包和命令上的名字,回头去google 就是了。

1, 256 *64 是百度上的例子

我的问题是4个或者9 个 最多不超过 1000的满秩非稀松阵,不过在特殊情况下是  只有2,3个常数参数的, 比如
diag(1000)+ 0。5 这种的。

然后这4 个阵组成一个2000 的阵。 要求它的逆。目前就在先解决这个简单特例。 因为后边还有其他的运算,觉得不是一下就能行的。 干脆让老板开个项目算了。 要是能保留符号不进行数值结算就最好了,这样可以寻找机会和后边的公式消掉。

2 德语我没有看懂,如果输入不方便的话, 打英语吧。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2010-10-25 20:30 | 显示全部楼层
谢谢楼上两位的回贴, matlab 我也是以前写毕业论文的时候用过,主要是做的模拟。

到现在也有5,6年没有 ...
orionsnow 发表于 2010-10-25 18:37



   我想你的问题应该可以这样解决

AA = [AA1 AA2;BB1 BB2];

其中AA1是左上角的矩阵,AA2为右上角,BB1为左下角,BB2为右下角,

现在机器上没有matlab了,你可以用小点的矩阵先试试看
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2010-10-25 20:37 | 显示全部楼层
本帖最后由 orionsnow 于 2010-10-25 20:44 编辑
我想你的问题应该可以这样解决

AA = [AA1 AA2;BB1 BB2];

其中AA1是左上角的矩阵,AA2为右上 ...
johndoe 发表于 2010-10-25 20:30


我机器上也没有matlab 呢。。。。。。。。。

然后aa 求逆的符号计算是可行的?

我给同事打电话了,他去做了,先搞个4,4 矩阵,过两天看结果。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2010-10-25 20:46 | 显示全部楼层
我机器上也没有matlab 呢。。。。。。。。。

然后aa 求逆的符号计算是可行的?

我给同事打电话了 ...
orionsnow 发表于 2010-10-25 20:37


好啊,事成了刷我们一下
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
您需要登录后才可以回帖 登录 | 注册 微信登录

本版积分规则

手机版|Archiver|AGB|Impressum|Datenschutzerklärung|萍聚社区-德国热线-德国实用信息网 |网站地图

GMT+2, 2024-5-9 11:50 , Processed in 0.105600 second(s), 24 queries , MemCached On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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