Provo a fare un esempio ma non sarà semplice.
Ipotizziamo di dover riempire con i pesi determinati su excel una matrice P (i,j,k) 2 x 4 x 4, in questo esempio ipotizziamo che ci sia un solo corridoio che si trova tra j =2 e j=3.
Supponiamo anche di avere 2 Colonne e che tra ogni colonna io abbia due Posizioni.
Livello = 1:2 -> indicante il numero di righe, da questo valore determino i
Corridoio = 1 -> è una variabile collegata al j che mi serve per scegliere il range di colonne j nelle quali potrebbe essere posizionato il peso
Lato = 'L' oppure 'R' -> questo mi permette di capire se devo usare le colonne j di sinistra o di destra della mia matrice P
Profondità = 1:2 -> una volta determinato il corridoio e il lato mi dice se devo usare la colonna j più vicina al corridoio o quella più interna
Colonna =1:2 -> collegato alla profondità della matrice, da questo determino il valore di k insieme alla Posizione
Posizione = 1:2 -> mi dice la profondità k
Esempio numerico:
|Corridoio | Colonna | Livello | Lato | Posizione | Profondità | Peso |
1 1 1 L 1 2 10
1 1 2 R 1 1 5
1 2 2 L 2 2 8
P=cat(3,zeros(2,4),zeros(2,4));
P(:,:,1)=0;
P(:,:,2)=0;
P(:,:,3)=0;
P(:,:,4)=0;
P(1,3,1)=5;
P(2,1,1)=10;
P(1,1,4)=8;
disp(P(:,:,1))
disp(P(:,:,2))
disp(P(:,:,3))
disp(P(:,:,4))
il codice sicuramente può essere scritto meglio ma al momento anche per preallocare le matrici sto facendo così, l ho messo perchè così puoi visualizzare il risultato che mi rendo conto possa non essere di semplice interpretazione anche con questo esempio.
Intanto ti ringrazio per la risposta!!