1keenan ha scritto:
Se gli dico v_ion(i) si incazza, ora mi ricordo... dice:
"??? Error using ==> horzcat
CAT arguments dimensions are not consistent."
invece per come è adesso v_z e gli altri li fa vettori.
Con divergenza angolare nulla, il vettore v_ion = v_z e v_x=v_y=0, come dovrebbe essere, quindi, per qualche strano motivo è giusto.
Allora, non so se il risultato è equivalente, o se come stai facendo accumuli qualche errore... perché dal punto di vista del codice non va tanto bene... sembra un errore.
horzcat vuol dire che non riesce a fare la concatenazione orizzontale, perché a questo punto r0 è una matrice mentre v0 un vettore riga.
Quindi:
r0=zeros(1,3);
cioè non devi inizializzare la matrice con tutti zeri, ma solo la riga corrente.
E poi, dato che y0 così è diventato un vettore devi cambiare anche questa, togliendo l'indicizzazione a y_sorgente:
[t,ys] = ode23t(f,tspan,y_sorgente,options);
Vedi se ti fila...