Introduzione a Matlab

Размер: px
Начинать показ со страницы:

Download "Introduzione a Matlab"

Транскрипт

1 Slide 1 Funzioni che operano su stringhe strcmp paragona 2 stringhe strcat concatena 2 stringhe findstr cerca una sottostringa strrep sostituisce una sottostringa con un'altra upper, lower trasforma in maiuscole, minuscole num2str trasforma un numero in stringa 1 Alcuni esempi: a = strcat('ciao', ' ', 'amico') strcmp(a, 'ciao amico') == true findstr(a, 'mic') == 7 strrep(a, 'ciao', 'buon giorno') == 'buon giorno amico' upper(a) == 'CIAO AMICO' strcat('ci sono ', num2str(99), ' persone')

2 Slide 2 Formati di sprintf() Fra il simbolo % e il carattere di conversione possono essere presenti alcuni caratteri, i più importanti servono per indicare il numero di cifre totali (Field width) e la precisione dopo la virgola (Precision) 2 Il campo numerico Field width deve essere maggiore o uguale al campo numerico Precision Il carattere di conversione può essere: %c Singolo carattere %d Decimale (con segno) %e Notazione esponenziale (es e+00) %E Notazione esponenziale (es E+03) %f Notazione virgola fissa (es. 2.7) %g Il più corto fra %e e %f %G Come %g, ma con E maiuscola %o Ottale (senza segno) %s Stringa di caratteri %u Decimale (senza segno) %x Esadecimale (lettere minuscole a-f) %X Esadecimale (lettere maiuscole A-F) Caratteri speciali: '' Single quotation mark %% Percent character \\ Backslash \b Backspace \f Form feed \n New line \r Carriage return \t Horizontal tab

3 Slide 3 Grafici plot(y) disegna i valori di Y rispetto agli indici plot(x, Y) disegna i valori di Y rispetto a X plot(x,y,s) disegna Y rispetto a X con alcune configurazioni contenute nella stringa S: colore: r = red, g = green, b = blue, k = black... marcatore:. = punti, o = cerchi... stile: - = solid, : = dotted... 3 plot(y) disegna i valori di Y sull asse delle ordinate e gli indici (in Matlab/Octave da 1 a n) sull assa delle ascisse. Per maggiori dettagli sui colori, i marcatori e gli stili si veda: help plot

4 Slide 4 Esempio di grafico (1) x = [-4:0.1:4]; y = x.^2; plot(x, y,'r') 4 Un grafico viene realizzato da tanti segmenti rettilinei che congiungono una successione di punti. Se i punti sono sufficientemente numerosi e non troppo distanti l uno dall altro si ha l illusione di una curva. Ad esempio con x = [-4:0.1:4] si ha un buon risultato, invece con x = [-4:0.5:4] si intravedono degli spigoli e con x = [-4:4] si ha un pessimo grafico Una volta fissate le coordinate sull asse delle ascisse bisogna calcolare le coordinate corrispondenti sull asse delle ordinate, a questo punto al vettore x bisogna applicare le operazioni elemento per elemento, ad esempio bisogna scrivere y = x.^2, mentre sarebbe sbagliato scrivere y = x^2 perché significherebbe moltiplicare un vettore riga per se stesso cioè un altro vettore riga, che sarebbe un operazione algebricamente scorretta.

5 Slide 5 Esempio di grafico (2) plot(x,y,s,x2,y2,s2...) Il comando plot può avere un numero arbitrario di terne di parametri X,Y,S. Esempio: x1 = 0:pi/100:2*pi; x2 = 0:pi/10:2*pi; plot(x1,sin(x1),'g:',x2,sin(x2),'r+') 5 Si possono disegnare più curve nello stesso grafico, è buona norma usare colori e/o marcatori diversi per ogni curva

6 Slide 6 Esempio di grafico (3) tensione di un alimentatore HV ad Elettra 6 Matlab viene usato sia per visualizzare il grafico di curve analitiche, ad esempio Y = sin(x), sia per elaborare e visualizzare dati acquisiti sul campo come nell esempio proposto sopra

7 Slide 7 Grafici altre configurazioni hold on disegna nuovi grafici sopra quelli vecchi grid on visualizza una griglia subplot(m,n,p) divide la finestra in una matrice di m per n grafici e utilizza il p-esimo elemento per il prossimo grafico title('text') visualizza il titolo del grafico axis([xmin xmax ymin ymax]) configura gli assi axes(propertyname, propertyvalue...) configura varie propietà degli assi 7 Hold on indica di disegnare il prossimo grafico nell ultima finestra grafica utilizzata, hold off indica di disegnare il prossimo grafico in una finestra nuova. Grid on e grid off mettono e tolgono una griglia Subplot(m,n,p) suddivide la finestra grafica in una matrice di m per n grafici, il prossimo grafico verrá disegnato nella p-esima posizione. Valgono le stesse regole della linearizzazione di matrice, cioè prima la prima colonna (dalla prima all ultima riga), poi la seconda colonna e così via. Axis e axes hanno quasi la stessa funzione, la prima modifica solo 4 parametri degli assi (massimo e minimo di entrambi gli assi), la seconda può configurare tutta una serie di parametri (vedi doc axes)

8 Slide 8 Esempio di grafico (4) X = [-4:0.1:4]; Y = X.^2; plot(x,y) grid on hold on Y2 = 0.2*X.^3-X; plot(x,y2,'r') 8 In mezzo fra l istruzione plot(x,y) e plot(x,y2, r ) va messa l istruzione hold on se si vuole che le due curve siano disegnate sullo stesso grafico; invece il comando grid on può essere spostato in qualunque posizione dopo il primo plot.

9 Slide 9 Esempio di grafico (5) X = [-4:0.1:4]; Y = X.^2; subplot(2,1,1) plot(x,y) grid on Y2 = 0.2*X.^3-X; subplot(2,1,2) plot(x,y2,'r') grid on 9 Subplot divide il grafico in una matrice di grafici con 2 righe e 1 colonna, nella prima posizione viene messo plot(x,y), nella seconda plot(x,y2, r ); il comando grid on va ripetuto 2 volte perché ha effetto solo sul subplot attivo al momento

10 Slide 10 Istogrammi hist(y, n) densità di Y i cui elementi sono raggruppati in n intervalli X = [-4:0.1:4]; Y = 0.2*X.^3+0.1*X.^2-X+5; subplot(1,2,1) plot(x,y) subplot(1,2,2) hist(y,20) 10 L'istogramma è la rappresentazione grafica di una distribuzione in classi di un carattere continuo. (Wikipedia)

11 Slide 11 Scala logaritmica semilogx, semilogy e loglog disegna su scala logaritmica rispettivamente gli assi X, Y e entrambi X = [-4:0.1:4]; Y = abs(x.^3-8*x+5); semilogy(x,y) grid on 11 Le scale logaritmiche servono per visualizzare funzioni positive i cui valori variano considerevolmente (almeno un paio di decadi) e di cui si vuole mettere in evidenza l andamento anche per i valori più bassi.

12 Slide 12 Grafici altre configurazioni xlabel visualizza un'etichetta sull'asse x ylabel visualizza un'etichetta sull'asse y annotation(annotationtype) aggiunge un'annotazione sotto forma di testo, righe, frecce etc. i tipi fondamentale sono: 'rectangle' 'ellipse' 'textbox' 'line' 'arrow' 'doublearrow' 'textarrow' = freccia + testo associato 12 Annotation non si trova su Octave. Per maggiori dettagli su Matlab si digiti: help annotation

13 Slide 13 Esempio: direzione dei venti Il vento ha direzione fra 0 e 360 gradi (Nord=0, Est=90, Sud=180, Ovest=270) e intensità espressa in m/s 13 Dati relativi alla velocità e alla direzione del vento, prelevati con cadenza oraria, gentilmente concessi dall'osmer (

14 Slide 14 Esempio: direzione dei venti load meteots axes('xtick',[0:15:360],'xticklabel',{'n','',30,'',60,'',... 'E','',120,'',150,'','S','',210,'',240,'','W','',300,'',330,'','N'}); hold on; plot(e_giga_ts_molo_direzione_vento_,... E_Giga_TS_molo_velocita_vento_m,'.'); title('vento a Trieste nel mese di settembre 2008'); xlabel('direzione [deg]'); ylabel('velocità [m/s]'); annotation('textarrow',[ ],[ ],'String',{'BORA'}); annotation('textarrow',[ ],[ ],'String',{'SCIROCCO'}); annotation('textarrow',[ ],[ ],'String',{'MAESTRO'}); 14 I dati forniti dall'osmer sono stati scritti nel file meteots mat in formato nativo Matlab/Octave. Dentro questo file sono contenute le variabili E_Giga_TS_molo_direzione_vento_ e E_Giga_TS_molo_velocita_vento_m (E-Giga è il programma PHP utilizzato per elaborare i dati, la stazione Osmer di Trieste è posta sul molo Fratelli Bandiera)

15 Slide 15 Puntatori ai grafici: HANDLE x = 1:10; y = x.^3; handle1 = plot(x,y); Il puntatore ad un grafico può essere usato per cambiare alcuni parametri dopo che il grafico è stato creato tramite la funzione set(). Esempio: set(handle1,'color','red') 15 set(h,'propertyname',propertyvalue,...) Configura le propietà grafiche dell'oggetto puntato dall'handle H Per maggiori dettagli si veda: help set

16 Slide 16 Asse Y a destra Oltre all'asse Y a sinistra (Y1) si può utilizzare un altro asse Y a destra (Y2) mediante il comando plotyy(x1,y1,x2,y2). Esempio: x = 0:0.01:20; y1 = 200*exp(-0.05*x).*sin(x); y2 = 0.8*exp(-0.5*x).*sin(10*x); [AX,H1,H2] = plotyy(x,y1,x,y2); set(get(ax(1),'ylabel'),'string','left Y-axis') set(get(ax(2),'ylabel'),'string','right Y-axis') 16 L'asse delle ordinate di norma viene posto a sinistra, ma per confrontare due curve con valori massimi molto diversi fra loro un possibile accorgimento è disegnare l'asse delle ordinate relativo alla seconda curva a destra del grafico. La funzione [AX,H1,H2] = plotyy(x1,y1,x2,y2) restituisce tre parametri, il primo parametro (AX) è un vettore di puntatori ai due assi, AX(1) per il sinistro e AX(2) per il destro. H1 e H2 sono puntatori ai due grafici rispettivamente.

17 Slide 17 Asse Y a destra: esempio 17 Per cambiare l'etichetta dei due assi bisogna prima ottenere un puntatore (handle) all'etichetta desiderata tramite la funzione get (si veda help get per dettagli), ad esempio get(ax(2),'ylabel') restituisce il puntatore all'asse Y2 del grafico puntato da AX. A questo punto con la funzione set si potrà impostare il valore desiderato, ad esempio: set(get(ax(1),'ylabel'), 'String', 'Etichetta di sinistra')

18 Slide 18 Asse dei tempi Per utilizzare uno degli assi come asse dei tempi si utilizza il comando datetick(asse,formatodata) asse = 'x', 'y' o 'z'; formatodata descrive come visualizzare la data, ad esempio 20 = 'dd/mm/yy' Le date sono i giorni a partire dal 1 gennaio 0000 Il tempo standard Unix conta i secondi dal 01/01/1970, per la conversione si usa la funzione datenum(data) t = unixtime / datenum('01/01/1970'); 18 Sull'asse delle ascisse spesso si pongono degli intervalli di tempo. Per tempi superiori al minuto in genere la scala decimale è scomoda, si preferisce visualizzare ore, minuti, secondi oppure giorni, mesi e anni. In Matlab/Octave per il tempo è un numero reale che misura i giorni (e le frazioni di giorno) trascorsi dal primo gennaio dell'anno 0 (1 a.c. per gli storici). Esiste un altro formato per il tempo, molto più utilizzato in informatica, si chiama unix time o timestamp e misura i secondi a partire dal primo gennaio La funzione Matlab/Octave datenum() trasforma la rappresentazione di una data come stringa in una rappresentazione numerica (secondo lo standard Matlab/Octave). Tenendo conto che in un giorno ci sono secondi (60*24*24) la formula di conversione da unixtime a tempo Matlab/Octave risulta: t = unixtime / datenum('01/01/1970');

19 Slide 19 Esempio di grafico con asse dei tempi load meteots subplot(2,1,1) t = time / datenum('01/01/1970'); plot (t, E_Giga_TS_molo_temperatura_C) datetick('x',20) title('temperatura [C]'); grid on subplot(2,1,2) plot (t, E_Giga_TS_molo_pressione_hPa, 'r') datetick('x',20) title('pressione [hpa]'); grid on 19 Nel file meteots contenente i dati Osmer contiene anche una variabile time in cui sono memorizzati gli istanti di acquisizione dei dati in formato Unix timestamp

20 Slide 20 Esempio di grafico con asse dei tempi 20 Il secondo accorgimento per confrontare due curve con valori massimi o minimi molto diversi fra loro è disegnare due grafici nella stessa finestra.

21 Slide 21 Formattazione delle etichette La formattazione delle etichette utilizza la sintassi di alcuni comandi TeX (linguaggio di markup, pronunciato tech) Alcuni esempi: \alpha α \leq \Delta Δ \bf grassetto \pi π \fontname{fontname} \surd \fontsize{fontsize} 21 TeX e LaTeX sono linguaggi di formattazione di testi. Per una descrizione estensiva di tutti i comandi si veda:

22 Slide 22 Curve 3D plot3(x, Y, Z) Esempio t=linspace(0,2*pi,1e4); x=sin(2*pi*2*t); y=sin(2*pi*3*t); z=sin(2*pi*4*t); plot3(x, y, z) 22 Nello spazio a tre dimensioni si possono visualizzare sia curve (una dimensione) che superfici (due dimensioni). Per disegnare le curve si usa la funzione plot3()

23 Slide 23 Superfici 3D mesh(x, Y, Z) griglia 3D surf(x, Y, Z) superfici 3D 23 Per disegnare le superfici si può usare o una griglia utilizzando la funzione mesh(x,y,z) o una superficie (data dall'unione di parecchie "mattonelle" accostate fra loro) utilizzando la funzione surf(x,y,z). Volendo disegnare una superficie data dalla funzione z = f(x,y) conviene usare la funzione meshgrid(x,y) che permette di ottenere una scansione del piano z = 0

24 Slide 24 Esempio SURF [X,Y] = meshgrid(-10:0.25:10,-10:0.25:10); R = sqrt((x/pi).^2+(y/pi).^2); f = sin(pi*r)./(pi*r); surf(x,y,f); axis([ ]) xlabel('{\bfx}') ylabel('{\bfy}') zlabel('{\bfsin}({\pi} R)/({\pi} R)') 24 La funzione axis() per disegni in tre dimensioni prende come parametro un vettore con sei elementi che sono il minimo e il massimo dei tre assi x, y e z rispettivamente.

25 Slide 25 Tipi di variabili Le variabili sono di default di tipo double cioè numeri reali a doppia precisione: a = 1.256e-7 Tipi (classi) fondamentali sono: 25 Ogni variabile è di un determinato tipo. Esiste un numero limitato di tipi predefiniti Una variabile per cui non è specificato esplicitamente il tipo è di default di tipo double (numero reale a precisione doppia) Matlab svolge tutti i calcoli con una certa precisione (e quindi con un certo errore di approssimazione) Di default vengono visualizzate solo 4 cifre decimali, anche se sono memorizzate molte più cifre. Il comando format long permette di visualizzare 15 cifre decimali

26 Slide 26 Tipo LOGICAL Una variabile di tipo logical rappresenta valori logici (detti anche booleani) true e false mediante valori numerici 1 e 0 rispettivamente. Alcuni operatori e alcune funzioni restituiscono valori logical. Ad esempio: a = pi > 3 b = ischar(a) 26 Nel tempo Matlab/Octave ha cambiato la rappresentazione dei valori booleani. All inizio si utilizzava semplicemente il valore numerico 1 come vero e il valore numerico 0 come falso. Poi è stato introdotto un vero e proprio tipo (logical) con solo 2 valori: true e false. Esiste sempre la corrispondenza fra true e 1 e quella fra false e 0.

27 Slide 27 Tipo STRUCTURE Una struttura è un insieme di dati non omogenei ciascuno con un identificatore. Esempio: studente.nome = 'tizio' studente.scritto = 25 studente.orale = 23 studente.media=(studente.scritto+studente.orale)/2 27 Una variabile di tipo structure ha un identificatore complessivo di tutta la variabile e un identificatore per ognuno dei campi appartenenti a questa struttura.

28 Slide 28 Cancellazione di righe e colonne Per cancellare si utilizza una coppia di parentesi quadre Ad esempio per eliminare la seconda colonna della matrice X: X(:,2) = [ ] Non si possono cancellare i singoli elementi di una matrice: X(3,2) = [ ] restituisce un messaggio d'errore 28 Se proprio si vuole cancellare un solo elemento bisogna prima linearizzare la matrice e poi cancellare l elemento indesiderato Per linearizzare si usa l operatore due punti, ad esempio: Y = X(:) In Y avremo un vettore colonna formato dalle colonne di X una dopo l altra Y = [X(:,1); X(:,2); X(:,m)] A questo punto per cancellare l elemento i-esimo basta scrivere: Y(i) = [] Sono equivalenti anche le seguenti espressioni: X(:)(i) = [] X(i) = []

29 Slide 29 Alcune Funzioni predefinite (2) find(x) cerca un valore in un vettore sort(x) ordina un vettore abs(x) valore assoluto di X sqrt(x) radice quadrata diag(x) etrae la diagonale principale della matrice X exp(x), log(x) esponenziale, logaritmo sin(x), cos(x), tan(x) seno, coseno, tangente 29 La funzione find(x) trova gli indici degli elementi di X che sono diversi da zero Se X è una matrice vengono trovati gli indici della matrice linearizzata, find(x) == find(x(:))

30 Slide 30 Funzioni predefinite: esempi (1) X = [ ] m1 = min(x) m2 = max(x) f1 = find(x>1) f2 = find(x==1) s1 = sort(x) s2 = sqrt(abs(x)) 30 m1 = -4 m2 = 12 f1 = f2 = 3 8 s1 = s2 = Columns 1 through 7: Columns 8 and 9:

31 Slide 31 Utilizzo di find(x) X > n (n scalare) valuta una matrice delle stesse dimensioni di X con un 1 al posto degli elementi maggiori di n e uno 0 altrimenti find(x>n) ritorna un array con l'indice degli elementi maggiori di n X(find(X>n)) ritorna un vettore contenente tutti e soli i valori di X maggiori di n 31 find(x) trova gli indici degli elementi di X che sono diversi da zero, ma spesso come argomento alla funzione find si fornisce una semplice espressione booleana (ad esempio X > n) e talvolta aritmetica (ad esempio X='la scarpa di Alessia'; X(find(X-'a')) == 'l scrp di Alessi')

32 Slide 32 Funzioni predefinite : esempi (2) A = rand(5, 2) B = eye(3) C = ones(2,3) D = [A,[B;C]] diag(inv(d')) 32 diag(inv(d')) ans =

33 Slide 33 Funzioni: parametri di I/O variabili nargin, nargout numero parametri d'ingresso/uscita con cui è stata chiamata la funzione corrente varargin, varargout permette di avere un numero arbitrario di parametri d'ingresso/uscita Le variabili definite dentro una funzione sono locali ad essa, non sono utilizzabili altrove. global permette di utilizzare variabili globali 33 In genere il numero di parametri con cui si chiama una funzione è fisso. Ma in alcuni casi ci può essere un numero variabile di parametri d ingresso o d uscita. Il numero di parametri viene messo automaticamente nelle variabili nargin e nargout. Varargin è un vettore contenente tutti i parametri d ingresso (analogamente varargout), ad esempio varargin(1) è il primo parametro e varargin(nargin) è l ultimo parametro in ingresso. Per maggiori dettagli si veda: help varargin. Si possono anche dichiarare delle variabili globali. Anche se in generale questa pratica è fortemente sconsigliata.

34 Slide 34 Sistema di equazioni lineari (1) Ax = b con A matrice quadrata n*n x e b vettori colonna n*1 x = A -1 b In Matlab diviene: x = inv(a) * b inv(a) restituisce la matrice inversa, tale che: inv(a) * A == I 34 In questo esempio avremo I = eye(n)

35 Slide 35 Sistema di equazioni lineari (2) La soluzione x = inv(a) * b non è numericamente ottimizzata, per matrici grandi richiede troppo tempo. Questa operazione può essere sostituita con l'operatore divisione a sinistra: x = A \ b L operatore \ serve per computare in modo ottimizzato la soluzione di sistemi lineari 35 Dato il sistema Ax = b invertire la matrice A equivale a trovare la soluzione anche al sistema Ax = b e al sistema Ax = b, dunque equivale a risolvere un intera classe di sistemi lineari e non solo quello dato. Esistono metodi numerici che permettono di risolvere solo il sistema Ax = b e non tutta la classe di sistemi associati, ma in un tempo significativamente più breve.

36 Slide 36 Sistema di equazioni lineari: esempio x 1 + x 2 - x 3 = 0 2x 1 + x 2 +x 3 = 1 x 1-3x 3 = -1 In Matlab diviene A = [1 1-1; 2 1 1; 1 0-3] b = [0; 1; -1] x = A \ b % == [0.2; 0.2; 0.4] 36 Viene fornito un esempio con numeri del tutto arbitrari. In questo caso se si compie il test di ugualiaza come suggerito nel commento e cioè: A \ b == [0.2; 0.2; 0.4] Non è detto che si ottenga valore vero a causa di un siappur minimo errore di arrotondamento. Per verificare questa eventualità basta valutare l espressione: A \ b - [0.2; 0.2; 0.4] Che potrebbe dare un risultato del tipo: ans = e e e+000

37 Slide 37 Polinomi P(x) = c n x n + c n-1 x n c 2 x 2 + c 1 x + c 0 In matlab si rappresenta con un vettore: P = [c n c n-1 c 2 c 1 c 0 ] roots(p) trova le radici del polinomio P poly(x) trova il polinomio le cui radici sono X polyfit(x,y,n) trova il polinomio di grado N che approssima meglio i punti di coordinate (X,Y) polyval(p, X) valuta il polinomio P nei punti X 37 Un polinomio in una variabile di grado n ha n+1 coefficienti. Le radici di un polinomio sono i valori di x per cui P(x)=0, il numero delle radici reali varia fra 0 e n, ma nel campo complesso sono sempre n. Roots(P) trova tutte le radici complesse di P. Tranne casi particolari, dati n punti esiste un solo polinomio di grado n-1 che passa per ciascuno degli n punti, esistono infiniti polinomi di grado >= n che passano per lo stesso numero di punti e non esiste nessun polinomio di grado < n-1 che passa per i predetti punti. In quest ultimo caso la funzione polyfit(x,y,n) calcola il polinomio che si avvicina maggiormente ai punti dati (metodo dei minimi quadrati)

38 Slide 38 Polinomi: esempi (1) poly([-1-1]) % == [1 2 1] poly(-ones(1,3)) % == [ ] roots([ ]) % == [ ] Trovare la parabola che passa per i punti (3,4), (4,2) e (5,3): X=[3 4 5] Y=[4 2 3] polyfit(x,y,2) % == [ ] 38

39 Slide 39 Polinomi: esempi (2) X=[3 4 5] Y=[4 2 3] x=[2:0.1:6] plot(x,y,'ro') hold on plot(x,polyval(polyfit(x,y,3),x)) plot(x,polyval(polyfit(x,y,2),x),'r') plot(x,polyval(polyfit(x,y,1),x),'g') 39

40 Slide 40 Altri comandi utili tic toc serve a rilevare il tempo di esecuzione di una frazione di codice profile analizza il tempo di esecuzione di tutte le funzioni utilizzate (non disponibile su Octave) pause sospende l'esecuzione in attesa che l'utente prema un tasto clc cancella la command window linspace(min, max, n) vettore di n elementi distribuiti uniformemente fra min e max 40 Se si sviluppano programmi di una certa complessità ci si può imbattere in problemi di efficienza, ovvero dover misurare quanto tempo viene impiegato dalle singole parti di un programma. I comandi tic e toc vengono utilizzati in coppia con la sintassi seguente: tic alcune_istruzioni toc In questo modo Matlab/Octave visualizza il tempo impiegato per eseguire il frammento codice alcune_istruzioni

41 Slide 41 CONTINUE Interrompe un'iterazione di un ciclo for o while e riprende dall'iterazione successiva. Nel caso di cicli annidati interrompe solo quello più interno in cui è contenuto. 41 L'utilizzo tipico dell'istruzione continue è: while condition if particular_condition continue end do_something() end

42 Slide 42 Esempio CONTINUE i = 0; for x = [-5:0.1:5] i = i + 1; if x == 0 y(i) = NaN; continue end y(i) = 1/x; end 42 Nell'esempio si evita di eseguire l'ultima parte del ciclo solo nei casi in cui la variabile x vale 0 e quindi si avrebbe una divisione per 0.

43 Slide 43 Esempio: calcolo di numeri primi (1) 43 Il metodo utilizzato per il calcolo dei numeri primi, per ogni numero maggiore di 1 verifica se è divisibile per almeno uno dei numeri primi trovati alle iterazioni precedenti, se non lo è lo aggiunge al vettore di numeri primi La funzione primi serve solo a fini didattici in quanto esiste già la funzione builtin primes che ha le stesse funzionalita ma è più efficiente.

44 Slide 44 Esempio: calcolo di numeri primi (2) 44 Una seconda versione per il calcolo dei numeri primi riduce di molto il numero di iterazioni. Si basa sul fatto che per un numero non primo il più piccolo dei fattori è certamente minore o uguale alla radice quadrata del numero stesso. Pertanto per ogni numero viene calcolata la radice quadrata e non vengono considerati come possibili divisori i numeri primi maggiori di tale numero. Per fare questo c'è un'istruzione break che esce dal ciclo più interno.

45 Slide 45 Ricorsione Una funzione può richiedere al suo interno l'esecuzione di altre funzioni, ma anche di se stessa. L'invocazione ricorsiva di una funzione deve essere contenuta in una condizione d'uscita pena l'iterazione infinita. Esempio: function y = fatt(x) y = 1; if x>0 y = x * fatt(x-1); end 45 Una funzione può chiamare qualunque altra funzione, compresa se stessa. In questo caso si ha una chiamata ricorsiva. Onde evitare ripetizioni infinite ci deve essere una condizione d'uscita dalla ricorsione

46 Slide 46 Ingresso/Uscita (metodi avanzati) Lettura / Scrittura di file di testo [A,B,C,...] = textread('filename','format') Lettura / Scrittura di file generici fid = fopen(filename); C = fscanf(fid, 'format'); fclose(fid); 46 Esempio di scrittura e lettura % Create a file with temperatures tempstr = '78 F 72 F 64 F 66 F 49 F'; fid = fopen('temperature.dat', 'w+'); fprintf(fid, '%s', tempstr); % Return to the beginning of the file frewind(fid); % Read the numbers in the file, skipping the units % num_temps is a numeric column vector degrees = char(176); num_temps = fscanf(fid, ['%d' degrees 'F']); fclose(fid);

47 Slide 47 Toolbox Un toolbox di Matlab è un insieme di funzioni vendute separatamente come un pacchetto aggiuntivo. Alcuni esempi: statistics control system image processing instrument control financial 47 I toolbox disponibili sono numerosissimi, possono essere creati anche da terze parti.

48 Slide 48 Simulink tool indipendente da Matlab per la simulazione di sistemi dinamici 48 Un sistema dinamico è un'astrazione matematica che permette di valutare l'evoluzione nel tempo di un oggetto. Simulink è nato come un toolbox di Matlab, ma è divenuto un programma indipendente. Mantiene sempre una grossa affinità con Matlab. È noto per il tipico diagramma a blocchi grafico.

49 Slide 49 Interfaccia utente grafica (GUI) Un'interfaccia utente permette un'interazione intuitiva con l'utente mediante elementi grafici chiamati widget. Fra questi ci sono bottoni, caselle di testo, grafici etc. Matlab permette di creare GUI mediante un'interfaccia dedicata chiamata GUIDE (Graphic User Interface Development Environment) 49 Un'intergaccia grafica (in inglese GUI, Graphic User Interface) è molto più di un grafico. Usualmente comprende diversi elementi di tipo eterogeneo che permettono all'utente sia di leggere dati, sia di impartire comandi. Un interfaccia grafica unita alla potenza di calcolo di Matlab permette di ottenere applicazioni molto flessibili e performanti. GUIDE non è disponibile con Octave

50 Slide 50 GUIDE guide è un designer di interfacce grafiche widget a sx pannello a dx 50 GUIDE si presenta con una barra a sinistra in cui sono elencati tutti i tipi di widget (elementi grafici) disponibili. A destra c'è uno spazio libero su cui si possono trascinare (drag and drop) i widget, posizionarli e modificarne le dimensioni

51 Slide 51 GUIDE I widget si possono trascinare sul pannello e poi si possono configurare numerosi parametri 51 Quando il mouse è posizionato su un widget con il tasto destro si seleziona un pop-up in cui sono presentati tutti i parametri di configurazione di quel particolare widget: di norma sono varie decine e permettono il controllo completo di tutte le caratteristiche dell'elemento.

52 Slide 52 GUIDE guide salva un file.fig in cui sono memorizzati tutti i widget ciascuno con le proprie configura-zioni e un file.m dove ci sono le funzioni che vengono chiamate in corrispondenza delle azioni dell'utente. Ad esempio ogni volta che viene premuto un bottone viene eseguita una funzione associata a quel bottone (callback). Ogni widget ha un handle (maniglia) che permette di cambiarne le proprietà, può essere utilizzato da tutte le funzioni. 52 I pannelli costruiti tramite GUIDE sono salvati in due file, il primo serve per memorizzare la parte grafica (configurazioni di tutti i widget), il secondo serve per la parte procedurale del pannello. Alcuni widget sono associati ad una callback, cioè una funzione che viene attivata ogni volta che accade un evento che interessa quel widget, il caso tipico di evento è il click su un bottone. Nelle callback sono disponibili tutte le funzionalità delle funzioni Matlab, per interagire con gli altri widget si usano gli handle (uno per ogni widget) che permettono di modificarne le proprietà, in primis i valori visualizzati.

53 Slide 53 GUIDE Esempio di una callback, si usano le funzioni get e set per leggere e scrivere le proprietà indirizzate da handles % function varargout = pushbutton1_callback(h,... eventdata, handles, varargin) val = str2double(get(handles.edit1,'string')); digits = ceil(log10(val+1)); set(handles.edit2,'string',mod(val*val,10^digits)) 53 Un caso tipico di utilizzo si con 3 widget: il primo serve per l'immissione di dati, il secondo è un bottone che serve per avviare il calcolo, il terzo widget serve per visualizzare i risultati. La callback deve prendere i dati dal widget di immissione tramite la funzione get() e l'handle del widget di immissione dati, poi vengono fatti alcuni calcoli su questi dati infine i risultati vengono visualizzati mediante la funzione set() applicata al handle del widget di visualizzazione dei risultati

54 Slide 54 Esempi di impieghi professionali Sincrotrone Trieste Approssimazione parabolica con 10 campioni 54 Un esempio con Linux

55 Slide 55 Esempi di impieghi professionali Ultratech San Jose (Silicon Valley) Sistemi laser per fotolitografia 55 Un esempio con Windows XP

Introduzione a Matlab

Introduzione a Matlab Grafici plot(y) disegna i valori di Y rispetto agli indici plot(x, Y) disegna i valori di Y rispetto a X plot(x,y,s) disegna Y rispetto a X con alcune configurazioni contenute nella stringa S: colore:

Подробнее

Introduzione a Matlab

Introduzione a Matlab Stringhe (1) Una stringa è un array di caratteri. Un array di stringhe è una matrice di caratteri, ma le matrici devono essere rettangolari, perciò si devono aggiungere degli spazi alla fine delle stringhe

Подробнее

Prove d esame Esercizi con Matlab

Prove d esame Esercizi con Matlab Prove d esame Esercizi con Matlab Andrea Corli 16 settembre 2015 Sono qui raccolti alcuni esercizi relativi a Matlab assegnati nelle prove d esame (dal 2011 al 2014) del Corso di Analisi Matematica I (semestrale,

Подробнее

UD6 - MATLAB. Gestione della grafica

UD6 - 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);

Подробнее

MATLAB (3) - Grafica 2 e 3D

MATLAB (3) - Grafica 2 e 3D Laboratorio di Informatica per Ingegneria elettrica A.A. 21/211 Prof. Sergio Scippacercola MATLAB (3) - Grafica 2 e 3D N.B. le slide devono essere utilizzate solo come riferimento agli argomenti trattati

Подробнее

EXCEL: FORMATTAZIONE E FORMULE

EXCEL: FORMATTAZIONE E FORMULE EXCEL: FORMATTAZIONE E FORMULE Test VERO o FALSO (se FALSO giustifica la risposta) 1) In excel il contenuto di una cella viene visualizzato nella barra di stato 2) In excel il simbolo = viene utilizzato

Подробнее

ESERCITAZIONE MATLAB

ESERCITAZIONE MATLAB ESERCITAZIONE MATLAB Di seguito sono ripostati alcuni esercizi da eseguire in ambiente MatLab. Gli esercizi sono divisi per argomenti. Ogni esercizio è preceduto da una serie di esempi che aiutano nello

Подробнее

EXCEL: FORMATTAZIONE E FORMULE

EXCEL: FORMATTAZIONE E FORMULE EXCEL: FORMATTAZIONE E FORMULE Test VERO o FALSO (se FALSO giustifica la risposta) 1) In excel il contenuto di una cella viene visualizzato nella barra di stato 2) In excel il simbolo = viene utilizzato

Подробнее

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 2 - Introduzione a MATLAB

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 2 - Introduzione a MATLAB Complementi di Matematica e Calcolo Numerico A.A. 2010-2011 Laboratorio 2 - Introduzione a MATLAB Che cos è? Programmare con Matlab: Script-files È un file con estensione.m (ad esempio: myfile.m). Contiene

Подробнее

Rappresentazione di curve in tre dimensioni

Rappresentazione di curve in tre dimensioni Rappresentazione di curve in tre dimensioni Il comando plot3, con la sintassi >>plot3(x,y,z) Analoga al semplice plot, permette di tracciare nello spazio curve i cui punti hanno coordinate rispettivamente

Подробнее

Caratteristiche di un linguaggio ad alto livello

Caratteristiche di un linguaggio ad alto livello Caratteristiche di un linguaggio ad alto livello Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono

Подробнее

Introduzione a Matlab (e al Calcolo Numerico)

Introduzione a Matlab (e al Calcolo Numerico) Introduzione a Matlab (e al Calcolo Numerico) Giuseppe Rodriguez Università di Roma Tor Vergata Seminario nell ambito del corso di Fondamenti di Informatica per gli studenti di Ingegneria Meccanica e Ingegneria

Подробнее

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 4 - Polinomi e Interpolazione polinomiale

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 4 - Polinomi e Interpolazione polinomiale Complementi di Matematica e Calcolo Numerico A.A. 2013-2014 Laboratorio 4 - Polinomi e Interpolazione polinomiale Polinomi e vettori Matlab non prevede un oggetto particolare di tipo polinomio, ma rappresenta

Подробнее

MATLAB 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 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

Подробнее

Grafici. 1 Generazione di grafici a partire da un foglio elettronico

Grafici. 1 Generazione di grafici a partire da un foglio elettronico Grafici In questa parte analizzeremo le funzionalità relative ai grafici. In particolare: 1. Generazione di grafici a partire da un foglio elettronico 2. Modifica di un grafico 1 Generazione di grafici

Подробнее

INTRODUZIONE A MATLAB

INTRODUZIONE A MATLAB INTRODUZIONE A MATLAB Descrizione Ambiente/Linguaggioper risolvere problemi di calcolo numericomatrix LABoratory; Marchio registrato da MathWorks Inc. (U.S.A.) Puo essere ampliato da pacchetti specifici

Подробнее

Laboratorio con DERIVE

Laboratorio con DERIVE Laboratorio con Algebra 1 Capitolo 1, p. 2 Capitolo 2, p. 3 Capitolo 3, p. 5 Capitolo 4, p. 6 Capitolo 5, p. 7 Capitolo 6, p. 9 Capitolo 7, p. 10 Capitolo 8, p. 11 Capitolo 9, p. 12 Capitolo 10, p. 13

Подробнее

Calcolo Numerico I - a.a Laboratorio 3 - Introduzione a MATLAB

Calcolo Numerico I - a.a Laboratorio 3 - Introduzione a MATLAB Calcolo Numerico I - a.a. 2010-2011 Laboratorio 3 - Introduzione a MATLAB Grafica 2D in Matlab Per tracciare in Matlab il grafico di una funzione y = f(x) per un intervallo assegnato di valori della variabile

Подробнее

Esercizio 1. Esercizio 2

Esercizio 1. Esercizio 2 Sia data la matrice A A(α) = Esercizio α 2 2α 2 2, α R.) determinare per quali valori del parametro reale α é verificata la condizione necessaria e sufficiente di convergenza per il metodo di Jacobi;.2)

Подробнее

Laboratorio di Matematica Computazionale A.A Lab. 4

Laboratorio di Matematica Computazionale A.A Lab. 4 Laboratorio di Matematica Computazionale A.A. 2008-2009 Lab. 4 Complementi di Grafica 2D: Sottofinestre In Matlab si possono disegnare più grafici nella stessa finestra, suddividendola in sottofinestre

Подробнее

Introduzione al MATLAB c Parte 2 Funzioni

Introduzione al MATLAB c Parte 2 Funzioni Introduzione al MATLAB c Parte 2 Funzioni Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Funzioni matematiche Assegnazione di funzioni 2 Grafico di funzione in

Подробнее

Grafici in matlab. Un esempio di grafico: xv = 3:0.1:3; yv = xv.^3 5*xv.^2 + 4; plot(xv,yv) xlabel('value of x') ylabel('value of y')

Grafici in matlab. Un esempio di grafico: xv = 3:0.1:3; yv = xv.^3 5*xv.^2 + 4; plot(xv,yv) xlabel('value of x') ylabel('value of y') Grafici in matlab Un esempio di grafico: Matlab ha un sacco di funzioni per le rappresentazioni grafiche! Oggi ne vediamo alcune. Per ulteriori informazioni: help graph2d help graph3d Notazione con l operatore

Подробнее

Progettazione di Algoritmi: Approccio Top-Down e Bottom Up

Progettazione di Algoritmi: Approccio Top-Down e Bottom Up Progettazione di Algoritmi: Approccio Top-Down e Bottom Up Ci sono due approcci fondamentali per progettare algoritmi Servono ambedue ad aiutarci ad affrontare il problema Si chiamano "top-down" e "bottom-up"

Подробнее

Programmazione in Java (I modulo)

Programmazione in Java (I modulo) Programmazione in Java (I modulo) Lezione 4 Variabili di tipo primitivo. Dichiarazione di costanti Conversioni di tipo: operatore cast Altri operatori di assegnamento Operazioni aritmetiche e di confronto

Подробнее

Matlab 5. Funzioni. Slide basate sul corso di C. Blundo. A.A. 2010/ GPersiano. Laboratorio di Informatica per Fisici 1

Matlab 5. Funzioni. Slide basate sul corso di C. Blundo. A.A. 2010/ GPersiano. Laboratorio di Informatica per Fisici 1 Matlab 5 Funzioni Slide basate sul corso di C. Blundo A.A. 2010/2011 -- GPersiano Laboratorio di Informatica per Fisici 1 Funzioni Le funzioni sono utili quando occorre ripetere una serie di comandi più

Подробнее

Introduzione alla programmazione in C(++)

Introduzione alla programmazione in C(++) Testi Testi Consigliati: Introduzione alla programmazione in C(++) A. Kelley & I. Pohl C didattica e programmazione A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. D. M. M. Ritchie

Подробнее

MATLAB (1) Introduzione e Operazioni con array

MATLAB (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

Подробнее

Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro;

Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro; EXCEL Modulo 3 I Grafici Grafici Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro; Quando si crea un grafico ogni

Подробнее

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita UD4 - MATLAB M-file. Efficienza degli algoritmi. Formati d uscita M-files In MatLab è possibile eseguire istruzioni contenute in file esterni; Tali file sono chiamati M-file perché devono avere estensione.m

Подробнее

PON 2007 2013 Liceo Scientifico Leonardo da Vinci. Vallo della Lucania

PON 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 - 2: Lavorare con le matrici Vallo della Lucania 26 Settembre 2008

Подробнее

UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Matlab: esempi ed esercizi

UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Matlab: esempi ed esercizi UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA Matlab: esempi ed esercizi Sommario e obiettivi Sommario Esempi di implementazioni Matlab di semplici algoritmi Analisi di codici Matlab Obiettivi

Подробнее

Strutture dati e loro organizzazione. Gabriella Trucco

Strutture dati e loro organizzazione. Gabriella Trucco Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi

Подробнее

Definire una chiave primaria. Microsoft Access. Definire una chiave primaria. Definire una chiave primaria. Definire una chiave primaria

Definire una chiave primaria. Microsoft Access. Definire una chiave primaria. Definire una chiave primaria. Definire una chiave primaria Microsoft Access Chiavi, struttura delle tabelle 1. Portare la tabella in Visualizzazione struttura Selezionare la tabella sulla quale si desidera intervenire nella finestra del database Poi: Fare clic

Подробнее

3. Matrici e algebra lineare in MATLAB

3. Matrici e algebra lineare in MATLAB 3. Matrici e algebra lineare in MATLAB Riferimenti bibliografici Getting Started with MATLAB, Version 7, The MathWorks, www.mathworks.com (Capitolo 2) Mathematics, Version 7, The MathWorks, www.mathworks.com

Подробнее

Un monomio è in forma normale se è il prodotto di un solo fattore numerico e di fattori letterali con basi diverse. Tutto quanto sarà detto di

Un monomio è in forma normale se è il prodotto di un solo fattore numerico e di fattori letterali con basi diverse. Tutto quanto sarà detto di DEFINIZIONE Espressione algebrica costituita dal prodotto tra una parte numerica (coefficiente) e una o più variabili e/o costanti (parte letterale). Variabili e costanti possono comparire elevate a potenza

Подробнее

Confronto tra stringhe. (modulo) Calcolo della media e della varianza. Ecco un elenco di codici Matlab: - Calcolo valore assoluto (modulo)

Confronto tra stringhe. (modulo) Calcolo della media e della varianza. Ecco un elenco di codici Matlab: - Calcolo valore assoluto (modulo) Ecco un elenco di codici Matlab: - Calcolo valore assoluto (modulo) - Calcolo media e varianza - Concatenare stringhe e conversione da numero a stringa - Numero di Eulero - Modificare un file fig in Matlab

Подробнее

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave

Подробнее

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara Sistemi lineari Lorenzo Pareschi Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara http://utenti.unife.it/lorenzo.pareschi/ [email protected] Lorenzo Pareschi (Univ. Ferrara)

Подробнее

Appunti sui Fogli Elettronici. Introduzione. D. Gubiani. 19 Luglio 2005

Appunti sui Fogli Elettronici. Introduzione. D. Gubiani. 19 Luglio 2005 Appunti sui Elettronici D. Gubiani Università degli Studi G.D Annunzio di Chieti-Pescara 19 Luglio 2005 1 2 3 Un foglio elettronico è un programa che permette di creare tabelle contenenti dati correlati

Подробнее

Raccolta degli esercizi svolti in aula

Raccolta degli esercizi svolti in aula Raccolta degli esercizi svolti in aula ed esercizi proposti Alfredo Paolillo [email protected] Versione del: 18 marzo 2011 1 3 marzo 2010: Struttura Sequence e Sub-VI La struttura Sequence permette di

Подробнее

Esercitazione n 2. Costruzione di grafici

Esercitazione n 2. Costruzione di grafici Esercitazione n 2 Costruzione di grafici I grafici I grafici sono rappresentazione di dati numerici e/o di funzioni. Devono facilitare all utente la visualizzazione e la comprensione dei numeri e del fenomeno

Подробнее

per immagini guida avanzata Modificare numeri e date Geometra Luigi Amato Guida Avanzata per immagini Excel

per immagini guida avanzata Modificare numeri e date Geometra Luigi Amato Guida Avanzata per immagini Excel Modificare numeri e date Geometra Luigi Amato Guida Avanzata per immagini Excel 2000 1 Questi formati applicano l impostazione predefinita per ciascuno dei formati. È importante notare che, indipendentemente

Подробнее

Excel. Il foglio di lavoro. Il foglio di lavoro Questa viene univocamente individuata dalle sue coordinate Es. F9

Excel. Il foglio di lavoro. Il foglio di lavoro Questa viene univocamente individuata dalle sue coordinate Es. F9 Excel Un foglio di calcolo o foglio elettronico è un programma formato da: un insieme di righe e di colonne visualizzate sullo schermo in una finestra scorrevole in cui è possibile disporre testi, valori,

Подробнее

Windows. La prima realizzazione di un ambiente grafico si deve alla Apple (1984) per il suo Macintosh. La gestione dei file conserva la logica del DOS

Windows. La prima realizzazione di un ambiente grafico si deve alla Apple (1984) per il suo Macintosh. La gestione dei file conserva la logica del DOS Windows La prima realizzazione di un ambiente grafico si deve alla Apple (1984) per il suo Macintosh La gestione dei file conserva la logica del DOS Funzionalità di un S.O. Gestione dei file Gestione dei

Подробнее

UNITÀ DIDATTICA 2 LE FUNZIONI

UNITÀ DIDATTICA 2 LE FUNZIONI UNITÀ DIDATTICA LE FUNZIONI. Le funzioni Definizione. Siano A e B due sottoinsiemi non vuoti di R. Si chiama funzione di A in B una qualsiasi legge che fa corrispondere a ogni elemento A uno ed un solo

Подробнее

Imparare a utilizzare le formule e le funzioni

Imparare a utilizzare le formule e le funzioni Imparare a utilizzare le formule e le funzioni Eseguire calcoli, di tipo semplice o complesso, può essere un'attività noiosa e che richiede tempo. È possibile semplificare le operazioni di calcolo mediante

Подробнее

Codifica informazione testuale

Codifica informazione testuale Rappresentazione del: Codifica informazione testuale contenuto : successione di parole che costituiscono il documento Formato: modo in cui le parole sono organizzate e rappresentate graficamente. Può migliorare

Подробнее

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?

Подробнее

1 Esercizi di Matlab. L operatore : permette di estrarre sottomatrici da una matrice assegnata. Vediamo alcuni esempi.

1 Esercizi di Matlab. L operatore : permette di estrarre sottomatrici da una matrice assegnata. Vediamo alcuni esempi. Esercizi di Matlab L operatore : permette di estrarre sottomatrici da una matrice assegnata. Vediamo alcuni esempi. Esempio Consideriamo la matrice A formata da n = righe e m = colonne M = 5 6 7 8. 9 0

Подробнее

Matrici. Matrici.h Definizione dei tipi. Un po di esercizi sulle matrici Semplici. Media difficoltà. Difficili

Matrici. Matrici.h Definizione dei tipi. Un po di esercizi sulle matrici Semplici. Media difficoltà. Difficili Matrici Un po di esercizi sulle matrici Semplici Lettura e scrittura Calcolo della trasposta Media difficoltà Calcolo del determinante Difficili Soluzione di sistemi lineari È veramente difficile? 1 Matrici.h

Подробнее

Cosa sono le maschere

Cosa sono le maschere Prof. Emanuele Papotto Cosa sono le maschere La maschera è un oggetto di database che viene realizzato per mostrare, modificare e immettere i record in modo più chiaro rispetto alla visualizzazione foglio

Подробнее

Excel avanzato. Certificazione Microsoft. Excel: le basi. 1.1 Excel: le basi NUMBER TITLE

Excel avanzato. Certificazione Microsoft. Excel: le basi. 1.1 Excel: le basi NUMBER TITLE Excel avanzato Certificazione Microsoft Excel: le basi 1.1 Excel: le basi Fogli elettronici: generalità e struttura (1) Un foglio di lavoro è una griglia costituita da celle (intersezione righe - colonne)

Подробнее

Frazioni. 8 Esercizi di Analisi Matematica Versione Argomenti: Operazioni sulle frazioni Tempo richiesto: Completare la seguente tabella: a b

Frazioni. 8 Esercizi di Analisi Matematica Versione Argomenti: Operazioni sulle frazioni Tempo richiesto: Completare la seguente tabella: a b 8 Esercizi di Analisi Matematica ersione 2006 razioni Argomenti: Operazioni sulle frazioni Difficoltà: Tempo richiesto: Completare la seguente tabella: a b a + b a b 1/3 1/2 1/3 1/2 1/3 1/2 a b a a + b

Подробнее

Sviluppare un programma in FORTRAN

Sviluppare un programma in FORTRAN Sviluppare un programma in FORTRAN Scrivere il file sorgente Editor di testo (emacs, vi, notepad, etc) Compilare Compilatore (ifort, gfortran, etc) Eseguire il programma Riga di comando, doppio click,

Подробнее

Cenni sull utilizzo dei fogli elettronici

Cenni sull utilizzo dei fogli elettronici Cenni sull utilizzo dei fogli elettronici I fogli elettronici ciascun foglio elettronico si presenta come un enorme matrice di dimensioni 65.536 righe per 256 colonne l unità fondamentale della matrice

Подробнее

CONTROLLI AUTOMATICI e SISTEMI ELETTRICI LINEARI Ingegneria Meccatronica INTRODUZIONE Matlab (seconda parte) e SIMULINK

CONTROLLI AUTOMATICI e SISTEMI ELETTRICI LINEARI Ingegneria Meccatronica INTRODUZIONE Matlab (seconda parte) e SIMULINK CONTROLLI AUTOMATICI e SISTEMI ELETTRICI LINEARI Ingegneria Meccatronica INTRODUZIONE Matlab (seconda parte) e SIMULINK Emilio Lorenzani Tel. 0522 522443 e-mail: [email protected] http://www.ingre.unimore.it

Подробнее

FON DAMEN TI DI IN FORMATICA

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

Подробнее

Corso di Matematica per la Chimica

Corso di Matematica per la Chimica Corso di Matematica per la Chimica Dott.ssa Maria Carmela De Bonis Dipartimento di Matematica, Informatica e Economia Università della Basilicata a.a. 2014-15 Presentazione del Matlab Riferimenti bibliografici

Подробнее

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni [email protected] Programmazione prof. Domenico

Подробнее

MATEMATICA DI BASE 1

MATEMATICA DI BASE 1 MATEMATICA DI BASE 1 Francesco Oliveri Dipartimento di Matematica, Università di Messina 30 Agosto 2010 MATEMATICA DI BASE MODULO 1 Insiemi Logica Numeri Insiemi Intuitivamente, con il termine insieme

Подробнее

Introduzione alla programmazione Esercizi risolti

Introduzione alla programmazione Esercizi risolti Esercizi risolti 1 Esercizio Si determini se il diagramma di flusso rappresentato in Figura 1 è strutturato. A B C D F E Figura 1: Diagramma di flusso strutturato? Soluzione Per determinare se il diagramma

Подробнее

Finestre grafiche. >> figure >> figure(n)

Finestre 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

Подробнее

Calcolare con il computer: Excel. Saro Alioto 1

Calcolare con il computer: Excel. Saro Alioto 1 Calcolare con il computer: Excel Saro Alioto 1 Excel è un programma che trasforma il vostro computer in un foglio a quadretti. In altri termini con Excel potrete fare calcoli, tabelle, grafici, ecc...

Подробнее

Esercitazione di Analisi Matematica II

Esercitazione di Analisi Matematica II Esercitazione di Analisi Matematica II Barbara Balossi 06/04/2017 Esercizi di ripasso Esercizio 1 Sia data l applicazione lineare f : R 3 R 3 definita come f(x, y, z) = ( 2x + y z, x 2y + z, x y). a) Calcolare

Подробнее

LEZIONE DI MATLAB 2.0. Ing.Irene Tagliente E-mail: [email protected]

LEZIONE DI MATLAB 2.0. Ing.Irene Tagliente E-mail: irene.tagliente@opbg.net LEZIONE DI MATLAB 2.0 Ing.Irene Tagliente E-mail: [email protected] Cos è Matlab Il programma MATLAB si è imposto in ambiente ingegneristico come strumento per la simulazione e l'analisi dei sistemi

Подробнее

CORSO DI INFORMATICA GENERALE. Università degli Studi di Bergamo

CORSO DI INFORMATICA GENERALE. Università degli Studi di Bergamo CORSO DI INFORMATICA GENERALE Università degli Studi di Bergamo Microsoft Excel E un software applicativo per la gestione dei fogli di calcolo. E un programma che consente la gestione e l organizzazione

Подробнее

Introduzione a Matlab

Introduzione a Matlab Introduzione a Matlab 1 Introduzione Matlab (MATrix LABoratory) è un software per il calcolo scientifico, particolarmente sviluppato per quanto riguarda la gestione ed elaborazione di vettori e matrici.

Подробнее

Primi passi con Geogebra

Primi passi con Geogebra Primi passi con Geogebra La finestra di GeoGebra - versione 4 A. Aprire l applicazione GeoGebra 1. Sul desktop, fare doppio click sull icona di Geogebra B. Dopo l avvio di GeoGebra La finestra che normalmente

Подробнее

Disequazioni in una incognita. La rappresentazione delle soluzioni

Disequazioni in una incognita. La rappresentazione delle soluzioni Disequazioni in una incognita Una disequazione in una incognita è una disuguaglianza tra due espressioni contenenti una variabile (detta incognita) verificata solo per particolari valori attribuirti alla

Подробнее

Analisi dei Dati Tabelle e Grafici

Analisi dei Dati Tabelle e Grafici Analisi dei Dati Tabelle e Grafici Spesso una misurazione consiste nello studio di una grandezza,y i in funzione di un altra, x i. Esempi: o lo spazio percorso da un oggetto in funzione di un intervallo

Подробнее

Somma di numeri binari

Somma di numeri binari Fondamenti di Informatica: Codifica Binaria dell Informazione 1 Somma di numeri binari 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 Esempio: 10011011 + 00101011 = 11000110 in base e una base Fondamenti di

Подробнее

Learning by doing Attività all aperto/outdoor Training Lezione frontale Esercitazioni individuali Compito di apprendimento Approccio dialogico

Learning by doing Attività all aperto/outdoor Training Lezione frontale Esercitazioni individuali Compito di apprendimento Approccio dialogico UNITA DI APPRENDIMENTO n. 1 Matematica Denominazione Numeri naturali e addizioni. L alunno si muove con consapevolezza nel calcolo scritto e mentale con i numeri naturali. Leggere e scrivere, in cifre

Подробнее

Sistemi di Numerazione Binaria

Sistemi di Numerazione Binaria Sistemi di Numerazione Binaria BIN.1 Numeri e numerali Numero: entità astratta Numerale : stringa di caratteri che rappresenta un numero in un dato sistema di numerazione Lo stesso numero è rappresentato

Подробнее

La codifica. dell informazione

La codifica. dell informazione 00010010101001110101010100010110101000011100010111 00010010101001110101010100010110101000011100010111 La codifica 00010010101001110101010100010110101000011100010111 dell informazione 00010010101001110101010100010110101000011100010111

Подробнее