stavo facendo la seguenteConsiderate preallocare per la velocità
for i = 1:m,
index = 0;
for j = 1:n,
index = index+values(i,j)*2^(j-1);
if (j==1)
symbol_chip = chip_values(index+1,:);
else
symbol_chip = [symbol_chip chip_values(index+1,:)];
end
end
end
mi dice il seguente:
symbol_chip
potrebbe essere in crescita all'interno del ciclo. Prendi in considerazione la preallocazione per la velocità.
Qualche idea?
Per evitare la ripetizione, in una domanda correlata: http://stackoverflow.com/questions/1548116/matrix-of-unknown-length-in-matlab/1549094#1549094, ho mostrato un modo per migliorare le prestazioni allocare memoria pur essendo efficiente in termini di spazio aggiungendo più spazio di memoria quando necessario – Amro
Hai mai provato l'Aiuto Matlab ??? Basta premere F1 in una finestra di Matlab, digitare 'preallocazione' nel campo di modifica della ricerca e premere INVIO. Otterrai esattamente ciò di cui hai bisogno !!! – Mikhail
Solo un commento: è meglio [non usare 'i' e' j' come nomi di variabili in Matlab] (http://stackoverflow.com/questions/14790740/using-i-and-j-as-variables- in mATLAB). – Shai