Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Introduzione a Matlab: Guida per studenti universitari, Dispense di Calcolo Numerico

Scalari in Matlab Vettori in Matlab Matrici in Matlab Grafica Istruzioni Simboliche

Tipologia: Dispense

2016/2017

Caricato il 21/04/2017

ilaria-caroli
ilaria-caroli 🇮🇹

2 documenti

1 / 35

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Introduzione a Matlab Scalari in Matlab Vettori in Matlab Matrici in Matlab Grafica Funzioni simboliche Istruzioni di controllo
Introduzione a Matlab
Silvia Falletta
Dip. Scienze Matematiche - Politecnico di Torino
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23

Anteprima parziale del testo

Scarica Introduzione a Matlab: Guida per studenti universitari e più Dispense in PDF di Calcolo Numerico solo su Docsity!

Introduzione a Matlab

Silvia Falletta

Dip. Scienze Matematiche - Politecnico di Torino

Introduzione a Matlab

Alcune informazioni su Matlab Matlab è uno strumento per il calcolo scientifico utilizzabile a più livelli calcolatrice tascabile ambiente grafico linguaggio di programmazione Il nome Matlab è una abbreviazione di Matrix-Laboratory: la struttura di base è la matrice: ogni quantità (variabile) viene trattata come una matrice uno scalare reale è una matrice 1 × 1

Le raccolte di funzioni dedicate ad uno specifico argomento vengono dette toolboxes. La finanza, la statistica, l’analisi dei segnali e delle immagini sono alcuni dei campi a cui sono dedicati dei toolboxes di Matlab

Dove trovare ulteriori informazioni su Matlab?

sul sito ufficiale di Matlab www.mathworks.com sono disponibili numerosi manuali (in inglese) sia introduttivi che dedicati più approfonditamente ad aspetti specifici (programmazione, grafica, toolboxes...) sui siti di numerose università sono riportati tutorial ed esempi di problemi studiati con l’uso di Matlab

Matlab è un software a pagamento. Esistono softwares gratuiti, Octave - Scilab, che ne riproducono buona parte delle funzioni fondamentali (con minime differenze di sintassi e una grafica un po’ piú povera). www.octave.org, www.scilab.org.

Per iniziare...

All’avvio di Matlab appare il prompt », ovvero la linea da cui digitare le istruzioni nello spazio di lavoro. Il comando demo mostra degli esempi significativi di possibili applicazioni del software. Il comando doc introduce ad alcuni aspetti di base di Matlab e mostra quali pacchetti (toolboxes) siano installati nella versione in uso. L’help (doc) di MATLAB permette di ottenere informazioni dettagliate su qualsiasi comando. Ad esempio: help sqrt (oppure doc sqrt). Il solo comando help elenca gli argomenti per i quali è disponibile la guida, suddivisi in grandi aree tematiche (funzioni elementari, trattamento di matrici, grafica...)

Scalari in Matlab

In Matlab non è necessario definire e dichiarare le variabili. Tutte le variabili vengono trattate senza distinzione fra interi, reali e complessi. Iniziamo ad usare Matlab come una semplice calcolatrice: ad esempio scriviamo »z=3* assegnando cosi alla variabile z il valore 6. Se scriviamo solamente »3* il valore 6 viene assegnato alla variabile ans (abbreviazione di answer). Tale variabile contiene sempre l’ultimo valore non esplicitamente assegnato dall’utente ad una variabile.

Il ; alla fine dell’istruzione sopprime la visualizzazione a schermo del risultato (ma non l’esecuzione effettiva dell’operazione!).

Ad esempio, assegniamo alla variabile a il risultato di una certa operazione, senza visualizzarlo, e poi richiamiamo a (senza ;) per vederne il valore »a=sqrt(100); »a

Se a e b sono due variabili scalari, abbiamo: la somma a+b, la sottrazione a-b, il prodotto a*b, la divisione a/b, la potenza aˆb.

Ricordiamo che in Matlab vale la usuale precedenza fra operazioni, ad esempio la moltiplicazione (e divisione) ha precedenza sulla addizione (e sottrazione) e l’elevamento a potenza ha precedenza su addizione, sottrazione, moltiplicazione e divisione.

Variabili predefinite: sono pi (pigreco), i,j (unità immaginarie), ... Ogni variabile può essere tuttavia sovrascritta, ad esempio possiamo assegnare pi=5 (attenzione!). Per cancellare il valore di una variabile (o se è predefinita riportarla al suo valore di default) usiamo il comando clear. Ad esempio »pi

»pi=5; » clear pi » pi

Il comando clear all cancella il valore di tutte le variabili (provare ad usare tale comando in combinazione con il comando whos che elenca le variabili presenti nello spazio di lavoro).

Formati di output

In output una variabile intera viene visualizzata generalmente in un formato privo di punto decimale. Una variabile reale viene visualizzata solo con quattro cifre decimali. » sin(2) ans =

» log(3) ans =

Se si vuole modificare il formato di output si può utilizzare: format short fixed point con 4 cifre decimali format long fixed point con 14 cifre decimali format short e floating point con 4 cifre decimali format long e floating point con 15 cifre decimali rat frazione irriducibile

Vettori in Matlab

Per introdurre un vettore riga è sufficiente inserire fra parentesi quadre i valori delle componenti del vettore stesso separati da spazi bianchi o virgole, ad esempio per introdurre w ∈ R^1 ×^3 : » w=[1 2 3]

oppure » w=[1, 2, 3]

Per introdurre un vettore colonna basta inserire fra parentesi quadre i valori delle componenti del vettore stesso separati da un punto e virgola, ad esempio per introdurre v ∈ R^3 ×^1 : » v=[1; 2; 3]

Utilità

Il comando v=[1:10] genera un vettore riga di dieci componenti dato dai valori 1,2,...,10.

Il comando v=[1:.5:10] genera un vettore riga di venti componenti dato dai valori 1,1.5,2,2.5,...,9.5,10, ovvero con passo 0.5.

La sintassi generale è v=[valore_iniz:passo:valore_finale]. Il passo può essere anche negativo, ad ex. v=[10:-.5:1];

Il comando linspace(valore_iniz, valore_finale, N) genera N valori equispaziati fra valore_iniz e valore_finale (estremi compresi). Ad esempio » v=linspace(0,1,5) 0 0.2500 0.5000 0.7500 1.

Inoltre, dato un vettore v, il comando length(v) ne restituisce la lunghezza.

Il comando zeros(n,1) produce un vettore colonna di lunghezza n con elementi tutti nulli.

Il comando zeros(1,n) produce un vettore riga di lunghezza n con elementi tutti nulli.

Il comando ones(n,1) (ones(1,n)) genera un vettore colonna (riga) con tutte le componenti pari a 1.

Operazioni su vettori

Dato un vettore v di n componenti, si può calcolare in Matlab: vettore trasposto: v’ (verificare le dimensioni di v’!) modulo del vettore ||v || =

n i = 1 v^ 2 i : comando^ norm(v) (equivalente alla norma 2 del vettore: norm(v,2)) Siano ora v , w due vettori riga di Rn, con componenti vi e wi , i = 1 ,... , n rispettivamente. Si ha: somma algebrica v + w = (v 1 + w 1 , ..., vn + wn). In Matlab: v+w prodotto scalare (v , w ) = (v 1 w 1 + v 2 w 2 + ... + vnwn). In Matlab: v*w’ (oppure dot(v,w)) Attenzione alle dimensioni dei vettori!

Istruzioni di manipolazione di sottoblocchi di

vettori e di concatenazione

Siano v=[1 2 3 4 5] e w=[100 200]. Per concatenare due vettori usiamo la sintassi » z=[v w] » z 1 2 3 4 5 100 200 Per eliminare da v la terza e la quarta componente usiamo il vettore vuoto []: » v=[1 2 3 4 5]; » v(3:4)=[]; » v 1 2 5

Siano v=[1 2 3 4 5] e w=[100 200]. Per sostituire alle ultime due componenti di v le componenti di w, scriviamo » v=[1 2 3 4 5]; » w=[100 200]; » v(end-1:end)=w; » v 1 2 3 100 200