Calculating the difference between a vector and time
显示 更早的评论
I'm looking for a way to get this loop to work, basically I need to calculate the difference in a 3x1 vector divide by the difference in time. Does anyone have any suggestion?
t = 2000
n= 0;
for ind = 0:1:t
n= n+ind;
S(n) = (diff(x( don't know how to input the value here )))./diff(t(ind)); %x is a three element vector
end
5 个评论
dpb
2019-5-4
Afraid you're going to have to show us by an example what you have and what you want and how you get from a) to b); I have no idea what you're trying to explain above, sorry...(and apparently the half-dozen or so before me didn't either)
Nikolaos Zafirakis
2019-5-5
dpb
2019-5-5
dxdt = diff(x)./diff(t);
Nikolaos Zafirakis
2019-5-5
Star Strider
2019-5-5
If you are ‘padding’ ‘A’ with an initial 0, you need to tell MATLAB.
MATLAB does many things well, although it is sadly deficient when it comes to mind-reading.
Try this:
A = [1 1 2 3];
dA = diff([0 A])
producing:
dA =
1 0 1 1
NOTE — You need to do similar ‘padding’ for your time vector.
回答(1 个)
Omer N
2019-5-5
Try this:
A = [1 1 2 3];
A-[0,A(1:end-1)]
ans =
1 0 1 1
类别
在 帮助中心 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
