Sei sulla pagina 1di 4

INTRODUZIONE A MATLAB

Digitando il comando “help” e seguito da il comando di cui vogliamo sapere di più.


Matlab ragiona sempre con matrici infatti gli scalari sono definiti come matrici 1x1.
Per commentare si utilizza il simbolo percentuale %.
Per salvare in un file di testo si utilizzano i comandi diary on e diary off e tra i due il testo da
salvare.
Le operazioni sono + - * / ^.
Alcune variabili sono predefinite come pigreco (pi), la si può sovrascrivere modificandola
(digitando pi=5), però si possono resettare col comando clear (clear pi).
Il comando whos stampa a video tutte quante le variabili utilizzate.
Il comando clear all pulisce tutte le variabili, anche dalla workspace.
Il comando clc ci pulisce il flusso di istruzioni nella command window ma le variabili usate
fino ad ora non spariscono, rimangono nella workspace.
Il comando zeros()

- Variabili scalari

In Matlab non è necessario dichiarare le variabili, per chiamare le variabili si possono usare
lettere maiuscole, minuscole e numeri pur che non siano in prima posizione.
Nel caso scrivessimo y=2*6; alla variabile y viene assegnato il valore giusto 12 ma il “;”
sopprime la visualizzazione a schermo del risultato.
In matlab l’indicizzazione inizia da 1.

- Vettori

Per definire i vettori riga si scrive: w=[1,2,3] oppure v=[4 5 6].


Per definire i vettori colonna si scrive: w=[1;2;3]
Per trasporre i vettori e quindi trasformare un vettore riga a un vettore colonna si usa
l’apostrofo scrivendo quindi nomevettore’ (w’).
Per costruire un vettore riga di componenti equispaziate da un valore a un altro con un
certo passo: q=[val_in:passo:val_fin]
Si può usare anche un passo negativo essendo sicuri che ci si muova da un valore maggiore a
uno minore.
Per ottenere un vettore colonna si fa allo stesso modo ma con un apostrofo finale
(trasposizione).
Un altro modo per ottenere un vettore riga di N componenti equidistante da un certo val_in
a un certo val_fin con estremi inclusi si scrive: q=(val_in,val_fin,N)
Il comando zeros(nr,nc) ci permette di creare oggetti di nr righe e nc colonne con tutti i
valori d’entrata pari a 0.
Il comando ones(nr,nc) invece ci permette di creare un oggetto di nr righe e nc colonne con
tutti i valori d’entrata pari a 1.
Per accedere al valore di un vettore riga o colonna si utilizzano le tonde () con il nome del
vettore prima ovvero per estrarre la componente in posizione n del vettore v: v(n), usando
end tra parentesi avremo l’ultimo valore del vettore.
Si può cambiare il valore selezionato uguagliandolo al valore che vogliamo v(n)=x.
Per eliminare la componente in posizione n: v(n)=[].
Per aggiungere componenti si ridefinisce il vettore e tra quadre si mette il vettore più le
nuove componenti: x=[x 0 1 3….]
Per invertire un vettore: y=x(end:-1:1)
Per selezionare solo alcune componenti di un vettore per salvarle in un altro:
y=x([1 3]) per salvare le componenti in posizione 1 e 3 del vettore x in y, per prenderle tutte
si usano i “:”

Il comando size(w) fornisce il numero di righe e colonne del vettore w.


Il comando lenght(w) fornisce la lunghezza del vettore w.
Si possono svoglere le classiche operazioni tra vettori.

- Matrici

Per definire le matrici: A=[1 2 3;4 5 6] abbiamo creato una matrice di due righe e 3 colonne
con 1, 2 e 3 nella prima riga e 4, 5 e 6 nella seconda riga.
Allo stesso modo per i vettori funzionano once zeros e size.
Il comando A=eye(n) ci costruisce una matrice di identità n x n ovvero una matrice formata
da tutti zeri tranne la diagonale che parte dalla posizione 1 1 che ha tutti valori 1.
La matrice n x n di elementi random si definisce A=rand(n).
Dando in input al comando diag(A) restituisce tutti gli elementi della diagonale principale
della matrice A.
Per selezionare un elemento della matrice A in posizione 2,3 e cambiarne il valore si scrive:
A(2,3)=3.
Per selezionare o sostituire una intera riga si usano i due punti per esempio voglio sostituire
la seconda riga della matrice A: A(2,:)=4 5 7
Esercizio 3

>> A=[1:6;5:10;9:14;15:20]

A=

1 2 3 4 5 6
5 6 7 8 9 10
9 10 11 12 13 14
15 16 17 18 19 20

>> B=A(:,6:-1:1)

B=

6 5 4 3 2 1
10 9 8 7 6 5
14 13 12 11 10 9
20 19 18 17 16 15

>> C=A(:,2:2:end)

C=

2 4 6
6 8 10
10 12 14
16 18 20

>> D=A(1:2:end,:)

D=

1 2 3 4 5 6
9 10 11 12 13 14

>> E=A([1,4,3]:[5,2])

E=

1 5 9 15 2

>> E=A([1 4 3],[5 2])

E=

5 2
19 16
13 10

>> F=diag(A)

F=

1
6
11
18

Per riferirsi a una funzione si scrive:


nomefunzione=@(x) 1./(1+x.^2)