Loop for forward difference finite method

7 Ansichten (letzte 30 Tage)
Richard Rees
Richard Rees am 25 Jul. 2019
Kommentiert: Richard Rees am 30 Jul. 2019
Good evening everyone,
I have a problem whereby my function stops running at the end of first row and doesn't start up again at the beginning of the next because I do not know to tell it that it has reached the end.
d_d = diff(dd,1,2);
ts = 1440;
% Finds the dimensions of the matrix containing PWP values for each node
sPWP = d_d(:,:);% Starts at the beginning value for each column
sPWP = [d_d, d_d(:,end)]; % Duplicate the end row
[rows, zones] = size(d_d);
dfdx_sim = nan(size(sPWP)); %Preallocate zero matrix based on B dimensions (Saves the CPU reiterating over the same list)
for g = 1:zones
for h = 1:rows
%while g+1<zones
dfdx_sim(g,h) = ((sPWP(g+1,h) - sPWP(g,h)))/ts;
%continue
end
end
Thanks
  2 Kommentare
Stephen23
Stephen23 am 26 Jul. 2019
Bearbeitet: Stephen23 am 26 Jul. 2019
When I load your .mat file and run your code I get this error:
Undefined function or variable 'dd'.
Error in sample (line 5)
d_d = diff(dd,1,2);
When I comment-out that line (because you seem to have supplied d_d in the .mat file) I get this error:
Attempted to access sPWP(2,8); index out of bounds because size(sPWP)=[191,7].
Error in sample (line 16)
dfdx_sim(g,h) = ((sPWP(g+1,h) - sPWP(g,h)))/ts;
Please ensure that your code and data demonstrate what you experience. It we cannot reproduce what you are experiencing, then it makes it harder for us to help you.
Richard Rees
Richard Rees am 26 Jul. 2019
Good morning, I have uploaded an excel file with the data on.
Thanks

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

SaiDileep Kola
SaiDileep Kola am 29 Jul. 2019
I went through your code and I see that you need to swap the arguments “g” and “h” in the equation inside the nested “for” loop
dfdx_sim(h,g) = ((sPWP(h,g+1) - sPWP(h,g)))/ts;
You will get the expected output now.
  1 Kommentar
Richard Rees
Richard Rees am 30 Jul. 2019
Hi, thanks for that. I figured out the same thing.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Numeric Types finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by