Laboratorio di Calcolo Numerico
|
|
|
- Luciana Garofalo
- 9 anni fa
- Visualizzazioni
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 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
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
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
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
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 è
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
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.
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
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à,
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
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
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
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,
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
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
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
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)
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
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
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
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)
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
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:
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
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
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
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
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
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
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
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
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.
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
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
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
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
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.
