Definizioni preliminari Sommario - Caratteristiche Principali – Assegnazione di variabili - Scrittura e manipolazione di matrici e vettori - Funzioni predefinite.

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

Dipartimento di Matematica
Introduzione alla programmazione A. Ferrari. Il linguaggio C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede.
Capitolo 8 Sistemi lineari.
Realizzato da Alberto Jurij Plazzi
MATLAB Cristina Campi
MATLAB.
MATLAB.
MATLAB.
Introduzione a MATLAB Stefano Vigogna Dipartimento di Matematica
MATLAB. Outline Grafica 2D Esercizi Grafica 3D Esercizi.
MATLAB.
MATLAB.
MATLAB. Scopo della lezione Programmare in Matlab Funzioni Cicli Operatori relazionali Esercizi vari.
Dipartimento di Matematica
MATLAB Stefano Gagliardo
LE MATRICI.
1 a lezione - laboratorio a.a Corso di Laurea Ingegneria MECCANICA.
3 a lezione - laboratorio a.a Corso di Laurea Ingegneria MECCANICA.
Algebra delle Matrici.
Indirizzi delle variabili A ogni variabile sono associati tre concetti fondamentali: il valore memorizzato; il tipo dati di appartenenza; lindirizzo. Il.
FUNZIONI DI BIBLIOTECA
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 5 – Info B Marco D. Santambrogio – Riccardo Cattaneo –
RICHIAMI ELEMENTARI DI ALGEBRA MATRICIALE
Statistica per le decisioni aziendali ed analisi dei costi Modulo II - Statistica per le decisioni Aziendali Richiami di Algebra Matriciale.
MATLAB. Annalisa Pascarella
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab m-file m-file script script Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali.
MATLAB. Annalisa Pascarella
MATLAB.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali Indipendenza lineare,
MATLAB.
MATLAB.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali Esercizi vari Esercizi.
Interpolazione polinomiale a tratti
Soluzione FEM di problemi parabolici
FEM -2 Gabriella Puppo.
Sistemi di equazioni lineari
Funzioni matematico – statistiche I comandi matematici di più comune utilizzo, applicabili a scalari e matrici, sono: Sqrt(x), che calcola la radice quadrata.
Uso dei cicli y t =c+ty t-1 +e Un uso dei cicli può essere quello di creare una serie storica per cui y t =c+ty t-1 +e dove poniamo c e t scalari ed e~N(0,1).
Creazione di matrici Delimititatore di riga Delimititatore di matrice
Algebra matriciale e linguaggio matriciale in MATLAB
ORGANIZZAZIONE DELLA PRESENTAZIONE
Le matrici e I Sistemi lineari.
Espressioni condizionali
INTRODUZIONE A MATLAB.
MATRICI classe 3 A inf (a.s ).
Università degli Studi di Bari Laurea in Chimica Di spense di Informatica - Dott. F. Mavelli Programmare in Matlab Funzioni di Libreria Funzioni definite.
Lezione 3 Vettori e Matrici.
Diagrammi 2D e 3D Funzioni di ordine superiore
BIOINFO3 - Lezione 201 Come in ogni corso di introduzione ad un linguaggio di programmazione, proviamo a scrivere lormai celebre primo programma di prova.
File e Funzioni Si possono distinguere tre tipi di file che vengono utilizzati in MATLAB: M-file: hanno estensione .m e in essi vengono memorizzati i.
Lezione 1: Introduzione all’uso di Matlab
Esercitazione 1 - Introduzione Matlab. MATrix LABoratory Command window Current Directory Comandi recenti Variabili correnti Contenuto cartella corrente.
Analisi di Immagini e Dati Biologici Introduzione al linguaggio di MATLAB/OCTAVE Parte 2 16 L5.
Introduzione a Javascript
Variabili Numeriche –Interi (byte, short, int, long): complemento a 2 –A virgola mobile (float, double): IEEE 745 Alfanumeriche –Carattere (char): Unicode.
Parte 3 Lo stato: variabili, espressioni ed assegnazioni
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Strumenti per il calcolo numerico Matlab/Octave Marco D. Santambrogio – Ver. aggiornata.
Matematica mon amour Prof. Luigi Taddeo 28 Febbraio 2014.
INTRODUZIONE A MATLAB Sara Poltronieri. Avvio del programma Avvio di Matlab (Windows) Start  Programmi  Matlab (o icona) Avvio di Matlab (Linux) terminale.
Informatica e Informatica di Base
Excel.
Metodologia della ricerca e analisi dei dati in (psico)linguistica 25 Giugno 2015 Introduzione ad R
“ Pseudocodice ” Un programma per computer lavorerà su in insieme di “ variabili ” contenenti i dati del problema, soluzioni intermedie, soluzioni finali.
Sistemi di equazioni lineari. Sistemi di primo grado di due equazioni a due incognite Risolvere un sistema significa trovare la coppia di valori x e y.
Ancora sulle equazioni di secondo grado….. Equazione di secondo grado completa Relazione tra le soluzioni di un'equazione di secondo grado.
Parte 4 Programmare in Matlab – II Sommario Integrazione di Equazioni differenziali ordinarie Metodo di Eulero Esplicito Metodo di Eulero Esplicito + EsercizioEsercizio.
Parte 5 Sommario Uso routine di calcolo predefinite di Matlab –Risoluzione equazioni non lineariRisoluzione equazioni non lineari –Ricerca minimo di una.
Prof. Cerulli – Dott. Carrabs
Transcript della presentazione:

Definizioni preliminari Sommario - Caratteristiche Principali – Assegnazione di variabili - Scrittura e manipolazione di matrici e vettori - Funzioni predefinite in Matlab - Operazioni elementari con scalari e matrici - Risoluzione equazioni lineari - Funzioni vettorizzate ed operatori - Miscellanea Parte 1 Elementi di Matlab

Matlab è l’acronimo di Matrix Laboratory E’ un programma che lavora prevalentemente con matrici: qualunque oggetto introdotto è manipolato come se fosse una matrice E’ ideale per: –Sistemi lineari –Ha delle eccellenti capacità grafiche –E’ relativamente facile da usare –Ha una varietà di comandi aggiuntivi in grado di eseguire le operazioni più complesse (I Toolbox) –Lento rispetto ad altri software scientifici E’ un software numerico, non simbolico Elementi di Matlab - 11

L’unità fondamentale è il vettore e/o matrice Come si fa ad introdurre una variabile: In Matlab non è necessario definire il tipo delle variabili Per vedere quali sono le variabili presenti nella nostra sessione di lavoro è possibile usare i comandi who e whos Elementi di Matlab - 11 Il comando “=“ è utilizzato per assegnare ad una variabile (nel nostro caso “a”) un valore (in questo caso “2”) prompt dei comandi

Una volta assegnato un valore ad una variabile esso rimane in memoria, sino a quando l’utente non interviene –Assegnando un altro valore alla stessa variabile –Cancellando il valore della variabile con il comando clear –Per cancellare tutte le variabili presenti nella sessione si può usare il comando clear all Elementi di Matlab - 11 Il “;” alla fine del comando evita la stampa su video del risultato dell’operazione

Per Matlab lo scalare è un caso particolare di matrice di dimensioni (1x1) Analogamente il vettore è una matrice di una sola riga (o colonna) Esempio: Crea un vettore riga di 4 elementi (0,1,2,3) In modo equivalente è possibile creare un vettore colonna. Esempio: Elementi di Matlab - 11

Riassumendo: –Le righe sono separate dal carattere punto e virgola “;” –Gli elementi di una riga sono separati dalla virgola (o, equivalentemente, dallo spazio) Esempio: E’ chiaro che le matrici introdotte devono essere sintatticamente corrette. Elementi di Matlab - 11

Manipolazioni di matrici Gli oggetti matriciali possono essere maneggiati in modo abbastanza semplice. È possibile estrarre elementi da una matrice e/o un vettore. >> A = [4,6,3]; >> A(2) ans = 6 Elementi di Matlab - 11

Manipolazioni di matrici È possibile anche creare unioni di matrici e vettori Da notare che l’uso del separatore “;” al posto di “,” porta alla scrittura di un altro oggetto >> C =[4,5,6]; >> [A,C] ans = >> [A;C] ans = Elementi di Matlab - 11

Manipolazioni di matrici Riassumendo, il separatore “,” aggiunge delle colonne a sinistra delle preesistenti, il separatore “;” aggiunge delle righe al di sotto. Ovviamente, le espressioni devono essere sintatticamente corrette. Elementi di Matlab - 11

Matlab è in grado di riconoscere le espressioni basilari matematiche –>> pi (pi greco) –>> i (unità immaginaria, può anche essere usato j) –>> e=exp(1)(numero di Nepero) Un numero complesso può essere facilmente rappresentato: Elementi di Matlab - 11

Matlab è in grado di gestire una infinità di funzioni predefinite. Alcuni esempi: –>> sqrt(2) –>> log(2) –>> sin(pi) –>> cos(pi) –etc. etc. Elementi di Matlab - 11 Come mai non è esattamente uguale a 0 ?

Per ogni dubbio ed ignoranza, Matlab è dotato di un aiuto in linea molto utile per qualunque perplessità e consente di imparare il software in modo interattivo e veloce. help comando –Visualizza la sintassi e lo scopo del comando richiamato lookfor oggetto –Ricerca, in tutti i comandi predefiniti di Matlab, quelli in cui compare l’oggetto richiamato Elementi di Matlab - 11

Esempio: Nota: i comandi di Matlab nella guida in linea sono sempre scritti in maiuscolo, ma si usano sempre in minuscolo Matlab è case-sensitive Elementi di Matlab - 11

Analogamente per lookfor: lookfor consente la ricerca di tutti i comandi in cui è coinvolto l’oggetto che cerchiamo Le istruzioni lookfor ed help permettono un’ottima conoscenza del software in modo autodidattico Elementi di Matlab - 11 >> lookfor pi DATATIPINFO Produce a short description of a variable. MEX Compile MEX-function. PI EXPINT Exponential integral function. PINV Pseudoinverse. MKPP Make piecewise polynomial. PCHIP Piecewise Cubic Hermite Interpolating Polynomial. PPVAL Evaluate piecewise polynomial. UNMKPP Supply details about piecewise polynomial.

Operazioni elementari Matlab consente le operazioni elementari su scalari in modo semplice Elementi di Matlab - 11

Operazioni elementari con Matrici Le operazioni possono essere estese in modo immediato ai vettori. Esercizio: Si creino tre matrici: Verificare quali delle seguenti operazioni sono corrette e quali no: A+B, A+C, A*C, C*A Il prodotto applicato alle matrici è il prodotto riga per colonna. Elementi di Matlab - 11

Operazioni elementari con Matrici Oltre alle operazioni introdotte Matlab è provvisto anche di operazioni sui singoli elementi di matrici e o vettori. Questo tipo di operazioni si ottiene agiungendo un “.” prima del segno di operazione desiderato. Esempio: per moltiplicare tra di essi i singoli elementi di due vettori delle stesse dimensioni: >> A = [1,2,3]; >> B = [1,2,3]; Siamo interessati al vettore C prodotto dell’i- esimo elemento di A con l’i-esimo elemento di B Elementi di Matlab - 11

Operazioni elementari con le matrici La sintassi corretta è: Analogamente: Elementi di Matlab - 11 Da notare il punto prima del simbolo di operazione

Risoluzione equazioni lineari È possibile risolvere sistemi di equazioni lineari in modo semplice con l’introduzione di un nuovo operatore divisione: “\” Esempio: Si consideri il sistema di equazioni lineari: Può essere scritto in forma matriciale: Elementi di Matlab - 11

Risoluzione equazioni lineari Dove: Per determinare i valori di x, si effettua l’operazione: Elementi di Matlab - 11 >> A=[1,1,1;1,2,4;1,3,pi]; >> b=[0;-1;2]; >> Da notare che il vettore b è un vettore colonna Nota: l’operazione x=A\b è ben diversa dall’operazione x=inv(A)*b I risultati sono gli stessi, ma la procedura è differente

Risoluzione equazioni lineari È possibile calcolare il residuo: Elementi di Matlab - 11 Il residuo è una misura della distanza del valore calcolato dal valore vero

Funzioni vettorizzate e operatori Matlab ha molti comandi interni per creare matrici speciali. La seguente istruzione crea un vettore riga le cui componenti aumentano aritmeticamente: Le componenti possono anche cambiare con passi non unitari. Elementi di Matlab - 11

Funzioni vettorizzate e operatori Sono permessi anche passi negativi Altro comando per creare vettori con termini equispaziati: –linspace Per creare vettori che siano equispaziati in scala logaritmica: –logspace Elementi di Matlab - 11

Funzioni vettorizzate e operatori La costruzione di questi vettori è abbastanza utile per fare grafici di funzione Le funzioni in Matlab devono essere vettorizzate Ovvero, il diagramma della funzione f(x) è effettuato rappresentando graficamente i vettori (x,f(x)), in cui il vettore f(x) è ottenuto applicando la funzione f al vettore x Esempio: >> x=[0:0.1:2*pi]; >> y=sin(x); >> plot(x,y) Elementi di Matlab - 11

Funzioni vettorizzate e operatori Per creare valori di funzioni non predefinite in Matlab, è possibile usare le operazioni aritmetiche tradizionali, ma con la accortezza che gli operatori siano preceduti dal punto “.” Esempio: >> x = [-5:.1:5]; >> y = x./(1+x.^2); >> plot(x,y) Da notare il punto prima degli operatori Elementi di Matlab - 11

Miscellanea L’apice “ ‘ ” crea la trasposta di un oggetto Nel caso che la matrice sia immaginaria, l’operazione restituisce la trasposta coniugata Nel caso si fosse interessati alla trasposta semplice, l’operatore da usare è: “.’ ” Elementi di Matlab - 11

Miscellanea – Creazione matrici particolari zeros(m,n) crea una matrice mxn di zeri ones(m,n) crea una matrice mxn di valori unitari eye(n) crea una matrice identità di dimensioni nxn diag(v) (dove è un vettore di dimensioni n) crea una matrice diagonale di dimensione (nxn) i cui elementi sulla diagonale sono le componenti del vettore v Elementi di Matlab - 11

Miscellanea – Funzioni utili max(x) restituisce il valore massimo di x, se x è un vettore, restituisce il vettore riga che contiene l’elemento più grande di ogni colonna, se x è una matrice min(x) restituisce il valore minimo di x, se x è un vettore, restituisce il vettore riga che contiene l’elemento più piccolo di ogni colonna, se x è una matrice abs(x) restituisce un vettore, delle stesse dimensioni di x, i cui termini sono i moduli delle singole componenti di x size(A) fornisce le dimensioni di A Elementi di Matlab - 11

Miscellanea – Istruzioni utili save fname salva tutte le variabili nel file chiamato fname.mat (file binario) save fname y salva la variabile y (possono anche essere più di una) nel file chiamato fname.mat (file binario) load fname carica tutte le variabili dal file chiamato fname.mat Elementi di Matlab - 11

Miscellanea – Istruzioni utili save fname.txt varname –ascii –double -tabs salva i dati contenuti nella variabile varname nel file chiamato fname.txt (file ascii) load fname.txt carica i dati dal file chiamato fname.txt creando una variabile chiamata fname exit (o quit) esce dal programma Elementi di Matlab - 11

Esercizio - 1 Creare un vettore riga, a, ed un vettore colonna, b, di otto e sette elementi, rispettivamente Creare una matrice C dal prodotto dei due vettori Salvare la matrice C in un file ascii Estrarre dalla matrice C l’elemento massimo e minimo Elementi di Matlab - 11

Esercizio - 2 Risolvere il seguente sistema lineare: Elementi di Matlab - 11