18.01.2015 Views

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

12. PRIMI PASSI IN MATLAB®<br />

C‘e una notevole <strong>di</strong>fferenza <strong>di</strong> significato tra i files generati dall’istruzione <strong>di</strong>ary e quelli generati me<strong>di</strong>ante<br />

save. Ciò che salviamo con il comando <strong>di</strong>ary è paragonabile a ciò che può essere scritto alla lavagna<br />

e <strong>di</strong> cui pren<strong>di</strong>amo appunti: scriviamo un file <strong>di</strong> testo che possiamo elaborare o da cui possiamo trarre dei<br />

risultati per i nostri problemi. Al contrario, quello che viene salvato me<strong>di</strong>ante il comando save è costituito<br />

da una o più variabili, che possono essere riutilizzate nuovamente in MATLAB® nella finestra dei coman<strong>di</strong>, in<br />

sessioni successive a quella in cui sono state create, senza dover rieseguire tutti i coman<strong>di</strong> che hanno portato<br />

alla creazione delle variabili stesse.<br />

Il comando save è utile anche per salvare singole matrici o una lista <strong>di</strong> matrici nella <strong>di</strong>rectory corrente. Ci<br />

soffermiamo sulla possibilità <strong>di</strong> salvare i dati in formato ASCII, in modo da poter utilizzare i dati che salviamo<br />

non solo in MATLAB® ma anche in programmi scritti con altri linguaggi <strong>di</strong> programmazione. Supponiamo<br />

<strong>di</strong> avere una matrice A e <strong>di</strong> volerla salvare nel file matriceA.dat. Scriveremo il comando<br />

save matriceA.dat A -ascii<br />

Quando vogliamo caricare in MATLAB® la matrice dal file useremo il comando<br />

load(’matriceA.dat’)<br />

e in questo modo avremo la matrice nella variabile matriceA (il nome del file senza l’estensione dopo il<br />

punto).<br />

12.4 MATLAB® per scrivere ed eseguire programmi<br />

Per eseguire determinati algoritmi o risolvere determinati problemi me<strong>di</strong>ante determinate istruzion, MA-<br />

TLAB® utilizza le cosiddette functions che possono avere uno o più variabili <strong>di</strong> ingresso (dati <strong>di</strong> input) e una<br />

o più variabili in uscita (dati <strong>di</strong> output).<br />

I files in cui vengono scritti i programmi si chiamano M-files dal fatto che hanno l’estensione .m:<br />

prova.m, fun.m, . . . I files vanno scritti con l’e<strong>di</strong>tor <strong>di</strong> testo <strong>di</strong> MATLAB® o con un altro e<strong>di</strong>tor <strong>di</strong> testo in<br />

formato ASCII.<br />

In MATLAB® abbiamo due tipi <strong>di</strong> files eseguibili: lo script, che presenta una lista <strong>di</strong> coman<strong>di</strong> da eseguire<br />

in ambiente MATLAB® , tra cui la chiamata alle functions proprie <strong>di</strong> MATLAB® o definite dall’utente<br />

(sempre tramite M-files) e le functions (<strong>di</strong> MATLAB® o definite dall’utente) che possono essere chiamate<br />

<strong>di</strong>rettamente nell’ambiente <strong>di</strong> lavoro <strong>di</strong> MATLAB® o all’interno <strong>di</strong> uno script.<br />

Per eseguire uno script salvato in nomefile.m non c’è bisogno <strong>di</strong> dover compilare il programma<br />

(come invece si fa con altri linguaggi <strong>di</strong> programmazione): basta lanciare il programma nella finestra dei<br />

coman<strong>di</strong> me<strong>di</strong>ante il nome del file (senza l’estensione .m) o me<strong>di</strong>ante il comando run(’nomefile.m’)<br />

o run(’nomefile’). Una function invece può essere eseguita tramite uno script oppure <strong>di</strong>rettamente<br />

nella finestra dei coman<strong>di</strong>, specificando le variabili <strong>di</strong> ingresso e <strong>di</strong> uscita, come vedremo con qualche<br />

esempio tra breve.<br />

Per quanto riguarda il nome da dare alle variabili, MATLAB® è sensibile alle lettere minuscole e<br />

maiuscole: una variabile chiamata A è <strong>di</strong>versa da a, una variabile XOLD è <strong>di</strong>versa da xold.<br />

È importante osservare, inoltre, che nello scrivere M-files le variabili utilizzate non vanno <strong>di</strong>chiarate, ma<br />

è bene sapere <strong>di</strong> che tipo sono (intere, reali in singola precisione, reali in doppia precisione,...)<br />

12.4.1 Strutture<br />

Elenchiamo in breve gli operatori logici.<br />

Ve<strong>di</strong>amo i vari cicli in MATLAB® (spiegazione dettagliata in aula e ampliata con materiale on-line<br />

<strong>di</strong>stributo durante il corso):<br />

188

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!