Laboratorio di Calcolo Numerico

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Laboratorio di Calcolo Numerico"

Transcript

1 Laboratorio di Calcolo Numerico Lezione 3 Padova, April 4th 2016 F. Piazzon Department of Mathematics. Doctoral School in Mathematical Sciences, Applied Mathematics Area

2 Outline Lab. 3-2 of 16 1 Presentazione 2 Costrutti Logici: for, while e if

3 Mi presento... Lab. 3-3 of 16 Federico Piazzon (Dip. Matematica) sito fpiazzon Il carattere si digita di solito con Alt+126 o Alt Gr+ ì (ma dipende da tastiera e computer... ) è più facile cercare in internet fpiazzon math unipd: è il primo risultato che da Google.

4 Lab. 3-4 of 16 Lezioni in Laboratorio La mia parte: Preparazione del materiale: slides e m-files (troverete sempre TUTTO nella sezione teaching del mio sito) atto a Illustrare in pratica alcuni fatti visti a lezione tramite esempi. Spiegazione dettagliata dei programmi che utilizzeremo o scriveremo assieme utili per l esame (Compatibilmente con il tempo) rispondere ad eventuali domande per /fine lezione. Correggere esercitazioni/compiti. La vostra parte: Seguire in modo attivo := provare a fare i propri programmi, almeno quando esplicitamente richiesto... Fare SILENZIO. Qui dentro siamo tanti, troppi, se ognuno sussurra il risultato è troppo rumore. Si ricorda che la frequenza non è obbligatoria. Fare domande (possibilmente costruttive per tutti). Arrivare loggarsi creare cartella di lavoro scaricare files.

5 Lavoro a Casa Dovete avere una copia di Matlab o Octave installata e funzionante A CASA. Svolgete sempre gli esercizi che assegno di volta in volta, TESTATE I PROGRAMMI con dati diversi e provate a fare varianti di vostra invenzione. Confrontatevi con i colleghi e lavorate in gruppo, se emergono difficoltà contattatemi o fate domande a fine lezione. Meglio EVITARE DI... Migliori AMICI Prendere appunti su carta Help di Matlab Slides del corso Google Testi consigliati Compagni di corso Non provare a fare i propri programmi Dimenticare di copiare i programmi Dimenticare di fare gli esercizi. Lab. 3-5 of 16

6 Lab. 3-6 of 16 Calcoli iterativi Supponiamo di voler eseguire un operazione identica su delle variabili di valore noto ma che può variare più volte, ma un numero noto di volte. Esempi Dividere un numero x per y 1, y 2,..., y n, Valutare la radice 2 n -esima del numero x, Dato x 0 e la funxione f valutare x k+1 = f(x k ) per k = 1, 2,..., n. In questi casi si ricorrerà in Matlab (e praticamente in ogni linguaggio di programmazione) al ciclo for

7 Sintassi ciclo for Lab. 3-7 of 16 Sintasssi for k=v istruzione 1 istruzione istruzione m end Dove v è un vettore di valori per il parametro k. viene posto k = v(1) e vengono eseguite istr 1,... istr m, poi k = v(2) ed eseguite le istruzioni, non serve cambiare il valore di k a mano (si veda poi il ciclo while). non serve inizializzare la variabile k.

8 Esercizi Elementari Lab. 3-8 of 16 Es. 1. Tempo 1 minuto... Provateci! La successione di Fibonacci è definita come x 0 = 1 x 1 = 1 x k+1 = x k + x k 1 k 2. Si scriva un m-file che calcoli i primi 100 numeri di Fibonacci. Es. 2 (svolto) La serie di Mengoli è S = S n = n k=1 1 k(k+1) = k=1 n n , è noto che k(k+1) Si implementi un m-file che calcoli la somma di Mengoli per un dato n. Cosa succede per n molto grande?

9 Esercizi Evoluti Lab. 3-9 of 16 Es. 3 (svolto) E noto che sin(x) x per x 0. Si usi la formula di duplicazione del seno per ricavare la formula di triplicazione sin(3α) = 3 sin(α) 4 sin 3 (α), poi si implementi un m-file che approssimi il seno di x [0, π] utilizzando le formule sopra. Si valutino e plottino gli errori delle approssimazioni successive. Si migliori poi l approssimazione usando lo sviluppo di Taylor del seno in 0 arrestato a x 5. Es. 4 (per casa) Si faccia lo stesso per il coseno. Qualcosa di simile per il logaritmo naturale e l esponenziale.

10 Cancellazione Numerica I Lab of 16 In aritmetica finita in generale f(x) := (1 + x) 1 x. Esempio (svolto) Si scriva un m-file che valuti f in x = 10 k per k = 0, 1,..., 15 e per x = 2 z k, x = 3 w k, dove z k := ceil(k log(10)/ log(2)) e w k := ceil(k log(10)/ log(2)) sono scelti per rendere gli errori comparabili. Si producano grafici degli errori relativi. Esempio: 3 minuti Si plotti la funzione f(x) := (1 cos(x))/x 2 nell intervallo [ , ] e una versione stabilizzata g(x) della stessa funzione. Si plottil errore relativo.

11 Cancellazione Numerica II Lab of 16 Equazione di 2 o grado: 5 minuti... La formula risolutiva delle equazioni di secondo grado può soffrire di instabilità causata dal segno meno sotto radice. Si scriva uno script che plotti la massima radice dell equazione ax 2 + bx + c = 0 per a = 10 ( 2k 3), b = 1 e c = 10 ( k 3), k = 1 : 10 sia con la formula usuale che con quella stabilizzata x 1 = 2c b + b 2 4ac. Si eseguano plot di x i e x 1 e del suo errore relativo, del valore di ax bx 1 + c al variare di k.

12 Costrutto logico while Vogliamo ripetere operazioni un numero ignoto di volte usiamo il ciclo while. Sintasssi di while while condizione logica istruzione 1 istruzione istruzione m end la condizione logica può dipendere da variabili su cui vengono compiute operazioni se la condizione logica dipende da un numero di iterazioni la variabile di iterazione va avanzata manualmente e dichiarata prima del ciclo. uguale logico si scrive k ==.... Lab of 16

13 Esempi Elementari Lab of 16 Il programma n=10; k=1; while k =n disp(k) k=k+1 end è del tutto equivalente n=10; for k=1:n disp(k) end tranne che per il fatto che dopo il ciclo while k = n + 1 mentre nel for k = n.

14 Radice quadrata Lab of 16 Algoritmo di Erone L algoritmo di Erone per il calcolo di x = α è definito come x 0 = r; x k+1 = 1 2 (x k + r/x k ) k 1, dove si sia scelto r 2 /9 α. Esercizio: 5 minuti Si implementi tale algoritmo includendo un ciclo (while) che testi la condizione su r ed eventualmente porti modifiche alla variabile. Si calcoli con questo algoritmo la radice di 2 con 15 passi e si plottino i risultati riguardo agli errori delle iterazioni.

15 Costrutto if (elseif else) Lab of 16 Si vogliono eseguire operazioni opzionali (solo se si verificano certe condizioni) Sintasssi if condizione logica 1 istruzione 1 istruzione 2 elseif condizione logica 2 istruzione 3 istruzione 4 else istruzione m end

16 Esercizi Lab of 16 Divisione Intera Si implementi l algoritmo della divisione intera x/y (ciclo while) per x, y assegnati con un pre-test (costrutto if) su x y. Erone modificato Si modifichi il programma precedente sull algoritmo di Erone per testare in anticipo se il radicando è positivo. Se è negativo il programma deve stampare a schermo un messaggio di errore.

Laboratorio di Calcolo Numerico

Laboratorio di Calcolo Numerico Laboratorio di Calcolo Numerico Lezione 3 Padova, April 4th 2016 F. Piazzon Department of Mathematics. Doctoral School in Mathematical Sciences, Applied Mathematics Area Outline Lab. 3-2 of 16 1 Costrutti

Dettagli

Esercizi in Python. Docente: Domenico Daniele Bloisi

Esercizi in Python. Docente: Domenico Daniele Bloisi Esercizi in Python Docente: Domenico Daniele Bloisi http://profs.scienze.univr.it/~bloisi/asl/asl.html Esercizio 1 Utilizzare il linguaggio di programmazione Python per stampare a video la scritta "prima

Dettagli

MATLAB Elementi di grafica Costrutti di programmazione

MATLAB Elementi di grafica Costrutti di programmazione MATLAB Elementi di grafica Costrutti di programmazione Operazioni punto Le operazioni punto agiscono su array che abbiano le stesse dimensioni:.* prodotto elemento per elemento./ divisione elemento per

Dettagli

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

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione Claudia Zoccarato E-mail: [email protected] Dispense: Moodle Dipartimento ICEA 22 Marzo 2017 Vettori in

Dettagli

MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)

MATLAB c. Lucia Gastaldi Dipartimento di Matematica  Lezione 4 (15 ottobre 2003) MATLAB c M-file. Lucia Gastaldi Dipartimento di Matematica http://dm.ing.unibs.it/gastaldi/ Lezione 4 (15 ottobre 2003) Esercizio Problema 3: la successione di funzioni f n (x) = (x 2 x) n per 0 x 1 è

Dettagli

Esame di Calcolo Numerico per Informatica A.A. 2010/11: testo soluzioni Proff. S. De Marchi e M. R. Russo 12 luglio 2011

Esame di Calcolo Numerico per Informatica A.A. 2010/11: testo soluzioni Proff. S. De Marchi e M. R. Russo 12 luglio 2011 Esame di Calcolo Numerico per Informatica A.A. 200/: testo soluzioni Proff. S. De Marchi e M. R. Russo 2 luglio 20 L esame consiste di 4 domande aperte e 0 esercizi a risposta multipla. Per gli esercizi

Dettagli

1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso

1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso Domanda 1 1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso x n+1 = x n f(x n), n = 0, 1, 2,... K dove x 0 è il punto iniziale, f(x) = x 3 cos(x) e K è una costante assegnata.

Dettagli

Soluzione di Equazioni non lineari

Soluzione di Equazioni non lineari Soluzione di Equazioni non lineari Corso di Calcolo Numerico 20 Marzo 2018 Function in MATLAB Lo scopo di una funzione è quello di prendere in input un certo numero di valori, fare alcune operazioni con

Dettagli

Algoritmi stabili e instabili

Algoritmi stabili e instabili Algoritmi stabili e instabili Laboratorio di Calcolo Numerico 13 Marzo 2018 Vettori in MATLAB Finora abbiamo pensato alle variabili utilizzate come semplici valori numerici (variabili scalari). In realtà,

Dettagli

Esercizi proposti di Analisi Numerica

Esercizi proposti di Analisi Numerica Esercizi proposti di Analisi Numerica Silvia Bonettini Dipartimento di Matematica, Università di Ferrara 30 gennaio 2012 1 Conversioni, operazioni di macchina e analisi dell errore 1. Convertire i numeri

Dettagli

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 19 settembre 2011

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 19 settembre 2011 Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 19 settembre 2011 L esame consiste di 4 domande aperte e 10 esercizi a risposta multipla. Per gli esercizi ci sono

Dettagli

Matlab. Istruzioni condizionali, cicli for e cicli while.

Matlab. Istruzioni condizionali, cicli for e cicli while. Matlab. Istruzioni condizionali, cicli for e cicli while. Alvise Sommariva Università degli Studi di Padova Dipartimento di Matematica 17 marzo 2016 Alvise Sommariva Introduzione 1/ 18 Introduzione Il

Dettagli

Esercizi Elaborato (versione )

Esercizi Elaborato (versione ) Esercizi Elaborato (versione 2019-04-15) Nota bene: l elaborato dovrà contenere i codici sviluppati, e questi dovranno essere portati alla discussione su una chiavetta USB. Esercizio 1. Verificare che,

Dettagli

Corso di laurea in Matematica Laboratorio di Programmazione e Calcolo Prof. A. Murli. Esercizi di riepilogo - LABORATORIO

Corso di laurea in Matematica Laboratorio di Programmazione e Calcolo Prof. A. Murli. Esercizi di riepilogo - LABORATORIO Cognome: Nome: 1 Matricola: Corso di laurea in Matematica Laboratorio di Programmazione e Calcolo Prof. A. Murli Esercizi di riepilogo - LABORATORIO Creare una directory nominata cognome nome dove cognome

Dettagli

Risoluzione di un problema

Risoluzione di un problema Algoritmi Risoluzione di un problema Descrizione di un problema! Individuazione di un ALGORITMO! Metodo risolutivo (progetto) Introduzione 2 Algoritmo Sequenza finita di mosse che risolve in un tempo finito

Dettagli

LEZIONI ED ESERCITAZIONI DI FISICA Prof. Francesco Marchi 1 Esercitazione su: angoli, funzioni e formule goniometriche Indice 1 Goniometriche 1.1 Introduzione.............................. 1. La soluzione

Dettagli

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)

Dettagli

Daniela Lera A.A

Daniela Lera A.A Daniela Lera Università degli Studi di Cagliari Dipartimento di Matematica e Informatica A.A. 2016-2017 Problemi non lineari Definizione f : R R F : R n R m f (x) = 0 F(x) = 0 In generale si determina

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 2: Primi programmi in Fortran 90

Laboratorio di Calcolo Numerico Laboratorio 2: Primi programmi in Fortran 90 Laboratorio di Calcolo Numerico Laboratorio 2: Primi programmi in Fortran 90 Andrea Franceschini E-mail: [email protected] Dispense: http://www.math.unipd.it/ putti/teaching/calcolo ambientale/index.html

Dettagli

10 STRUTTURE DI CONTROLLO REPEAT E WHILE. Strutture di controllo e variabili strutturate

10 STRUTTURE DI CONTROLLO REPEAT E WHILE. Strutture di controllo e variabili strutturate LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 10 STRUTTURE DI CONTROLLO REPEAT E WHILE Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II

Dettagli

Cicli. S i a i = a 1 + a 2 + a a n

Cicli. S i a i = a 1 + a 2 + a a n Cicli Esprimono in modo compatto e generali l'esecuzione di uno stesso blocco di codice per più volte Anche in matematica sono presenti operatori che eseguono di fatto un ciclo (ad es. sommatoria e produttoria)

Dettagli

CORSO DI LABORATORIO DI INFORMATICA

CORSO DI LABORATORIO DI INFORMATICA CORSO DI LABORATORIO DI INFORMATICA Corso di Laurea Triennale in Ingegneria Elettrica a.a. 2015/2016 Docente: Ing. Domenico Amalfitano Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione

Dettagli

Campo di Esistenza. Il campo di esistenza di una funzione f è il dominio più grande su cui ha significato la legge f.

Campo di Esistenza. Il campo di esistenza di una funzione f è il dominio più grande su cui ha significato la legge f. Campo di Esistenza Il campo di esistenza di una funzione f è il dominio più grande su cui ha significato la legge f. ESERCIZIO. Determinare il campo di esistenza della funzione f(x) = 9+2x. Soluzione:

Dettagli

Metodi iterativi per equazioni nonlineari.

Metodi iterativi per equazioni nonlineari. Metodi iterativi per equazioni nonlineari. Alvise Sommariva Università degli Studi di Padova Dipartimento di Matematica 9 aprile 2016 Alvise Sommariva Introduzione 1/ 14 Introduzione Si supponga sia f

Dettagli

Esercitazioni con GNU Octave

Esercitazioni con GNU Octave appendice A Esercitazioni con GNU Octave GNU Octave può essere scaricato dalla seguente pagina: https://www.gnu.org/software/octave/download.html L elenco dei concetti, delle funzioni e degli operatori

Dettagli

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 20 giugno 2011

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 20 giugno 2011 Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 20 giugno 2011 L esame consiste di 4 domande aperte e 10 esercizi a risposta multipla. Per gli esercizi ci sono

Dettagli

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

Dettagli

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

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Seconda lezione a Python Dottore Paolo Parisen Toldin - [email protected] Dottoressa Sara Zuppiroli - [email protected] L'importanza di capire Perché non dobbiamo dichiarare

Dettagli

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

Dettagli

INTRODUZIONE A MATLAB

INTRODUZIONE A MATLAB INTRODUZIONE A MATLAB INTRODUZIONE A MATLAB MATLAB (MATrix LABoratory) è un linguaggio di programmazione per applicazioni scientifiche (elaborazione numerica dei segnali, progetto di simulatori, sintesi

Dettagli

Claudio Estatico Equazioni non-lineari

Claudio Estatico Equazioni non-lineari Claudio Estatico ([email protected]) Equazioni non-lineari 1 Equazioni non-lineari 1) Equazioni non-lineari e metodi iterativi. 2) Metodo di bisezione, metodo regula-falsi. 3) Metodo di Newton.

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione 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

Dettagli

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

Dettagli

Laboratorio di Python

Laboratorio di Python , Input da tastiera, Iterazione incondizionata 7 marzo 2014 Sommario 1 2 3 Outline 1 2 3 Definizione di funzione import modulo Si importa il modulo specificato def nome_f(par 1,, par n ) : Si definiscono

Dettagli

Raccolta di Esercizi d esame ( di Calcolo Numerico) Prof. Laura Pezza. Equazioni non lineari

Raccolta di Esercizi d esame ( di Calcolo Numerico) Prof. Laura Pezza. Equazioni non lineari Raccolta di Esercizi d esame ( di Calcolo Numerico) Prof. Laura Pezza Equazioni non lineari ESERCIZIO 1 Data l equazione ln(e + x) = 1 (1 + 4x) + 1 2 1.1 verificare analiticamente se sono soddisfatte le

Dettagli

Laboratorio di Programmazione Laurea in Bioinformatica

Laboratorio di Programmazione Laurea in Bioinformatica Laboratorio di Programmazione Laurea in Bioinformatica 15 dicembre 2008 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.

Dettagli