# Simple Question about Optimization of Nested FOR loops

3 visualizzazioni (ultimi 30 giorni)
Mohsen il 14 Giu 2013
How can I optimize the following code in order to avoid the FOR loops so that it runs faster?
for i=1:X;
for j=1:Y;
if A(i,j)==1;
B(i+(j-1)*Y*X)=C(i,j);
end
end
end
##### 0 CommentiMostra -2 commenti meno recentiNascondi -2 commenti meno recenti

Accedi per commentare.

### Risposte (2)

Andrei Bobrov il 14 Giu 2013
B = zeros(X,Y,Y);
B(:,1,:) = permute(C.*(A == 1),[1,3,2]);
B = B(:);
##### 0 CommentiMostra -2 commenti meno recentiNascondi -2 commenti meno recenti

Accedi per commentare.

Mohsen il 17 Giu 2013
The code that you have provided doesn't seem to work.
Does any one know how to optimize this code:
for i=1:iNZ;
if iPointsinSlice>0;
for m=1:iNX;
for l=1:iNY;
if SliceMaskUr(m,l)==1;
DoseCubeU(m+(l-1)*iNX+i*iNX*iNY)=100*SumDose(m,l,i)/RX_Dose;
end
end
end
end
end
Many thanks!
##### 0 CommentiMostra -2 commenti meno recentiNascondi -2 commenti meno recenti

Accedi per commentare.

### Categorie

Scopri di più su Problem-Based Optimization Setup in Help Center e File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by