abc Matlab - elektronski priručnik
II dio Osnove Matlaba kao jezika - 2.5. Tipovi nizova

2.5.1. Višedimenzionalni nizovi

Višedimenzionalni nizovi u Matlab okruženju su nizovi sa više od dva indeksa. Jedan način kreiranja višedimenzionalnog niza je pozivanjem funkcija zeros, ones, rand, ili randn sa više od dva argumenta. Na primjer,

R = randn(3,4,5);

kreira 3-sa-4-sa-5 niz sa ukupno 3*4*5 = 60 normalno raspodijeljenih slučajnih elemenata.

Trodimenzionalni niz može predstavljati trodimenzionalne fizičke podatke, recimo temperaturu u prostoriji, uzorkovanu na pravougaonoj rešetki. Ili može predstavljati sekvencu matrica, A(k), ili uzorke vremenski zavisne matrice, A(t). U ovim posljednjim slučajevima,   (i,j)-ti element k-te matrice, ili tk-te matrice, je označen sa A(i,j,k).

Matlabova i Direrova verzija magičnog kvadrata reda 4 razlikuju se po zamjeni dvaju kolona. Mnogi različiti magični kvadrati mogu biti generisani zamjenjivanjem kolona. Naredba

p = perms(1:4);

generiše 4! = 24 permutacije od 1:4. k-ta permutacija je vektor-red p(k,:). Tada

A = magic(4);
M = zeros(4,4,24);

for k = 1:24
M(:,:,k) = A(:,p(k,:));
end

sprema sekvencu od 24 magična kvadrata u trodimenzionalni niz, M. Veličina M je

size(M)
ans =
4          4          24


Napomena: Redoslijed matrica prikazan na ovoj ilustraciji se može razlikovati od naših rezultata. Funkcija perms uvijek vraća sve permutacije ulaznog vektora, ali redoslijed permutacija može biti različit za različite verzije Matlaba.

Naredba

sum(M,d)

računa sume varirajući d-ti indeks. Tako da je

sum(M,1)

1-sa-4-sa-24 niz koji sadrži 24 kopije vektora-reda

34        34        34        34

a

sum(M,2)

je 4-sa-1-sa-24 niz koji sadrži 24 kopije vektora-kolone

34
34
34
34

Konačno,

S = sum(M,3)

dodaje 24 matrice u sekvencu. Rezultat ima veličinu 4-sa-4-sa-1, tako da izgleda kao 4-
sa-4 niz:

S =
204      204      204      204
204      204      204      204
204      204      204      204
204      204      204      204

Funkcija find    <    Index    >    Ćelijski nizovi