フィルターのクリア

Evaluating all possible combinations

3 ビュー (過去 30 日間)
Michael Jacobson
Michael Jacobson 2023 年 3 月 6 日
コメント済み: Michael Jacobson 2023 年 3 月 19 日
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 件のコメント
Torsten
Torsten 2023 年 3 月 6 日
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
Michael Jacobson 2023 年 3 月 6 日
Yes, i believe that's the proper understanding.

サインインしてコメントする。

採用された回答

Karim
Karim 2023 年 3 月 6 日
編集済み: Karim 2023 年 3 月 6 日
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 件のコメント
Michael Jacobson
Michael Jacobson 2023 年 3 月 19 日
This helps a lot, thanks! It does exactly what I was looking for.
I do appreciate your help!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

製品


リリース

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by