我想求一个递推方程,其中函数k的所有三个参数都是整数且在0和n之间。
RSolve[{k[n, xp, x] == k[n - 1, n - 1, x]/k[n - 1, xp, n-1], k[0, xp, x] == k0[xp, x]}, k[n, xp, x], {n, xp, x}]
不幸的是,我收到了这个函数的错误:
RSolve::conarg: The arguments should be ordered consistently.
在等式的右边,我使用n-1作为第二个参数似乎有一个问题。这是正确的,但Mathematica不喜欢这样。
你有解决这个问题的方法吗?请注意,我写的等式是用于显示问题的虚拟等式,实际等式更复杂。
提前致谢。
此致 西尔维奥
答案 0 :(得分:1)
收回我的不良评论,我们可以手工解决这个问题:
ClearAll[k]
k[n_, xp_, x_] := k[n - 1, n - 1, x]/k[n - 1, xp, n - 1]
k[0, x_, xp_] = c0[{x, xp}]
给出数字n的结果:
k[5, y, z] -> (c0[{0, z}] c0[{4, 0}])/(c0[{0, 4}] c0[{y, 0}])
通过检查,通用结果是:
k[n, xp, x] ==
k[0, 0, x]/ k[0, 0, n - 1]
( k[0, n - 1, 0] / k[0, xp, 0] )^((-1)^(n + 1))
所以你需要所有那些k [0,v,0]和k [0,0,v]的初始值
我对RSolve并不熟悉,如果有一些技巧可以哄骗它自动生成它。