NOZIONI di MATLAB. Francesca Pelosi. Master Scienza e Tecnologia Spaziale a.a Dipartimento Matematica Università di Roma Tor Vergata
|
|
- Aloisia Teresa Cavaliere
- 8 anni fa
- Visualizzazioni
Transcript
1 NOZIONI di MATLAB Francesca Pelosi Dipartimento Matematica Università di Roma Tor Vergata Master Scienza e Tecnologia Spaziale a.a NOZIONI di MATLAB p. 1/83
2 MATLAB = MATrix LAboratory È un sistema interattivo in cui l unità base dei dati è un array (es: vettore=array a 1 indice, matrice=array a 2 indici), per il quale non è chiesto il dimensionamento. È un interprete di comandi: non richiede la fase di traduzione in codice macchina. È un linguaggio di alto livello (come il C o il Java). A differenza del C, le variabili vengono create assegnando ad esse dei valori. Ha una buona potenzialità grafica. Versioni per Unix/Linux, Windows, Mac. I files scritti in Matlab sono portabili da una piattaforma all altra. NOZIONI di MATLAB p. 2/83
3 Cinque parti principali 1. Il linguaggio MATLAB (con la relative gestione delle principali strutture di programmazione). 2. La gestione dell ambiente di lavoro MATLAB ( The MATLAB Working Environment). 3. La gestione dell ambiente grafico (Handle Graphics). 4. Libreria di funzioni matematiche (Mathematical Functions Library). 5. Libreria per permettere di far interagire programmi scrit- ti in C o FORTRAN con MATLAB (API, Application Program Interface). NOZIONI di MATLAB p. 3/83
4 ... a cui si aggiungono Librerie per applicazioni specifiche (TOOLBOX): statistica, curve fitting, ottimizzazione, analisi di immagini, controllo e identificazione di sistemi, logica fuzzy, equazioni alle derivate parziali, matematica finanziaria,... Programmazione grafica per agevolare la modellizzazione e la simulazione di sistemi complessi (SIMULINK). Per maggiori dettagli: NOZIONI di MATLAB p. 4/83
5 Avviare MATLAB All avvio compaiono un pò di informazioni sulla versione, sull help in linea, sui programmi dimostrativi oltre al sito poi c e il prompt < M A T L A B > Copyright The MathWorks, Inc. Version a (R11) Jun To get started, type one of these: helpwin, helpdesk, or demo. For product information, visit NOZIONI di MATLAB p. 5/83
6 >> help matlab\general - General purpose commands. matlab\ops - Operators and special characters. matlab\lang - Programming language constructs. matlab\elmat - Elementary matrices and matrix manipulation. matlab\randfun - Random matrices and random streams. matlab\elfun - Elementary math functions. matlab\specfun - Specialized math functions. matlab\matfun - Matrix functions - numerical linear algebra. matlab\datafun - Data analysis and Fourier transforms. matlab\polyfun - Interpolation and polynomials. matlab\funfun - Function functions and ODE solvers. matlab\sparfun - Sparse matrices. matlab\scribe - Annotation and Plot Editing. matlab\graph2d - Two dimensional graphs. matlab\graph3d - Three dimensional graphs. matlab\specgraph - Specialized graphs. matlab\graphics - Handle Graphics. matlab\uitools - Graphical User Interface Tools. NOZIONI di MATLAB p. 6/83
7 ... matlab\strfun - Character strings. matlab\imagesci - Image and scientific data input/output. matlab\iofun - File input and output. matlab\audiovideo - Audio and Video support. matlab\timefun - Time and dates. matlab\datatypes - Data types and structures. matlab\verctrl - Version control. matlab\codetools - Commands for creating and debugging code. matlab\helptools - Help commands. matlab\winfun - Windows Operating System Interface Files (COM/DDE) matlab\demos - Examples and demonstrations. matlab\timeseries - Time series data visualization and exploration. matlab\hds - (No table of contents file) matlab\guide - Graphical User Interface Tools. matlab\plottools - Graphical User Interface Tools. toolbox\local - General preferences and configuration information. NOZIONI di MATLAB p. 7/83
8 Assegnazione di variabili scalari >> a=2.31» variabile = espressione a: nome della variabile: max 31 caratteri alfanumerici e underscore, il primo dei quali deve essere una lettera; lettere maiuscole e minuscole sono considerate diverse sia nei comandi che nei nomi delle variabili. 2.31: valore numerico assegnato alla variabile. Simbolo ";" >> a=2.31 produce a = >> a=2.31; non produce risposta NOZIONI di MATLAB p. 8/83
9 Operazioni aritmetiche tra scalari ˆ potenza prodotto / divisione differenza Es: per calcolare x = /3 2 (6+3 2 ) >> x= (4 + 3ˆ5-2/ 3)/(2 (6+3ˆ2)) 1. Sono osservate le precedenze classiche dell artimetica 2. Per alterare le precedenze si utilizzano esclusivamente le parentesi tonde. NOZIONI di MATLAB p. 9/83
10 Formato di rappresentazione dei numeri >> c= c = Il numero è stato rappresentato con 4 cifre decimali (taglio) >> format short e >> c c = e-01 Formato esponenziale con 4 cifre di mantissa (arrotondamento) >> format long e >> c c = e-01 Formato esponenziale con 15 cifre di mantissa >> format long >> c c = Rappresentato con 15 cifre dimantissa NOZIONI di MATLAB p. 10/83
11 Formati disponibili: >> help format VARIABILE format format short format long format short e format long e format short g format long g... SIGNIFICATO default virgola fissa scalata con 4 cifre per la mantissa virgola fissa scalata con 15 cifre per la mantissa floating-point (esponenziale) con 4 cifre di mantissa floating-point (esponenziale) con 15 cifre di mantissa sceglie la rappresentazione migliore con 4 cifre Sceglie la rappresentazione migliore con 15 cifre Di default, Matlab lavora con variabili in doppia precisione. Ogni numero memorizzato in doppia precisione occupa 8 Bytes. Le variabili scalari sono viste come array di dimensione 1 1 (una riga e una colonna). NOZIONI di MATLAB p. 11/83
12 Variabili predefinite: VARIABILE ans i,j pi eps realmax realmin Inf SIGNIFICATO valore ultima operazione eseguita e non assegnata ad una variabile unità immaginaria, 1 approssimazione di π precisione macchina massimo numero macchina positivo rappresentabile minimo numero macchina positivo rappresentabile, ossia un numero maggiore di realmax NaN Not a Number (0=0, Inf/Inf,...) computer version clock date tipo di computer versione di MATLAB contiene data e orario corrente (vettore di 6 elementi) contiene data sotto forma di stringa Il valore di queste variabili può essere modificato, anche se è un operazione fortemente sconsigliata. NOZIONI di MATLAB p. 12/83
13 VETTORI E MATRICI NOZIONI di MATLAB p. 13/83
14 Vettori e matrici La struttura principale di MATLAB è l array. Sei tipi di dati possono comporre un array: char, double, sparse, cell, uint8, struct. Assegnazione di array Modi equivalenti per generare un array 1 4, 1 riga e 4 colonne, vettore riga: >> a=[ ]; >> a=[1,2,3,4]; >> a=1:4; Per generare un array 4 1, 4 righe e 1 colonna, vettore colonna: >> b=[1; 2; 3; 4]; Per generare un array 2 3, matrice 2 righe e 3 colonne: >> c=[1 2 3; 4 5 6] NOZIONI di MATLAB p. 14/83
15 Vettori e Matrici Comandi per generare sequenze uniformemente distribuite: notazione due punti: >> vettore = Inizio:Passo:Fine ESEMPI: >> x = 1:2:15 x = >> y=1:9 y = >> z=10:-2:2 z = NOZIONI di MATLAB p. 15/83
16 Vettori e Matrici Comandi per generare sequenze uniformemente distribuite: comando linspace: >> linspace (Inizio, Fine, Numero di Punti) ESEMPI: >> a=0; b=1; n=8; >> x=linspace(a,b,n) x = OSS: Il vettore ha componenti: x(i) = a+(i 1) b a n 1 NOZIONI di MATLAB p. 16/83
17 Vettori e matrici Assegnazione di array OSS: l istruzione >> d(4,3)=10 genera una matrice 4 3 con tutti elementi nulli tranne quello di posto 4,3: >> d= NOZIONI di MATLAB p. 17/83
18 Dimensione di un array Il comando size fornisce le dimensioni di una matrice: >> size(c) ans = 2 3 produce il vettore riga di due elementi contenenti il numero di righe e di colonne di c. Il comando length fornisce la lunghezza di un vettore: >> length(a) ans = 4 produce un numero pari alla lunghezza del vettore a. length(a) max(size(a)) NOZIONI di MATLAB p. 18/83
19 Vettori e matrici: Operazione di trasposizione: >> a ans = Il vettore trasposto di a viene memorizzato nella variabile ans >> c1=c c1 = La matrice trasposta di c viene memorizzato nella matrice c1 NOZIONI di MATLAB p. 19/83
20 Vettori e matrici Come accedere agli elementi di array: Per accedere ad un elemento di un vettore: >> a(2) ans = 4 Per accedere ad un elemento di una matrice >> c(2,1) ans = 2 Come lavorare con righe e colonne di array Per estrarre la prima colonna di una matrice >> e=c(:,1) e = 1 4 NOZIONI di MATLAB p. 20/83
21 Vettori e matrici Come lavorare con righe e colonne di array Per estrarre le prime due colonne di una matrice >> f=c(:,1:2) f = Come modificare un elemento di un array: >> a(2)=10 a = Per modificare un elemento di una matrice: >> c(2,3)=20 c = NOZIONI di MATLAB p. 21/83
22 Vettori e matrici: operazioni >> help matlab\ops operazioni dell algebra lineare: + somma di vettori o matrici (elemento per elemento) differenza di vettori o matrici (elemento per elemento) prodotto tra vettori e/o matrici (righe per colonne) ˆ potenza di matrici (matrice quadrata ed esponente scalare) tali che : per somma e differenza: gli operandi devono avere le stesse dimensioni per il prodotto: la dimensione interna dei due array deve coincidere. NOZIONI di MATLAB p. 22/83
23 Vettori e matrici: operazioni >> help matlab\ops l operazione \ backslash o divisione sinistra: se A è quadrata A\B da come risultato la matrice divisione di B in A ovvero inv(a)*b ma calcolata con opportuni algoritmi (si veda doc mldivide ). In particolare se se A è una matrice quadrata n n e B un vettore colonna di n componenti x=a\b fornisce la soluzione del sistema lineare Ax = B attraverso il metodo di Gauss. se A è una matrice m n con n m e B un vettore colonna di m componenti x=a \B fornisce la soluzione ai minimi quadrati del sistema lineare Ax = B (che sarà sottoderminato o sovradeterminato a seconda che m < n o m > n). NOZIONI di MATLAB p. 23/83
24 Vettori e matrici: operazioni >> help matlab\ops l operazione / o divisione destra: se A è quadrata B/A da come risultato la matrice divisione di A in B ovvero B*inv(A) (si veda doc mrdivide). se A è una matrice n n e B un vettore riga di n componenti x=a/b fornisce la soluzione del sistema lineare xa = B attraverso il metodo di Gauss con pivot parziale. se B è una matrice m n con n m e A un vettore colonna di m componenti x=b/a fornisce la soluzione ai minimi quadrati del sistema lineare xa = B (che sarà sottoderminato o sovradeterminato a seconda che m < n o m > n). NOZIONI di MATLAB p. 24/83
25 Vettori e matrici: operazioni >> help matlab\ ops altre utili operazioni (elemento per elemento tra matrici e/o vettori di stesse dimensioni o scalari). prodotto tra gli elementi di vettori e/o matrici.\,./ divisione sinistra e destra tra gli elementi di vettori e/o matrici.ˆ elevamento a potenza tra gli elementi di vettori e/o matrici NOZIONI di MATLAB p. 25/83
26 Matrici particolari: >> help elmat A=ones(m,n): produce la matrice A di dimensioni m n, i cui elementi sono uguali ad 1. B=zeros(m,n): produce la matrice B di dimensioni mxn, i cui elementi sono uguali ad 0. I=eye(n) produce la matrice identità I di dimensioni n n. I=eye(m,n) produce la matrice I di dimensioni m n, che ha 1 sulla diagonale principale e 0 fuori. R=rand(m,n) produce la matrice R di dimensioni m n, di elementi pseudo-random uniformemente distribuiti. NOZIONI di MATLAB p. 26/83
27 Matrici particolari: >> help elmat diag: Sia v un vettore di n componenti. diag(v,k) è una matrice quadrata di ordine n+abs(k) che ha gli elementi di v sulla diagonale k-esima. se k = 0 è la diagonale principale (=diag(v)) se k > 0 si trova sopra la diagonale principale se k < 0 si trova sotto la diagonale principale Sia A una matrice. diag(a,k) è un vettore colonna formato dagli elementi della diagonale k-esima di A: diag(a) è la diagonale principale di A. diag(diag(a)) è la matrice diagonale che ha la stessa diagonale principale di A. NOZIONI di MATLAB p. 27/83
28 Funzioni elementari su matrici: >> help elfun funzioni trigonometriche: sin(x), cos(x), tan(x),... funzioni esponenziali: exp(x), log(x), log10(x),... funzioni complesse: abs(x), conj(x), imag(x), real(x),... funzioni per arrotondamenti numerici: ceil(x), floor(x), fix(x), round(x),... Tali funzioni eseguono la stessa operazione su ogni argomento dell array x. NOZIONI di MATLAB p. 28/83
29 GRAFICA NOZIONI di MATLAB p. 29/83
30 Grafica 2D: help graph2d La funzione plot plot(x,y) disegna il diagramma cartesiano dei punti che hanno valori delle ascisse nel vettore x, delle ordinate nel vettore y, congiungendo i punti con una linea blue; sintassi completa: >> plot(x,y, color linestyle marker ) color: c,m,y,r,b,g,w,k linestyle: -,--,:,-.,none marker: +,o,,.,+,x,s,d,ˆ,<,>,p,h Si può arricchire il grafico con le funzioni: xlabel (nome asse ascisse), ylabel (nome asse ordinate), title (titolo) NOZIONI di MATLAB p. 30/83
31 Grafica 2D ESEMPI: file grafica.m cubica x = -10:0.1:10; y=x.ˆ3; plot(x,y) xlabel( ascisse ) ylabel( ordinate ) title( cubica ) ordinate ascisse x=[-8:0.1:8]; y= sin (x)./ x; plot(x, y) xlabel( ascisse ) ylabel( ordinate ) ordinate ascisse NOZIONI di MATLAB p. 31/83
32 Grafica 2D ESEMPI t=0:pi/10:2*pi; x=cos(t); y=sin(t); t1=0:pi/100:2*pi; x1=cos(t1); y1=sin(t1); figure plot(x,y, ro ) hold on plot(x1,y1, r- ) xlabel( cos(t) ) ylabel( sin(t) ) title( Cerchio unitario ) axis square sin(t) Cerchio unitario cos(t) NOZIONI di MATLAB p. 32/83
33 Grafica 3D: help graph3d La funzione plot3 plot3(x,y,z) disegna il diagramma cartesiano dei punti nello spazio che hanno valori i valori delle 3 coordinate nei vettori x, y, z; si può aggiungere un quarto input, come per plot per specifiche di linea-colore e simbolo: >> plot(x,y,z, color linestyle marker ) Analogamente si può arricchire il grafico con le funzioni: xlabel, ylabel, zlabel, title NOZIONI di MATLAB p. 33/83
34 Grafica 3D ESEMPIO t=linspace(0,10*pi,200); figure plot(t.*sin(t),t.*cos(t),t, g ) xlabel( ascisse ) ylabel( ordinate ) zlabel( quote ) title( Curva 3D ) quote ordinate ascisse NOZIONI di MATLAB p. 34/83
35 Grafica 3D: superfici Per rappresentare una superficie (funzione a due variabili z = f(x,y)): La funzioni mesh(xx,yy,zz) e surf(xx,yy,zz) generano una superficie, a partire da tre argomenti xx contiene le ascisse (matrice) yy contiene le ordinate (matrice) zz contiene le quote (matrice) Le due matrici, xx, e yy, si possono costruire, mediante la funzione meshgrid(x,y): [xx,yy]= meshgrid(x,y) x e y sono due vettori xx e yy sono due matrici entrambe di legth(y) righe e length(x) colonne: la prima, xx, contiene, ripetuti in ogni riga, i valori di x la seconda, yy, contiene, ripetuti in ogni colonna, i valori di y trasposto NOZIONI di MATLAB p. 35/83
36 Grafica 3D: superfici (mesh) ESEMPI: x=-4:0.05:4; y=x; [xx,yy]=meshgrid(x,y); zz=xx.ˆ2 + yy.ˆ2; mesh(xx,yy,zz) xlabel( ascisse ) 35 ylabel( ordinate ) zlabel( quote ) quote z ordinate y ascisse x 2 NOZIONI di MATLAB p. 36/83
37 Grafica 3D: superfici (surf) ESEMPI: x=-8:0.1:8; y=x; [xx, yy] = meshgrid(x, y); r = sqrt(xx.ˆ2 + yy.ˆ2); zz = sin (r)./r; surf(xx,yy,zz) 1 xlabel( ascisse ) 0.8 ylabel( ordinate ) zlabel( quote ) quote ordinate ascisse 5 NOZIONI di MATLAB p. 37/83
38 Grafica 2D/3D Altri comandi utili per personalizzare gli assi: axis, grid, box, subplot, hold,... i colori (grafici 3D): colormap, shading,... il punto di vista (grafici 3D): view, rotate3d,... Con il comando print si possono salvare specificando il formato (.eps,.jpg,.tiff,.bmp,...); altre funzioni per altri tipi di grafici: 2D: loglog, polar,... contour, contour3, contourf... fill, fill3,... hist, bar, patch... figure e close: per aprire e chiudere una finestra grafica; una volta creato un grafico molte modifiche possono NOZIONI di MATLAB p. 38/83
39 SCRIPT e FUNCTION NOZIONI di MATLAB p. 39/83
40 Script e Function Il processo di programmazione in MATLAB funziona nel modo seguente: (1) Si crea un M-file usando un editore di testi (per es. Editor/Debug); (2) Si chiama l M-file dalla linea di comando oppure da un altro M-file. Esistono due tipi di M-file: Script: + opera sui dati presenti + non accetta variabili in input + non ha variabili in output; + utile per automatizzare una serie di istruzioni che si devono eseguire più volte. Function: + le variabili interne sono locali + può accettare variabili in input + può avere variabili in output; + utile per estendere il linguaggio MATLAB alle applicazioni personali NOZIONI di MATLAB p. 40/83
41 Script files Uno script è un file di testo contenente una sequenza di comandi MATLAB, senza variabili di input e output, salvato con estensione.m (M-file). Serve per automatizzare una serie di comandi MATLAB che devono essere eseguiti più volte. Opera sui dati esistenti nell ambiente di lavoro di base, oppure può creare nuovi dati. I dati che vengono generati rimangono nell ambiente di lavoro di base e possono essere riutilizzati per altri calcoli. I comandi all interno di uno script sono eseguiti sequenzialmente, come se fossero scritti nella finestra dei comandi; Per eseguire Il file si digita il suo nome (senza.m). NOZIONI di MATLAB p. 41/83
42 Script files Puó essere creato utilizzando un qualsiasi editor di testo Ricordarsi di salvare il file come `solo testoé di dare l estensione.m Il file di script deve essere presente nella directory corrente o comunque in uno dei path standard di matlab Matlab include un editor dove creare o modificare script Il nome del file deve cominciare con una lettera e può contenere cifre e il carattere, fino a 31 caratteri. Evitare di: avere lo stesso nome per il file di script e a una variabile; creare uno script con lo stesso nome di un comando o funzione MATLAB Per verificare se esiste già qualcosa che ha un certo nome si può utilizzare la funzione exist. NOZIONI di MATLAB p. 42/83
43 Script files: contenuto Chiamate di un altra function; Cicli for oppure while; if, elseif, else; Input/Output interattivi; Calcoli; Assegnazioni; Commenti; Linee bianche; Comandi per la costruzione di grafici. NOZIONI di MATLAB p. 43/83
44 Script files: esempio Esempio: file alglin.m % Risoluzione di un sistema lineare % Ax = b % e calcolo dell errore relativo % A: Matrice di Hilbert % b: Ottenuto dalla soluzione esatta % Inizio istruzioni A=hilb(n); % Calcolo x=[1:n] ; b=a x; x1=a\b; errore=norm(x-x1) errorerel=errore/norm(x) NOZIONI di MATLAB p. 44/83
45 Script files: esempio Esempio: file flower.m % A script to produce % flower peta plots theta = -pi:0.01:pi; % Computations rho(1,:) = 2 sin(5 theta).ˆ2; rho(2,:) = cos(10 * theta).ˆ3; rho(3,:) = sin(theta).ˆ 2; rho(4,:) = 5 * cos(3.5 theta).ˆ 3; for k = 1:4 polar(theta, rho(k,:)) % Graphics output pause end NOZIONI di MATLAB p. 45/83
46 Script files: input, menu Istruzioni utili per l acquisizione di dati da tastiera: input v=input( stringa di testo ): fa apparire sul prompt la stringa di testo e attende per un input da tastiera che verrà memorizzato in v; menu choice=menu( titolo, scelta1, scelta2,... ): genera un menu di scelta per l utente, formato da un titolo e varie possibile scelte: occorre cliccare una scelta e choice assumerà il valore numerico corrispondente alla scelta effettuata. NOZIONI di MATLAB p. 46/83
47 Script files: disp, sprintf Istruzioni utili per la stampa di risultati su video: disp disp(x): fa apparire sul prompt l array x senza il nome, se x è una stringa appare il testo contenuto; si veda int2str, num2str, format; sprintf S=sprintf(format, A): formatta i dati in A secondo le specifiche contenute in format e li memorizza in S format: è una stringa che contiene specifiche di conversione del linguaggio C precedute da %, (d, i, o, u, x, X, f, e, E, g, G, c); altri formati speciali sono usati per produrre linee di interruzioni (\n, \r, \t, \b, \f); NOZIONI di MATLAB p. 47/83
48 Function files: struttura Riga di definizione. Questa riga definisce il nome della function, il numero e l ordine delle variabili in ingresso e in uscita. Riga H1. Con il comando lookfor nome-function MATLAB scrive questa riga. Con il comando help di un intera cartella, MATLAB scrive questa riga per ogni M-file della cartella. Testo per help. Con il comando help nome-function MATLAB scrive il testo per help insieme alla riga H1. Corpo della function. Contiene le istruzioni per il calcolo e assegna il valore alle variabili di uscita (analogamente ai files di tipo script). Commenti. Righe non eseguibili, aiutano la lettura. NOZIONI di MATLAB p. 48/83
49 Function files: riga di definizione >> function [output] = nome function(input) Output [x]: una sola variabile in uscita x [x,y,z]: più variabili in uscita x,y,z [ ]: nessuna variabile in uscita Input Le variabili in input possono essere array (scalari, vettori, matrici) ma anche il nome di altre function, separati da virgola (notazione posizionale): function [t,y] = ode45( f,[t0,tf],y0) Come nel caso degli script le function possono essere scritte in file di testo sorgenti: devono avere estensione.m, devono avere lo stesso nome della funzione. Attenzione a non ridefinire funzioni esistenti: exist( nomefunzione ) NOZIONI di MATLAB p. 49/83
50 Function files Quando una function viene eseguita, viene creato un workspace locale in cui vengono memorizzate tutte le variabili usate nella function (inclusi i parametri formali) Quando viene invocata una function: vengono calcolati i valori dei parametri attuali di ingresso viene creato un workspace locale per la funzione i valori dei parametri attuali di ingresso vengono copiati nei parametri formali all interno del workspace locale; viene eseguita la function; vengono copiati i valori di ritorno dal workspace locale a quello principale (nei corrispondenti parametri attuali); il workspace locale viene distrutto. NOZIONI di MATLAB p. 50/83
51 Function files: esempi Trasposta function [t]=trasposta(m) [r,c]=size(m); for i=1:r for j=1:c t(j,i)=m(i,j); end end Fattoriale function [f]=factric(n) if (n==0) f=1; else f=n factric(n-1); end NOZIONI di MATLAB p. 51/83
52 Variabili funzione Versioni recenti di MATLAB definiscono in modo pieno il tipo funzione, permettendo di assegnare a variabili valori di tipo funzione definire funzioni che ricevono parametri di tipo funzione; un valore di tipo funzione può essere applicato a opportuni argomenti: si ottiene una invocazione della funzione ESEMPIO: >> f=@(x)(x.ˆ2-4) f è una variabile di tipo funzione, f(x) = x 2 4, che può essere valutata come segue: >> f(3), f([2,4, 5, 7]), >> feval(f, 5) NOZIONI di MATLAB p. 52/83
53 Variabili funzione Si può assegnare una variabile di tipo funzione anche utilizzando la funzione inline ESEMPIO: >> g=inline( x.ˆ2-4 ) analogamente f è una variabile di tipo funzione che può essere valutata come segue: >> f(3), f([2,4, 5, 7]), feval(f, 5) Entrambe le definizioni possono creare funzioni a piú variabili: >> z=inline( x.ˆ2-y, x, y ) >> z=@(x,y)(x.ˆ2-y) z simula la funzione di due variabili, z(x,y) = x 2 y, in cui è stato specificato l ordine delle variabili, si valuta assegnando valori agli array x,y: >> z(3,4), >> feval(z, 5,7) NOZIONI di MATLAB p. 53/83
54 STRUTTURE di CONTROLLO NOZIONI di MATLAB p. 54/83
55 Tipo di dato logico È un tipo di dato che può assumere solo due valori 1 : true (vero) 0 : false (falso) I valori di questo tipo possono essere generati direttamente da due funzioni speciali (true, false) dagli operatori relazionali dagli operatori logici I valori logici occupano un solo byte di memoria (i numeri ne occupano 8): Esempio: >> a = true; a è un vettore 1 1 che occupa 1 byte e appartiene alla classe tipo logico. NOZIONI di MATLAB p. 55/83
56 Operatori relazionali Gli operatori relazionali operano su tipi numerici o stringhe Forma generale: a OP b a e b possono essere espressioni aritmetiche, variabili, stringhe. Operatori disponibili: 3 < 4 equivale a true (1) 3 == 4 equivale a false (0) ==, =, >, >=, <, <=, Operatori relazionali possono essere usati per confrontare vettori con vettori della stessa dimensione: [ 1 0; -2 1] < 0 equivale a [0 0; 1 0] [1 0; -2 1] >= [2-1; 0 0] equivale a [0 1; 0 1] NOZIONI di MATLAB p. 56/83
57 Operatori logici &&, & (AND), (OR) (NOT) a b a && b a b a && e funzionano con gli scalari e valutano prima l operando più a sinistra. Se questo è sufficiente per decidere il valore di verità dell espressione non vanno oltre: (b = 0) && (a/b > 10) controlla prima b =0 e se questo è falso non valuta il secondo termine. & e funzionano con scalari e vettori e valutano tutti gli operandi prima di valutare l espressione complessiva. NOZIONI di MATLAB p. 57/83
58 Ordine fra gli operatori Un espressione viene valutata nel seguente ordine: operatori aritmetici operatori relazionali da sinistra verso destra NOT ( ) AND (& e &&) da sinistra verso destra OR ( e ) da sinistra verso destra Qualche utilte funzione logica predefinita: all, any, isinf, isempty, finite, ischar, isnumeric, isreal,... NOZIONI di MATLAB p. 58/83
59 Strutture di controllo: if-then-else if valuta una espressione logica ed esegue un gruppo di istruzioni a seconda del valore dell espressione logica. if espressione logica istruzioni end if espressione logica istruzioni elseif espressione logica istruzioni else istruzioni end NOZIONI di MATLAB p. 59/83
60 Strutture di controllo: if-then-else ESEMPIO: formula stabile per radici di ax 2 +bx+c = 0 Se b 0 : x 1 = b b 2 c x 2 = 2a c ax 1 altrimenti (b < 0) : x 2 = b+ b 2 c x 1 = 2a c ax 2 dal file: Eq2grado funstab.m... if b>= 0 x1=-b-sqrt(b b-4 a c); x2=c/(a x1) else x2=-b+sqrt(b b-4 a c); x1=c/(a x2) end x1=x1/(2 a) x2=x2/(2 a) NOZIONI di MATLAB p. 60/83
61 Strutture di controllo: switch case Vengono eseguite solo le istruzioni successive al primo case dove switch-expr assume lo stesso valore di case-expr switch case case-expr istruzioni case case-expr1 istruzioni case case-expr2 istruzioni otherwise istruzioni end switch-expr NOZIONI di MATLAB p. 61/83
62 Strutture di controllo: switch case ESEMPIO: file esempio while.m... switch numero case -1 disp( uno negativo ); case 0 disp( zero ); case 1 disp( uno ); otherwise disp( altro valore (diverso da -1,0,1) ); end NOZIONI di MATLAB p. 62/83
63 Strutture di controllo: for Il ciclo for esegue un gruppo di istruzioni un numero fissato di volte. for istruzioni end indice = inizio : incremento : fine incremento di default: 1. Se incremento> 0, allora il ciclo termina quando la variabile indice è maggiore di fine. Se incremento< 0, allora il ciclo termina quando la variabile indice è minore di fine. NOZIONI di MATLAB p. 63/83
64 Strutture di controllo: for ESEMPIO: Calcolo sommatoria n i=1 b i b: un array che contiene gli addendi b i ; s=0 for i=1:n s = s+b(i); end in MATLAB si può utilizzare sum(b) NOZIONI di MATLAB p. 64/83
65 Strutture di controllo: while Il ciclo while esegue un gruppo di istruzioni fintanto che l espressione di controllo rimane vera. L espressione di controllo è una qualunque espressione logica. while istruzioni end espressione di controllo ESERCIZIO: la successione di funzioni f n (x) = (x 2 x) n per 0 x 1 è uniformemente convergente alla funzione f(x) = 0. Disegnare in uno stesso grafico le curve per i primi valori di n fintanto che sup fn(x) f(x) > x 1 file :esempio while.m NOZIONI di MATLAB p. 65/83
66 FILES INPUT-OUTPUT NOZIONI di MATLAB p. 66/83
67 Files Input-Output: lettura e scrittura Tipi di file gestiti ascii : file di testo.mat : file binari Comandi più semplici da usare, per la lettura e scrittura di array: save load Comandi più complessi con maggiori specifiche sul salvataggio e lettura dati generici: fwrite fprintf fread fscanf NOZIONI di MATLAB p. 67/83
68 Files Input-Output:.mat save save filename: salva su filename.mat tutte le variabili contenute nello spazio di lavoro save filename array1 array2: salva su filename.mat le variabili array1 e array2 I file.mat hanno un formato compatto e contengono: Nomi, tipi e valori di ogni variabile La dimensione degli array Possono essere portati da un computer all altro, anche con sistemi operativi diversi (ma sempre letti da Matlab) NOZIONI di MATLAB p. 68/83
69 Files Input-Output: ascii save Uso dei file di testo (ascii), ESEMPIO >> x = [ ; ]; >> save filename.dat ascii x; Produce il file filename.dat organizzato come segue e e e e e e+000 Nota: si puó usare qualsiasi estensione per questi file, è buona norma distinguerli dai file.mat NOZIONI di MATLAB p. 69/83
70 Files Input-Output: load load filename: carica nello spazio di lavoro tutte le variabili nel file load filename x y carica nello spazio di lavoro solo le variabili x, y Se filename non ha estensione o ha estensione.mat, viene trattato come un file.mat load filename.dat: crea una variabile di nome filename che conterrà i dati in filename.dat Il file deve contenere dati separati da virgole o spazi NOZIONI di MATLAB p. 70/83
71 Files Input-Output: da foglio di calcolo A = xlsread( filename ): importa il file di Microsoft Excel filename.xls nella matrice A Alcuni fogli di calcolo salvano i dati nel formato.wk1 per importare questi dati nella matrice M: M = wk1read( filename ). NOZIONI di MATLAB p. 71/83
72 Files Input-Output: gestione generale Apertura di un flusso di comunicazione con il file (fid è un intero): fid = fopen(nome, modalità) modalità è una stringa specificata secondo un formato pre-determinato. Scrittura/lettura nel/dal file: fwrite, fprintf, fread, fscanf Chiusura del flusso di comunicazione: status = fclose(fid) NOZIONI di MATLAB p. 72/83
73 File Input-Output: textread Legge file ASCII organizzati in tabelle [a b c...] = textread(filename, format, n) format: come per sprintf: stringa contenetente caratteri e/o specifiche di conversione d, i, o, u, x, X, f, e, E, g, G, c, s preceduti dal carattete %, e seguiti da lunghezze e campi di precisione opzionali. Formati speciali \n,\r,\t,\b,\f producono linefeed, return, tab, backspace, formfeed. \ produce un backslash character and %% produce %. n: numero di righe da leggere. Se omesso, textread legge fino alla fine del file; a, b, c,...: vettori colonna in cui verranno caricati i dati. NOZIONI di MATLAB p. 73/83
74 File Input-Output: textread ESEMPIO: Si consoderi il file test input.dat contenente i seguenti dati: James Jones yes Sally Smith A No >>[nome cognome gruppo gpa eta risposta]=... textread( test input.dat, %s%s%s%f%d%s ); si veda help textread per le varie opzioni: se si desidera saltare una colonna, per esempio, quella dell età: >>[nome cognome gruppo gpa eta risposta]=... textread( test input.dat, %s%s%s%f% d%s ); NOZIONI di MATLAB p. 74/83
75 File Input-Output: fopen fid = fopen(nome, modalità) Apre un flusso di comunicazione con il file il cui nome viene specificato come parametro Il nome del file può includere il percorso nell albero delle directory. Se il file non esiste e la modalità di apertura è w il file viene creato Restituisce -1 ed un messaggio di errore se il flusso di comunicazione non è stato aperto, e cioè: Se un file che deve essere aperto in lettura non esiste Se si verifica un errore nell interazione con il supporto di memorizzazione su cui il file risiede NOZIONI di MATLAB p. 75/83
76 File Input-Output: modalità di apertura r: apre un file esistente in lettura w: apre un file esistente o crea un nuovo file in scrittura con distruzione di quanto già presente nel file a: apre un file esistente o crea un nuovo file in scrittura con posizionamento alla fine del file. rt: come r ma in modalità testuale wt: come w ma in modalità testuale at: come a ma in modalità testuale r+ e rt+: come r/rt ma si può anche scrivere nel file w+ e wt+: come w/wt ma si può anche leggere dal file a+ e at+: come a/at ma si può anche leggere dal file NOZIONI di MATLAB p. 76/83
77 File Input-Output: fclose status = fclose(fid) Determina la chiusura del flusso di comunicazione con il file identificato da fid. Restituisce 0 se la chiusura è avvenuta senza errori, il valore -1 in caso di problemi. status = fclose( all ) chiude tutti i file NOZIONI di MATLAB p. 77/83
78 File Input-Output: fwrite cont=fwrite(fid,array,formato) cont: indica il numero di valori effettivamente scritti nel file fid: identificatore del file su cui scrivere (il file deve essere stato aperto in precedenza) array: array contenente i dati da salvare formato: specifica il formato in cui i dati verranno salvati. Formati principali: char, int8, int16, int32, int64, float32, float64 (i numeri indicano il numero di bit usati per rappresentare i valori) NOZIONI di MATLAB p. 78/83
79 File Input-Output: fread [array cont]=fread(fid, size, formato) I dati letti vengono memorizzati in array size è la dimensione dei dati da leggere: n: legge esattamente n valori. Inf: legge fino alla fine del file. [n m]: legge esattamente n m valori. Dopo l esecuzione di questa istruzione array sarà una matrice n m contenente tutti i valori letti NOZIONI di MATLAB p. 79/83
80 ESEMPIO: Caricamento di un File: da file esempi.m filename=input( inserisci un nome di file ); [fid msg]=fopen(filename, r ); if(fid>0) [vett cont]=fread(fid, [1 1000], float64 ); disp([num2str(cont) valori letti... ]); fclose(fid); else disp( errore! ); end NOZIONI di MATLAB p. 80/83
81 ESEMPIO: Salvataggio dati su file: da file esempi.m a=rand(1,1000); filename=input( inserisci un nome di file ); [fid msg]=fopen(filename, w ); if(fid>0) cont=fwrite(fid, a, float64 ); disp([num2str(cont) valori scritti... ]); fclose(fid); else disp( errore! ); end NOZIONI di MATLAB p. 81/83
82 File Input-Output: fscanf [array cont]=fscanf(fid,format,size) legge i dati contenuti nel file identificato da fid, li converte secondo le specifiche nelle stringa format e li memorizza in array. size (opzionale) limita gli elementi da leggere e cont è il numero elementi letti con successo. Si consideri un file contenente i seguenti dati il cui descrittore è contenuto in fid: [z cont] = fscanf(fid, %f ); z é un array: z=[ ] [z cont] = fscanf(fid, %f, [2 2]); z é una matrice: z=[10 20; 30 40] NOZIONI di MATLAB p. 82/83
83 File Input-Output: fprintf cont=fprintf(fid,format,array) formatta la parte reale dei dati contenuti in array secondo le specifiche nelle stringa format e la scrive nel file identificato da fid. cont è il numero dei bytes scritti con successo ESEMPIO x = 0:.1:1; y = [x; exp(x)]; fid = fopen( exp.txt, wt ); fprintf(fid, %6.2f %12.8f\n,y); fclose(fid); si genera il file type exp.txt: NOZIONI di MATLAB p. 83/83
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
DettagliMatlab: Gestione avanzata dei file
Matlab: Gestione avanzata dei file Informatica B File 2 Contenitori di informazione permanenti Sono memorizzati su memoria di massa Possono continuare ad esistere indipendentemente dalla vita del programma
DettagliIntroduzione al MATLAB c Parte 2
Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione
DettagliMATLAB c Utilizzo di Matlab. Operazioni fondamentali. Elementi di grafica.
MATLAB c Utilizzo di Matlab. Operazioni fondamentali. Elementi di grafica. Lucia Gastaldi Dipartimento di Matematica http://dm.ing.unibs.it/gastaldi/ Lezione 1 (1 ottobre 2003) MATLAB = MATrix LABoratory
DettagliComandi 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
DettagliMatlab: 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
DettagliIntroduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari
Introduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari Felice Iavernaro Dipartimento di Matematica Università di Bari http://dm.uniba.it/ iavernaro 6 Giugno 2007 Felice Iavernaro (Univ.
DettagliIntroduzione al MATLAB c Parte 1
Introduzione al MATLAB c Parte 1 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ Lezione 1-2 maggio 2007 Outline 1 Cos è il MATLAB Componenti principali di MATLAB 2 Avvio Avviare
DettagliRapida 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,
DettagliFinestre grafiche. >> figure >> figure(n)
Finestre grafiche MATLAB ha anche la possibilità di lavorare con delle finestre grafiche sulle quali si possono fare disegni bidimensionali o tridimensionali. Una finestra grafica viene aperta con il comando
DettagliGrafici 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ò
DettagliMATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA
MATLAB I/O Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA Funzione input valore = input( inserisci un valore ); Matlab stampa a video la stringa inserisci un valore ed aspetta di ricevere
DettagliDati 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
DettagliSPECIFICHE E LIMITI DI EXCEL
SPECIFICHE E LIMITI DI EXCEL Un "FOGLIO DI CALCOLO" è un oggetto di un programma per computer costituito da un insieme di celle, organizzate in righe e colonne, atte a memorizzare dati ed effettuare operazioni
DettagliAutomatizzare 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
DettagliIntroduzione 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
DettagliI 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à
DettagliLezione 8. La macchina universale
Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione
DettagliGestione dei File in C
Gestione dei File in C Maurizio Palesi DIIT Università di Catania Viale Andrea Doria 6, 95125 Catania mpalesi@diit.unict.it http://www.diit.unict.it/users/mpalesi Sommario In questo documento saranno introdotte
DettagliMATLAB (1) Introduzione e Operazioni con array
Laboratorio di Informatica per Ingegneria elettrica A.A. 2010/2011 Prof. Sergio Scippacercola MATLAB (1) Introduzione e Operazioni con array N.B. le slide devono essere utilizzate solo come riferimento
Dettagli4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0
Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice
DettagliIntroduzione alla programmazione in C
Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale
DettagliPON 2007 2013 Liceo Scientifico Leonardo da Vinci. Vallo della Lucania
PON 2007 2013 Liceo Scientifico Leonardo da Vinci Vallo della Lucania Nuovi percorsi matematici: Osservare, descrivere, costruire. Matlab - 1: Introduzione Vallo della Lucania 26 settembre 2008 Cosa è
DettagliFunzioni in C. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni
DettagliCorso 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
DettagliExcel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it
Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo
DettagliTipi di dato-prima parte
Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Meccanica (A-K) Tipi di dato-prima parte Ing. Agnese Pinto 1 di 15 Tipi di dato Sommario Tipi di dato Classificazione dei tipi di dato Tipi
DettagliDIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Script. Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014
Script Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014 1 Obiettivi Script 2 Script (m-file) Uno script è un file di testo contenente una sequenza di comandi MATLAB
DettagliInterpolazione 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
DettagliCosa è un foglio elettronico
Cosa è un foglio elettronico Versione informatica del foglio contabile Strumento per l elaborazione di numeri (ma non solo...) I valori inseriti possono essere modificati, analizzati, elaborati, ripetuti
DettagliMATLAB. 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
DettagliFORMULE: Operatori matematici
Formule e funzioni FORMULE Le formule sono necessarie per eseguire calcoli utilizzando i valori presenti nelle celle di un foglio di lavoro. Una formula inizia col segno uguale (=). La formula deve essere
DettagliInformatica. Rappresentazione dei numeri Numerazione binaria
Informatica Rappresentazione dei numeri Numerazione binaria Sistemi di numerazione Non posizionali: numerazione romana Posizionali: viene associato un peso a ciascuna posizione all interno della rappresentazione
DettagliIntroduzione al Linguaggio C
Introduzione al Linguaggio C File I/O Daniele Pighin April 2009 Daniele Pighin Introduzione al Linguaggio C 1/15 Outline File e dati Accesso ai file File I/O Daniele Pighin Introduzione al Linguaggio C
DettagliIntroduzione al MATLAB c
Introduzione al MATLAB c Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ Lezione 1-5 maggio 2009 Indice 1 Cos è il MATLAB Componenti principali di MATLAB Le finestre di MATLAB
DettagliVariabili e tipi di dato
Variabili e tipi di dato Tutte le variabili devono essere dichiarate, specificandone il tipo La dichiarazione deve precedere l uso Il tipo è un concetto astratto che esprime: L allocazione di spazio per
DettagliAlcune regole di base per scrivere un programma in linguaggio C
Alcune regole di base per scrivere un programma in linguaggio C Un programma il linguaggio C (listato) viene scritto in formato testo ed archiviato in un file: *.c Per scrivere un listato C si utilizza
DettagliLABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B
LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B 23.XI.2012 VINCENZO MARRA Indice Esercizio 1 1 Menu 1 Tempo: 35 min. 2 Commento 1 2 Esercizio 2 2 Ordinamento e ricerca binaria con la classe
DettagliAlgebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono
DettagliIntroduzione 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
Dettagli3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
3 - Variabili Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di
DettagliINFORMATICA - I puntatori Roberta Gerboni
1 2 I puntatori in C++ Il puntatore un tipo di dato scalare, che consente di rappresentare gli indirizzi delle variabili allocate in memoria. Dominio: Il dominio di una variabile di tipo puntatore è un
DettagliUD6 - MATLAB. Gestione della grafica
UD6 - MATLAB Gestione della grafica Grafici MatLab può produrre grafici 2D e 3D Disegnare un Grafico Il comando plot produce grafici in 2 dimensioni; plot(x,y)apre una finestra e disegna il punto (x,y);
DettagliEsame di Informatica CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO. Facoltà di Scienze Motorie
Facoltà di Scienze Motorie CHE COS È UN FOGLIO ELETTRONICO Una tabella che contiene parole e numeri che possono essere elaborati applicando formule matematiche e funzioni statistiche. Esame di Informatica
DettagliTipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere
Tipi elementari, costanti 1 Tipi di dati VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori Tipi Semplici intero reale carattere Strutturati 2 1 Tipo intero Gli interi servono
DettagliLogica e codifica binaria dell informazione
Politecnico di Milano Corsi di Laurea in Ingegneria Matematica e Ingegneria Fisica Dipartimento di Elettronica ed Informazione Logica e codifica binaria dell informazione Anno Accademico 2002 2003 L. Muttoni
DettagliAppunti del corso di Informatica 1. 6 Introduzione al linguaggio C
Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)
DettagliAppunti 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)
DettagliModulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...
Modulo A Programmiamo in Pascal Unità didattiche 1. Installiamo il Dev-Pascal 2. Il programma e le variabili 3. Input dei dati 4. Utilizziamo gli operatori matematici e commentiamo il codice COSA IMPAREREMO...
DettagliLa Stampa Unione. Individuare la lista indirizzi per la Stampa Unione
La Stampa Unione La Stampa unione consente di personalizzare con il nome, il cognome, l'indirizzo e altri dati i documenti e le buste per l'invio a più destinatari. Basterà avere un database con i dati
DettagliPotenzialità statistiche Excel
Potenzialità statistiche Excel INTRODUZIONE A MS EXCEL Prof. Raffaella Folgieri Email folgieri@mtcube.com Fogli di calcolo MS Excel Prof. Folgieri 1 I Fogli Elettronici (Microsoft Excel) Sono strumenti
DettagliCONTROLLI AUTOMATICI E AZIONAMENTI ELETTRICI Ingegneria Meccatronica
CONTROLLI AUTOMATICI E AZIONAMENTI ELETTRICI Ingegneria Meccatronica CONTROLLI AUTOMATICI e AZIONAMENTI ELETTRICI INTRODUZIONE A MATLAB Ing. Alberto Bellini Tel. 0522 522626 e-mail: alberto.bellini@unimore.it
DettagliConvertitori numerici in Excel
ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel
DettagliEXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,
EXCEL PER WINDOWS95 1.Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area
DettagliProgetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012
Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012 Concetti importanti da (ri)vedere Programmazione imperativa Strutture di
DettagliStatistica 4038 (ver. 1.2)
Statistica 4038 (ver. 1.2) Software didattico per l insegnamento della Statistica SERGIO VENTURINI, MAURIZIO POLI i Il presente software è utilizzato come supporto alla didattica nel corso di Statistica
DettagliMatlab: 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
DettagliLaboratorio 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 -
DettagliRAPPRESENTAZIONE GRAFICA E ANALISI DEI DATI SPERIMENTALI CON EXCEL
RAPPRESENTAZIONE GRAFICA E ANALISI DEI DATI SPERIMENTALI CON EXCEL 1 RAPPRESENTAZIONE GRAFICA Per l analisi dati con Excel si fa riferimento alla versione 2007 di Office, le versioni successive non differiscono
DettagliOTTAVA ESPERIENZA DI LABORATORIO. L elaborazione dei files in C
CORSO DI LABORATORIO DI INFORMATICA CORSO DI LAUREA IN SDM ANNO ACCADEMICO 2011-2012 Docente: R. Sparvoli Esercitazioni: R. Sparvoli, F. Palma OTTAVA ESPERIENZA DI LABORATORIO L elaborazione dei files
Dettagliif 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
DettagliLezioni su MATLAB. Ingegneria Civile/Meccanica
Lezioni su ali in Ingegneria Civile/Meccanica Corso di laboratorio di informatica 06/07 Sommario ali in 1 2 3 4 ali 5 6 in ali in : MATrix LABoratory È un ambiente per l analisi e la simulazione dei sistemi
DettagliEXCEL FUNZIONI PRINCIPALI
EXCEL FUNZIONI PRINCIPALI Funzione SE() Sintassi: SE(VERIFICA, VALORE SE VERO, VALORE SE FALSO): verifica un valore e ritorna una risposta in base al risultato vero/falso Esempio: =SE(A2=15; "OK"; "NO")
DettagliAritmetica dei Calcolatori 2
Laboratorio di Architettura 13 aprile 2012 1 Operazioni bit a bit 2 Rappresentazione binaria con segno 3 Esercitazione Operazioni logiche bit a bit AND OR XOR NOT IN OUT A B A AND B 0 0 0 0 1 0 1 0 0 1
DettagliA destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa.
La finestra di Excel è molto complessa e al primo posto avvio potrebbe disorientare l utente. Analizziamone i componenti dall alto verso il basso. La prima barra è la barra del titolo, dove troviamo indicato
DettagliLINGUAGGI DI PROGRAMMAZIONE
LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di
DettagliRichiesta 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
DettagliDIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOINGEGNERIA. INFORMATICA B Ingegneria Elettrica. I file in Matlab
INFORMATICA B Ingegneria Elettrica I file in Matlab I file I file sono contenitori di informazione: sequenze di byte associate ad un nome Sono memorizzati su memoria di massa (non- volatile) Possono continuare
DettagliAnalisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda
Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Premessa Con l analisi di sensitività il perito valutatore elabora un range di valori invece di un dato
DettagliINTRODUZIONE A MATLAB Matrix Laboratory
INTRODUZIONE A MATLAB Matrix Laboratory Introduzione Linguaggio di programmazione per applicazioni scientifiche e numeriche Vasto set di funzioni predefininte Interprete di comandi Possibilità di scrivere
DettagliLezione 5. Fogli di calcolo
Lezione 5 Fogli di calcolo Cos'e' un foglio di calcolo E' una tabella che permette di fare operazioni complesse sui dati Lo scopo e' la manipolazione dei dati Programmi EXCEL (commerciale) WORKS (commerciale)
DettagliMATLAB: FILES. Informatica B/C - A.A. 2013/2014
MATLAB: FILES Informatica B/C - A.A. 2013/2014 I FILE Contenitori di informazione: sequenze di byte associate ad un nome Sono memorizzati su memoria di massa (non-volatile) Possono continuare ad esistere
DettagliArduino: 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
DettagliGli algoritmi: definizioni e proprietà
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Gli algoritmi: definizioni e proprietà La presente dispensa e da
DettagliDocumentazione 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
Dettagliper immagini guida avanzata Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1
Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1 Una tabella Pivot usa dati a due dimensioni per creare una tabella a tre dimensioni, cioè una tabella
DettagliPer scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli
CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per
DettagliVisualizzazione grafica. dell'output di un programma con GNUplot
Visualizzazione grafica dell'output di un programma con GNUplot GNUplot è un programma interattivo per la visualizzazione di grafici di funzione; non è una "libreria" da includere in un programma C, ma
DettagliIl sistema operativo UNIX/Linux. Gli script di shell
Il sistema operativo UNIX/Linux Gli script di shell Introduzione Le shell permettono La gestione di comandi su linea di comando La shell comprende automaticamente quando il costrutto termina e lo esegue
DettagliPolitecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B
Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Esercitazione del 22/01/2013 Esercizio 1 Un sistema dispone di 16 pagine di memoria fisica e 64 di memoria virtuale. Sapo che l indirizzo
DettagliIntroduzione al Python
Andrea Passerini passerini@disi.unitn.it Informatica Caratteristiche procedurale si specifica la procedura da eseguire sui dati strutturato concetto di visibililtà delle variabili orientato agli oggetti
DettagliCOS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle
DettagliFogli Elettronici: MS Excel
Fogli Elettronici: MS Excel Informatica - A.A. 2010/2011 - Excel 7.0 Foglio Elettronico Un foglio elettronico (o spreadsheet) è un software applicativo nato dall esigenza di: organizzare insiemi di dati
DettagliSTRUMENTI DI PRESENTAZIONE MODULO 6
STRUMENTI DI PRESENTAZIONE MODULO 6 2012 A COSA SERVE POWER POINT? IL PROGRAMMA NASCE PER LA CREAZIONE DI PRESENTAZIONI BASATE SU DIAPOSITIVE (O LUCIDI) O MEGLIO PER PRESENTARE INFORMAZIONI IN MODO EFFICACE
DettagliObiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico
M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p. 3/43 M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p.
DettagliStrutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)
Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi
DettagliI database relazionali (Access)
I database relazionali (Access) Filippo TROTTA 04/02/2013 1 Prof.Filippo TROTTA Definizioni Database Sistema di gestione di database (DBMS, Database Management System) Sistema di gestione di database relazionale
DettagliOttimizzazione delle interrogazioni (parte I)
Ottimizzazione delle interrogazioni I Basi di Dati / Complementi di Basi di Dati 1 Ottimizzazione delle interrogazioni (parte I) Angelo Montanari Dipartimento di Matematica e Informatica Università di
Dettagli3. La sintassi di Java
pag.9 3. La sintassi di Java 3.1 I tipi di dati statici In Java, come in Pascal, esistono tipi di dati statici predefiniti e sono i seguenti: byte 8 bit da -128 a 127 short 16 bit coincide con l integer
DettagliMODULO 4: FOGLIO ELETTRONICO (EXCEL)
MODULO 4: FOGLIO ELETTRONICO (EXCEL) 1. Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei Personal computer. Essi
DettagliIntroduzione 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
DettagliFasi di creazione di un programma
Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma
DettagliMicrosoft Excel. Il foglio elettronico Microsoft Excel Cartelle, Fogli di lavoro e celle Contenuto delle celle. Numeri, date, formule, testo, funzioni
Microsoft Excel Sommario Il foglio elettronico Microsoft Excel Cartelle, Fogli di lavoro e celle Contenuto delle celle Numeri, date, formule, testo, funzioni Formattazione dei dati Creazione di serie di
DettagliIl foglio elettronico: Excel
Il foglio elettronico: Excel Laboratorio di Informatica Corso di Laurea triennale in Biologia Dott. Fabio Aiolli (aiolli@math.unipd.it) Dott.ssa Elisa Caniato (ecaniato@gmail.com) Anno accademico 2007-2008
DettagliCompilatore risorse display grafico LCD serie IEC-line
Compilatore risorse display grafico LCD serie IEC-line aggiornamento: 22-11-2012 IEC-line by OVERDIGIT overdigit.com 1. Il display grafico LCD I PLC della serie IPC-line possono disporre opzionalmente
DettagliISTITUTO TECNICO INDUSTRIALE STATALE LA GESTIONE DEI FILE DI TESTO IN C++
ISTITUTO TECNICO INDUSTRIALE STATALE G A L I L E O F E R R A R I S DIISPENSA DII IINFORMATIICA E SIISTEMII AUTOMATIICII LA GESTIONE DEI FILE DI TESTO IN C++ Le classi per la gestione dei file. Il C++ è
DettagliCorso di Matematica per la Chimica
Dott.ssa Maria Carmela De Bonis a.a. 203-4 I sistemi lineari Generalità sui sistemi lineari Molti problemi dell ingegneria, della fisica, della chimica, dell informatica e dell economia, si modellizzano
Dettagli+ / 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
DettagliUso delle tabelle e dei grafici Pivot
Uso delle tabelle e dei grafici Pivot 1 Una tabella Pivot usa dati a due dimensioni per creare una tabella a tre dimensioni, cioè una tabella riassuntiva basata su condizioni multiple che hanno punti di
DettagliLEZIONE DI MATLAB 2.0. Ing.Irene Tagliente E-mail: irene.tagliente@opbg.net
LEZIONE DI MATLAB 2.0 Ing.Irene Tagliente E-mail: irene.tagliente@opbg.net Cos è Matlab Il programma MATLAB si è imposto in ambiente ingegneristico come strumento per la simulazione e l'analisi dei sistemi
Dettagli