Replace nested loops with a matrix

5 visualizzazioni (ultimi 30 giorni)
I have to optimize this code but i am not sure how to turn it into a matrix.
for i=2:nhx-1
for j=2:nhy-1
U(i,j)= U(i,j)-dt*(Pc(i+1,j)-Pc(i-1,j))/(2*hx);
end
end

Risposta accettata

Bruno Luong
Bruno Luong il 9 Mag 2021
i=2:nhx-1;
j=2:nhy-1;
U(i,j)= U(i,j)-dt*(Pc(i+1,j)-Pc(i-1,j))/(2*hx);

Più risposte (1)

Dyuman Joshi
Dyuman Joshi il 9 Mag 2021
Unew = zeros(nhx, nhy);
Unew(2:nhx-1, 2:nhy-1)=U(2:nhx-1, 2:nhy-1)-dt.*(P(3:nhx,2:nhy-1)-P(1:nhx-2,2:nhy-1))./(2*hx);

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Prodotti


Release

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by