D for loops concatenated
Show older comments
I would like to generalize the following codes for dimension D=2:
D=2;
dim=factorial(P-1+D)/(factorial(P-1)*factorial(D));
indexes=zeros(dim,D);
s=0;
for i=1:P
for j=1:i
s=s+1;
indexes(s,:)=[i-j,j-1];
end
end
dimension D=3:
D=3;
dim=factorial(P-1+D)/(factorial(P-1)*factorial(D));
indexes=zeros(dim,D);
s=1;
for i=1:P
for j=1:i
for k=1:j
indexes(s,:)=[i-j,j-k,k-1];
s=s+1;
end
end
end
P can be an arbitrary integer (e.g. P=4).
In other words I would like to create D for loops in such a way that the first loop goes from 1 to P (i=1:P) the second loop from 1 to the previous one (j=1:i) the third one from 1 to the second one (h=1:j) etc.
Thank you in advance.
Accepted Answer
More Answers (1)
Luca Fenzi
on 20 Oct 2015
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!