дублирование массива и его мозаичное размещение
B = repmat(A, siz) B = repmat(A, m) B = repmat(A, m, n,...)
A для каждой
размерности B.
siz=[m,n,..].
[m*size(A,1), n*size(A,2), ..] или
[siz(1)*size(A,1), siz(2)*size(A,2), ..].
repmat(A, m) реплицирует и мозаично размещает
m × m копий A.
repmat(A, m, n) или
repmat(A, [m, n]) реплицирует и мозаично размещает
m × n копий A.
repmat(A, m, n, p, ..) является обобщением repmat(A, m, n).
repmat(…) расширяет ones(m,n,..) .*. A
до нечисловых входных A.
Определение repmat(…) может быть расширено с помощью механизма перегрузки.
repmat([-1 3 7], 2, 4) repmat(int8([1 -2 3; 0 -1 1]), 2, 4, 2) b = cat(3, [%f %t %t], [%t %t %f]) repmat(b, [2 3]) t = "Scilab"; t(ones(2,4)) repmat(["Scilab" "Xcos"], 2, 3) repmat([1/%s ; 2/(%s+1)], 1, 3) | ![]() | ![]() |
--> repmat([-1 3 7], 2, 4)
ans =
-1. 3. 7. -1. 3. 7. -1. 3. 7. -1. 3. 7.
-1. 3. 7. -1. 3. 7. -1. 3. 7. -1. 3. 7.
--> repmat(int8([1 -2 3; 0 -1 1]), 2, 4, 2)
ans =
(:,:,1)
1 -2 3 1 -2 3 1 -2 3 1 -2 3
0 -1 1 0 -1 1 0 -1 1 0 -1 1
1 -2 3 1 -2 3 1 -2 3 1 -2 3
0 -1 1 0 -1 1 0 -1 1 0 -1 1
(:,:,2)
1 -2 3 1 -2 3 1 -2 3 1 -2 3
0 -1 1 0 -1 1 0 -1 1 0 -1 1
1 -2 3 1 -2 3 1 -2 3 1 -2 3
0 -1 1 0 -1 1 0 -1 1 0 -1 1
--> b = cat(3, [%f %t %t], [%t %t %f])
b =
(:,:,1)
F T T
(:,:,2)
T T F
--> repmat(b, [2 3])
ans =
(:,:,1)
F T T F T T F T T
F T T F T T F T T
(:,:,2)
T T F T T F T T F
T T F T T F T T F
--> t = "Scilab"; t(ones(2,4))
ans =
"Scilab" "Scilab" "Scilab" "Scilab"
"Scilab" "Scilab" "Scilab" "Scilab"
--> repmat(["Scilab" "Xcos"], 2, 3)
ans =
"Scilab" "Xcos" "Scilab" "Xcos" "Scilab" "Xcos"
"Scilab" "Xcos" "Scilab" "Xcos" "Scilab" "Xcos"
--> repmat([1/%s ; 2/(%s+1)], 1, 3)
ans =
1 1 1
- - -
s s s
2 2 2
---- ---- ----
1 +s 1 +s 1 +s
| Version | Description |
| 5.3.1 | Введена функция repmat. |