Calcolo Numerico I - A.A Laboratorio 3

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

Laboratorio di Matematica Computazionale A.A Lab. 3

Laboratorio di Matematica Computazionale A.A Lab. 3

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

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 3-15/3/2018

Complementi di Matematica e Calcolo Numerico A.A

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 3

Complementi di Matematica e Calcolo Numerico C.d.L Chimica Industriale A.A Laboratorio 5-11/04/2019

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 2-13/3/2017

Introduzione. Corso di Metodi Numerici. 06 Marzo 2019

Introduzione a MATLAB

Algoritmi stabili e instabili

Università degli Studi di Ferrara

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 3

Calcolo Numerico A.A Lab n

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 2-17/3/2014

Elementi di Calcolo Scientifico per l Ingegneria A.A

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione

Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici

Università degli Studi di Ferrara

Introduzione al MATLAB c Parte 2 Funzioni

Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici

MATLAB (3) - Grafica 2 e 3D

Introduzione a MatLab

Laboratorio di Matematica Computazionale A.A Lab. 1 - Introduzione a Matlab

Calcolo Numerico A.A Lab. 6

Problema numerico. Relazione funzionale chiara e non ambigua tra dati iniziali e la soluzione. Dati iniziali e soluzione sono due vettori finiti

Laboratorio 2 Funzioni, Plot e aritmetica floating point

Laboratorio di Matematica Computazionale A.A Lab. 4

UD6 - MATLAB. Gestione della grafica

Calcolo Numerico A.A Esercitazione n

Laboratorio di Matlab

Calcolo Numerico A.A Esercitazione n

Introduzione a Matlab Parte 1

Matlab: Variabili e Array. Informatica B

Esercizio 1. Errori di cancellazione

Visualizzazione di dati

Uso avanzato di MATLAB

Complementi di Matematica e Calcolo Numerico A.A

Esercitazione 2 Numeri finiti e propagazione dell errore

Selection Sort (minsort)

Esercizi proposti di Analisi Numerica

Prove d esame Esercizi con Matlab

Laboratorio di Matlab

Esercitazione 2. Prima parte

Laboratorio di Matematica Computazionale A.A Lab. 4

Esercitazione 2. Prima parte

Numeri di macchina. Lucia Gastaldi. DICATAM - Sez. di Matematica,

Università degli Studi di Ferrara Corso di Laurea in Chimica - A.A

Corso di Laurea in Ingegneria Energetica POLINOMI IN MATLAB. Bologna, 13 marzo Fondamenti di Informatica L a.a

Complementi di Matematica e Calcolo Numerico A.A

MATLAB Funzioni grafiche Salvataggio/recupero dati da file

2. Costruire un M function file di Matlab che calcola il valore del

Laboratorio di Calcolo Numerico - Corso di Laurea in Matematica Appello d esame del 12/07/2012

FONDAMENTI DI SEGNALI E TRASMISSIONE 2 Laboratorio

Calcolo Numerico (A.A ) Lab n. 12 Approssimazione

G. Bracco.Appunti di Fisica Generale. G. Bracco.Appunti di Fisica Generale

Caratteristiche di un linguaggio ad alto livello

Numeri floating point

Variabile, costante ed espressione

Breve introduzione a MATLAB

I numeri reali e la loro rappresentazione

Corso di Matematica per la Chimica

Integrazione numerica

LABORATORIO /03/2005

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

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 7

Grafici. Un programma grafico inizia con un comando che chiude una eventuale finestra grafica precedente: close

Introduzione al Calcolo Scientifico - A.A

PON Liceo Scientifico Leonardo da Vinci. Vallo della Lucania

Calcolo Numerico A.A Laboratorio 8 Integrazione numerica

Metodi Numerici con elementi di Programmazione A.A

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 4-23/3/2015

Laboratorio di Calcolo Numerico A.A

ESERCITAZIONE MATLAB

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

Corso di laurea in Informatica Calcolo Numerico Prof.ssa L. D Amore 12 Dicembre 2008 Esercizi di riepilogo tipo prova d esame

MATLAB Elementi di grafica Costrutti di programmazione

CORSO DI LABORATORIO DI INFORMATICA

Introduzione a MATLAB

viene disegnato un grafico che passa per i punti le cui ascisse e ordinate sono contenute rispettivamente nei vettori x e y.

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili Programma gnuplot

Esercizi di autovalutazione - Matlab Metodi Numerici con Elementi di Programmazione A.A

Introduzione a Matlab

kπ cos, k = 0, 1, 2,, n (NB: sono n +1) n

Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017

Introduzione all ambiente MATLAB

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 11 - Metodi numerici per equazioni differenziali ordinarie

Esame di Analisi Matematica Prova scritta del 21 giugno 2011

Esercitazione 4. F (x) = x + log x. Prima parte. La definizione che segue è una realizzazione del metodo ad un punto definito dalla funzione h.

CORSO DI LABORATORIO DI INFORMATICA

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

Laboratorio 2. Calcolo simbolico, limiti e derivate. Metodo di Newton.

Esercizi di autovalutazione - Matlab Metodi Numerici con Elementi di Programmazione A.A

Progetti d esame per il corso di ANALISI NUMERICA CDL Matematica Magistrale A.A. 2012/2013

Laboratorio di INFORMATICA. 15 ottobre 2009

Transcript:

Calcolo Numerico I - A.A. 2011-2012 Laboratorio 3 Grafica 2D in Matlab Per tracciare in Matlab il grafico di una funzione y = f(x) per un intervallo assegnato di valori della variabile x, utilizziamo il comando plot. Ad esempio % vettore delle ascisse >> y=x.*sin(x); % vettore delle ordinate >> plot(x,y) Se vogliamo assegnare un colore e uno stile della linea (ad esempio rosso (red) r, e linea tratteggiata, -- ) >> plot(x,f(x), r-- ) >> grid % tracciamo le linee di griglia Il comando doc LineSpec mostra una lista di tutte le opzioni disponibili per specificare lo stile della linea. Per rappresentare sul medesimo grafico più di una funzione >> y1=x.*sin(x); >> y2=x.*cos(x); >> plot(x,y1,x,y2), grid Alternativamente

>> y1=x.*sin(x); >> plot(x,y1, r ), grid >> hold on >> y2=x.*cos(x); >> plot(x,y2, g ) Il comando hold on funziona come un interruttore acceso/spento; fino a quando non si digita hold off tutti i grafici vengono disegnati nella medesima finestra. Per disegnare più grafici, ciascuno su una specifica finestra >> y1=x.*sin(x); >> plot(x,y1, r ), grid >> figure(2) >> y2=x.*cos(x); >> plot(x,y2, g ) Disegnamo ora il grafico di sin(x) per x [ π, π] e completiamolo con un titolo e delle etichette sugli assi >> x=linspace(-pi,pi,200); >> y=sin(x); >> plot(x,y) >> title( Grafico di sin(x) ) >> xlabel( Asse x ), ylabel( Asse y ) 2

Per ridimensionare gli assi >> xmin=-2; xmax=2; ymin=-1; ymax=1; >> axis([xmin xmax ymin ymax]); Il comando doc axis visualizza tutti i possibili formati di scalatura e di modifica degli assi del grafico. La barra di comandi al di sopra della finestra del grafico permette numerose operazioni, fra cui lo zoom (icona lente ) e la modifica delle proprietà degli oggetti - spessore delle linee, colore delle linee, carattere delle etichette...- del grafico stesso (icona freccia ) Funzioni simboliche (inline) Esiste in Matlab una sintassi che permette di definire una funzione direttamente nello spazio di lavoro (ovvero in linea ) senza ricorrere ad un file esterno. L istruzione relativa è inline, seguita dall espressione della funzione e dall elenco dei parametri da cui essa dipende. Per esempio, definiamo la funzione f(x) = (sin(x) + x) 2 : >> f=inline( (sin(x)+x).^2, x ) dove abbiamo indicato esplicitamente che f è funzione di x. Attenzione alla sintassi con gli apici e i punti e attenzione all operazione di elevamento a potenza componente per componente! 3

Ad una funzione così definita non sono associati dei valori numerici (verificare con whos f), ma solo un espressione matematica. Se ora vogliamo associare dei valori numerici, scriviamo >> y=f(x); %assegna a f dei valori numerici in %corrispodenza del vettore x Verificare con whos y che y è un vettore numerico! Riprendiamo l esempio del disegno del grafico della funzione y = x sin(x) e usiamo il comando inline >> f=x.*sin(x); >> plot(x,f(x)), grid Attenzione: perché il comando >> plot(x,f) non funziona? 4

Rappresentazione dei numeri reali: È impossibile rappresentare su una macchina l infinità dei numeri reali. Si lavora con un sottoinsieme di dimensione finita: l insieme dei numeri floating-point. Ad esempio: 2/3 = 0.6 >> 2/3 0.6667 >> 1/3 0.3333 1/3 = 0.3 I numeri reali vengono arrotondati. Usare solo 4 cifre decimali per rappresentare i numeri sarebbe tuttavia molto grossolano, ma questo è solo un possibile formato del sistema per visualizzare un numero reale che non coincide con la sua rappresentazione interna. Altri possibili formati sono: >> format long >> 2/3 5

0.66666666666667 >>1/3 ans= 0.3333333333333 >> 1/100 0.01000000000000 >> format long e >> 1/100 1.000000000000000e-02 Altre variabili predefinite: eps (epsilon macchina), realmax, realmin (più grande e più piccolo numero floating point), Inf (+ è il risultato di operazioni come 1/0 o di un overflow, ad es. exp(1000)) Nan (Not-a-Number, è il risultato di operazioni come 0/0 o inf-inf). 6

Errori di cancellazione x 1. Si calcoli analiticamente lim x 0 e x 1 x 2. Si calcoli la quantità y = e x 1 per x = 10 15 usando Matlab. Quale è l errore commesso? (Si usi opportunamente il comando format). Perché l errore è grande? 3. Si sostituisca ora a e x la sua espansione in serie Taylor intorno a x = 0 arrestata al termine di secondo ordine. Si calcoli x quindi un espressione approssimata di e x 1. 4. Si calcoli quindi la nuova quantità con Matlab in corrispondenza di x = 10 15 e si verifichi l errore commesso in questo caso. 7

Interpolazione con polinomi di Lagrange Si consideri la funzione f(x) = cos(x) nei punti x 0 = 0, x 1 = 1 3 π, x 2 = 2 3 π e sia π 2 f(x) l interpolante polinomiale di f(x) nei nodi x 0, x 1, x 2. 1. Sia π 2 f(x) = 2 f(x i )L i (x). Si scriva esplicitamente su carta i=0 l espressione dei polinomi di Lagrange L 0 (x), L 1 (x), L 2 (x) e se ne tracci con Matlab il grafico nella stessa finestra per x [x 0, x 2 ]. 2. Si usi la function lagr (da scaricare dalla pagina web del corso) per costruire π 2 f(x) e si rappresenti graficamente nella stessa finestra tale polinomio e la funzione f(x). 8