MATLAB. Programmare in MATLAB. Le espressioni in MATLAB

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "MATLAB. Programmare in MATLAB. Le espressioni in MATLAB"

Transcript

1 MATLAB Programmare in MATLAB 1 Le espressioni in MATLAB MATLAB consente di programmare utilizzando espressioni matematiche, che lavorano con matrici Alla base delle espressioni ci sono Numeri Variabili Operatori Funzioni 2

2 I Numeri MATLAB usa la notazione decimale convenzionale con segno La notazione scientifica usa la lettera e (E) per specificare il fattorediscalain potenzedi10. I numeri complessi usano i o j come suffisso. Tuttii calcolieffettuatiin MATLAB sonoeseguitiin doppia precisione, ma si possono visualizzare in un formato diverso usando i comandi: format short format long Format short e Format long e Virgola fissa con 4 decimali Virgola fissa con 15 decimali Notazione scientifica 4 dec. Notazione scientifica 15 dec. 3 Esempio x = [4/ e-6] format short format short e format short g format long format long e format long g format bank format rat format hex e e e e e e /3 1/ ff eb4b6231abfd271 4

3 Le Costanti Nome pi i, j eps realmin realmax Inf NaN Valore Unità immaginarie, sqrt(-1) Floating-point relative precision, 2-52 Smallest floating-point number, Largest floating-point number, (2-ε) Infinito Not-a-number NOTA I nomi delle costanti non sono riservati : si può sovrascrivere ognuno di essi con una nuova variabile Il valore originale può essere ripristinato digitando clear nome_costante Infinito viene generato quando si divide per zero un valore non nullo o quando ben definite espressioni matematiche forniscono un risultato che supera il massimo limite realmax NaN viene generato quando si vogliono valutare forme indeterminate del tipo 0/0 o Inf-Inf 5 Le Variabili MATLAB non richiede che le variabili siano dichiarate o dimensionate all inizio del programma Quando MATLAB trova un nuovo nome di variabile crea automaticamente la variabile e alloca la quantità di memoria necessaria. Se la variabile esiste già MATLAB ne aggiorna il contenuto e, se necessario, varia di conseguenza la memoria ad essa allocata. I nomi di variabili possono essere composti di lettere, numeri, o underscores, ma il primo carattere DEVE essere alfabetico. MATLAB usa solo i primi 31 caratteri del nome della variabile. MATLAB è case sensitive, ossia riconosce lettere maiuscole e lettere minuscole. A e a non sonola stessa variabile. Per visualizzare il contenuto delle variabili basta digitarne il nome sulla linea di comando senza punto e virgola oppure cliccare sulla variabile mostrata sul Workspace Browser. 6

4 Operatori (Richiamo) Le espressioni usano i ben noti operatori aritmetici e le regole della precedenza aritmetica. + - * / \ ^ '.*.^ ecc. Somma Sottrazione Moltiplicazione Divisione Divisione a Sinistra Elevamento a Potenza Trasposta Complessa Coniugata Esegue le operazioni *, ^, ecc. elemento per elemento 7 Generazione di Matrici zeros Contiene tutti zeri ones Contiene tutti uno rand Gli elementi hanno valori casuali uniformemente distribuiti randn Gli elementi hanno valori casuali a distribuzione normale Alcuni esempi: 8

5 Le Funzioni MATLAB fornisce un gran numero di funzioni matematiche elementari, come abs, sqrt, exp, and sin. NOTA: Effettuare la radice quadrata o il logaritmo di un numero negativo non dà errore: il risultatocorretto(complesso) viene calcolato automaticamente MATLAB fornisce inoltre molte altre funzioni matematiche più complesse, tra cui le funzioni di Bessel e le funzioni gamma. La maggior parte di queste funzioni accetta argomenti complessi. Il comando help elfun fornisce una lista delle funzioni matematiche elementari I comandi help specfun e help elmat forniscono rispettivamente una lista delle funzioni più complesse e delle funzioni matriciali Alcune funzioni, come sqrt e sin, sono built in, fanno parte cioè del nucleo di MATLAB e sono veramente efficienti, ma i dettagli computazionali non possono essere visualizzati. Altre funzioni, come gamma and sinh, sono implementate in M- files e di queste è possibile visualizzare il codice e persino modificarlo a piacere 9 Esempi di Espressioni» rho = (1+sqrt(5))/2 rho = » a = abs(3+4i) a = 5» z = sqrt(besselk(4/3,rho-i)) z = i» huge = exp(log(realmax)) huge = e+308» toobig = pi*huge toobig = Inf 10

6 Program Files MATLAB è sia un linguaggio di programmazione molto potente sia un ambiente di calcolo interattivo I files che contengono codice in linguaggio MATLAB si chiamano M-files M-files possono essere creati utilizzando un qualsiasi text editor, e poi possono essere usati esattamente come ogni altra funzione o comando MATLAB nella command window. Ci sono due tipi di M-files: Scripts (macro) che non accettano variabili in ingresso nè forniscono variabili in uscita, bensì lavorano con i dati nel workspace. Funzioni che accettano/richiedono normalmente variabili in ingresso e restituiscono variabili in uscita. Le variabili interne costituiscono variabili locali all interno della funzione. Un programmatore MATLAB principiante può creare gli M-files che vuole eseguire nella current directory. Via via svilupperà molti M-files e preferirà organizzarli in più directories e toolboxes personali che potrà inserire nel search path Se si duplicano i nomi delle funzioni, MATLAB esegue la prima cheapparenelsearch path. 11 Scripts Quando viene lanciato uno script, MATLAB semplicemente esegue i comandi che trova nel file Gli scripts possono lavorare su dati esistenti nel workspace, o possono crearne di nuovi su cui lavorare. Gli scripts non restituiscono alcuna variabile di uscita Tutte le variabili che essi creano rimangono nel workspace e possono essere utilizzate per calcoli successivi. Gli scripts possono produrre uscite grafiche utilizzando funzioni come plot. 12

7 Esempio di Script Creiamo con l editor un file script che chiamiamo magicrank.m che contiene i seguenti comandi MATLAB: % script magicrank.m % Investigate the rank of magic squares r=zeros(1,32); for n=3:32 r(n)=rank(magic(n)); end r bar(r) 13 Uscita dello Script magicrank.m Lanciare l istruzione magicrank fa sì che MATLAB esegua i comandi, calcoli il rango delle prime 30 matrici magic, e visualizzi il risultato tramite un diagramma a barre. Quando l esecuzione del file è finita le variabili n e r restano nel workspace. 14

8 Le Funzioni Le funzioni sono degli M-files che accettano variabili d ingresso e restituiscono variabili in uscita Il nome dell M-file dovrebbe essere nomefunzione.m Le funzioni lavorano sulle variabili all interno del loro workspace che è separato dal workspace al quale possiamo accedere dal prompt di MATLAB. La prima riga di una funzione M-file inizia con la parola chiave function. Questo esprime il nome della funzione e l ordine delle variabili d ingresso. Le righe successive fino al primo spazio o alla prima linea eseguibile sono righe di commento che forniscono il testo dell help 15 Esempi di funzioni L M-file rank.m si trova nella directory toolbox/matlab/matfun Possiamo aprire il file ed abbiamo: function r = rank(a,tol) %RANK Matrix rank %RANK(A) provides an estimate of the number of %linearly independent rows or columns of a matrix A. %RANK(A,tol) is the number of singular values of A that are %larger than tol. %RANK(A) uses the default tol=max(size(a))*norm(a)*eps. s = svd(a); if nargin == 1 tol = max(size(a) )*max(s)*eps; end r = sum(s > tol); 16

9 Esempi di Funzioni (segue) In questo caso si hanno fino a 2 variabili d ingresso e una variabile d uscita. Digitando help rank sulla command window MATLAB visualizzerà tutto quello che è scritto all inizio della funzione come commento Il resto del file è il codice MATLAB eseguibile che definisce la funzione. La variabile s introdotta nel corpo della funzione, così come le variabili sulla prima riga, r, A and tol, sono tutte locali nella funzione; sono separate da tutte le altre variabili contenute nel workspace. Questo esempio mostra un aspetto delle funzioni di MATLAB che non si trova solitamente in altri linguaggi di programmazione un numero variabile di argomenti 17 Esempi di Funzioni (segue) La funzione rank può essere usata in diversi modi: rank(a) r = rank(a) r = rank(a,1.e-6) Se non viene indicata una variabile d uscita, il risultato viene memorizzto in ans. Se la seconda variabile d ingresso non viene fornita, la funzione assume il valore di default. All interno del corpo di una funzione, le due grandezze nargin and nargout dicono il numero di variabili di ingresso e d uscita utilizzato per ogni particolare uso della funzione. La funzione rank usa nargin, mentre non ha bisogno di usare nargout. 18

10 Variabili Globali Per utilizzare una stessa variabile in più funzioni si dichiara la variabile come global in tutte le funzioni. La dichiarazione delle variabili globali deve essere fatta prima che la variabile venga realmente usata in una funzione. Esempio: function h = falling(t) global GRAVITY h = 1/2*GRAVITY*t.^2; Lanciando al prompt le istruzioni: global GRAVITY GRAVITY = 32; y = falling((0:.1:5) ) tramite le due dichiarazioni global rendiamo il valore assegnato a GRAVITY al prompt disponibile anche all interno della funzione. 19 Vettorizzazione Per rendere MATLAB più veloce ed efficiente possibile è importante vettorizzare gli algoritmi dei propri M-files. Dove con altri linguaggi di programmazione bisogna usare cicli FOR o DO, MATLAB può utilizzare operazioni tra vettori o matrici. Es: x =.1; for k = 1:1001 y(k)=log10(x); x = x+.01 end Una versione vettorizzata dello stesso codice è x =.01:.01:10 y = log10(x) Per codici più complicati le versioni vettorizzate non sono poi così ovvie. Tuttavia quando la velocità di elaborazione è importante bisogna sempre cercare di vettorizzare il proprio algoritmo. 20

11 Pre-definizione Qualora non fosse prorpio possibile vettorizzare un pezzo di codice, si possono rendere i cicli più veloci pre-definendo i vettori o le matrici in cui andranno memorizzati i risultati Esempio: r = zeros(32,1); for n=1:32 r(n) = rank(magic(n)); end Senza la pre-definizione nell esempio precedente l interpreter di MATLAB deve aumentare il vettore r di un elemento ogni passo del ciclo. La pre-definizione di un vettore elimina questo step e rende più veloce l esecuzione. 21 Istruzioni di Flow Control I costrutti di MATLAB di tipo flow control: if switch and case for while continue break 22

12 L Operatore IF La forma generale del costrutto IF-THEN-ELSE è la stessa di un qualsiasi linguaggio di programmazione: if condizione1, operazioni1; elseif condizione2, operazioni2; else operazioni3; end; L istruzione if valuta una espressione logica ed esegue un gruppo di istruzioni solo quando l espressione è verificata. Le istruzioni elseif e else permettono l esecuzione di gruppi alternativi di istruzioni. La parola end, che chiude un if, termina l ultimo gruppo di istruzioni. I gruppi di istruzioni sono delineati dalle 4 parole chiave e non sono necessarie parentesi graffe nè quadre. 23 L Operatore IF (segue) Condizione1,2 devono essere condizioni che restituiscono come risultato VERO (1) o FALSO (0). Gli operatori disponibili per tali confronti sono: <, > <=, >= == ~= & ~ maggiore di, minore di non superiore a, non inferiore a uguale diverso and logico or logico not logico 24

13 L Operatore IF - Esempio Operazioni1,2,3 sono le operazioni da compiere se la condizione corrispondente risulta vera. Le varie istruzioni sono separate da virgole e l'ultima è seguita da un punto e virgola. Solo la prima istruzione che verifica la condizione ad essa associata verrà eseguita if n==10, a=b*c, d=e/f; elseif n~=20, a=e*f, d=a/b; else disp ('Errore!!!'); end; 25 L Operatore IF (segue) E importante chiarire COME gli operatori relazionali e le istruzioni if lavorano sulle matrici. if A == B,... Questo è codice MATLAB corretto, e fa quello che ci si aspetta quando A e B sono scalari. Quando A e B sono matrici, A == B non va a verificare SE A e B sono uguali, ma testa DOVE sono uguali, ossia per quali elementi; ne risulta un altra matrice di 0 e 1 che mostra l uguaglianza (o meno) elemento-per-elemento. Se infine A e B non hanno la stessa dimensione, A == B dà errore. La maniera più appropriata per verificare l uguaglianza tra due variabili è quella di utilizzare la funzione isequal if isequal(a,b),... (A e B possono anche essere due matrici) Ci sono molte funzioni atte a rendere i confronti tra matrici simili ai confronti tra scalari all interno di costrutti if, ad es.: isequal, isempty, all, any 26

14 L Istruzione Switch L istruzione switch esegue gruppi di istruzioni in dipendenza dal valore di una variabile o di una espressione. Le parole chiave case e otherwise indicano i gruppi. Viene eseguito solo il primo caso che corrisponde Lo switch deve sempre essere chiuso con un end. Diversamente dal linguaggio C l istruzione switch in MATLAB esegue il caso corrispondente alla prima condizione verificata ed esce, quindi l istruzione break non è richiesta. 27 Istruzioni per Cicli I cicli si possono fare con due diversi costrutti: Il ciclo for ripete un gruppo di istruzioni un numero fisso, assegnato, di volte: for k = 1:step:n, operazioni, end; Il ciclo esegue le operazioni (separate da virgole) incrementando la variabile k da 1 a n con il passo indicato in step. Un end dopo l ultima istruzione indica la fine del ciclo Oppure... 28

15 Istruzioni per Cicli (segue) Il ciclo while ripete un gruppo di istruzioni per un numero indefinito di volte sotto il controllo di una condizione logica. while condizione, operazioni; end; Il ciclo esegue le operazioni (separate da virgole) fino a che la condizione è verificata. La condizione viene costruita con le stesse regole (vincoli ed operatori) di quella dell'if-then-else. 29 Esempi for n = 3:32 r(n) = rank(magic(n)); end r for i = 1:m for j = 1:n H(i,j) = 1/(i+j); end end a = 0; fa = -Inf; b = 3; fb = Inf; while b-a > eps*b x = (a+b)/2; fx = x^3-2*x-5; if sign(fx) == sign(fa) a = x; fa = fx; else b = x; fb = fx; end end x 30

16 L Istruzione Break L istruzione break permette di uscire prima da un ciclo for o while. Se i cicli sono uno dentro l altro, break esce solo dal ciclo nel quale è contenuto Esempio: a = 0; fa = -Inf; b = 3; fb = Inf; while b-a > eps*b x = (a+b)/2; fx = x^3-2*x-5; if fx == 0 break elseif sign(fx) == sign(fa) a = x; fa = fx; else b = x; fb = fx; end end x 31 Importare ed Esportare Dati Ci sono varie tecniche per importare nel workspace di MATLAB i dati creati da altre applicazioni, compreso un Import Wizard Ed altrettante per salvare le variabili contenute nel workspace in un formato tale da poter essere utilizzate da altre applicazioni L Import Wizard è stato introdotto nelle versioni più recenti di MATLAB e permette di importare dati con estensione.dat,.txt, :XLS, ecc. cliccando sul nome del file nel Current Directory Browser o digitando uiimport <nome file> o selezionando File -> Import Data sulla Command Window. Il modo più veloce in Matlab è utilizzare i comandi save e load che salvano e richiamano file con estensione.mat, che però possono essere utilizzati solo in Matlab Altrimenti si possono utilizzare i comandi standard di scrittura e lettura di un file di testo 32

17 LOAD File I/O load carica nel workspace tutte le variabili contenute in matlab.mat load filename carica nel workspace tutte le variabili contenute in filename Se filename non ha estensione, load controlla se filename è un MAT-file. Se ha una estensione diversa, lo considera un file ASCII. load filename X Y Z... Tra tutte le variabili salvate in filename carica solo le variabili X Y Z specificate. load ascii filename o load mat filename obbliga load a considerare il file come un file ASCII o un file MAT, senza curarsi dell estensione del file. Con -ascii, load dà errore se il file non è di testo (numerico). Con -mat, load dà errore se il file non è un MAT-file. SAVE save salva tutte le variabili del workspace in formato binario nella directory corrente in un MAT-file chiamato matlab.mat. save filename salva tutte le variabili del workspace in filename.mat nella directory corrente. save filename var1 var2... Salva solo le variabili specificate in filename.mat. save... option salva le variabili del workspace nel formato specificato da option 33 I/O su file di testo Per creare un archivio: Definisco l archivio file.txt e lo identifico con fid: fid=fopen ( file.txt, wt ); Deposito nell archivio la variabile A (matrice a 2 colonne) nel formato desiderato: fprintf ( nomefile, %6.2g %8.4g\n, A); la prima colonna con 6 cifre di cui 2 decimali la seconda colonna 8 cifre di cui 4 decimali Chiudo il file con il comando: fclose (fid); Se voglio analizzare il file cosi creato posso farlo con un editor di testo qualsiasi. Per leggere dati da un archivio: L archivio di testo file.txt può anche essere stato generato con un programma esterno. Lo identifico con fid: fid = fopen ( file.txt, r ); Si preleva dall archivio fid la matrice A leggendo le due colonne di numeri in formato %g A = fscanf ( fid, %g %g, [2 inf] ); 34

18 MATLAB Cenni di Analisi Numerica Minimizzazione di funzioni Calcolare gli zeri di una funzione Integrazione numerica 35 Come Rappresentare le Funzioni Le funzioni matematiche possono essere espresse come vere e proprie funzioni MATLAB in M-files o come oggetti inline. Consideriamo per es. la funzione 1 1 f( x) = ( x 0.3) ( x 0.9) Come funzione MATLAB %humps.m. function y = humps(x) y = 1./((x - 0.3).^ ) + 1./((x - 0.9).^ ) - 6; Per calcolare la funzione humps in 2.0, si può utilizzare l per ottenere un function handle (letteralmente manico) per humps, da passare alla funzione feval. fh feval(fh,2.0) ans =

19 Come Rappresentare le Funzioni - 2 Come oggetto inline f = inline( 1./((x-0.3).^ ) + 1./((x-0.9).^ )-6 ); f(2.0) ans = E anche possibile creare delle funzioni di più variabili con il comando inline specificando i nomi delle variabili di ingresso insieme all espressione della funzione Per esempio: f= inline('y*sin(x)+x*cos(y)','x','y') f(pi,2*pi) ans = Minimizzare funzioni di una variabile Data una funzione matematica di una variabile implementata in un M-file si può utilizzare la funzione fminbnd per trovare un punto di minimo locale della funzione in un dato intervallo. Per esempio, per trovare un minimo della funzione humps nel range (0.3, 1), la linea di codice è x = che restituisce x = Si può anche ottenere una tabella di output passando a fminbnd una quarta variabile di ingresso creata dal comando optimset: x = 38

20 Minimizzare funzioni di una variabile - 2 Il risultato sarà: Func-count x = x f(x) Procedure Initial Golden Golden Parabolic Parabolic Parabolic Parabolic Parabolic Parabolic Il risultato mostra il valore corrente di x ed il valore della funzione f(x) ad ogni istante in cui viene calcolata la funzione. Per fminbnd calcolare la funzione corrisponde ad una iterazione dell algoritmo. L ultima colonna mostra quale procedura viene utilizzata ad ogni iterazione, o la ricerca della sezione aurea o una interpolazione parabolica. 39 Minimizzare funzioni di più variabili La funzione fminsearch è simile a fminbnd ma lavora con funzioni di più variabili, ed è necessario definire le condizioni iniziali tramite un vettore x 0 anziché tramite un intervallo. fminsearch cerca un punto di minimo locale della funzione matematica che sia vicino al vettore x 0 e restituisce tale valore in un vettore x. Esempio function b = three_var(v) %create a function three_var of 3 variables x = v(1); y = v(2); z = v(3); b = x.^ *sin(y) - z^2*x^2*y^2; Vogliamo trovare un minimo per questa funzione vicino a (-0.6, -1.2, 0.135) v = [ ]; a = a =

21 Opzioni per la Minimizzazione Si possono specificare opzioni di controllo che assegnano alcuni parametri di minimizzazione utilizzando le sintassi: x = fminbnd(fun,x1,x2,options) x = fminsearch(fun,x0,options) options è una struttura usata dalle funzioni di ottimizzazione. Si usa optimset per assegnare i valori alla struttura options: options = optimset('display','iter'); fminbnd e fminsearch usano solo i parametri riportati di seguito. options.display I passi intermedi nella minimizzazione vengono visualizzati sullo schermo se si assegna 'iter a questa opzione; se, altrimenti, si assegna 'off', non verranno visualizzate le soluzioni intermedie; se, infine, si assegna final verrà visualizzato soltanto il risultato finale. options.tolx La tolleranza di arresto per x. Il valore di default è 1.e-4. options.tolfun (fminsearch) La tolleranza di arresto per il valore della funzione. Il valore di default è 1.e-4. options.maxfunevals Il massimo numero di iterazioni previsto. Il valore di default è 500 per fminbnd e 200*length(x0) per fminsearch. 41 Trovare gli Zeri di Funzioni La funzione fzero cerca per quale valore una equazione di una variabile si annulla. Tale funzione accetta come condizione iniziale sia un valore (punto di partenza) sia un vettore di due elementi che rappresenta un intervallo. Fornendo a fzero un punto di partenza x 0, fzero inizialmente cerca un intervallo intorno a questo punto in cui la funzione cambia segno. Se lo trova, fzero restituisce un valore vicino a quello in cui la funzione cambia segno. Altrimenti, restituisce NaN. In alternativa, se si conoscono due punti dove la funzione assume segni opposti, si può specificare l intervallo iniziale tramite un vettore di due elementi; fzero sicuramente restringerà questo intervallo fino a restituire un valore vicino al punto di cambiamento di segno. 42

22 Esempio Usiamo fzero per calcolare uno zero della funzione humps vicino a -0.2 a = a = fzero cerca in un intorno di -0.2 fin quando trova un cambio di segno tra and Questo intervallo viene poi ristretto fino a Possiamo verificare che in la funzione assume un valore molto vicino a zero: humps(a) ans = e -16 Supponiamo ora di conoscere due punti dove i valori della funzione humps hanno segno opposto come per es. x = 1 and x = Esempio (segue) humps(1) ans = 16 humps(-1) ans = Possiamo allora fornire questo intervallo ad fzero che restituirà un punto vicino a dove la funzione cambia segno. Possiamo anche visualizzare i risultati passo passo. Le iterazioni dell algoritmo prevedono la bisezione o l interpolazione che vengono indicate nell ultima colonna dal titolo Procedure. Nel caso in cui si parta da un solo punto anziché da un intervallo, i primi passi potrebbero includere alcune iterazioni in cui fzero cerca un intervallo che contenga un cambio di segno. Si può specificare la tolleranza dell errore relativo tramite optimset. Se si passa una matrice vuota verrà utilizzato il valore di default (eps). 44

23 ... in codice options = optimset('display','iter'); a = 1],options) Func-count x f(x) Procedure initial initial interpolation bisection interpolation bisection interpolation interpolation interpolation e-07 interpolation e-11 interpolation e-16 interpolation e-15 interpolation a = Integrazione Numerica (Quadrature) L area al di sotto di una sezione di una funzione F(x) può essere calcolata integrando numericamente F(x), un processo noto come quadrature. Le funzioni quadrature in MATLAB sono: I. quad Usa il metodo adattativo di Simpson II. quadl Usa il metodo adattativo di Lobatto III. dblquad Calcola numericamente integrali doppi IV. triplequad Calcola numericamente integrali tripli Per integrare la funzione definita in humps.m da 0 a 1: q = q = Entrambi quad e quadl lavorano ricorsivamente. Quando incontrano una possibile singolarità visualizzano un warning. Si può passare a quad o a quadl un quarto argomento che specifica la tolleranza dell errore relativo per l integrazione. Se si specifica anche un quinto argomento non nullo vengono visualizzate anche i valori delle funzioni calcolati ad ogni iterazione 46

24 Esempio: Calcolare la lunghezza di una curva Consideriamo la curva parametrizzata dalle equazioni: x(t) = sin(2t), y(t) = cos(t), z(t) = t dove t [0,3p]. Un grafico in 3-D di questa funzione è t = 0:0.1:3*pi; plot3(sin(2*t),cos(t),t) Esiste un teorema che ci dice che la lunghezza della curva è l integrale della norma delle derivate delle equazioni parametrizzate: 3π cos(2 t) + sin ( t) + 1 dt 0 Definiamo la funzione hcurve che calcola l integrando function f = hcurve(t) f = sqrt(4*cos(2*t).^2 + sin(t).^2 + 1); Calcoliamo l integrale tramite quad len = len = e+01 La lunghezza di questa curva è circa Esempio: Integrale doppio Vogliamo risolvere per via numerica l integrale y MAX y MIN xmax xmin f ( x, y) dxdy Sia f(x,y)=ysin(x)+xcos(y). Il primo passo consiste nel costruire la funzione da calcolare. La funzione deve restituire un vettore d uscita dato un vettore in ingresso. Bisogna anche tenere presente quale variabile compete all integrale più interno e quale a quello più esterno. In questo nostro esempio, la variabile più interna è x e quella più esterna y (l ordine nell integrale è dxdy). In questo caso, la funzione integranda sarà function out = integrnd(x,y) out = y*sin(x) + x*cos(y); Per calcolare l integrale abbiamo a disposizione due funzioni, quad e quadl, che possono essere chiamate da dblquad. Questo M-file calcola il loop più esterno usando quad o quadl. Ad ogni iterazione, quad (quadl) chiama una seconda funzione ausiliaria che calcola il ciclo più interno. Per calcolare l integrale doppio si usa result = 48

25 Esempio è una stringa che rappresenta il nome della funzione integranda xmin esprime il limite inferiore dell integrale più interno xmax esprime il limite superiore dell integrale più interno ymin esprime il limite inferiore dell integrale più esterno ymax esprime il limite superiore dell integrale più esterno Ad esempio: xmin = pi; xmax = 2*pi; ymin = 0; ymax = pi; result = result = Per default, dblquad chiama quad. Per svolgere l integrale doppio dell esempio proposto usando quadl (assumendo come tolleranza il valore di default), si usa result = Si può passare a dblquad qualsiasi nome di funzione quadrature definita dall utente purché ovviamente abbia gli stessi argomenti di ingresso e di uscita di quad 49 MATLAB Calcolo Numerico Polinomi Equazioni alle differenze e filtraggi Analisi di Fourier e FFT Curve di Regressione 50

26 Operazioni su/con Polinomi Rappresentare i polinomi in MATLAB Calcolare le radici di un polinomio Calcolare i coefficienti del polinomio caratteristico di una matrice Calcolare un polinomio per un certo valore della variabile Moltiplicazione/divisione tra polinomi Derivata di un polinomio Trovare il polinomio che meglio approssima l andamento di punti dati (es. dati sperimentali) Conversioni tra espansioni in fratti semplici e coefficienti del polinomio associato 51 Elenco delle Funzioni per i Polinomi FUNZIONE conv deconv poly polyder polyfit polyval polyvalm residue roots DESCRIZIONE Moltiplicazione di polinomi Divisione di polinomi Date le radici di un polinomio ne calcola i coefficienti Calcola la derivata di un polinomio Regressione di curve tramite polinomi Calcolo di polinomi Calcolo di polinomi matriciali Espansione in fratti semplici (residui) Trova le radici di un polinomio 52

27 Rappresentazione dei Polinomi MATLAB rappresenta un polinomio tramite un vettore riga Gli elementi di tale vettore riga sono i coefficienti del polinomio ordinati secondo le potenze decrescenti Ad esempio, per rappresentare in MATLAB il polinomio: p(x) = x 3 2x 5 bisogna definire il vettore p = [ ] 53 Calcolo delle radici di un polinomio Il calcolo delle radici di un polinomio viene fatto dalla funzione roots: r = roots(p) r = i i Per convenzione, MATLAB salva le radici in vettori colonna La funzione inversa a roots, ossia la funzione che date in ingresso le radici di un polinomio ne calcola i coefficienti, si chiama poly: p2 = poly(r) p2 = e

28 Polinomi Caratteristici La funzione poly calcola anche i coefficienti del polinomio caratteristico di una matrice A = [ ; ; 9 0 1]; poly(a) ans = Le radici di questo polinomio, calcolate con roots, sono le radici caratteristiche, o autovalori, della matrice A. (Per calcolare direttamente gli autovalori (eigenvalues in inglese) di una matrice esiste la funzione eig) 55 Calcolo di un Polinomio La funzione polyval calcola un polinomio per un dato valore. Per es. calcoliamo p(s) = s 3 2s 5 per s = 5: polyval(p,5) ans = 110 E anche possibile calcolare un polinomio la cui variabile sia una matrice. In questo caso p(s)=s 3 2s 5 diventa p(x)=x 3 2X 5I dove X è una matrice quadrata e I è la matrice identità. Per es. Definiamo una matrice X e calcoliamo il polinomio p in X: X = [2 4 5; ; 7 1 5]; Y = polyvalm(p,x) Y =

29 Moltiplicazione e Divisione di Polinomi Le operazioni di moltilicazione e divisione di polinomi corrispondono alle operazioni di convoluzione e deconvoluzione implementate nelle funzioni conv e deconv Ad es., vogliamo calcolare il prodotto dei polinomi a(s)=s 2 +2s+3 e b(s)=4s 2 +5s+6 Definiamo: a = [1 2 3]; b = [4 5 6]; Il prodotto risulta: c = conv(a,b) c = Per riottenere uno dei fattori dal prodotto, uso invece la deconvoluzione: [q,r] = deconv(c,a) q = r = Derivare un Polinomio Si usa la funzione polyder. Per es., per calcolare la derivata del polinomio p = [ ]: q = polyder(p) q = polyder calcola anche la derivata del prodotto o della divisione di due polinomi. Per es., siano: a = [1 3 5]; b = [2 4 6]; La derivata del prodotto a*b si ottiene lanciando polyder con una sola variabile d uscita: c = polyder(a,b) c = Se invece chiedo 2 variabili di uscita, polyder restituisce a/b: [q,d] = polyder(a,b) q = d =

RETI DI TELECOMUNICAZIONE

RETI DI TELECOMUNICAZIONE RETI DI TELECOMUNICAZIONE NOZIONI ELEMENTARI DI MATLAB Cos è MATLAB Il nome MATLAB sta per MATrix LABoratory E un linguaggio ad alta prestazione per l elaborazione tecnica E un sistema interattivo il cui

Dettagli

Rapida Introduzione all uso del Matlab Ottobre 2002

Rapida Introduzione all uso del Matlab Ottobre 2002 Rapida Introduzione all uso del Matlab Ottobre 2002 Tutti i tipi di dato utilizzati dal Matlab sono in forma di array. I vettori sono array monodimensionali, e così possono essere viste le serie temporali,

Dettagli

Introduzione a MATLAB INTRODUZIONE A MATLAB

Introduzione a MATLAB INTRODUZIONE A MATLAB INTRODUZIONE A MATLAB 1 Il programma MATLAB: indice Introduzione, help e files Punteggiatura e variabili Operatori Matrici Polinomi Istruzione IF-THEN-ELSE e Cicli Stringhe di testo, input ed output Grafici

Dettagli

BOZZA Introduzione a MATLAB

BOZZA Introduzione a MATLAB BOZZA Introduzione a MATLAB BOZZA BOZZA Matlab sta per Matrix Laboratory ed è un ambiente interattivo e un linguaggio di calcolo tecnico di alto livello per lo sviluppo di algoritmi, la rappresentazione

Dettagli

Software di calcolo numerico, analisi, statistica e simulazione. Un esempio pratico: Octave

Software di calcolo numerico, analisi, statistica e simulazione. Un esempio pratico: Octave Software di calcolo numerico, analisi, statistica e simulazione Un esempio pratico: Octave Problemi tradizionali Risoluzione di funzioni matematiche complesse Esecuzione di calcoli matriciali Analisi

Dettagli

SISTEMI DI CONTROLLO Ingegneria Meccanica e Ingegneria del Veicolo

SISTEMI DI CONTROLLO Ingegneria Meccanica e Ingegneria del Veicolo SISTEMI DI CONTROLLO Ingegneria Meccanica e Ingegneria del Veicolo http://www.dii.unimore.it/~lbiagiotti/sistemicontrollo.html it/~lbiagiotti/sistemicontrollo html INTRODUZIONE A MATLAB Ing. e-mail: luigi.biagiotti@unimore.it

Dettagli

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t.

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t. Il programma MATLAB In queste pagine si introduce in maniera molto breve il programma di simulazione MAT- LAB (una abbreviazione di MATrix LABoratory). Introduzione MATLAB è un programma interattivo di

Dettagli

Laboratorio per l Elaborazione MultiMediale Lezione 1 - Introduzione a Matlab R

Laboratorio per l Elaborazione MultiMediale Lezione 1 - Introduzione a Matlab R Laboratorio per l Elaborazione MultiMediale Lezione 1 - a Prof. Michele Scarpiniti Dipartimento di Ingegneria dell Informazione, Elettronica e Telecomunicazioni Sapienza Università di Roma http://ispac.ing.uniroma1.it/scarpiniti/index.htm

Dettagli

Capitolo 1. Il MATLAB. 1.1 Introduzione al MATLAB

Capitolo 1. Il MATLAB. 1.1 Introduzione al MATLAB Capitolo 1 Il MATLAB 1.1 Introduzione al MATLAB Il Matlab (acronimo delle parole inglesi MATrix LABoratory) è un software basato sulla manipolazione di matrici molto utilizzato nel campo della ricerca

Dettagli

Integrazione numerica

Integrazione numerica Integrazione numerica Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ Lezione 6-20-26 ottobre 2009 Indice 1 Formule di quadratura semplici e composite Formule di quadratura

Dettagli

MATLAB - Introduzione Enrico Nobile. MATLAB - Introduzione. E. Nobile - DINMA - Sezione di Fisica Tecnica, Università di Trieste

MATLAB - Introduzione Enrico Nobile. MATLAB - Introduzione. E. Nobile - DINMA - Sezione di Fisica Tecnica, Università di Trieste Enrico Nobile I a Parte 1 MATLAB (MATrix LABoratory); Versione 5.2; Basato sul concetto - ampio - di Matrici; Calcolo numerico, visualizzazione etc. Facile utilizzo di librerie per il calcolo numerico

Dettagli

MATLAB. Note Introduttive. Matlab

MATLAB. Note Introduttive. Matlab MATLAB Note Introduttive Cos é MATLAB MATLAB (MATrix LABoratory) è un programma interattivo per il calcolo numerico, in cui l elemento base èlamatrice Viene oggi largamente utilizzato sia per la didattica

Dettagli

Grafici tridimensionali

Grafici tridimensionali MatLab Lezione 3 Grafici tridimensionali Creazione di un Grafico 3D (1/4) Si supponga di voler tracciare il grafico della funzione nell intervallo x = [0,5]; y=[0,5] z = e -(x+y)/2 sin(3x) sin(3y) Si può

Dettagli

Manualetto di Matlab R

Manualetto di Matlab R Manualetto di Matlab R 1 Comandi d avvio L. Scuderi Per avviare Matlab in ambiente Windows è sufficiente selezionare con il mouse l icona corrispondente. In ambiente MsDos o in ambiente Unix basta digitare

Dettagli

Lab. 1 - Introduzione a Matlab

Lab. 1 - Introduzione a Matlab Lab. 1 - Introduzione a Matlab Alcune informazioni su Matlab Matlab è uno strumento per il calcolo scientifico utilizzabile a più livelli, dalla calcolatrice tascabile, alla simulazione ed analisi di sistemi

Dettagli

I Lezione: Il programma MATLAB. 1 Introduzione. 2 Matrici in MATLAB

I Lezione: Il programma MATLAB. 1 Introduzione. 2 Matrici in MATLAB I Lezione: Il programma MATLAB In questa sezione introdurremo in maniera molto breve il programma di simulazione MATLAB (una abbreviazione di MAtrix LABoratory) che è stato usato per lo sviluppo delle

Dettagli

Cenni sull'impiego di Matlab. Matrici

Cenni sull'impiego di Matlab. Matrici Cenni sull'impiego di Matlab Il Matlab è un potente valutatore di espressioni matriciali con valori complessi. Lavorando in questo modo il Matlab indica una risposta ad ogni comando od operazione impartitagli.

Dettagli

22 Introduzione all uso di MatLab

22 Introduzione all uso di MatLab 22 Introduzione all uso di MatLab INTERFACCIA UTENTE E STRINGHE Per visualizzare su schermo il valore di una variabile a senza farla precedere dalla scritta a=, si usa il comando disp (abbreviazione di

Dettagli

A cura di Andrea Di Ferdinando

A cura di Andrea Di Ferdinando Dispense del corso base di programmazione scientifica in ambiente MATLAB A cura di Andrea Di Ferdinando Anno accademico 2003-2004 Capitolo 1 Panoramica dell ambiente MatLab 1. Che cos è MatLab Per comprendere

Dettagli

Dati importati/esportati

Dati importati/esportati Dati importati/esportati Dati importati Al workspace MATLAB script Dati esportati file 1 File di testo (.txt) Spreadsheet Database Altro Elaborazione dati Grafici File di testo Relazioni Codice Database

Dettagli

INTRODUZIONE A. Guido Vagliasindi Controlli Automatici A.A. 06/07 Introduzione a MATLAB

INTRODUZIONE A. Guido Vagliasindi Controlli Automatici A.A. 06/07 Introduzione a MATLAB INTRODUZIONE A Documentazione Sito web di Mathworks: www.mathworks.com seguendo i link alla voce support e possibile trovare i manuali di Matlab in formato pdf. (http://www.mathworks.com/access/helpdesk/help/techd

Dettagli

Lezione2 Ricerca di zeri. http://idefix.mi.infn.it/~palombo/didattica/lab-tnds/corsolab/lezionifrontali. Fernando Palombo

Lezione2 Ricerca di zeri. http://idefix.mi.infn.it/~palombo/didattica/lab-tnds/corsolab/lezionifrontali. Fernando Palombo Lezione2 Ricerca di zeri http://idefix.mi.infn.it/~palombo/didattica/lab-tnds/corsolab/lezionifrontali Fernando Palombo Aritmetica Finita nel Computer Nel computer l aritmetica è a precisione finita cioè

Dettagli

Corso di Visione Artificiale. Matlab per Visione. Samuel Rota Bulò

Corso di Visione Artificiale. Matlab per Visione. Samuel Rota Bulò Corso di Visione Artificiale Matlab per Visione Samuel Rota Bulò Cos'è Matlab? MATLAB MATLAB - - MATrix MATrix LABoratory LABoratory Ambiente Ambiente di di sviluppo sviluppo ed ed esecuzione esecuzione

Dettagli

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli

Calcolo Numerico A.A. 2013-2014 Esercitazione n. 3 21-03-2014

Calcolo Numerico A.A. 2013-2014 Esercitazione n. 3 21-03-2014 Calcolo Numerico A.A. 2013-2014 Esercitazione n. 3 21-03-2014 Grafica: plot 2D Grafica MATLAB è molto più di un semplice software in grado di eseguire calcoli numerici (anche se in forma molto sofisticata).

Dettagli

Documentazione esterna al software matematico sviluppato con MatLab

Documentazione esterna al software matematico sviluppato con MatLab Documentazione esterna al software matematico sviluppato con MatLab Algoritmi Metodo di Gauss-Seidel con sovrarilassamento Metodo delle Secanti Metodo di Newton Studente Amelio Francesco 556/00699 Anno

Dettagli

Introduzione allo Scilab Parte 3: funzioni; vettori.

Introduzione allo Scilab Parte 3: funzioni; vettori. Introduzione allo Scilab Parte 3: funzioni; vettori. Felice Iavernaro Dipartimento di Matematica Università di Bari http://dm.uniba.it/ iavernaro felix@dm.uniba.it 13 Giugno 2007 Felice Iavernaro (Univ.

Dettagli

Comandi di Input/Output in Matlab

Comandi di Input/Output in Matlab Comandi di Input/Output in Matlab Il comando format controlla la configurazione numerica dei valori esposta da MAT- LAB; il comando regola solamente come i numeri sono visualizzati o stampati, non come

Dettagli

Matlab: Strutture di Controllo. Informatica B

Matlab: Strutture di Controllo. Informatica B Matlab: Strutture di Controllo Informatica B Tipo di dato logico È un tipo di dato che può avere solo due valori true (vero) 1 false (falso) 0 I valori di questo tipo possono essere generati direttamente

Dettagli

Introduzione a MATLAB. Il Laboratorio. MATLAB Cos è? Oltre alle lezioni. Octave ( www.octave.org ) Scilab ( www.scilab.org )

Introduzione a MATLAB. Il Laboratorio. MATLAB Cos è? Oltre alle lezioni. Octave ( www.octave.org ) Scilab ( www.scilab.org ) Introduzione a MATLAB! Informazioni sul laboratorio! MATLAB! Operazioni di base! Variabili ed assegnamento! Comandi utili! Utilizzo dell Help! Formato dei numeri! Numeri complessi Il Laboratorio! Openlab

Dettagli

Introduzione agli ambienti

Introduzione agli ambienti Introduzione agli ambienti MATLAB c e Octave Utilizzo di Matlab/Octave ed operazioni fondamentali. Primi rudimenti di grafica. Paola Gervasio 1 MATLAB = MATrix LABoratory è un ambiente integrato per la

Dettagli

Elaborazione di Dati e Segnali Biomedici

Elaborazione di Dati e Segnali Biomedici Introduzione all uso di Matlab Mario Cesarelli Corso di Laurea in Ingegneria Biomedica Rev.1 Anno accademico 2004-05 Rev.2 Anno accademico 2005-06 Indice INTRODUZIONE A MATLAB... 5 INTRODUZIONE A MATLAB...

Dettagli

Laboratorio di Matlab

Laboratorio di Matlab Laboratorio di Matlab Rudy Manganelli Dipartimento di Ingegneria dell Informazione, Università di Siena manganelli@dii.unisi.it http://www.dii.unisi.it/ control/matlab/labmatlab.html Luglio 2008 DII -

Dettagli

Introduzione a Matlab

Introduzione a Matlab Introduzione a Matlab Ruggero Donida Labati Dipartimento di Tecnologie dell Informazione via Bramante 65, 26013 Crema (CR), Italy ruggero.donida@unimi.it Perché? MATLAB is a high-level technical computing

Dettagli

Interpolazione ed approssimazione di funzioni

Interpolazione ed approssimazione di funzioni Interpolazione ed approssimazione di funzioni Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 9 novembre 2007 Outline 1 Polinomi Valutazione di un polinomio Algoritmo di Horner

Dettagli

LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA LICEO SCIENTIFICO MATEMATICA

LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA LICEO SCIENTIFICO MATEMATICA LICEO SCIENTIFICO MATEMATICA PROFILO GENERALE E COMPETENZE Al termine del percorso liceale lo studente dovrà padroneggiare i principali concetti e metodi di base della matematica, sia aventi valore intrinseco

Dettagli

LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA

LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA LICEO SCIENTIFICO opzione delle scienze applicate MATEMATICA PROFILO GENERALE E COMPETENZE Al termine del percorso liceale lo studente dovrà padroneggiare i principali concetti e metodi di base della matematica,

Dettagli

ELEMENTI DI STATISTICA PER IDROLOGIA

ELEMENTI DI STATISTICA PER IDROLOGIA Carlo Gregoretti Corso di Idraulica ed Idrologia Elementi di statist. per Idrolog.-7//4 ELEMETI DI STATISTICA PER IDROLOGIA Introduzione Una variabile si dice casuale quando assume valori che dipendono

Dettagli

Funzioni definite dall utente: sintassi

Funzioni definite dall utente: sintassi Funzioni definite dall utente: sintassi Definizione di funzione: In un M-file, il cui nome è (bene che sia vedi diapo successive): funcion_name.m Variabili di uscita. Se è una sola variabile, le [, e ]

Dettagli

Laboratorio di Statistica con R

Laboratorio di Statistica con R Laboratorio di Statistica con R R è un vero e proprio linguaggio di programmazione. Il suo nome, è dovuto probabilmente al nome dei suoi sviluppatori:robert Gentleman e Ross Ihaka Le principali funzioni

Dettagli

UNIVERSITÀ DEGLI STUDI DI FERRARA

UNIVERSITÀ DEGLI STUDI DI FERRARA UNIVERSITÀ DEGLI STUDI DI FERRARA Anno Accademico 2012/2013 REGISTRO DELL ATTIVITÀ DIDATTICA Docente: ANDREOTTI MIRCO Titolo del corso: MATEMATICA ED ELEMENTI DI STATISTICA Corso: CORSO UFFICIALE Corso

Dettagli

FON DAMEN TI DI IN FORMATICA

FON DAMEN TI DI IN FORMATICA Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria Meccanica & Ingegneria Gestionale Mat. Pari Docente : Ing. Secondulfo Giovanni Anno Accademico 29-21 UNITÀ IV A GRAFICA

Dettagli

Regole sintattiche. Simboli

Regole sintattiche. Simboli Simboli Regole sintattiche Ogni sequenza di caratteri alfanumerici che inizi con un carattere alfabetico e non contenga spazi o caratteri speciali è interpretata come un unico simbolo. Le lettere maiuscole

Dettagli

SciPy. Programmazione Orientata agli Oggetti e Scripting in Python

SciPy. Programmazione Orientata agli Oggetti e Scripting in Python SciPy Programmazione Orientata agli Oggetti e Scripting in Python SciPy: Informazioni di Base Libreria di algoritmi e strumenti matematici Fornisce: moduli per l'ottimizzazione, per l'algebra lineare,

Dettagli

Introduzione all uso di

Introduzione all uso di Introduzione all uso di Francesco Odetti DIPTEM Università di Genova A.a. 2009/10 Introduzione all uso di MatLab 1 MatLab è un programma studiato apposta per operare su matrici. Il nome è un abbreviazione

Dettagli

Corso di Laurea in Matematica, Università di Roma La Sapienza Corso di ANALISI NUMERICA Esercitazioni in Laboratorio, 16 Maggio 2011

Corso di Laurea in Matematica, Università di Roma La Sapienza Corso di ANALISI NUMERICA Esercitazioni in Laboratorio, 16 Maggio 2011 Corso di Laurea in Matematica, Università di Roma La Sapienza Corso di ANALISI NUMERICA Esercitazioni in Laboratorio, 16 Maggio 2011 Foglio 4: Metodi diretti per i sistemi lineari Scrivere un programma

Dettagli

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

Dettagli

1 Introduzione ai comandi di Matlab

1 Introduzione ai comandi di Matlab 1 Introduzione ai comandi di Matlab MATLAB è un linguaggio ad alte prestazioni adatto per effettuare operazioni matematiche. Esso integra calcolo, visualizzazione, e una programmazione semplice dove problemi

Dettagli

MATLAB - Introduzione Enrico Nobile. 2 a Parte. MATLAB - Introduzione E. Nobile - DINMA - Sezione di Fisica Tecnica, Università di Trieste.

MATLAB - Introduzione Enrico Nobile. 2 a Parte. MATLAB - Introduzione E. Nobile - DINMA - Sezione di Fisica Tecnica, Università di Trieste. Enrico Nobile 2 a Parte 1 M-files MATLAB può eseguire una serie di comandi memorizzati su file; Tali files sono chiamati M-files, poiché devono avere l estensione.m (es. tridia.m); L utilizzo di MATLAB

Dettagli

Struttura logica di un programma

Struttura logica di un programma Struttura logica di un programma Tutti i programmi per computer prevedono tre operazioni principali: l input di dati (cioè l inserimento delle informazioni da elaborare) il calcolo dei risultati cercati

Dettagli

Cristian Secchi Pag. 1

Cristian Secchi Pag. 1 CONTROLLI DIGITALI Laurea Magistrale in Ingegneria Meccatronica SISTEMI A TEMPO DISCRETO Ing. Tel. 0522 522235 e-mail: cristian.secchi@unimore.it http://www.dismi.unimo.it/members/csecchi Richiami di Controlli

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Introduzione a MATLAB

Introduzione a MATLAB Laboratorio del Dipartimento di Metodi e Modelli Matematici per le Scienze Applicate A.A. 2007/2008 Introduzione a MATLAB INTRODUZIONE A MATLAB 1 Indice 1 Introduzione 1 1.1 Caratteristiche di MATLAB...................................

Dettagli

Lezione V. Il foglio elettronico

Lezione V. Il foglio elettronico Informatica di Base Lezione V 1 Lezione V In laboratorio userete prevalentemente Microsoft Excel Ma ce ne sono altri, es. Open Office In aula avete sia office 2003 che Calc. (open office) Contabilità e

Dettagli

Visual Basic for Applications (VBA) Francesco Brun Fondamenti di Informatica a.a. 2014/2015

Visual Basic for Applications (VBA) Francesco Brun Fondamenti di Informatica a.a. 2014/2015 Francesco Brun Fondamenti di Informatica a.a. 2014/2015 Scopo di questo approfondimento Lo scopo di questo approfondimento è rispondere alla domanda: e se nella vita mi troverò a dover utilizzare un linguaggio

Dettagli

Elaborazioni nel dominio spaziale (1) Soluzioni

Elaborazioni nel dominio spaziale (1) Soluzioni Elaborazione dei Segnali Multimediali a.a. 2009/2010 Elaborazioni nel dominio spaziale (1) Soluzioni 1 Rappresentazione delle immagini in Matlab 1. Lettura e visualizzazione di un immagine JPEG. function

Dettagli

Software per le Telecomunicazioni

Software per le Telecomunicazioni Università degli studi di Roma Tor Vergata a.a. 2005-2006 Software per le Telecomunicazioni Docente: Ing. Dajana Cassioli Stanza 4187 Dip. Ing. Elettronica Tel. 06 7259 7439 e-mail: cassioli@ing.uniroma2.it

Dettagli

4. Matrici e Minimi Quadrati

4. Matrici e Minimi Quadrati & C. Di Natale: Matrici e sistemi di equazioni di lineari Formulazione matriciale del metodo dei minimi quadrati Regressione polinomiale Regressione non lineare Cross-validazione e overfitting Regressione

Dettagli

Introduzione alla Programmazione in MATLAB 7

Introduzione alla Programmazione in MATLAB 7 Introduzione alla Programmazione in MATLAB 7 E. Cristiani, M. Sagona Versione 1.9 18/11/2009 Queste dispense nascono dall esperienza maturata dai due autori nell uso di Matlab nell ambito della ricerca

Dettagli

Introduzione al Foglio Elettronico

Introduzione al Foglio Elettronico Microsoft Excel Introduzione al Foglio Elettronico Il Foglio Elettronico Si presenta come una grande tabella su un foglio di carta Le celle contengono differenti dati Numeri Testo Date Ecc I dati possono

Dettagli

Introduzione a SAGE Math

Introduzione a SAGE Math Introduzione Espressioni Funzioni Plot Stefano Zambon Esercitazione di Corsi di Laurea in Matematica Applicata e Informatica Multimediale Università degli Studi di Verona Marzo 2009 Introduzione Espressioni

Dettagli

Appunti delle esercitazioni di Ricerca Operativa

Appunti delle esercitazioni di Ricerca Operativa Appunti delle esercitazioni di Ricerca Operativa a cura di P. Detti e G. Ciaschetti 1 Esercizi sulle condizioni di ottimalità per problemi di ottimizzazione non vincolata Esempio 1 Sia data la funzione

Dettagli

OBIETTIVI SPECIFICI DI APPRENDIMENTO

OBIETTIVI SPECIFICI DI APPRENDIMENTO Disciplina:... Anno scolastico: 20.../20... Classe/i :... Docente:... DI APPRENDIMENTO SEZIONE 1 Premesse matematiche Nozioni fondamentali sui sistemi di numerazione Sistemi di numerazione in base diversa

Dettagli

CLASSI PRIME tecnico 4 ORE

CLASSI PRIME tecnico 4 ORE PIANO ANNUALE a.s. 2012/2013 CLASSI PRIME tecnico 4 ORE Settembre Ottobre Novembre dicembre dicembre gennaio- 15 aprile 15 aprile 15 maggio Somministrazione di test di ingresso. Insiemi numerici Operazioni

Dettagli

Metodi diretti per la soluzione di sistemi lineari

Metodi diretti per la soluzione di sistemi lineari Metodi diretti per la soluzione di sistemi lineari N Del Buono 1 Introduzione Consideriamo un sistema di n equazioni in n incognite a 11 x 1 + a 12 x 2 + a 13 x 3 + + a 1n x n = b 1, a 21 x 1 + a 22 x

Dettagli

Algebra Booleana ed Espressioni Booleane

Algebra Booleana ed Espressioni Booleane Algebra Booleana ed Espressioni Booleane Che cosa è un Algebra? Dato un insieme E di elementi (qualsiasi, non necessariamente numerico) ed una o più operazioni definite sugli elementi appartenenti a tale

Dettagli

Capitolo 5 RESTAURO E RICOSTRUZIONE DI IMMAGINI

Capitolo 5 RESTAURO E RICOSTRUZIONE DI IMMAGINI Capitolo 5 RESTAURO E RICOSTRUZIONE DI IMMAGINI La differenza tra il restauro e il miglioramento (enhancement) delle immagini è che il miglioramento è un processo soggettivo, mentre il restauro è un processo

Dettagli

MATLAB. Caratteristiche. Dati. Esempio di programma MATLAB. a = [1 2 3; 4 5 6; 7 8 9]; b = [1 2 3] ; c = a*b; c

MATLAB. Caratteristiche. Dati. Esempio di programma MATLAB. a = [1 2 3; 4 5 6; 7 8 9]; b = [1 2 3] ; c = a*b; c Caratteristiche MATLAB Linguaggio di programmazione orientato all elaborazione di matrici (MATLAB=MATrix LABoratory) Le variabili sono matrici (una variabile scalare equivale ad una matrice di dimensione

Dettagli

MATLAB. Note introduttive a cura di C. Sandi. MATLAB: software per la trattazione di problemi tecnico-scientifici

MATLAB. Note introduttive a cura di C. Sandi. MATLAB: software per la trattazione di problemi tecnico-scientifici MATLAB Note introduttive a cura di C. Sandi MATLAB: software per la trattazione di problemi tecnico-scientifici MATrix LABoratory: elaborazione dell informazione mediante matrici (o, più generalmente,

Dettagli

Aplusix II. Manuale dell utente

Aplusix II. Manuale dell utente Aplusix II Versione 1.2 Febbraio 2009 Manuale dell utente INDICE 1. TAVOLA SINOTTICA 2 2. INTRODUZIONE 3 3. ACCESSO 3 4. PRIMO UTILIZZO 3 5. SECONDO UTILIZZO 5 6. TERZO UTILIZZO 6 7. L ATTIVITA ESERCITAZIONE

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale LEZIONE 2 Rappresentazione delle informazioni: numeri e caratteri 1 Codice La relazione che associa ad ogni successione ben formata di simboli di

Dettagli

Corso di Calcolo Numerico

Corso di Calcolo Numerico Corso di Calcolo Numerico Dott.ssa M.C. De Bonis Università degli Studi della Basilicata, Potenza Facoltà di Ingegneria Corso di Laurea in Ingegneria Meccanica Sistemi di Numerazione Sistema decimale La

Dettagli

MATLAB Esercitazione #1: (dominio di Laplace)

MATLAB Esercitazione #1: (dominio di Laplace) Matlab Es# MATLAB Esercitazione #: (dominio di Laplace) Costruzione F.d.T. e operazioni elementari: num,den,tf; *,+-,/» help tf TF Creation of transfer functions or conversion. You can create SISO or MIMO

Dettagli

Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini

Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini Introduzione all utilizzo di Visual Basic for Application Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini PROGRAMMAZIONE Insieme delle attività da svolgersi per creare

Dettagli

Approssimazione polinomiale di funzioni e dati

Approssimazione polinomiale di funzioni e dati Approssimazione polinomiale di funzioni e dati Approssimare una funzione f significa trovare una funzione f di forma più semplice che possa essere usata al posto di f. Questa strategia è utilizzata nell

Dettagli

Elaborazione nel dominio della frequenza

Elaborazione nel dominio della frequenza Elaborazione dei Segnali Multimediali a.a. 2009/2010 Elaborazione nel dominio della frequenza L.Verdoliva In questa esercitazione esamineremo la trasformata di Fourier discreta monodimensionale e bidimensionale.

Dettagli

Introduzione alla Teoria degli Errori

Introduzione alla Teoria degli Errori Introduzione alla Teoria degli Errori 1 Gli errori di misura sono inevitabili Una misura non ha significato se non viene accompagnata da una ragionevole stima dell errore ( Una scienza si dice esatta non

Dettagli

MINIMI QUADRATI. REGRESSIONE LINEARE

MINIMI QUADRATI. REGRESSIONE LINEARE MINIMI QUADRATI. REGRESSIONE LINEARE Se il coefficiente di correlazione r è prossimo a 1 o a -1 e se il diagramma di dispersione suggerisce una relazione di tipo lineare, ha senso determinare l equazione

Dettagli

Richiesta pagina PHP (es: index.php)

Richiesta pagina PHP (es: index.php) PHP PHP = personal home page SERVER Richiesta pagina PHP (es: index.php) Server Web (Apache) in ascolto sulla porta 80, si accorge che la pagina richiesta è una pagina PHP in base all'estensione o con

Dettagli

La grafica. La built-in funzione grafica plot. x spezzata poligonale. discretizzato

La grafica. La built-in funzione grafica plot. x spezzata poligonale. discretizzato La grafica. Il Matlab possiede un ambiente grafico abbastanza potente paragonabile a software grafici operanti in altri contesti. In questo corso ci limiteremo ad illustrare solo una funzione grafica,

Dettagli

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione Automatizzare i compiti ripetitivi I file batch Anno accademico 2000-01 1 Spesso capita di dover eseguire ripetutatmente una data sequenza di comandi Introdurli uno a uno da tastiera è un processo lento

Dettagli

Fondamenti di Informatica Ingegneria Clinica Lezione 19/11/2009. Prof. Raffaele Nicolussi

Fondamenti di Informatica Ingegneria Clinica Lezione 19/11/2009. Prof. Raffaele Nicolussi Fondamenti di Informatica Ingegneria Clinica Lezione 19/11/2009 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via B. Castiglione 59-00142 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni

Dettagli

Guida Rapida all utilizzo di Microsoft Excel

Guida Rapida all utilizzo di Microsoft Excel Guida Rapida all utilizzo di Microsoft Excel Giorgio Delzanno L ambiente Excel Excel è un foglio elettronico costituito da tre diverse componenti: un gestore di cartelle di lavoro, un gestore di database

Dettagli

Programmazione in Excel con il linguaggio Visual Basic

Programmazione in Excel con il linguaggio Visual Basic Programmazione in Excel con il linguaggio Visual Basic L'ambiente di programmazione Il foglio elettronico Excel, così come gli altri prodotti Office di Microsoft, possiede un vero e proprio ambiente di

Dettagli

Contenuto del libro...2 Convenzioni utilizzate nel libro...2

Contenuto del libro...2 Convenzioni utilizzate nel libro...2 Indice Introduzione... 1 Contenuto del libro...2 Convenzioni utilizzate nel libro...2 I INTERVALLI E FORMULE DI EXCEL 1 Ricavare il massimo dagli intervalli.... 7 Tecniche avanzate di selezione degli intervalli...7

Dettagli

MATLAB Analisi di Sistemi LTI

MATLAB Analisi di Sistemi LTI Esercitazione 1/30 MATLAB Analisi di Sistemi LTI Vincenzo LIPPIELLO PRISMA Lab Dipartimento di Informatica e Sistemistica Università di Napoli Federico II vincenzo.lippiello@unina.it www.prisma.unina.it

Dettagli

STIMARE valori ed eseguire ANALISI DI REGRESSIONE

STIMARE valori ed eseguire ANALISI DI REGRESSIONE STIMARE valori ed eseguire ANALISI DI REGRESSIONE È possibile impostare una serie di valori che seguono una tendenza lineare semplice oppure una tendenza con crescita esponenziale. I valori stimati vengono

Dettagli

Metodi Stocastici per la Finanza

Metodi Stocastici per la Finanza Metodi Stocastici per la Finanza Tiziano Vargiolu vargiolu@math.unipd.it 1 1 Università degli Studi di Padova Anno Accademico 2011-2012 Lezione 6 Indice 1 Il metodo bootstrap 2 Esercitazione 3 Interpolazione

Dettagli

Elaborazioni nel dominio spaziale (1)

Elaborazioni nel dominio spaziale (1) Elaborazione dei Segnali Multimediali a.a. 2009/2010 Elaborazioni nel dominio spaziale (1) L.Verdoliva In questa prima lezione affrontiamo il problema della rappresentazione delle immagini digitali in

Dettagli

Scilab: I Polinomi - Input/Output - I file Script

Scilab: I Polinomi - Input/Output - I file Script Scilab: I Polinomi - Input/Output - I file Script Corso di Informatica CdL: Chimica Claudia d'amato claudia.damato@di.uniba.it Polinomi: Definizione... Un polinomio è un oggetto nativo in Scilab Si crea,

Dettagli

Cristian Secchi Pag. 1

Cristian Secchi Pag. 1 INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Laurea Specialistica in Ingegneria Meccatronica STRUMENTI MATEMATICI PER L ANALISI DEI SISTEMI DISCRETI Ing. Tel. 0522 522235 e-mail: secchi.cristian@unimore.it

Dettagli

Corso Matlab : Sesta lezione (Esercitazione, 25/10/13) Samuela Persia, Ing. PhD.

Corso Matlab : Sesta lezione (Esercitazione, 25/10/13) Samuela Persia, Ing. PhD. Advanced level Corso Matlab : Sesta lezione (Esercitazione, 25/10/13) Samuela Persia, Ing. PhD. Sommario Toolbox finance Analisi dei portafogli Analisi grafica Determinate Date Toolbox statistics Analisi

Dettagli

Pre Test 2008... Matematica

Pre Test 2008... Matematica Pre Test 2008... Matematica INSIEMI NUMERICI Gli insiemi numerici (di numeri) sono: numeri naturali N: insieme dei numeri interi e positivi {1; 2; 3; 4;...} numeri interi relativi Z: insieme dei numeri

Dettagli

Controlli Automatici T. Trasformata di Laplace e Funzione di trasferimento. Parte 3 Aggiornamento: Settembre 2010. Prof. L.

Controlli Automatici T. Trasformata di Laplace e Funzione di trasferimento. Parte 3 Aggiornamento: Settembre 2010. Prof. L. Parte 3 Aggiornamento: Settembre 2010 Parte 3, 1 Trasformata di Laplace e Funzione di trasferimento Prof. Lorenzo Marconi DEIS-Università di Bologna Tel. 051 2093788 Email: lmarconi@deis.unibo.it URL:

Dettagli

www.wlascuola.4000.it

www.wlascuola.4000.it 1 Cenni di programmazione Risolvere un problema significa trovare un procedimento che consenta di produrre i risultati, a partire dai dati iniziali, attraverso un processo di elaborazione. La metodologia

Dettagli

Laboratorio di calcolo con Matlab

Laboratorio di calcolo con Matlab progetto didattica in rete Laboratorio di calcolo con Matlab Andrea Gamba getto Dipartimento di Matematica Politecnico di Torino, gennaio 2000 didattica in ret otto editore LABORATORIO DI CALCOLO CON MATLAB

Dettagli

EXCEL. Marco Bertini Università degli Studi di Firenze

EXCEL. Marco Bertini Università degli Studi di Firenze EXCEL Marco Bertini Università degli Studi di Firenze 1 Cos è un foglio di calcolo Un "foglio di calcolo" (spreadsheet) è un oggetto di un programma costituito da un insieme di celle, organizzate in righe

Dettagli

Capitolo 9: PROPAGAZIONE DEGLI ERRORI

Capitolo 9: PROPAGAZIONE DEGLI ERRORI Capitolo 9: PROPAGAZIOE DEGLI ERRORI 9.1 Propagazione degli errori massimi ella maggior parte dei casi le grandezze fisiche vengono misurate per via indiretta. Il valore della grandezza viene cioè dedotto

Dettagli

LEZIONI DI ALGEBRA LINEARE PER LE APPLICAZIONI FINANZIARIE

LEZIONI DI ALGEBRA LINEARE PER LE APPLICAZIONI FINANZIARIE LEZIONI DI ALGEBRA LINEARE PER LE APPLICAZIONI FINANZIARIE FLAVIO ANGELINI Sommario Queste note hanno lo scopo di indicare a studenti di Economia interessati alla finanza quantitativa i concetti essenziali

Dettagli

OBIETTIVI MINIMI MATEMATICA PER IL LICEO SCIENTIFICO E PER IL LICEO SCIENTIFICO INDIRIZZO SCIENZE APPLICATE CLASSE I Operare con gli insiemi, operare

OBIETTIVI MINIMI MATEMATICA PER IL LICEO SCIENTIFICO E PER IL LICEO SCIENTIFICO INDIRIZZO SCIENZE APPLICATE CLASSE I Operare con gli insiemi, operare OBIETTIVI MINIMI MATEMATICA PER IL LICEO SCIENTIFICO E PER IL LICEO SCIENTIFICO INDIRIZZO SCIENZE APPLICATE CLASSE I Operare con gli insiemi, operare negli insiemi numerici N, Z, Q, calcolare espressioni,

Dettagli