CAPITOLO I: Variabili in MATLAB


Questa Capitolo descrive le fondamentali operazioni necessarie nella creazione e nell'uso delle variabili in MATLAB.

 

In generale in un qualsiasi linguaggio di programmazione, la creazione e l'uso di una variabile richiede almeno due operazioni:

In MATLAB il processo di creazione è semplificato dal fatto che dichiarazione e definizione vengono fatte automaticamente dall'interprete dei comandi quando incontra una istruzione di assegnazione:

>> nome_variabile = espressione

Per creare una nuova variabile basta quindi scriverne il nome sulla sinistra di un'istruzione di assegnazione ove sulla destra vi sia una costante, o un'espressione numerica, o una funzione:

>> x = 2*3;
>> y = x^2;
>> z = cos(0.5);

Se la variabile è già esistente allora l'istruzione di assegnazione ha l'effetto di aggiornarne il valore:

>> x = x + y
x = 
	42

nel caso precedente alla variabile x è stato asseganto un valore pari al suo precedente valore + quello della variabile y.

 

I nomi delle variabili devono rispettare le seguenti regole:

 

I tipi di variabili che possono essere create ed utilizzati  in MATLAB sono:

Tutte le variabili numeriche in MATLAB vengono trattate come matrici, ossia come tabelle bidimensionali di numeri, organizzate in righe e colonne:

wpe2.jpg (17653 byte)

nella figure superiore è stata mostrata una matrice di n righe ed m colonne.

Quando una variabile viene creata , automaticamente MATLAB salva anche le sue dimensioni in termini di numeri di righe e colonne. Le variabili numeriche possono quindi essere classificate in base alle loro dimensioni in:

tipo variabile numerica N. righe N. colonne
scalari 1 1
vettori riga 1 qualsiasi
vettori colonna qualsiasi 1
matrici qualsias qualsiasi

Questa classificazione ha senso solo per il tipo di operazioni che è possibile effettuare fra i diversi tipi di variabili. Infatti MATLAB implementa delle operazioni che rispettano rigorosamente quelle dell'algebra matriciale, ad esempio non sono possibili moltiplicazioni fra matrici se il numero di colonne della prima matrice è diverso dal numero di righe della seconda.

Le stringhe sono sequenze di caratteri che in MATLAB vengono trattate come matrici di caratteri. Non vi è nessuna differenza tipografica nel nome di una variabile stringa rispetto ad una numerica. Ad esempio le seguenti istruzioni di assegnazione dichiarano e definiscono rispettivamente una variabile numerica x ed una variabile stringa sr_y definita come un vettore riga di caratteri:

	>> x = 5.2
	>> sr_y = 'Bob'

Il tipo di variabile (numerica o stringa) è determinato automaticamente all'atto della creazione.

 

Nella seguente tabela viene suggerita una convenzione sui nomi da utilizzare per le variabili, in modo da poter distingure in ogni momento di che variabile si tratta

tipo variabile numerica variabile stringa
scalari xxxx s_xxxx
vettori riga r_xxxx sr_xxxx
vettori colonna c_xxxx sc_xxxx
matrici m_xxxx sm_xxxx
  1. variabili numeriche: si è scelto di utilizzare i prefissi: r_, c_ e m_ per indicare rispettivamente vettori riga, colonna e le matrici, mentre nessuna convenzione è stata assunta per gli scalari;
  2. variabili stringa: si utilizza la stessa convenzione utilizzata per le variabili numeriche anteponento il carattere s

(con la 'x' si intende un carattere qualsiasi fra quelli permessi):.

 

Una volta creata una variabile rimane nell'ambiente di Matlab è può essere utilizzata in quasiasi momento. Il comando who digitato nella finestra di comando permette sapere quali sono le variabili definite dell'ambiente: fino a che non venga espressamente cancellata con un comando clear:

	>> x = 1;
	>> y = 2;
	>> z = x + y
	z = 
		3
	>> who
	Your variables are:

	x         y         z  

Il comando whos da informazioni sul tipo e sulle dimensioni delle variabili, ma anche sulla memoria totale occupata:

	>> x = 1;
	>> y = 2;
	>> sr_z = 'pippo';
	>> whos
	Name      Size         Bytes  Class

  	sr_z      1x5             10  char array
  	x         1x1              8  double array
  	y         1x1              8  double array

	Grand total is 7 elements using 26 bytes  

Le variabili che restano definite nell'ambiente sono dette VARIABILI GLOBALI

Una variabile può essere cancellata dall'ambiente Matlab mediante il comando clear seguito da uno o più nomi delle variabili da cancellare:

	>> clear x  y
	>> who
	Your variables are:

	sr_z  

  Indice del Capitolo Sezione Seguente