repmat全稱是Replicate Matrix ,意思是複製和平鋪矩陣,是MATLAB裡面的一個函式。語法有B = repmat(A,m,n),將矩陣 A 複製 m×n 塊,即把 A 作為 B 的元素,B 由 m×n 個 A 平鋪而成。B 的維數是 [size(A,1)*m, size(A,2)*n] 。
基本介紹
- 中文名:複製和平鋪矩陣
- 外文名:repmat
- 又名:Replicate Matrix
- 類型:函式
語法,實例,文獻,
語法
B = repmat(A,m,n)
B = repmat(A,[m n])
B = repmat(A,[m n p...])
實例
一、repmat(NaN,m,n)等價於NaN(m,n).
二、repmat(single(inf),m,n)等價於inf(m,n,'single').
三、repmat(int8(0),m,n)等價於zeros(m,n,'int8').
四、repmat(uint32(1),m,n)等價於ones(m,n,'uint32').
五、repmat(eps,m,n)等價於eps(ones(m,n)).
一、B = repmat(A,m,n)
將矩陣 A 複製 m×n 塊,即把 A 作為 B 的元素,B 由 m×n 個 A 平鋪而成。B 的維數是 [size(A,1)*m, size(A,2)*n] 。
>> A = [1,2;3,4]
A =
1 2
3 4
>> B = repmat(A,2,3)
B =
1 2 1 2 1 2
3 4 3 4 3 4
1 2 1 2 1 2
3 4 3 4 3 4
二、B = repmat(A,[m n])
與 B = repmat(A,m,n) 用法一致。
三、B = repmat(A,[m n p...])
B 是由 m×n×p×… 個 A 平鋪而成的高維數組。B 的維數是 [size(A,1)*m, size(A,2)*n, size(A,3)*p, ...] 。
>> A = eye(2,2)
A =
1 0
0 1
>> B = repmat(A,[2 3 2])
B(:,:,1) =
1 0 1 0 1 0
0 1 0 1 0 1
1 0 1 0 1 0
0 1 0 1 0 1
B(:,:,2) =
1 0 1 0 1 0
0 1 0 1 0 1
1 0 1 0 1 0
0 1 0 1 0 1
文獻
MATLAB 7.11.0(R2010b) 幫助文檔