我遇到类似下面的问题:
A(n-1) = n*A(n) + A(n+1)
鉴于
A(20) = 0
A(19) = beta
如果
计算beta
A(0) = 0.5
所以例如我会得到
n = 19, A(18) = 19*beta
n = 18, A(17) = 18*19*beta - beta
我的问题是,可以代替手动扩展,我可以将每个A(n)
值存储在矩阵中,并根据beta进行扩展,以便根据{{{{}}得到最终的A(0) = ...
函数1}}。
是否可以使用匿名函数?
答案 0 :(得分:0)
这将使你早在A(1)。
syms b;
A = [repmat(0,[1,18]),b,0]
for n = 19:-1:2
A(n-1) = n*A(n) + A(n+1);
end
然后,您需要A(1)
,A(2)
以及A(0)
的已知值,才能创建solve
/ subs
所需的最终等式。
答案 1 :(得分:0)
您无需使用变量计算此值。由于一切都是线性的,A(19)= beta的序列与A(19)= 1的序列相同,然后每个序列元素乘以β。
因此,从A(20)= 0和A(19)= 1计算A(0)并设置β= 0.05 / A(0)。