unknown code- understand it up to the for loop but am lost from there. Can anyone lend a hand? thanks.

2 次查看(过去 30 天)
dat=load('data.dat')
a=dat(:,1)
b=dat(:,2)
s=size(a)
s=s(1)
out=zeros(s,1)
for n=1:s
out(n)=(b(n+1)-b(n-1))/(a(n+1)-a(n-1))
end
c=[a out]

采纳的回答

Thiago Henrique Gomes Lobato
What the code was supposed to be? it looks like the variable out is suppose to be the numerical derivative of b with respect to a. If the distance between each "a" is uniform and increasing, than this is the central scheme for 1st order differentiation with 2nd order accuracy and the line describe basically .
  2 个评论
Josh Williams
Josh Williams 2020-3-15
not too sure what the code is supposed to be, thats what i have been tasked to find out. I can see now where your coming from with the derivations though. what does the line s=s(1) do?
Thiago Henrique Gomes Lobato
Size returns two values, so s(1) saves the first dimension in order to perform the loop and size assignment. It would be the same if you did:
s=size(a,1);
out=zeros(s,1);
...

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by