我对编程很陌生,所以在我完成这个练习时,我正在寻找一些专家来指导我朝着正确的方向前进。
我已经使用 horzcat 和 vertcat 手动执行此操作,但我想问是否有人知道更简单的方法。
矩阵 1 为 18x18,从 1 开始水平索引。
矩阵 1 位于中心,代表一个离散空间。矩阵 2、3、4、5、6、7、8、9 是矩阵 1 的复制品,也代表离散空间,位于右下、右下、下、左下、左、左上、上和右上。
矩阵 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 也是矩阵 1 的复制品并围绕矩阵 2 到 9。构建在一起的矩阵形成一个模式如下。每个矩阵本身就是一个离散单元。
如果你定义了你需要的矩阵的数量,那么在这种情况下假设'49'或'4 steps from matrix 1'(一个人可以从对角线上的 1、9、25、49 或 1、8、23、 46 在一条直线上),我如何构建这种模式的矩阵?
43 44 45 46 47 48 49
42 21 22 23 24 25 26
41 20 7 8 9 10 27
40 19 6 1 2 11 28
39 18 5 4 3 12 29
38 17 16 15 14 13 30
37 36 35 34 33 32 31
如果我用图表来演示这一点,我希望我能更好地表达我的问题。
所以第一个环是这样的:
7 8 9
6 1 2
5 4 3
第二个环是这样的:
21 22 23 24 25
20 7 8 9 10
19 6 1 2 11
18 5 4 3 12
17 16 15 14 13
第三个环是
43 44 45 46 47 48 49
42 21 22 23 24 25 26
41 20 7 8 9 10 27
40 19 6 1 2 11 28
39 18 5 4 3 12 29
38 17 16 15 14 13 30
37 36 35 34 33 32 31
等等。我希望能够无限地延续这种模式。
在 Matlab 中执行此操作的最佳方法是什么?
我为我的表述不够清楚而道歉,我需要更好地表达我的问题。您的所有评论对于向我展示如何编写正确的问题非常有用。
非常感谢你们的帮助。刚加入这个论坛,因为这里的支持非常好。