我想用MATLAB中的以下方程式计算变量h。什么是正确的写作方式?
.gitignore
答案 0 :(得分:4)
您可以使用diff
来完成此任务,这会消除任何两个元素之间的差异。
z = [1 4 5 7 8 3];
h = [0 -diff(z)];
% 0 -3 -1 -2 -1 5
我们如何决定使用diff
,我们可以轻松写出条款并查看大部分内容取消
h(2) = 1 - h(1) - z(2)
h(2) = 1 - (1 - z(1)) - z(2)
h(2) = 1 - 1 + z(1) - z(2)
h(2) = z(1) - z(2)
答案 1 :(得分:0)
以下代码应该主要起作用。诀窍是设置一个带有z的数组。
h=[]% empty array
h(1)=1-z(1)
for counter=2:N
h(counter)=1-cumsum(diff(h(1:counter-1)))-z(counter)
end