repmat

repmat

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,n)
B = repmat(A,r1,...,rN)
B = repmat(A,r)

說明

B = repmat(A,n)返回一個數組,該數組在其行維度和列維度包含A的n個副本。A為矩陣時,B大小為size(A)*n。
B = repmat(A,r1,...,rN)指定一個標量列表r1,..,rN,這些標量用於描述A的副本在每個維度中如何排列。當A具有N維時,B的大小為size(A).*[r1...rN]。例如:repmat([1 2; 3 4],2,3)返回一個 4×6 的矩陣。
B = repmat(A,r)使用行向量r指定重複方案。例如,repmat(A,[2 3])與repmat(A,2,3)返回相同的結果。

示例

使用相同的元素值初始化矩陣

創建一個所有元素的值均為 10 的 3×2 矩陣。
A = repmat(10,3,2)
A = 3×2    10    10    10    10    10    10

方塊格式

將矩陣副本重複到 2×2 塊排列中。
A = diag([100 200 300])
A = 3×3   100     0     0     0   200     0     0     0   300
B = repmat(A,2)
B = 6×6   100     0     0   100     0     0     0   200     0     0   200     0     0     0   300     0     0   300   100     0     0   100     0     0     0   200     0     0   200     0     0     0   300     0     0   300

替代語法

    repmat 語法等效替代方法
    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))

    擴展功能

    1、tall 數組
    對行數太多而無法放入記憶體的數組進行計算。
    2、C/C++ 代碼生成
    使用 MATLAB® Coder™ 生成 C 代碼和 C++ 代碼。
    3、GPU 數組
    通過使用 Parallel Computing Toolbox™ 在圖形處理單元 (GPU) 上運行來加快代碼執行。
    4、分散式數組
    使用 Parallel Computing Toolbox™ 在群集的組合記憶體中對大型數組進行分區。

    相關詞條

    熱門詞條

    聯絡我們