如何用Mathematica实现比如现在有这样一个式子:Product[Sum[f[ j ]/x[ i ]],{j, n}]], {i, k}] {c[1] (-1 + c[2]).(-n+1+c[n]} 当k=2,n=2时,上面的式子为 (f[1]/x[1]+f[2]/x[1]) (f[1]/x[2]+f[2]/x[2]) {c[1] (-1 + c[2])}

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/26 04:44:45
如何用Mathematica实现比如现在有这样一个式子:Product[Sum[f[j]/x[i]],{j,n}]],{i,k}]{c[1](-1+c[2]).(-n+1+c[n]}当k=2,n=2时

如何用Mathematica实现比如现在有这样一个式子:Product[Sum[f[ j ]/x[ i ]],{j, n}]], {i, k}] {c[1] (-1 + c[2]).(-n+1+c[n]} 当k=2,n=2时,上面的式子为 (f[1]/x[1]+f[2]/x[1]) (f[1]/x[2]+f[2]/x[2]) {c[1] (-1 + c[2])}
如何用Mathematica实现
比如现在有这样一个式子:
Product[Sum[f[ j ]/x[ i ]],{j, n}]], {i, k}] {c[1] (-1 + c[2]).(-n+1+c[n]}

当k=2,n=2时,上面的式子为
(f[1]/x[1]+f[2]/x[1]) (f[1]/x[2]+f[2]/x[2]) {c[1] (-1 + c[2])} (1式);

程序的大概思路是这样的:

1、让(1)式中的 (f[1]/x[2]+f[2]/x[2]) 先与 {c[1] (-1 + c[2])}相乘(即从后向前乘)结果为

(f[1]/x[2]) c[1] (-1 + c[2]) + (f[2]/x[2]) c[1] (-1 + c[2]) (2式);

(注: c[1] (-1 + c[2]) 这项相乘的时候不展开,保持原来的形式)

2、接下来,以(2式)中的第一项 (f[1]/x[2]) c[1] (-1 + c[2]) 为例,
f[1]与 c[1] (-1 + c[2]) 相乘,c[1]就变成(-1+c[1]) ,

即 (f[1]/x[2]) c[1] (-1 + c[2]) =(f[1]/x[2]) (-1+c[1] )(-1 + c[2]) , ( 3式);
即有一个f[1]则 c[1]降1,

同理(2)式中的第二项
(f[2]/x[2]) c[1] (-1 + c[2]) = (f[2]/x[2]) c[1] (-2+ c[2]) (4式);
即有一个f[2]则 c[2]降1,

3、根据 2 的描述可知,(2式)的输出为
(f[1]/x[2]) (-1+c[1] )(-1 + c[2]) +(f[2]/x[2]) c[1] (-2+ c[2]) (5式);

但是对于c[1]、c[2]减去相同系数的项要刨除掉,即(-1+c[1] )(-1 + c[2])
这一项去掉,那么(5)式变为
(f[2]/x[2]) c[1] (-2+ c[2]) (6式);

4、然后再将(1)式中的 (f[1]/x[1]+f[2]/x[1]) 与(6式)相乘,
仍要遵循1、2、3中的规律.
(f[1] /x[1] +f[2]/x[1]) (f[2]/x[2]) c[1] (-2+ c[2])
=(f[1]/x[1]) (f[2]/x[2])c[1] (-2+ c[2]) +(f[2]/x[1]) (f[2]/x[2])c[1] (-2+ c[2])
= (f[1]/x[1]) (f[2]/x[2])(-1+c[1])(-2+ c[2]) +(f[2]/x[1]) (f[2]/x[2])c[1](-3+ c[2])

所以,对于(1)式最后的输出为
(f[1]/x[1])(f[2]/x[2]) (-1+c[1]) (-2+ c[2]) +(f[2]/x[1])(f[2]/x[2]) c[1] (-3+ c[2])

当n、k取较大的值是,情况要复杂些,但是仍按照上面的规律,从
Sum[f[ j ]/x[ k ],{ j,n}] 到Sum[f[ j ]/x[1],{ j,n}] 依次与{c[1] (-1 + c[2]).(-n+1+c[n] } 相乘.f[ j ]出现一次次与其相乘的c[ j ]就减一;对于 c[j]只要在同一项中有两个c[ j ]减去相同的系数,这一项就去掉..

如何用Mathematica实现比如现在有这样一个式子:Product[Sum[f[ j ]/x[ i ]],{j, n}]], {i, k}] {c[1] (-1 + c[2]).(-n+1+c[n]} 当k=2,n=2时,上面的式子为 (f[1]/x[1]+f[2]/x[1]) (f[1]/x[2]+f[2]/x[2]) {c[1] (-1 + c[2])}
嗯,大致能感觉到你在思路改进上的努力,但是我想说的是,我的感觉是——我的直觉是,你的思路上了歧途了,这种内置函数一个也用不进去,模式匹配不好用,要在各种步骤上阻碍软件对等式的自动计算,整体透着浓浓的过程式编程的味道的实现思路……用这种思路是没法发挥出Mathematica的力量的.“多项式”关键字下有这么多的内置函数,难道其中就没有你用的上的吗?
此外,需要注意的是,你的要求越是具体(至今为止你对你希望实现的程序的所有步骤都做了十分详细的要求)就越有可能限制答题者的思路,因为,你的要求中的所有步骤可能对你来说都是必要的,可是,在已经答了这么多个你的问题的现在,我不禁想问,这些步骤对你来说都是必要的吗?你需要的是否只是最后的结果?说到底,你想要的结果到底是啥?你问了这么多问题我也没法看出你到底在试图实现什么,你不妨说说你要做的是什么吧,那样对解决问题可能还有点帮助.

如何用Mathematica实现复合函数的反解?比如,知道g[x]的表达式,知道f[g[x]]的最终表达式子,如何求f[x]?在Mathematica上实现 如何用Mathematica作球体 如何用Mathematica实现比如现在有这样一个式子:Product[Sum[f[ j ]/x[ i ]],{j, n}]], {i, k}] {c[1] (-1 + c[2]).(-n+1+c[n]} 当k=2,n=2时,上面的式子为 (f[1]/x[1]+f[2]/x[1]) (f[1]/x[2]+f[2]/x[2]) {c[1] (-1 + c[2])} mathematica解三角方程请问如何用mathematica解这个方程? 分段函数如何用Mathematica求极值 如何用mathematica对隐函数求导 如何用 mathematica 解常微分方程? 如何用 mathematica 生成 1/ f 噪声 mathematica画图问题如何用mathematica画圆锥和圆柱?举个例子,比如圆锥z=x^2+y^2,圆柱x^2+y^2=1 如何使用Mathematica软件求解数独问题?比如要求以下数独问题,如何在Mathematica软件中实现?56_1_______35__8____94_____8______456_57_43_993______1_____14____2__57_______8_96 如何用MATHEMATICA求数列的前n项和 已知一组数据,如何用mathematica模拟函数,并画图 如何用mathematica作出三维的x=2图形 如何用Mathematica求一个方程的反函数 如何用Mathematica编写1+2+3+4.+1000? 如何用软件(Mathematica或Maple)画图中的曲面?如何用软件(Mathematica或Maple)画下图中的曲面? Mathematica中如何求解带有参数递推式的通项公式请问如何用Mathematica求解含有参数的数列递推式?命令是什么?比如a[n+1]=k*a[n],a[1]=2k,其中k是常数. 如何用一个与非门实现非门功能?