interp2(x,y,z,x_i,y_i) (x,y,z,x_i,y_i);



Documenti analoghi
Input ed output La funzione input mostra un messaggio e permette di leggere il valore di una variabile (array) da tastiera: var = input('inserire il n

MATLAB (3) - Grafica 2 e 3D

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

UD6 - MATLAB. Gestione della grafica

Comandi di Input/Output in Matlab

Matlab: Gestione avanzata dei file

LABORATORIO DI PROGRAMMAZIONE EDIZIONE 1, TURNO B

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

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools

Grafici tridimensionali

Esame di Informatica CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO. Facoltà di Scienze Motorie

Interpolazione ed approssimazione di funzioni

Introduzione al Foglio Elettronico

FORMULE: Operatori matematici

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,

Potenzialità statistiche Excel

Funzioni in C. Violetta Lonati

Plate Locator Riconoscimento Automatico di Targhe

MATLAB-SIMULINK. Grafici 2D e 3D. Ing. Alessandro Pisano. pisano@diee.unica.it

Compilatore risorse display grafico LCD serie IEC-line

Definire gli attributi dei blocchi

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

Access. Microsoft Access. Aprire Access. Aprire Access. Aprire un database. Creare un nuovo database

Introduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari

FON DAMEN TI DI IN FORMATICA

Alcune regole di base per scrivere un programma in linguaggio C

Database 1 biblioteca universitaria. Testo del quesito

Guida all uso di Java Diagrammi ER

LE FUNZIONI A DUE VARIABILI

LEZIONE DI MATLAB 2.0. Ing.Irene Tagliente

Convertitori numerici in Excel

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

M:\Manuali\VARIE\GENERAZIONE REPORT PARAMETRICI.doc GENERAZIONE REPORT PARAMETRICI

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')

7. Layer e proprietà degli oggetti

Visualizzazione grafica. dell'output di un programma con GNUplot

Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12};

SPECIFICHE E LIMITI DI EXCEL

Laboratorio di Matematica Computazionale A.A Laboratorio nr.8

Richiesta pagina PHP (es: index.php)

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa.

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

RISOLUTORE AUTOMATICO PER SUDOKU

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

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Il programma CONFELMOD CAD creazione e modifica

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Come modificare la propria Home Page e gli elementi correlati

Operazioni fondamentali

FONDAMENTI DI INFORMATICA. 3 Elaborazione testi

Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti

Introduzione al MATLAB c Parte 2

Patente Europea di Informatica ECDL Modulo 4. Lezione 3: Grafici Impostazione e verifica del foglio Opzioni di stampa. Anno 2011/2012 Syllabus 5.

Registratori di Cassa

WORD per WINDOWS95. Un word processor e` come una macchina da scrivere ma. con molte più funzioni. Il testo viene battuto sulla tastiera

Tabelle Pivot - DISPENSE

Per studio di funzione intendiamo un insieme di procedure che hanno lo scopo di analizzare le proprietà di una funzione f ( x) R R

MODULO 4: FOGLIO ELETTRONICO (EXCEL)

CONTROLLO ORTOGRAFICO E GRAMMATICALE

Excel. Excel. Videata iniziale Fogli elettronici. Fogli elettronici. Come si inserisce un dato

LA CORRISPONDENZA COMMERCIALE

Gestione dei File in C

Fogli Elettronici: MS Excel

Calcolatori Elettronici Parte X: l'assemblatore as88

Word è un elaboratore di testi in grado di combinare il testo con immagini, fogli di lavoro e

I file di dati. Unità didattica D1 1

Il foglio elettronico: Excel

Cos è ACCESS? E un programma di gestione di database (DBMS) Access offre: un ambiente user frendly da usare (ambiente grafico)

La Stampa Unione. Individuare la lista indirizzi per la Stampa Unione

13. Campi vettoriali

(71,1), (35,1), (17,1), (8,1), (4,0), (2,0), (1,0), (0,1) 0, = 1, 431 0, = 0, 862 0, = 1, 792 0, = 1, 448 0, = 0, 896

RAPPRESENTAZIONE GRAFICA E ANALISI DEI DATI SPERIMENTALI CON EXCEL

Le stringhe. Le stringhe

Corso di Fondamenti di Informatica

Le query. Lezione 6 a cura di Maria Novella Mosciatti

Dati importati/esportati

Le immagini digitali. Le immagini digitali. Caterina Balletti. Caterina Balletti. Immagini grafiche. Trattamento di immagini digitali.

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore

Documentazione Concessionario TRACCIATI RECORD. Questo documento contiene la struttura dei tracciati record dei file ascii utilizzati da Passepartout.

Prof.ssa Paola Vicard

Foglio di calcolo. Il foglio di calcolo: Excel. Selezione delle celle

NVU Manuale d uso. Cimini Simonelli Testa

Strumenti informatici Realizzare grafici e tabelle con Excel e SPSS

Appunti di: MICROSOFT EXCEL

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

Gestione delle informazioni necessarie all attività di validazione degli studi di settore. Trasmissione degli esempi da valutare.

SISTEMI DI NUMERAZIONE E CODICI

EUROPEAN COMPUTER DRIVING LICENCE SYLLABUS VERSIONE 5.0

MANUALE UTENTE Fiscali Free

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

BARCODE. Gestione Codici a Barre. Release 4.90 Manuale Operativo

Microsoft Word. Nozioni di base

Gli strumenti per creare un libro, uno striscione, un giornalino, un depliant, un fumetto

Grandezze scalari e vettoriali

Salvare e importare dati

Matematica 1 - Corso di Laurea in Ingegneria Meccanica

Progetto PON C1-FSE : APPRENDERE DIGITANDO SECONDARIA VERIFICA INTERMEDIA CORSISTA NOME E COGNOME:

ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi terza

4 3 4 = 4 x x x 10 0 aaa

Transcript:

Corso di Laurea in Ingegneria Meccanica Trasmissione del calore con applicazioni numeriche: informatica applicata a.a. 4/5 Parte III Prof. Nicola Forgione Dipartimento di Ingegneria Civile e Industriale E-mail: nicola.forgione@ing.unipi.it; tel. 522857 Interpolazione E' spesso necessario stimare valori intermedi tra due dati noti con precisione. Questo processo si chiama interpolazione. L'interpolazione lineare in MATLAB è svolta dalle funzioni interp (D) e interp2 (2D) D). Supponiamo che il vettore x contenga i dati della variabile indipendente e che il vettore y contenga i dati della variabile dipendente. Allora scrivendo: y_int = interp(x,y, (x,y,x_int); si ottiene un vettore della stessa dimensione di x_int che contiene i valori interpolati linearmente diy che corrispondono ax_int. E' da notare che i valori della variabile indipendente del vettore x devono essere in ordine crescente e i valori del vettore di interpolazione x_int devono essere compresi all'interno dell'intervallo dei valori dix. Esempio: i vettori x e y contengono, rispettivamente i tempi e le temperature x = [7, 9,, 2]; % tempi y = [5, 8, 25, 28]; % temperature x_int = [8, ]; % ore 8. e ore. temperatura=? y_int = interp(x, y, x_int)

Interpolazione In alternativa, è possibile eseguire l'interpolazione del tipo spline cubica che nel caso D si concretizza attraverso il seguente comando: y_int = spline(x,y,x_int); La funzione interp2 di MATLAB consente di interpolare una funzione di due variabili, z = f(x,y). Se vogliamo stimare il valore di z per x=x i e y=y i, la sintassi è: interp2(x,y,z,x_i,y_i) (x,y,z,x_i,y_i); Supponiamo di avere a disposizione le temperature misurate in uno stesso istante in quattro differenti località disposte come riportato in figura. Si voglia stimare la temperatura in una località interna nel punto di coordinate x i =.6 e y i =.5. La sessione di lavoro è la seguente: x = [,]; y = [,2]; z = [5,7;8,4]; % temperature x_i =.6; y_i =.5; z_int = interp2(x, y, z, x_i, y_i) 5 7 8 4 Input ed output La funzione input mostra un messaggio e permette di leggere il valore di una variabile (array) da tastiera: var = input('inserire il numero di iterazioni: '); Per la sola lettura di una stringa di caratteri si pone invece: cha = input('what is your name','s') 's'); La stringa di messaggio può contenere uno o più sequenze di escape '\n' che consente di saltare alla linea successiva. Per generare un menu di scelte per l'input dell'utilizzatore si può impiegare la funzione: k = menu('mtitle','opt','opt2', ',...,'optn'); che visualizza un menu il cui titolo è definito dalla variabile stringa'mtitle' e le cui scelte sono le variabili stringhe 'opt', 'opt2',. Il valore scelto dall'utilizzatore viene assegnato alla variabile k. Per visualizzare stringhe (messaggi) oppure array si adopera la funzione disp: disp('premere un tasto'); La funzione error quando viene eseguita mostra un messaggio di errore ed interrompe l'esecuzione di un file.m: error('a deve essere invertibile'); 2

Apertura e chiusura di file La prima operazione da eseguire prima di poter scrivere o leggere da file è l'apertura del file: fid = fopen(filename,permission); La funzione fopen apre il file di nome filename nella modalità specificata da permission. L'operazione di apertura serve ad associare un identificatore (scalare intero: fid) al file di nome filename. Dopo che il file è stato aperto, il programmatore dovrà utilizzare l'identificatore fid per poter scrivere e/o leggere le informazioni memorizzate al suo interno. La modalità di apertura del file è specificata da permission che può assumere i valori riportati nella tabella successiva. Dopo avere terminato le operazioni di lettura e/o scrittura è necessario eseguire l'operazione di chiusura del file: fclose(fid); a = -3; b = 2; c = a*b; fid = fopen(' ('prova.txt', 'w'); fprintf(fid,'a = %5.2f b = %5.2f c = %5.2f \n',a,b,c); fclose(fid); Apertura e chiusura di file Modalità 'r' 'w' 'a' 'r+' 'w+' 'a+' Descrizione sola lettura - sul file sarà possibile eseguire soltanto operazioni di lettura e quindi non sarà possibile effettuarvi la scrittura. Se il file non esiste la funzione fopen ritornerà il codice di errore NULL. sola scrittura - sul file sarà possibile eseguire solamente operazioni di scrittura, quindi non operazioni di lettura. Se il file al momento dell'apertura non esiste sarà automaticamente creato, in caso contrario il contenuto del file preesistente sarà perso. solo scrittura a fine file sul file sarà possibile eseguire soltanto operazioni di scrittura a fine file: tutte le scritture verranno sempre eseguite in coda al contenuto attuale del file. Se il file non esiste verrà creato automaticamente, in caso contrario il contenuto del file preesistente verrà mantenuto. lettura e scrittura sul file sarà possibile eseguire operazioni sia di lettura sia di scrittura. Se il file non esiste, la funzione fopen ritornerà il codice di errore NULL. scrittura e lettura - sul file sarà possibile eseguire operazioni sia di scrittura sia di lettura. Se il file non esiste verrà automaticamente creato, in caso contrario il contenuto del file preesistente verrà perso. lettura e scrittura a fine file - sul file sarà possibile eseguire operazioni sia di lettura sia di scrittura a fine file. Se il file non esiste verrà automaticamente creato, in caso contrario il contenuto del file preesistente verrà mantenuto. 3

Scrittura formattata su file Per scrivere su un file in modo formattato si usa la funzione fprintf: fprintf(fid,format,a, ); dove fid è l'identificatore del file che viene passato da fopen (esso può inoltre essere per lo standard output (il monitor)); se fid viene omesso allora viene assunto automaticamente uguale ad e la stampa avviene su monitor. L'argomento format è una stringa di formato contenente: sequenze di caratteri da stampare sul file (opzionale), delle specifiche di conversione in linguaggio C e delle sequenze di escape (opzionali). Le specifiche di conversione controllano il tipo di notazione, l'allineamento allineamento, le cifre significative, l'ampiezza del campo, ed altre caratteristiche del formato di output. Le specifiche di conversione iniziano con il caratttere % e contengono i seguenti elementi obbligatori ed opzionali: flags (opzionale); width and precision fields (opzionale); a subtype specifier (opzionale); conversion character (obbligatorio). Questi elementi devono essere specificati nel seguente ordine: Specifiche di conversione Conversion character Specificatore %c Carattere singolo Scrittura formattata su file %d Notazione intera decimale con segno Descrizione %e Notazione esponenziale (usando una e come in 3.45e+) %E Notazione esponenziale (usando una E come in 3.45E+) %f %g Notazione decimale secondo il formato [-]mmm.nnnn dove la lunghezza della stringa di n è specificata dalla precisione Stampa la rappresentazione più breve tra %f e %e, eliminando eventualmente gli zeri non significativi %G Lo stesso di %g, ma usando la lettera maiuscola E al posto di e %s Stringa di caratteri %x Notazione esadecimale (usando lettere minuscole a-f) %X Notazione esadecimale (usando lettere maiuscole A-F) Flags Si può controllare l'allineamento dell'output usando uno di questi optional flags: un segno meno (-) significa che il numero verrà scritto allineato a sinistra; un segno più (+) significa che il numero verrà stampato con il segno (+ o-). 4

Scrittura formattata su file o su stringa La stringa di formato può contenere alcune sequenze di caratteri di escape (dette sequenze di escape) che non verranno visualizzate esattamente così come sono scritte poiché hanno lo scopo di formattare il testo. Tali sequenze iniziano con il simbolo\ (backslash). Esempi di sequenze di escape sono: \b ritorna di un carattere indietro (backspace) \n va a capo linea \t tabulazione orizzontale \\ stampa il carattere \ \" stampa il carattere " %% stampa il carattere % Per scrivere dati formattati su una stringa si usa la funzione sprintf: s = sprintf(format,a, ) dove A è la matrice contenente i dati il cui formato è specificato da format. Esempio: a = -3/2; disp(sprintf('a = %5.2f \n',a)) n',a)); l istruzione precedente è equivalente a: fprintf('a = %5.2f \n',a) Lettura formattata da file o da stringa Per leggere da un file in modo formattato si usa la funzione fscanf: A = fscanf(fid,format,,format,size); dove fid è l'identificatore del file su cui leggere i dati. La funzione fscanf legge tutti i dati dal file specificato dall'identificatore fid, li converte in accordo al formato di stringa specificato in format e immagazzina questi dati nella matrice A. size può essere: n legge al più n elementi all'interno di un vettore colonna; inf legge fino alla fine del file, fornendo in un vettore colonna contenente gli stessi numeri di elementi che si trovano sul file; [m,n] legge una quantità di elementi sufficienti a riempire una matrice mxn, riempendo la matrice per colonne; n può essere inf, mentre m no. Il format contiene la specifica di conversione; generalmente in questo caso viene utilizzato il solo carattere di conversione (ad es. %f) anche se può essere inoltre specificato la massima ampiezza del campo. In alternativa dal menu File si seleziona Import Data e poi si sceglie la directory e il nome del file da importare. Per leggere da una stringa in modo formattato si usa la funzione sscanf: A = sscanf(s,format, (s,format,size); dove s è una variabile stringa. 5

Scrittura/lettura file in formato ASCII e scrittura/lettura non formattata Per scrivere dati in un file in formato ASCII si usa la funzione dlmwrite: dlmwrite(filename,a,dlm); Nel file filename vengono scritti gli elementi della matrice A in formato ASCII usando il carattere dlm come delimitatore (es.:'\t'). Per leggere dati da un file in formato ASCII si usa la funzione dlmread: A = dlmread(filename,dlm filename,dlm); Per scrivere in un file in modo non formattato (dati binari) si usa la funzione fwrite: fwrite(fid,a,,a,precision); dove precision è una stringa che specifica il formato dei dati. Ad esempio 'float32' specifica che i dati sono numeri reali scritti in singola precisione, mentre'double' specifica che i dati sono numeri reali scritti in doppia precisione. Per leggere da un file in modo non formattato (dati binari) si usa la funzione fread: A = fread(fid,size,precision); Diagrammi sovrapposti Le seguenti varianti dei comandi plot(y) e plot(x,y) possono essere utilizzati per generare diagrammi sovrapposti: plot(a) rappresenta in un diagramma le colonne di A in funzione dei loro indici, generando n curve;aèunauna matrice con m righe ed n colonne. plot(x,a) rappresenta in un diagramma la matrice A in funzione del vettore x;xèun vettore riga o un vettore colonna edaèuna matrice con m righe ed n colonne. Se la dimensione di x è pari ad m, ogni colonna di A viene rappresentata in funzione del vettore x. Il diagramma conterrà tante curve quante sono le colonne di A. Se la dimensione di x è pari ad n, ogni riga di A viene rappresentata in funzione del vettore x. Il diagramma conterrà tante curve quante sono le righe dia. plot(a,y) rappresenta in un diagramma il vettore y in funzione della matrice A. Se la dimensione di y è pari ad m, y sarà rappresentato in funzione delle colonne dia. Il diagramma conterrà tante curve quante sono le colonne di A. Se la dimensione di y è pari ad n, y sarà rappresentato in funzione delle righe di A. ogni riga di A viene rappresentata in funzione del vettore x. Il diagramma conterrà tante curve quante sono le righe dia. plot(a,b) rappresenta in un diagramma le colonne della matrice B in funzione delle colonne della matrice A. 6

Tipi di linee e simboli dei dati Per rappresentare il vettoreyin funzione del vettorexeindicare ogni punto con un determinato simbolo, basta racchiudere il simbolo tra due apici nella funzione plot. Ad esempio per rappresentare i punti di un diagramma con un cerchio basta digitare: plot(x,y,'o'). Per collegare i vari simboli con un segmento occorre rappresentare due volte i dati digitando: plot(x,y,x,y,'o'). Per rappresentare y in funzione di x con degli asterischi verdi collegati ad una linea tratteggiata rossa, basta digitare:plot(x,y,'g*',x,y,'r--') '). Simbolo Marcatore Tipo linea Marcatore Punto. Linea cont. (default) - Nero Asterisco * Tratteggio -- Blu Colore Segno per x Tratto e punto -. Azzurro Cerchio o Linea punteggiata : Verde Segno più + Rosa Quadrato s Rosso Rombo d Bianco Stella p Giallo Marcatore k b c g m r w y Etichette per linee e dati Se un diagramma è formato da più curve è possibile inserire una legenda per distinguerle, utilizzando il comando legend. La sintassi di base è: legend('stringa','stringa2', ',...); Ad esempio il seguente file script genera il diagramma mostrato in figura. x=[:.:2*pi] *pi]; y=sin(x) (x); z=cos(x) (x); plot(x,y,x,z,'--') '); sin(x).8 xlabel('x') ('x'); cos(x) ylabel('seno e coseno');.6 legend('sin(x)','cos(x)') ('sin(x)','cos(x)');.4 E' possibile creare titoli ed etichette che contengono simboli matematici, lettere greche ed altri attributi grafici (caratteristiche basate sul linguaggio TeX). seno e coseno.2 -.2 -.4 -.6 -.8-2 3 4 5 6 7 x 7

Principali simboli e caratteri speciali Diagrammi multipli Il comando subplot consente di generare nello stesso grafico più diagrammi di dimensioni ridotte. La sintassi è: subplot(m,n,p) (m,n,p); Questo comando divide la finestra grafica di MATLAB in una serie di pannelli rettangolari disposti su m righe e n colonne. La variabile p indica a MATLAB di porre l'output del comando plot che segue il comando subplot nel p-esimo pannello. Per esempio, subplot(3,2,5) crea un array di sei pannelli (tre righe e due colonne di pannelli) e indica a MATLAB di visualizzare il successivo diagramma nel quinto pannello. Il seguente file script crea la figura riportata nella pagina successiva che contiene i diagrammi delle funzioni y=e -.2 x sin(x+ x+5) per x 5 e y= x 3 - per -6 x 6. x = [:.:5]; y = exp(-.2*x) *x).*sin(*x+5); subplot(,2,); plot(x,y),xlabel('x'), ('x'),ylabel('y'),axis([ 5 - ]) x = [-6:.:6]; y = abs(x.^3-); subplot(,2,2); plot(x,y),xlabel('x'), ('x'),ylabel('y'),axis([-6 6 35]) 8

Diagrammi multipli y.8.6.4.2 -.2 -.4 -.6 -.8-2 4 x y 35 3 25 2 5 5-5 5 x Diagrammi bidimensionali speciali Comando semilogx(x,y) semilogy(x,y) loglog(x,y) bar(x,y) polar(teta,r, 'tipo') stairs(x,y) stem(x,y) plotyy(x,y, x2,y2) Descrizione Crea un diagramma semilogaritmico di y in funzione di x con l'asse x in scala logaritmica. Crea un diagramma semilogaritmico di y in funzione di x con l'asse y in scala logaritmica. Crea un diagramma bilogaritmico di y in funzione di x. Crea un diagramma a barre di y in funzione di x. Crea un diagramma polare di coordinate teta e r, utilizzando il tipo di linea, simbolo e colore specificati nella stringa tipo. Crea un diagramma a gradini di y in funzione di x. Crea un diagramma a steli di y in funzione di x. Crea un diagramma con due assi delle ordinate. 9

Diagrammi tridimensionali a linea Le linee nello spazio tridimensionale possono essere rappresentate con il comando plot3, la cui sintassi è plot3(x,y,z) (x,y,z). Per esempio consideriamo la linea 3D caratterizzata dalla seguente equazione parametrica: x = e y = e -.5t -.5t sin(t) cos(t) z = t La curva generata è la spirale riportata in figura generata con le seguenti istruzioni: t = [:pi/ pi/5:*pi] *pi]; plot3(exp(-.5*t) *t).*sin(t),... exp(-.5*t) *t).*cos(t),t); xlabel('x') ('x'); ylabel('y') ('y'); zlabel('z') ('z'); grid; z 4 3 2 y -.5 - -.5 x Diagrammi tridimensionali a superficie La funzione z=f(x,y) rappresenta una superficie quando viene riprodotta nel sistema di assi x,y,z. La funzione mesh permette di generare un diagramma a superficie nello spazio 3D. Prima di utilizzare la funzione mesh, occorre generare una griglia di punti nel piano xy mediante la funzione meshgrid e poi calcolare la funzione f(x,y) in corrispondenza di questi punti. Se x=[xmin:xstep:xmax] e y=[ymin:ystep:ymax], allora il comando [X,Y]=meshgrid(x,y) genererà le coordinate di una griglia rettangolare. Le matrici risultanti X e Y conterranno le coppie di coordinate di ogni punto della griglia. Queste coppie sono utilizzate per calcolare la funzione. La funzione [X,Y]=meshgrid(x) è equivalente a [X,Y]=meshgrid(x,x) e può essere utilizzata se x e y hanno gli stessi minimi e massimi e le stesse spaziature. In questo caso per generare la griglia è possibile digitare: [X,Y] = meshgrid(min (min:step:max). Nel seguito viene mostrato come generare il diagramma a superficie della funzione z=xe -[( [(x-y^2)^2+y^2] per -2 x 2 e -2 y 2 con una spaziatura di.. [X,Y] = meshgrid(-2:.:2); Z = X.*exp( *exp(-((x-y.^2).^2+y.^2)); 2 ( ) 2 2 - x- y y + mesh(x,y,z) (X,Y,Z); f ( x, y ) = x e xlabel('x'), ('x'),ylabel('y'),zlabel('z');

Diagrammi tridimensionali a superficie.5 z -.5 2 y -2-2 - x 2 Diagrammi a contorno (contour plot) I diagrammi a contorno possono essere creati con la funzione contour la cui sintassi è contour(x,y,z). Anche in questo caso bisogna prima creare una griglia di punti con la funzione meshgrid e generare la funzione. [X,Y] = meshgrid(-2:.:2); Z = X.*exp( *exp(-((x-y.^2).^2+y.^2)); contour(x,y,z),xlabel('x'),ylabel('y'); 2.5.5 y -.5 - -.5-2 -2 -.5 - -.5.5.5 2 x

Diagrammi vettoriali del gradiente di una funzione I diagrammi vettoriali possono essere creati con la funzione quiver la cui sintassi èquiver(x,y, (X,Y,px,py). Anche in questo caso bisogna prima creare una griglia di punti con la funzione meshgrid e generare la funzione. [X,Y] = meshgrid(-2:.:2); Z = X.*exp( *exp(-((x-y.^2).^2+y.^2)); [px,py] = gradient(z, (Z,.,.); quiver(x,y, (X,Y,px,py) 2.5.5 -.5 - -.5-2 -2 -.5 - -.5.5.5 2 Funzioni per diagrammi tridimensionali Funzione contour(x,y,z) mesh(x,y,z) meshc(x,y,z) meshz(x,y,z) surf(x,y,z) surfc(x,y,z) [X,Y]=meshgrid(x,y) [X,Y]=meshgrid(x) waterfall(x,y,z) Descrizione Crea un diagramma a contorno (curve di livello). Crea un diagramma tridimensionale a superficie. Come mesh,, in più traccia un diagramma a contorno sotto la superficie. Come mesh,, in più traccia una serie di linee di riferimento verticali sotto la superficie. Crea un diagramma tridimensionale a superficie la cui griglia ha pannelli opachi. Come surf,, in più traccia un diagramma a contorno sotto la superficie. Crea le matrici X e Y dai vettori x e y per definire una griglia rettangolare. Equivale a [X,Y]=meshgrid(x,x) Come mesh,, con la differenza che genera linee di griglia in una sola direzione. 2