Filter löschen
Filter löschen

Iterating using while loop over a vector

2 Ansichten (letzte 30 Tage)
bassant tolba
bassant tolba am 20 Nov. 2022
Bearbeitet: Torsten am 20 Nov. 2022
Dear all,
I want to iterate using while loop over a vector of size (10x1) to reach the convergence. how can I make this, such as the below figure
Can any one help me please ?
note P, ro, and z all of them are vetor with size 10x1
the actual values of ro,P, and z as follows:
ro=[1,0,0,0,0,0,0,0,0,0];
P=[1,1,1,1,1,1,1,1,1,1];
z=ro=[1,0,0,0,0,0,0,0,0,0];

Antworten (1)

Torsten
Torsten am 20 Nov. 2022
Bearbeitet: Torsten am 20 Nov. 2022
And how do we obtain ro_j and z_j from P_(j-1) in step 4 ?
And how to calculate P_j ?
j = 0;
error = 1;
rho=[1,0,0,0,0,0,0,0,0,0];
P=[1,1,1,1,1,1,1,1,1,1];
z=rho;
while error > 1e-4
j = j + 1;
[rho;z] = some function of P; % calculate ro_j and z_j as functions of P_(j-1)
P = ? % calculate new P_j (most probably as solution of an optimization problem)
error = ? % calculate error
end
  6 Kommentare
bassant tolba
bassant tolba am 20 Nov. 2022
Bearbeitet: bassant tolba am 20 Nov. 2022
so how can I interpret this term p^(j-1) in the code please? how can I differentiate between p(j) and p(j-1)
Torsten
Torsten am 20 Nov. 2022
Bearbeitet: Torsten am 20 Nov. 2022
so how can I interpret this term p^(j-1) in the code please?
As a vector of length 10 that stems from the (j-1)th iteration within the while-loop.
how can I differentiate between p(j) and p(j-1)
Work with two vectors - call the first pjm1 and the second pj.
At the end of the while loop, set pjm1 = pj which means that you take the result of iteration j as the new input of iteration j+1.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Modeling 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