Repmat:Replicate and tile an array 

Syntax

B = repmat(A,m,n)

B = repmat(A,[m n])

B = repmat(A,[m n p...])

Description

B = repmat(A,m,n) creates a large matrix B consisting of an m-by-n tiling of copies of A. The size of B is [size(A,1)*m, (size(A,2)*n]. The statement repmat(A,n) creates an n-by-n tiling. 

B = repmat(A,[m n]) accomplishes the same result as repmat(A,m,n). 

B = repmat(A,[m n p...]) produces a multidimensional array B composed of copies of A. The size of B is [size(A,1)*m, size(A,2)*n, size(A,3)*p, ...]. 

repmat(A,m,n) when A is a scalar, produces an m-by-n matrix filled with A's value and having A's class. For certain values, you can achieve the same results using other functions, as shown by the following examples: repmat(NaN,m,n) returns the same result as NaN(m,n). repmat(single(inf),m,n) is the same as inf(m,n,'single'). repmat(int8(0),m,n) is the same as zeros(m,n,'int8'). repmat(uint32(1),m,n) is the same as ones(m,n,'uint32'). repmat(eps,m,n) is the same as eps(ones(m,n)). 

Examples

In this example, repmat replicates 12 copies of the second-order identity matrix, resulting in a "checkerboard" pattern. 

B = repmat(eye(2),3,4) %size(eye(2),1) = 2; size(eye(2),2)=2;

 

B =  %(3*2;4*2;) eye(2)整体向右变为8;向下变为6

     1     0     1     0     1     0     1     0

     0     1     0     1     0     1     0     1

     1     0     1     0     1     0     1     0

     0     1     0     1     0     1     0     1

     1     0     1     0     1     0     1     0

     0     1     0     1     0     1     0     1 

The statement N = repmat(NaN,[2 3]) creates a 2-by-3 matrix of NaNs.

posted on 2016-01-07 17:41  qqhfeng16  阅读(334)  评论(0编辑  收藏  举报