# Evaluating all possible combinations

5 Ansichten (letzte 30 Tage)
Michael Jacobson am 6 Mär. 2023
Kommentiert: Michael Jacobson am 19 Mär. 2023
I am working on designing a composite part. The two main variables are the number of layers i can stack and the orientation of each layer (0,45,90 deg.). In the below image, we can see different layers stacked with different orientations
I am trying to find all possible sequences that can be made, but im not sure how to go about that. For example, if i have 5 layers, how would i determine all the possible sequences?
I've tried perms and nchoosek - don't seem to work, but im not sure why.
Thanks
##### 2 KommentareKeine anzeigenKeine ausblenden
Torsten am 6 Mär. 2023
So for each layer you have 4 possible orientations. Thus if you have N layers, the number of possible arrangements is 4^N. Is this a correct interpretation of what you try to achieve ?
Michael Jacobson am 6 Mär. 2023
Yes, i believe that's the proper understanding.

Melden Sie sich an, um zu kommentieren.

### Akzeptierte Antwort

Karim am 6 Mär. 2023
Bearbeitet: Karim am 6 Mär. 2023
See below for one method to obtain all combinations.
In the resulting matrix, each row represents a combination, the first column holds the angle for the first layers, the second for the second etc.
Hope it helps ;)
% define the angle options for a layer
LayerOptions = [0 -45 45 90];
% define number of layers
NumLayer = 5;
% create place holder for the layers
CellCombo = cell(1,NumLayer);
% assign the options for each layer
CellCombo(:) = {LayerOptions};
% extend the data to obtain the combinations
Combinations = CellCombo;
[Combinations{:}] = ndgrid(CellCombo{:});
Combinations = cell2mat(cellfun(@(m)m(:),Combinations,'uni',0));
% print the result
Combinations
Combinations = 1024×5
0 0 0 0 0 -45 0 0 0 0 45 0 0 0 0 90 0 0 0 0 0 -45 0 0 0 -45 -45 0 0 0 45 -45 0 0 0 90 -45 0 0 0 0 45 0 0 0 -45 45 0 0 0
##### 1 Kommentar-1 ältere Kommentare anzeigen-1 ältere Kommentare ausblenden
Michael Jacobson am 19 Mär. 2023
This helps a lot, thanks! It does exactly what I was looking for.

Melden Sie sich an, um zu kommentieren.

### Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

R2022b

### Community Treasure Hunt

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

Start Hunting!

Translated by