Мне нужно присвоить граничные значения 3D-окну.
Предполагая, что у меня есть z = rand(L,M,N)
, есть ли лучший способ адресовать все грани этого ящика, чем обрабатывать все 6 граней по отдельности, z(:,:,1)
, z(:,:,end)
, z(:,1,:)
, z(:,end,:)
, z(1,:,:)
, z(end,:,:)
?
Это то, что у меня есть прямо сейчас:
L=3;M=4;N=5;
z = rand(L,M,N);
bv = 0;
z([1,end],:,:) = bv;
z(:,[1,end],:) = bv;
z(:,:,[1,end]) = bv;
Я хотел бы иметь возможность сделать что-то вроде z(indices) = bv
.