Elementi base di matlab

di il
20 risposte

20 Risposte - Pagina 2

  • Re: Elementi base di matlab

    Una soluzione potrebbe essere quella di trattare separatamente il caso in cui i=1... (non c'è bisogno dell'if)
  • Re: Elementi base di matlab

    For i=1:2
    for j=1:4
    if (i==1)
    B(i,j)=log(A(i,j))
    else
    B(i,j)=log(A(i,j))-log(A(i-1,j))
    end
    end
    end
    Non si potrebbe compattare il ciclo???
  • Re: Elementi base di matlab

    Ho provato così..
    matrice 2*3

    for i=1:2
    for j=1:3
    if (i==1)
    B(i,j)=log(A(i,j))
    else
    B(i,j)=log(A(i,j))-log(A(i-1,j))
    end
    end
    and

    Si può compattare il ciclo???
  • Re: Elementi base di matlab

    In realtà potresti farlo anche senza ciclo... scrivendo B come la differenza di due matrici.
    La prima è abbastanza semplice, perché se fai il logaritmo di una matrice, viene fatto elemento per elemento, che è quello che ti serve.
    La seconda matrice la devi invece costruire shiftando le righe verso il basso e aggiungendo la prima riga (la prima riga, come nel caso del ciclo for deve essere trattata separatamente.
    Per lo shift puoi usare la funzione circshift.
    Dovresti quindi riuscire a scrivere tutto in 2-3 righe.
  • Re: Elementi base di matlab

    Okkk...
    C'è un modo per creare delle matrici miste di numeri e parole???
  • Re: Elementi base di matlab

    Devi usare le strutture. Cerca "struct" sull'help.
Devi accedere o registrarti per scrivere nel forum
20 risposte