Filter löschen
Filter löschen

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

1 Ansicht (letzte 30 Tage)
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]

Akzeptierte Antwort

Thiago Henrique Gomes Lobato
Thiago Henrique Gomes Lobato am 15 Mär. 2020
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 Kommentare
Josh Williams
Josh Williams am 15 Mär. 2020
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
Thiago Henrique Gomes Lobato am 15 Mär. 2020
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);
...

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by