function [miu_tau] = CARE_SAV(beta,Yt,t,miu_1)
if t > 1
miu_tau =beta(1)+beta(2) * ...
[CARE_SAV(beta, Yt, t-1, miu_1)]+beta(3)*abs(Yt(t-1));
else
miu_tau = miu_1
end
大家好,我是Matlab的新手,只是尝试编写一个非常简单的递归函数。通过指定所有变量,该函数运行良好。但是我想在运行函数时存储每个miu_tau的值。我从另一个答案中尝试了以下内容
function [miu_tau] = CARE_SAV(beta,Yt,t,miu_1)
miu_tau={}
if t > 1
miu_tau =[miu_tau; beta(1)+beta(2) * ...
[CARE_SAV(beta, Yt, t-1, miu_1)]+beta(3)*abs(Yt(t-1))];
else
miu_tau = [miu_tau;miu_1]
end
它没有用。有人能告诉我如何在这里存储递归函数的值吗?
非常感谢。
答案 0 :(得分:0)
我自己想通了。通过在这里添加一个全局变量,我可以存储通过递归过程计算的所有值。
JSON.parse
答案 1 :(得分:0)
function [miu_tau] = CARE_SAV(beta,Yt,t,miu_1)
miu_tau=[];
if t > 1
miu_tau =[miu_tau; beta(1)+beta(2) * ...
[CARE_SAV(beta, Yt, t-1, miu_1)]+beta(3)*abs(Yt(t-1))];
else
miu_tau = [miu_tau;miu_1]
end
这应该有效。而不是单元格,使用矩阵表示法。