I want to make an iteration for all arras of my vector.

2 vues (au cours des 30 derniers jours)
Mohammad Sadegh Nasirianfar
n=ones(size(f_s));
C_n = (1./sigmaprimevo/10).^n;
Q= (q_c-sigmavo)*10.*C_n;
F= f_s./(q_c-sigmavo)*100;
I_c= real(((3.47-log10(Q)).^2+(1.22+log10(F)).^2).^0.5);
n(I_c<1.64)=.5;
n(I_c>1.64&I_c<3.3)=(I_c(I_c>1.64&I_c<3.3)-1.64)*.3+.5;
n(I_c>3.3)=1;
my code is as above. I want to assume 1 in the first step for all arrays of n. after that n has to be calculated considering the I_c values. This has to be continued till change in n less than 0.01 (deltan<0.01). how can I write that?

Réponse acceptée

Jan
Jan le 17 Mai 2022
n=ones(size(f_s));
ready = false;
while ~ready
nOld = n;
... Your code as above
ready = all((n - nOld) < 0.01)
% Or maybe: sum(abs(n - nOld) < 0.01
% or maybe: max(abs(b - nOld) < 0.01
% or what ever the criterion is
end

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Produits


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by