怎样将嵌套数组中的元素转换为一个矩阵?
mathcad吧
全部回复
仅看楼主
level 2
87453193
楼主
2014年06月16日 04点06分
1
level 12
朱老剑客
首先把你现在矩阵中的0位都改为矩阵(0 0),然后疯狂augment和stack,直到ZTK成为一个没有嵌套矩阵的矩阵为止。
2014年06月16日 05点06分
2
87453193
谢谢解答。还有一个问题想请教,我在Mathcad中计算出一个矩阵,按照理论,应该是奇异矩阵,求逆矩阵时应该会提示,但是Mathcad并未提示,且求逆矩阵后是明显错误的。但是,按照“乘大数法”处理后,奇异矩阵应该不再奇异,但是这时候又提示矩阵奇异,无法计算其逆矩阵,这应该怎么解决呢?
2014年06月17日 10点06分
level 15
月城翁
如果可能尽量避免嵌套矩阵;如果不能避免,可试一试下面的程序板函数(刚编好的,可能还有问题):
2014年06月16日 16点06分
3
level 15
月城翁
还可以省去一行语句:
2014年06月16日 16点06分
4
level 12
100zpz
2014年06月16日 22点06分
5
87453193
谢谢老先生耐心解答。还有一个问题想请教,我在Mathcad中计算出一个矩阵,按照理论,应该是奇异矩阵,求逆矩阵时应该会提示,但是Mathcad并未提示,且求逆矩阵后是明显错误的。但是,按照“乘大数法”处理后,奇异矩阵应该不再奇异,但是这时候又提示矩阵奇异,无法计算其逆矩阵,这应该怎么解决呢?
2014年06月17日 10点06分
朱老剑客
回复 87453193 :上传源文件。
2014年06月17日 11点06分
level 15
月城翁
佩服,十分佩服!ZPZ老师分析问题,抽取脉络,算法,结构都是超级水平。程序写得如此精炼,学生五体投地。值得我仔细揣摩推敲。谢谢!
2014年06月16日 23点06分
6
level 12
朱老剑客
真精彩!
但我还是被“普遍性”或者“任意性”困扰,比如说多级嵌套,以及嵌套维数不一致这样的。
楼主想求矩阵的逆,不知道是否确实是想求整个大矩阵的逆呢?还是每个嵌套矩阵的逆呢?
从你的贴图里看,大矩阵内的各个元素维数是不一样的,维数不一样,是求不了逆的。
如果想求每个嵌套矩阵的逆,直接用向量化符 ctrl - 就可以了。但你这里有0,需要处理一下,否则1/0无意义。
我上面这个矩阵是随便造的,奇异阵,解套之后没有逆,只有最小二乘解出来的伪逆阵。
用向量化符也只能处理一级嵌套矩阵,多级的也没戏。
2014年06月17日 00点06分
7
level 15
月城翁
朱老师的算法,考虑了非矩阵元素。我觉得,朱老师的算法,比我前面的算法好。
2014年06月17日 10点06分
10
月城翁
经测试,两种方法的计算用时相当。但是朱老师的算法可读性更好,程序也简短些。
2014年06月17日 10点06分
level 12
朱老剑客
楼主,你上传的工作表ZTK1确实是奇异阵,有什么问题么?
2014年06月17日 12点06分
11
level 12
朱老剑客
月城,我有个想法,不知你是否感兴趣,就是在MC吧里一点点的发一些类似count()这样的小程序,这些本应该有,但MC却没有的,能够给大家提供便利,又不是很难的通用小程序,提供源文件下载。这样日积月累,国内也就有了自己的MC自定义函数库了。
题目前缀【MC实用自定义函数】,在源文件中说明程序的用法、适用范围,必要的时候给出程序的注释。
说不定会有其他吧友参与进来,形成一股国内的MC力量。
而且我们还可以通过这个锻炼自己编程;通过讨论优化程序,能够更多的加深对程序的理解。
到时候吧友只要吧内搜索“自定义函数”,就可以浏览到所有的咱们自创的小程序。同时也提高了MC吧的网络价值哈!
2014年06月18日 16点06分
15
level 15
月城翁
从您出题开始,这几天我已经编了几个实用的程序了。帖子中凡是我编的程序,最后一个如果没有更新,就是暂定稿了。如果要写说明,就太麻烦了。
借用您的话,我是把编程作为一种“玩儿”。不过,比起ZPZ老师来,我只能是个初学者,还差得太多。为了提高自己的编程技巧,所以,我主要精力放在了学习研究inside中的编程,以后还有作图部分。因为英文吃力,进度很慢。我想,等我完成了我的学习计划,再回头来编这些常用的小程序,会更精练。到那时我乐意效劳。当然参考前人的经典,很重要。所以,还必须事先看一看高人的经典。像ZPZ老师,我是十分敬仰、佩服的。可惜他的经典都在“仿真科技论坛”。我需要看的东西太多,一时还没有精力去那个论坛注册。以后会去那儿的。
晚安!下网了。
2014年06月18日 16点06分
16
1