Section: Array Generation and Manipulations
y = circshift(x,shiftvec)
where x
is an n-dimensional array, and shiftvec
is a vector of
integers, each of which specify how much to shift x
along the
corresponding dimension.
circshift
on N-dimensional
arrays.
--> x = int32(rand(4,5)*10) x = <int32> - size: [4 5] Columns 1 to 5 6 9 9 3 1 3 5 0 4 7 5 0 2 6 5 1 4 0 4 0 --> circshift(x,[1,0]) ans = <int32> - size: [4 5] Columns 1 to 5 1 4 0 4 0 6 9 9 3 1 3 5 0 4 7 5 0 2 6 5 --> circshift(x,[0,-1]) ans = <int32> - size: [4 5] Columns 1 to 5 9 9 3 1 6 5 0 4 7 3 0 2 6 5 5 4 0 4 0 1 --> circshift(x,[2,2]) ans = <int32> - size: [4 5] Columns 1 to 5 6 5 5 0 2 4 0 1 4 0 3 1 6 9 9 4 7 3 5 0 --> x = int32(rand(4,5,3)*10) x = <int32> - size: [4 5 3] (:,:,1) = Columns 1 to 5 5 6 9 1 5 9 6 4 6 2 2 0 6 8 7 8 5 4 3 0 (:,:,2) = Columns 1 to 5 1 4 4 9 3 3 5 2 7 1 1 6 7 6 1 9 5 5 5 2 (:,:,3) = Columns 1 to 5 1 1 0 9 0 5 7 8 2 5 3 8 3 3 6 9 4 7 4 2 --> circshift(x,[1,0,0]) ans = <int32> - size: [4 5 3] (:,:,1) = Columns 1 to 5 8 5 4 3 0 5 6 9 1 5 9 6 4 6 2 2 0 6 8 7 (:,:,2) = Columns 1 to 5 9 5 5 5 2 1 4 4 9 3 3 5 2 7 1 1 6 7 6 1 (:,:,3) = Columns 1 to 5 9 4 7 4 2 1 1 0 9 0 5 7 8 2 5 3 8 3 3 6 --> circshift(x,[0,-1,0]) ans = <int32> - size: [4 5 3] (:,:,1) = Columns 1 to 5 6 9 1 5 5 6 4 6 2 9 0 6 8 7 2 5 4 3 0 8 (:,:,2) = Columns 1 to 5 4 4 9 3 1 5 2 7 1 3 6 7 6 1 1 5 5 5 2 9 (:,:,3) = Columns 1 to 5 1 0 9 0 1 7 8 2 5 5 8 3 3 6 3 4 7 4 2 9 --> circshift(x,[0,0,-1]) ans = <int32> - size: [4 5 3] (:,:,1) = Columns 1 to 5 1 4 4 9 3 3 5 2 7 1 1 6 7 6 1 9 5 5 5 2 (:,:,2) = Columns 1 to 5 1 1 0 9 0 5 7 8 2 5 3 8 3 3 6 9 4 7 4 2 (:,:,3) = Columns 1 to 5 5 6 9 1 5 9 6 4 6 2 2 0 6 8 7 8 5 4 3 0 --> circshift(x,[2,-3,1]) ans = <int32> - size: [4 5 3] (:,:,1) = Columns 1 to 5 3 6 3 8 3 4 2 9 4 7 9 0 1 1 0 2 5 5 7 8 (:,:,2) = Columns 1 to 5 8 7 2 0 6 3 0 8 5 4 1 5 5 6 9 6 2 9 6 4 (:,:,3) = Columns 1 to 5 6 1 1 6 7 5 2 9 5 5 9 3 1 4 4 7 1 3 5 2