5
Sono nuovo di Matlab, quindi non sono sicuro se questo è possibile. Ho un semplice ciclo for:Come vectorize per loop con indice personalizzato
for i=1:n
B.x(indexB(i)) += A.x(i);
end
Dove A.x e B.x sono due vettori di lunghezza n, e indiceB, specificati è un vettore di lunghezza n che contiene la mappatura appropriata da elementi in A.x a B.x.
È possibile vettorizzare questo ciclo?
Questo funzionerebbe ancora se entrambi A e B non fossero della stessa lunghezza? –
Sì, ma ci deve essere una mappatura uno-a-uno tra gli indici sinistro e destro, o in questo caso, il vettore indice 'indexB' usato per B.x e il vettore indice '[1: n]' usato per A.x. E ovviamente, gli elementi a cui si riferiscono gli indici, devono esistere. – Maurits