Avoid for loops with if inside
Afficher commentaires plus anciens
*Hello everyone,
Can anyone show me how I can avoid following for loops, so that my run can be much faster? Any help is highly appreciated. Thanks!*
c2=0.7;
c1=0.3;
x1=rand(1,100)*10;
x3=rand(1,100)*10;
x3p=rand(1,100)*10;
x=[0.0000,0.2560,0.4980,0.7590,1.0000,1.2400,1.5000,1.7600,2.0100];
y=[0.3,0.133,0.0777,0.0695,0.0920,0.1078,0.0829,0.0807,0.0936];
for ix1=1:length(x1)
for ix3=1:length(x3)
for ix3p=1:length(x3p)
r= sqrt(x1(ix1)^2 + (x3(ix3)-x3p(ix3p))^2);
if r <= 10
g = fit(x',y','splineinterp');
Prs_22x(ix1,ix3,ix3p)= c2-c1+g(r/R);
else
Prs_22x(ix1,ix3,ix3p)= c2-c1+c1^2;
end
end
end
end
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Programming dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!