簡體   English   中英

如何創建Matlab 201X 201矩陣

[英]How do I create a matlab 201X 201 matrix

如何創建一個201x 201矩陣,所有奇數行交替為3,1,3,偶數行交替為1,2,1,2。 我嘗試使用隨機數生成器,for循環,並正在考慮使用find命令。 我正在嘗試生成矩陣,但是收到了錯誤消息。

如果我正確理解您的意思,那么Kronecker產品( kron )是實現此目的的最簡單方法:

A = kron( ones(101), [3 1; 1 2]);
A = A(1:201, 1:201); 

第一條命令根據您的要求創建一個202x202矩陣,第二條命令將1行和1列截去以符合201x201尺寸規格。

使用repmat和矩陣級聯:

rowodd =[repmat([3 1],1,100) 3];
roweven=[repmat([1 2],1,100) 1];

mat = [repmat([rowodd;roweven],100,1) ; rowodd];

您還可以通過使用meshgrid和數學函數創建矩陣,該函數為您提供所需的結果矩陣:

[X, Y] = meshgrid(1:201, 1:201);
Matrix = 2*mod(X,2) - 2*mod(Y+1,2) + 3*(mod(X+1,2).*mod(Y+1,2)) + 1;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM