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

请教 符号运算中,是否可在结果中输出带诸如N的标号或脚标?

[复制链接]
发表于 2011-1-12 21:35:04 | 显示全部楼层 |阅读模式 来自 上海
各位大虾,请问在各个软件的符号运算中,是否可得到诸如P+(2)(2)P+...+(N-1)(S-1)P+(N)(S)P这种形式的结果?

也就是说,诸如级数的项数i=1..N这种,软件大多要求N要给定一个确切的数值,但我们在推导表达式时,是要将N的写法保留的。

当然,对待一个简单的问题,我们可以将N取一个确定的数值,从结果中再“翻译”回来。如N=5,则若N作为脚标的话,遇到脚标5,则可认为是N,如P5认为是PN。但是,如果脚标是4,则认为是4呢,还是N-1呢?若结果比较简单,可以比较明确地看出规律,则可试试看,若结果非常庞杂,则会遇到困难。

而且N参与系数计算时,若结果系数是10,则是1+2+3+4呢还是2*5呢?
即对N=5,是:
1+2+3+4?
1+2+3+(N-1)?
(N-4)+(N-3)+(N-2)+(N-1)?
(N-3)*(N)?

小弟刚刚开始学习数学软件,也许上述已经可以很好地在数学软件中解决了,只是我尚未学到。目前任务紧迫,苦于速成,感觉很多问题比较着急。

恳请大家不吝指导,非常感谢!!

小弟在maple版中也发了同样的帖子,主要是求解心切,恳请版主谅解我的重复发问,多谢!!
发表于 2011-1-12 22:00:36 | 显示全部楼层 来自 黑龙江牡丹江
Simdroid开发平台
不知所云~~~  感觉你欠缺的不是数学软件知识,而是语言表达能力
回复 不支持

使用道具 举报

 楼主| 发表于 2011-1-13 12:48:20 | 显示全部楼层 来自 上海
多谢总版主批评!
其实也是由于对软件本身学习不够,所以没有说到点子上。下面举例说一下吧:

矩阵[A]和[B]
[A]   (N+1)*(S+1)矩阵:
P(00) P(01)  ...  P(0S)
P(10) P(11)  ...  P(1S)
...      ...       ...  ...
P(N0) P(N1) ...  P(NS)

[B]   (S+1)*(N+1)矩阵:
Q(00) Q(10)  ...  Q(N0)
Q(01) Q(11)  ...  Q(N1)
...      ...       ...  ...
Q(0S) Q(1S) ...  Q(NS)

求解矩阵相乘[A][B]

上述矩阵中元素P(ij)和Q(ij)(i=0~N,j=0~S),分别是某离散的函数值。其下标并非是在矩阵中的元素标号,如i,j均为从0开始,且B矩阵中Q(ij)的下标j其实是沿矩阵的行数变化的。

1.元素名称P(N0) P(N1) ...  P(NS)是否可通过某操作自动生成?即在矩阵中,脚标保留字符N和S,而N和S不赋具体数值。
简言之,就是如同我们书面书写公式中P0, P1...PN类似。

2.两矩阵相乘[A][B],比如所得(1,1)元素应为P(00)Q(00)+P(01)Q(01)+...+P(0S)Q(0S),即SUM P(0i)Q(0i) (i=0,1...S)
软件是否可得出这样的省略号或加和形式的表达?(S不是具体数值)

当然,针对上述(N+1)*(S+1)和(S+1)*(N+1)矩阵,我们可以给N和S以确切的数值,用软件自动生成以符号表述的矩阵,如取N=5,S=6
则可生成A(6x7矩阵,元素用a(i,j)),B(7x6矩阵,元素用b(i,j))
则矩阵A中元素a(6,7)即对应P(NS)
则矩阵B中元素b(7,6)即对应Q(NS)
则在计算结果中可以按照这个原则将a(i,j)翻译回P(ij),将b(i,j)翻译回Q(ij)

但是,对a(3,7),相当于P(2,6),则是P(N-3,S)还是P(2,S)呢?即,是从后往前数还是从前往后数呢?

----------------------------------------------------------------------
类似地,如果在算式中,N,N-1...作为系数,如

[1*P(1)+2*P(2)+...+(N-1)*P(N-1)+N*P(N)] * [1*Q(1)+2*Q(2)+...+(N-1)*Q(N-1)+N*Q(N)]

即[sum i*P(i)] * [sum i*Q(i)] ,i=1,2...N

展开后,最后一项为(N*N)*P(N)*Q(N),前面一项(N-1)*N*P(N-1)*Q(N)

如果可以得到带字符'N'的结果则比较好,如果N必须指定为确定的数值,则(N-1)*N最终就显现为一个数,而不是(N-1)*N的形式

罗嗦了这么多,劳烦大家了,主要是我任务较紧,不得不力求速成,后面时间宽裕我会努力学习软件的。

也许这些问题已经在软件中很容易实现,只是我没有学到,恳请各位不吝赐教,非常感谢!!
回复 不支持

使用道具 举报

 楼主| 发表于 2011-1-13 15:45:15 | 显示全部楼层 来自 上海
再次坦言我是由于任务紧迫而发问这样可能比较浅薄的问题的,如果后面有时间,我会认真学习软件。

也坦言由于心情迫切,同样的问题我在maple、matlab和mathematica版面都发了,收到过指点,也收到过批评,非常感谢各位!

如果各位高手觉得我的问题过于浅薄,请大可不必为此而有任何情绪,恳请您短短写下几句指点。

简言之,我就是想了解我这个问题在数学软件中
1. 是否可行?
2. 属于软件中哪一部分的功能?

然后,我可以参照您的指点,迅速作出决定是否使用软件,使用哪款软件。如何使用,我会自己努力去学习的。

再次感谢!!
回复 不支持

使用道具 举报

发表于 2011-1-13 16:26:59 | 显示全部楼层 来自 北京
3#问题1:参见sprintf或者num2str以及eval、assignin命令。
3#问题2:在软件里搞省略号?这种极品活儿应该不属于MATLAB,属于mathtype。
说了一堆,怎么总感觉就是个数学推导,猜测如果没错,这该是人脑子干的工作,和机器、软件没什么关联。
回复 不支持

使用道具 举报

 楼主| 发表于 2011-1-13 17:03:01 | 显示全部楼层 来自 上海
多谢bainhome回复!!

的确就是与数学推导相关的事情,主要是我面临的数学推导虽说道理上很简单,但推导比较繁杂,这里只是举例提了一下。

最近我也就这个问题和几位老师讨论过,虽说计算机并非总能完全反映人的思维过程,但矩阵简单运算这种事情,本质上就是在遵循一个所谓的“规则”。

我的浅薄认识(恳请大家批评指正):对一个包含省略号的表达,省略号所代表的,是一个“规则”。

这样,对1,2...N,这种数列,我们需要的可能仅仅是3个元素+1个规则。比如这里的规则可以是“整数,从1至N,步长1”。当然这是编程中极其常用的i=1 to n。只是,n通常需为确定的数值,即在运行程序时,需要申请确定的内存空间。这些我只是提一下,大家肯定比我这个新手更熟悉得多。

但是,如果对1,2...N,虽说N不确定,但规则确定。是否就可以用“1,N,步长为正整数1”这样3个元素就可以表述了呢。即需申请3个元素的空间,使用中配合“规则”即可。

我是很想了解软件是否可以模拟这种思维方式,那样的话推导就会方便不少,而且后期修改时,应对的效率也会较高。如果不可以模拟,那就算了,我再想其它办法。

多谢了!!
回复 不支持

使用道具 举报

发表于 2011-1-13 17:34:42 | 显示全部楼层 来自 河北廊坊
你说了这么多,我还是不明白lz要干什么,对于一般的问题来说,只要是机械性的重复劳动,Matlab就可以做,我感觉你说的好像是字符串的处理的内容
麻烦你举个小例子,说清楚,已知是什么,要得到什么样的结果,大家可以试一试
回复 不支持

使用道具 举报

 楼主| 发表于 2011-1-13 21:32:27 | 显示全部楼层 来自 上海
我的根本想法就是,是否可以完全实现公式推导的过程,即计算结果的表达式中,无论是系数还是变量的下标,都是包含字符'N'的
我的问题仍然是:在最终计算式中包含字符‘N’
1.是否可以实现?
2.与软件的哪一部分内容相关?
提问的目的:
第一个问题,我决定是否使用软件;第二个问题,我如何去学习这款软件。
举例:
(1)
矩阵表示的线性方程组
[C]{x}={b}
其中,[C]~N x N方阵;{x}~N个元素的向量;{b}~N个元素的向量
求解{x}
是要得到向量中x(N)的表达式,但是,N不是给定的数值
比如,若给定N=5,则是为了求x(5)
但是,如同我们通常所述的公式一样,把字符‘N’写在最后x(N)的表达式中,是否可以做到?
(2)
我们常常有个写法
向量{x1,x2...xN}
如果N取确定的数,则对{x1,x2,x3}、{x1,x2,x3,x4}、{x1,x2,x3,x4,x5}进行符号运算,目前数学软件可以进行
但是,是否可以操作广义上的N维向量{x1,x2...xN}?即N不是具体的数值
再比如,通常计算机语言中,定义数组的时候,如Array[m,n],m和n都必须是确定的数值,如3,4,5 。因为要申请确切的内存空间。
但是,是否有数学软件可以处理Array[m,n],m,n不给定确切的数值。当然,如果按照上述数组的处理方式,肯定是不允许的,因而,对待这种问题估计要用另一种思路。
(3)
多项式
[1*P(1)+2*P(2)+...+(N-1)*P(N-1)+(N)*P(N)] * [1*Q(1)+2*Q(2)+...+(N-1)*Q(N-1)+(N)*Q(N)]
如果我们要写其展开式的表达式,则可写为:
1*1*P(1)*Q(1) + 1*2*P(1)*Q(2) + 2*1*P(2)*Q(1) +...+ (N-1)*N*P(N-1)*Q(N) + N*(N-1)*P(N)*Q(N-1) + N*N*P(N)*Q(N)
也就是说,我们是要写出这种包含字符'N'的广义的表达式,也就是我们通常所用的“计算公式”
而不是给定N值,比如N=2之后,得到具体的算式:
1*1*P(1)*Q(1) + 1*2*P(1)*Q(2) + 2*1*P(2)*Q(1) + 2*2*P(2)*Q(2)
这样做,并非是在无理取闹(请允许我自嘲,呵呵),而是为了推导广义的计算公式的需要
因为,我们的计算表达式是要在系数和下标中都包含字符N的
而如果计算过程简明、有规律且项数较少,我们甚至可以将N赋一个确定的数值,然后根据得到的算式再往回“翻译”
比如上面N=2,则遇到2*2*P(2)*Q(2),我就写作 N*N*P(N)*Q(N)
这是在项数较少,且我自己知道其计算过程的情况下,可以这样往回翻译,但是,计算机会直接给一个 4*P(2)*Q(2),如果我不去理顺计算过程,则这个‘4’,会是:
N*N ?
2*2 ?
(N-1)*(N+2) ?
N+N ?
请注意,这里N=2为前提时,N*N可以等于2*2,但若N=3呢,N*N不再等于2*2,但2*2仍然要在计算式中出现。
因而,我认为当需要推导广义的表达式时,在结果中系数、下标包含字符N是必要的
但是,软件是否可以实现,我就不知道了。
不知道我有没有表述清楚。
这个问题困扰了我两天了,在论坛里得到许多热心帮助,也得到过批评甚至不算善意的批评。
无论如何,我是满怀热情来到论坛求助的,拜各位高手,也许您的寥寥几句,便足以指点迷津。

再次感谢!!

7# qibbxxt
回复 不支持

使用道具 举报

发表于 2011-1-13 22:28:58 | 显示全部楼层 来自 北京
看了三个版块中你发的帖子,至目前为止没见到“不算善意”的批评,论坛里能被批评已经算是万幸:至少还有人搭理你,很不错了。
目前可以做符号计算的引擎有Maple、Mathematica、mupad、Mathcad等几个,但想实现你的想法,甚至还要通用化,我个人觉得这几乎是不可能的。就算是Mathematica新推出的那个所谓的自然语言,在浅薄功利的我眼中,无非就是个沾点儿云计算边的大型浏览器,离成功尚有很大距离。
符号推导的规模一般不会太大太灵活。作为一个很多年多个数学软件的使用者,且自认数学水平还不算极度白痴的用户,见到您如此洋洋洒洒的文字,却几乎没有看懂这到底想实现什么,不能不说比较尴尬。
所以可以肯定地得出结论:你总想让计算机软件去无条件适应你,而没想过自己先去了解和适应计算机软件,这种希望速成的情况,大多杯具结局,如果坚持,则有两种可能结果:
1.仍然会半途而废并妥协于无软件可以实现自己意图之事实
2.以无上智慧,开计算机人工智能推导之先河,完成一种全新的数学软件编制思路的提炼
对于这两种可能,第一条路属于正常,我们爱莫能助并扼腕叹息;第二条路则使我们见证并膜拜了一位大师下山前的首次思维闪光。
以上全为真心所言,并无一丝一毫讥讽的意义,请理解。
最后,假如真想学一个符号计算软件,个人以为Mathematica比较合适,因为你如果希望实现一个意图,首先不要闭门造车,至少得知道现在别人是怎么干的。

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2011-1-14 15:03:26 | 显示全部楼层 来自 上海
再次感谢bainhome的指点,从您的回复中,我至少了解到了:
1. 我的想法不可以实现
2. 进而我4楼的第二个问题也得到解决。

我两天以来的发问甚至争辩,得到了确切的答复

至于“通用化”的实现在目前软件是否可行,我本人很清楚,就我个人狭小的知识积累中,不可以实现。

但是,我提问的目的也在于:
求证:是现状的确不可以实现,还是仅仅由于我本人知识积累不够,而别人已经做得很好了

因而,我来到论坛向各位巨人请教,力求看得更远

至于“至少还有人搭理你,很不错了。”我有两方面认识:
(1) 互联网论坛是一个大家主动获取信息和交流的平台,任何自然人坐在计算机前,都保留主动浏览帖子或者关闭窗口的权利,任何人都保留回复或者不回复的权利。从这层意义上讲,我的确是非常幸运的,至少在提问两天后,得到了解答。

(2) 贵论坛或是贵版面的高手们,的确很“牛”!

几点自我解释:
(1) 我在论坛中的这几次讨教,完全是就技术论技术,没有任何感情色彩。如果大家回复批评,我欢迎,但我最终需要的是针对问题本身的答案。

(2) 关于发问和求知,相信我在自己的帖子中也多次提到这次发问的缘由,也多次表示我仅仅希望了解“yes or no”,我也会进一步学习,在自己多年的学习经历中,我不可能不明白这些道理。

(3) 中国这么大,不存在离开谁就办不了的事情,哪怕再大的事情。拿到世界范围,就又是一番景色。我joy2000多次亲身经历,我自勉谦虚、谨慎、淡定
回复 不支持

使用道具 举报

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

本版积分规则

Simapps系列直播

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

GMT+8, 2024-10-5 03:23 , Processed in 0.050263 second(s), 17 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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