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 =

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

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

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

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

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

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

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

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

+ / 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

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

MANUALE MATLAB. A cura di Giuseppe Ciaburro. http://www.ciaburro.it. info@ciaburro.it

MANUALE MATLAB. A cura di Giuseppe Ciaburro. http://www.ciaburro.it. info@ciaburro.it MANUALE MATLAB A cura di Giuseppe Ciaburro http://www.ciaburro.it info@ciaburro.it Indice 1 Introduzione 4 1.1 Matlab.............................................. 4 1.2 Per iniziare...........................................

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

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

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

Appunti sull uso di matlab - I

Appunti sull uso di matlab - I Appunti sull uso di matlab - I. Inizializazione di vettori.. Inizializazione di matrici.. Usare gli indici per richiamare gli elementi di un vettore o una matrice.. Richiedere le dimensioni di una matrice

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

Accuratezza di uno strumento

Accuratezza di uno strumento Accuratezza di uno strumento Come abbiamo già accennato la volta scora, il risultato della misurazione di una grandezza fisica, qualsiasi sia lo strumento utilizzato, non è mai un valore numerico X univocamente

Dettagli

Gli eventi sono stati definiti come i possibili risultati di un esperimento. Ogni evento ha una probabilità

Gli eventi sono stati definiti come i possibili risultati di un esperimento. Ogni evento ha una probabilità Probabilità Probabilità Gli eventi sono stati definiti come i possibili risultati di un esperimento. Ogni evento ha una probabilità Se tutti gli eventi fossero ugualmente possibili, la probabilità p(e)

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

TECNICHE DI SIMULAZIONE

TECNICHE DI SIMULAZIONE TECNICHE DI SIMULAZIONE MODELLI STATISTICI NELLA SIMULAZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Modelli statistici nella simulazione

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

I file di dati. Unità didattica D1 1

I file di dati. Unità didattica D1 1 I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità

Dettagli

Raccolta di Esercizi di Matematica. Capitolo 8 : Modalità CAS (Computer Algebra S ystem)

Raccolta di Esercizi di Matematica. Capitolo 8 : Modalità CAS (Computer Algebra S ystem) Raccolta di Esercizi di Matematica Capitolo 8 : Modalità CAS (Computer Algebra S ystem) Contenuti: 8-1. L ordine Algebrico delle Operazioni 8-2. Problemi sulle Percentuali 8-3. Le Forme Standard e Point-Slope

Dettagli

Funzioni matlab per la gestione dei file. Informatica B Prof. Morzenti

Funzioni matlab per la gestione dei file. Informatica B Prof. Morzenti Funzioni matlab per la gestione dei file Informatica B Prof. Morzenti File Contenitori di informazione permanenti Sono memorizzati su memoria di massa Possono continuare a esistere indipendentemente dalla

Dettagli

STUDIO DI UNA FUNZIONE

STUDIO DI UNA FUNZIONE STUDIO DI UNA FUNZIONE OBIETTIVO: Data l equazione Y = f(x) di una funzione a variabili reali (X R e Y R), studiare l andamento del suo grafico. PROCEDIMENTO 1. STUDIO DEL DOMINIO (CAMPO DI ESISTENZA)

Dettagli

EQUAZIONI non LINEARI

EQUAZIONI non LINEARI EQUAZIONI non LINEARI Francesca Pelosi Dipartimento di Matematica, Università di Roma Tor Vergata CALCOLO NUMERICO e PROGRAMMAZIONE http://www.mat.uniroma2.it/ pelosi/ EQUAZIONI non LINEARI p.1/44 EQUAZIONI

Dettagli

Introduzione. Esempio 1. Soluzione: SPOSTA_1.BAT

Introduzione. Esempio 1. Soluzione: SPOSTA_1.BAT Introduzione Un file batch è un file di testo di tipo ASCII che contiene una sequenza di comandi DOS. I file batch devono avere estensione.bat I comandi DOS all interno dei programmi batch sono eseguiti

Dettagli

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni Funzioni Le funzioni Con il termine funzione si intende, in generale, un operatore che, applicato a un insieme di operandi, consente di calcolare un risultato, come avviene anche per una funzione matematica

Dettagli

Esercizi su lineare indipendenza e generatori

Esercizi su lineare indipendenza e generatori Esercizi su lineare indipendenza e generatori Per tutto il seguito, se non specificato esplicitamente K indicherà un campo e V uno spazio vettoriale su K Cose da ricordare Definizione Dei vettori v,,v

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

ESERCIZI SVOLTI PER LA PROVA DI STATISTICA

ESERCIZI SVOLTI PER LA PROVA DI STATISTICA ESERCIZI SVOLTI PER LA PROVA DI STATISTICA Stefania Naddeo (anno accademico 4/5) INDICE PARTE PRIMA: STATISTICA DESCRITTIVA. DISTRIBUZIONI DI FREQUENZA E FUNZIONE DI RIPARTIZIONE. VALORI CARATTERISTICI

Dettagli

LA NOTAZIONE SCIENTIFICA

LA NOTAZIONE SCIENTIFICA LA NOTAZIONE SCIENTIFICA Definizioni Ricordiamo, a proposito delle potenze del, che = =.000 =.000.000.000.000 ovvero n è uguale ad seguito da n zeri. Nel caso di potenze con esponente negativo ricordiamo

Dettagli

Da una a più variabili: derivate

Da una a più variabili: derivate Da una a più variabili: derivate ( ) 5 gennaio 2011 Scopo di questo articolo è di evidenziare le analogie e le differenze, relativamente al calcolo differenziale, fra le funzioni di una variabile reale

Dettagli

EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE

EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE 1. EQUAZIONI Definizione: un equazione è un uguaglianza tra due espressioni letterali (cioè in cui compaiono numeri, lettere

Dettagli

LA FUNZIONE ESPONENZIALE E IL LOGARITMO

LA FUNZIONE ESPONENZIALE E IL LOGARITMO LA FUNZIONE ESPONENZIALE E IL LOGARITMO APPUNTI PER IL CORSO DI ANALISI MATEMATICA I G. MAUCERI Indice 1. Introduzione 1 2. La funzione esponenziale 2 3. Il numero e di Nepero 9 4. L irrazionalità di e

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

METODI ITERATIVI PER SISTEMI LINEARI

METODI ITERATIVI PER SISTEMI LINEARI METODI ITERATIVI PER SISTEMI LINEARI LUCIA GASTALDI 1. Metodi iterativi classici Sia A R n n una matrice non singolare e sia b R n. Consideriamo il sistema (1) Ax = b. Un metodo iterativo per la soluzione

Dettagli

Gli algoritmi. Gli algoritmi. Analisi e programmazione

Gli algoritmi. Gli algoritmi. Analisi e programmazione Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata

Dettagli

Matematica B - a.a 2006/07 p. 1

Matematica B - a.a 2006/07 p. 1 Matematica B - a.a 2006/07 p. 1 Definizione 1. Un sistema lineare di m equazioni in n incognite, in forma normale, è del tipo a 11 x 1 + + a 1n x n = b 1 a 21 x 1 + + a 2n x n = b 2 (1) = a m1 x 1 + +

Dettagli

Indice generale. Modulo 1 Algebra 2

Indice generale. Modulo 1 Algebra 2 Indice generale Modulo 1 Algebra 2 Capitolo 1 Scomposizione in fattori. Equazioni di grado superiore al primo 1.1 La scomposizione in fattori 2 1.2 Raccoglimento a fattor comune 3 1.3 Raccoglimenti successivi

Dettagli

APPLICAZIONI LINEARI

APPLICAZIONI LINEARI APPLICAZIONI LINEARI 1. Esercizi Esercizio 1. Date le seguenti applicazioni lineari (1) f : R 2 R 3 definita da f(x, y) = (x 2y, x + y, x + y); (2) g : R 3 R 2 definita da g(x, y, z) = (x + y, x y); (3)

Dettagli

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997 1 RAPPRESENTAZIONE BINARIA DEI NUMERI Andrea Bobbio Anno Accademico 1996-1997 Numeri Binari 2 Sistemi di Numerazione Il valore di un numero può essere espresso con diverse rappresentazioni. non posizionali:

Dettagli

1 Numeri Complessi, Formula di Eulero, Decomposizioni Notevoli,... ecc.

1 Numeri Complessi, Formula di Eulero, Decomposizioni Notevoli,... ecc. Classi Numeriche 1 1 Numeri Complessi, Formula di Eulero, Decomposizioni Notevoli,... ecc. In questo breve capitolo richiamiamo le definizioni delle classi numeriche fondamentali, già note al lettore,

Dettagli

Elementi di Statistica

Elementi di Statistica Elementi di Statistica Contenuti Contenuti di Statistica nel corso di Data Base Elementi di statistica descrittiva: media, moda, mediana, indici di dispersione Introduzione alle variabili casuali e alle

Dettagli

Problema n. 1: CURVA NORD

Problema n. 1: CURVA NORD Problema n. 1: CURVA NORD Sei il responsabile della gestione del settore Curva Nord dell impianto sportivo della tua città e devi organizzare tutti i servizi relativi all ingresso e all uscita degli spettatori,

Dettagli

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento.

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. Excel: le funzioni Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. DEFINIZIONE: Le funzioni sono dei procedimenti

Dettagli

(accuratezza) ovvero (esattezza)

(accuratezza) ovvero (esattezza) Capitolo n 2 2.1 - Misure ed errori In un analisi chimica si misurano dei valori chimico-fisici di svariate grandezze; tuttavia ogni misura comporta sempre una incertezza, dovuta alla presenza non eliminabile

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

Equazioni non lineari

Equazioni non lineari CORSO DI LAUREA SPECIALISTICA IN INGEGNERIA ELETTRICA Equazioni non lineari Metodi iterativi per l approssimazione di radici Corso di calcolo numerico 2 01/11/2010 Manuela Carta INDICE Introduzione Metodo

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni

Dettagli

FUNZIONI AVANZATE DI EXCEL

FUNZIONI AVANZATE DI EXCEL FUNZIONI AVANZATE DI EXCEL Inserire una funzione dalla barra dei menu Clicca sulla scheda "Formule" e clicca su "Fx" (Inserisci Funzione). Dalla finestra di dialogo "Inserisci Funzione" clicca sulla categoria

Dettagli

ESTRAZIONE DI RADICE

ESTRAZIONE DI RADICE ESTRAZIONE DI RADICE La radice è l operazione inversa dell elevamento a potenza. L esponente della potenza è l indice della radice che può essere: quadrata (); cubica (); quarta (4); ecc. La base della

Dettagli

Manipolazione di testi: espressioni regolari

Manipolazione di testi: espressioni regolari Manipolazione di testi: espressioni regolari Un meccanismo per specificare un pattern, che, di fatto, è la rappresentazione sintetica di un insieme (eventualmente infinito) di stringhe: il pattern viene

Dettagli

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate.

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate. Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare il testo passato da un comando ad un altro in una pipeline. Ciò è molto utile perché

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

Appunti sulle disequazioni

Appunti sulle disequazioni Premessa Istituto d Istruzione Superiore A. Tilgher Ercolano (Na) Appunti sulle disequazioni Questa breve trattazione non vuole costituire una guida completa ed esauriente sull argomento, ma vuole fornire

Dettagli

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi alternative: function nome { lista-comandi } oppure nome ( ) {

Dettagli

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE 1 DIPENDENZA E INDIPENDENZA LINEARE Se ho alcuni vettori v 1, v 2,, v n in uno spazio vettoriale V, il sottospazio 1 W = v 1,, v n di V da loro generato è

Dettagli

Studio grafico-analitico delle funzioni reali a variabile reale

Studio grafico-analitico delle funzioni reali a variabile reale Studio grafico-analitico delle funzioni reali a variabile reale Sequenza dei passi Classificazione In pratica Classifica il tipo di funzione: Funzione razionale: intera / fratta Funzione irrazionale: intera

Dettagli

Corso di Analisi Matematica. Polinomi e serie di Taylor

Corso di Analisi Matematica. Polinomi e serie di Taylor a.a. 2013/14 Laurea triennale in Informatica Corso di Analisi Matematica Polinomi e serie di Taylor Avvertenza Questi sono appunti informali delle lezioni, che vengono resi disponibili per comodità degli

Dettagli

Funzione reale di variabile reale

Funzione reale di variabile reale Funzione reale di variabile reale Siano A e B due sottoinsiemi non vuoti di. Si chiama funzione reale di variabile reale, di A in B, una qualsiasi legge che faccia corrispondere, a ogni elemento A x A

Dettagli

Matlab: Funzioni. Informatica B. Daniele Loiacono

Matlab: Funzioni. Informatica B. Daniele Loiacono Matlab: Funzioni Informatica B Funzioni A cosa servono le funzioni? 3 x = input('inserisci x: '); fx=1 for i=1:x fx = fx*x if (fx>220) y = input('inserisci y: '); fy=1 for i=1:y fy = fy*y A cosa servono

Dettagli

Calc è il programma per la gestione di fogli di calcolo della suite OpenOffice.org.

Calc è il programma per la gestione di fogli di calcolo della suite OpenOffice.org. Calc è il programma per la gestione di fogli di calcolo della suite OpenOffice.org. Nuovo documento Anteprima di stampa Annulla Galleria Apri Controllo ortografico Ripristina Sorgente dati Salva Controllo

Dettagli

Corso di Laurea a Distanza in Ingegneria Elettrica Corso di Comunicazioni Elettriche Processi casuali A.A. 2007-08. Alberto Perotti, Roberto Garello

Corso di Laurea a Distanza in Ingegneria Elettrica Corso di Comunicazioni Elettriche Processi casuali A.A. 2007-08. Alberto Perotti, Roberto Garello Corso di Laurea a Distanza in Ingegneria Elettrica Corso di Comunicazioni Elettriche Processi casuali A.A. 2007-08 Alberto Perotti, Roberto Garello DELEN-DAUIN Processi casuali Sono modelli probabilistici

Dettagli

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti 4. Insiemi numerici 4.1 Insiemi numerici Insieme dei numeri naturali = {0,1,,3,,} Insieme dei numeri interi relativi = {..., 3,, 1,0, + 1, +, + 3, } Insieme dei numeri razionali n 1 1 1 1 = : n, m \{0}

Dettagli

Funzioni di più variabili. Ottimizzazione libera e vincolata

Funzioni di più variabili. Ottimizzazione libera e vincolata libera e vincolata Generalità. Limiti e continuità per funzioni di 2 o Piano tangente. Derivate successive Formula di Taylor libera vincolata Lo ordinario è in corrispondenza biunivoca con i vettori di

Dettagli

l Editor vi vi (visual editor) è stato scritto per essere utilizzabile con qualsiasi tipo di terminale.

l Editor vi vi (visual editor) è stato scritto per essere utilizzabile con qualsiasi tipo di terminale. l Editor vi Negli ambienti Unix esistono molti editor di testo diversi; tuttavia vi è l unico che siamo sicuri di trovare in qualsiasi variante di Unix. vi (visual editor) è stato scritto per essere utilizzabile

Dettagli

Metodi numerici per la risoluzione di equazioni. Equazioni differenziali ordinarie

Metodi numerici per la risoluzione di equazioni. Equazioni differenziali ordinarie Metodi numerici per la risoluzione di equazioni differenziali ordinarie Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ Lezione 5-31 ottobre 2005 Outline 1 Il problema di Cauchy Il problema

Dettagli

VARIABILI ALEATORIE CONTINUE

VARIABILI ALEATORIE CONTINUE VARIABILI ALEATORIE CONTINUE Se X è una variabile aleatoria continua, la probabilità che X assuma un certo valore x fissato è in generale zero, quindi non ha senso definire una distribuzione di probabilità

Dettagli

Esercitazioni di Excel

Esercitazioni di Excel Esercitazioni di Excel A cura dei proff. A. Khaleghi ed A. Piergiovanni. Queste esercitazioni hanno lo scopo di permettere agli studenti di familiarizzare con alcuni comandi specifici di Excel, che sono

Dettagli

Introduzione ad Access

Introduzione ad Access Introduzione ad Access Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Access E un programma di gestione di database (DBMS) Access offre: un supporto transazionale

Dettagli

RELAZIONE TRA DUE VARIABILI QUANTITATIVE

RELAZIONE TRA DUE VARIABILI QUANTITATIVE RELAZIONE TRA DUE VARIABILI QUANTITATIVE Quando si considerano due o più caratteri (variabili) si possono esaminare anche il tipo e l'intensità delle relazioni che sussistono tra loro. Nel caso in cui

Dettagli

Editor vi. Editor vi

Editor vi. Editor vi Editor vi vi 1 Editor vi Il vi è l editor di testo standard per UNIX, è presente in tutte le versioni base e funziona con qualsiasi terminale a caratteri Permette di visualizzare una schermata alla volta

Dettagli

Funzioni in più variabili

Funzioni in più variabili Funzioni in più variabili Corso di Analisi 1 di Andrea Centomo 27 gennaio 2011 Indichiamo con R n, n 1, l insieme delle n-uple ordinate di numeri reali R n4{(x 1, x 2,,x n ), x i R, i =1,,n}. Dato X R

Dettagli

FACOLTA DI INGEGNERIA SCHEDA DIDATTICA N 1

FACOLTA DI INGEGNERIA SCHEDA DIDATTICA N 1 FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA PER L AMBIENTE ED IL TERRITORIO CORSO DI STATISTICA E CALCOLO DELLE PROBABILITA PROF. PASQUALE VERSACE SCHEDA DIDATTICA N ARGOMENTO: CALCOLO DELLE PROBABILITA

Dettagli

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1 LEZIONE 14 141 Dimensione di uno spazio vettoriale Abbiamo visto come l esistenza di una base in uno spazio vettoriale V su k = R, C, permetta di sostituire a V, che può essere complicato da trattare,

Dettagli

ESAME DI STATO DI LICEO SCIENTIFICO CORSO DI ORDINAMENTO 2004

ESAME DI STATO DI LICEO SCIENTIFICO CORSO DI ORDINAMENTO 2004 ESAME DI STATO DI LICEO SCIENTIFICO CORSO DI ORDINAMENTO 004 Il candidato risolva uno dei due problemi e 5 dei 10 quesiti in cui si articola il questionario. PROBLEMA 1 Sia f la funzione definita da: f

Dettagli

FUNZIONE ESPONENZIALE E FUNZIONE LOGARITMICA

FUNZIONE ESPONENZIALE E FUNZIONE LOGARITMICA FUNZIONE ESPONENZIALE E FUNZIONE LOGARITMICA DEFINIZIONE: Dato un numero reale a che sia a > 0 e a si definisce funzione esponenziale f(x) = a x la relazione che ad ogni valore di x associa uno e un solo

Dettagli

Prolog: aritmetica e ricorsione

Prolog: aritmetica e ricorsione Capitolo 13 Prolog: aritmetica e ricorsione Slide: Aritmetica e ricorsione 13.1 Operatori aritmetici In logica non vi è alcun meccanismo per la valutazione di funzioni, che è fondamentale in un linguaggio

Dettagli

Minimizzazione di Reti Logiche Combinatorie Multi-livello

Minimizzazione di Reti Logiche Combinatorie Multi-livello Minimizzazione di Reti Logiche Combinatorie Multi-livello Maurizio Palesi Maurizio Palesi 1 Introduzione Obiettivo della sintesi logica: ottimizzazione delle cifre di merito area e prestazioni Prestazioni:

Dettagli

Corso di Fondamenti di Informatica

Corso di Fondamenti di Informatica Corso di Fondamenti di Informatica L uso delle funzioni in C++ Claudio De Stefano - Corso di Fondamenti di Informatica 1 Funzioni Nel C++ è possibile scomporre problemi complessi in moduli più semplici

Dettagli

Che Cosa è MATLAB. Cos è Matlab? Riferimenti bibliografici. Introduzione all ambiente Matlab

Che Cosa è MATLAB. Cos è Matlab? Riferimenti bibliografici. Introduzione all ambiente Matlab Riferimenti bibliografici Introduzione all ambiente Matlab Guida per l utente (http://www.mathworks.com) G. Naldi, L. Pareschi, Matlab concetti e progetti, Apogeo ed. Tutorials e programmi disponibili

Dettagli

ISTITUTO COMPRENSIVO N 1 LANCIANO - SCUOLA SECONDARIA DI PRIMO GRADO CURRICOLO VERTICALE - Classe Prima MATEMATICA a.s. 2014/2015

ISTITUTO COMPRENSIVO N 1 LANCIANO - SCUOLA SECONDARIA DI PRIMO GRADO CURRICOLO VERTICALE - Classe Prima MATEMATICA a.s. 2014/2015 NUMERI. SPAZIO E FIGURE. RELAZIONI, FUNZIONI, MISURE, DATI E PREVISIONI Le sociali e ISTITUTO COMPRENSIVO N 1 LANCIANO - SCUOLA SECONDARIA DI PRIMO GRADO CURRICOLO VERTICALE - Classe Prima MATEMATICA procedure

Dettagli

Equazioni differenziali ordinarie

Equazioni differenziali ordinarie Capitolo 2 Equazioni differenziali ordinarie 2.1 Formulazione del problema In questa sezione formuleremo matematicamente il problema delle equazioni differenziali ordinarie e faremo alcune osservazioni

Dettagli

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Se a e b sono numeri interi, si dice che a divide b, in simboli: a b, se e solo se esiste c Z tale che b = ac. Si può subito notare che:

Dettagli

Funzioni. Corso di Fondamenti di Informatica

Funzioni. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Funzioni Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti e dei

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

SISTEMI LINEARI QUADRATI: METODI ITERATIVI

SISTEMI LINEARI QUADRATI: METODI ITERATIVI SISTEMI LINEARI QUADRATI: METODI ITERATIVI CALCOLO NUMERICO e PROGRAMMAZIONE SISTEMI LINEARI QUADRATI:METODI ITERATIVI p./54 RICHIAMI di ALGEBRA LINEARE DEFINIZIONI A R n n simmetrica se A = A T ; A C

Dettagli

Studente: SANTORO MC. Matricola : 528

Studente: SANTORO MC. Matricola : 528 CORSO di LAUREA in INFORMATICA Corso di CALCOLO NUMERICO a.a. 2004-05 Studente: SANTORO MC. Matricola : 528 PROGETTO PER L ESAME 1. Sviluppare una versione dell algoritmo di Gauss per sistemi con matrice

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Semantica operazionale dei linguaggi di Programmazione

Semantica operazionale dei linguaggi di Programmazione Semantica operazionale dei linguaggi di Programmazione Oggetti sintattici e oggetti semantici Rosario Culmone, Luca Tesei Lucidi tratti dalla dispensa Elementi di Semantica Operazionale R. Barbuti, P.

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

Appunti di Logica Matematica

Appunti di Logica Matematica Appunti di Logica Matematica Francesco Bottacin 1 Logica Proposizionale Una proposizione è un affermazione che esprime un valore di verità, cioè una affermazione che è VERA oppure FALSA. Ad esempio: 5

Dettagli

Principal Component Analysis (PCA)

Principal Component Analysis (PCA) Principal Component Analysis (PCA) Come evidenziare l informazione contenuta nei dati S. Marsili-Libelli: Calibrazione di Modelli Dinamici pag. Perche PCA? E un semplice metodo non-parametrico per estrarre

Dettagli

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it INTRODUZIONE, LINGUAGGIO, HANDS ON Giuseppe Cirillo g.cirillo@unina.it Il linguaggio C 1972-Dennis Ritchie 1978-Definizione 1990-ANSI C 1966 Martin Richars (MIT) Semplificando CPL usato per sviluppare

Dettagli

Il simbolo. è è = = = In simboli: Sia un numero naturale diverso da zero, il radicale. Il radicale. esiste. esiste 0 Il radicale

Il simbolo. è è = = = In simboli: Sia un numero naturale diverso da zero, il radicale. Il radicale. esiste. esiste 0 Il radicale Radicali 1. Radice n-esima Terminologia Il simbolo è detto radicale. Il numero è detto radicando. Il numero è detto indice del radicale. Il numero è detto coefficiente del radicale. Definizione Sia un

Dettagli