Effacer les filtres
Effacer les filtres

Adding all possible combinations of array elements

4 vues (au cours des 30 derniers jours)
K
K le 12 Août 2014
Commenté : K le 13 Août 2014
I have an array of elements,
How would I generate a new array of all possible combinations, multiples, and combinations of multiples within a threshold limit of, say, 30?
ex:
X=[a b c d]; where a, b, c, d are real, positive, small integers
M=[a, b, c, d, 2*a, 2*b, ... 3*a, 3*b,...4*a, 4*b, ...a+b, a+b+c,... 2a+2b,...2a+c,... 10a+10b+d, ... .. .. ]
M(M>=30)=[];
where ALL possible combinations are there, excluding repeat combinations, but including repeat numbers
  3 commentaires
Image Analyst
Image Analyst le 12 Août 2014
Hey, are you still there?
K
K le 12 Août 2014
Hey, I'm still here. It's not homework, it is a simulation program to help model data.
There are definitely constraints. They are all positive, real numbers, that have larger spacing between them as I to the right on the array. I don't need to keep track of the multiplication factor as I go.
I was thinking to first make a matrix of the multiplication factors, where I have my array accross the top line, then all the multiples below, then deleting the numbers greater than my limit. Like so:
a b c d
2a 2b 2c 2d
3a 3b.....
Then doing all the number combinations after that... ?

Connectez-vous pour commenter.

Réponses (1)

Ahmet Cecen
Ahmet Cecen le 12 Août 2014
Use combnk to get the the unique combinations over a,b,c and d. For each of those combinations, use base math to get the repetitive variations from 1 to 30. However, the number of elements within M might explode at 30. You might want to consider a lower number.
  4 commentaires
K
K le 13 Août 2014
This gives me the error:
"Cell contents assignment to a non-cell array object."
Is there another way?
K
K le 13 Août 2014
Actually, i just got it working. Thank you for your advice. The curly brackets work wonderfully. I just had to create a cell array outside the for loop for it to input into.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by