Università degli Studi di Padova

Ángeles Martínez Calomardo


ANNO ACCADEMICO 2014-15



Laboratorio Calcolo Numerico (Ingegneria Industriale - Prof. Bergamaschi)


Dove e quando si svolgono le lezioni:

Per Ingegneria Meccanica (matricole dispari) da martedì 3 Marzo e per Ingegneria Aerospaziale da giovedì 5 Marzo 2015, le lezioni si terrano in:
Laboratorio Informatico Aula "G. Taliercio", via Venezia, 13
dalle 10.30 alle 12.25




Link utili sull'uso dell'aula sono:
  • MOLTO IMPORTANTE: Circolare informativa

  • Pagina web dell'aula (da leggere con cura le voci: Info e Utilizzo dell'aula)

  • Orario dell'aula Taliercio (per vedere orari liberi per esercitazioni individuali).


  • Materiale didattico


    TESTI CONSIGLIATI

  • G. ZILLI, L. BERGAMASCHI.
    INTRODUZIONE AL CALCOLO NUMERICO
    Nuova edizione 2015,
    Ed. Progetto, via Marzolo 28, Padova
    TESTO IN LIBRERIA DA MARZO 2015

  • L. BERGAMASCHI, A. MARTINEZ.
    CALCOLO NUMERICO
    PROGRAMMAZIONE MATLAB
    ESERCIZI D'ESAME: Testi e soluzioni

    2015, Ed. Progetto, via Marzolo 28, Padova
    (Novità: Tantissimi esercizi d'esame risolti + esercizi risolti di MATLAB per laboratorio)
    TESTO IN LIBRERIA DA MARZO 2015



  • Lucidi delle lezioni, programmi e altro materiale didattico
    Per accedere ai Lucidi delle lezioni, programmi ed eventuale altro materiale didattico lo studente è pregato di usare la piattaforma MOODLE del Dipartimento di Ingegneria Industriale a questo link.

    La parola chiave per accedere alla pagina MOODLE verrà comunicata a lezione o privatamente per e-mail.







    Date degli appelli di Laboratorio
    Ci saranno due prove di laboratorio (compitini) NON RIPETIBILI:
  • Primo appello laboratorio:
    MECCANICI: MARTEDÌ 21 APRILE 2015 ore 10.30 AULA TALIERCIO
    AEROSPAZIALI: GIOVEDÌ 23 APRILE 2015 ore 10.30 AULA TALIERCIO
  • Secondo appello laboratorio:
    MECCANICI: MARTEDÌ 9 GIUGNO 2015 ore 10.30 AULA TALIERCIO
    AEROSPAZIALI: GIOVEDÌ 11 GIUGNO 2015 ore 10.30 AULA TALIERCIO






  • Programma delle lezioni di laboratorio.
  • Introduzione all'ambiente (S.O.) Linux. Introduzione a Matlab.

  • Programmazione in Matlab. Primi programmi.

  • Aritmetica di macchina. Cancellazione Numerica. Stabilità di un algoritmo.

  • Zeri di funzioni: metodi di Newton-Raphson, punto fisso, bisezione e secante variabile.

  • Newton per sistemi di equazioni non lineari (cenni al caso due equazioni in due incognite).

  • Interpolazione polinomiale.

  • Interpolazione mediante funzioni spline

  • Minimi quadrati discreti.

  • Integrazione Numerica (trapezi e Cavalieri-Simpson).

  • Risoluzione di sistemi di equazioni lineari Ax=b: sostituzione all'indietro e in avanti, fattorizzazione LU. Condizionamento.

  • Risoluzione di sistemi di equazioni lineari Ax=b mediante metodi iterativi classici: Jacobi, Gauss-Seidel, SOR.


  • Totale: 22 ore di laboratorio.




    Diario delle Lezioni di Laboratorio


    3,5 Marzo: prima sessione di laboratorio.

    Distribuzione login/password. Riassunto del regolamento dell'aula (consultabile qui).
    Primi comandi Linux (creare una cartella con mkdir, posizionarsi in una cartella con il comando cd, listare il contenuto di una cartella con ls). Capire la cartella di lavoro con pwd. Come avviare MATLAB. Descrizione di MATLAB. Introduzione al concetto di variabile, e ai diversi tipi di dati (scalari o array unidimensionali (vettori) o bidimensionali (matrici). Creazione di variabili in MATLAB. Assegnazione. Creazione di matrici e vettori introducendo le componenti una alla volta. Come accedere alle componenti di una matrice e di un vettore. Altri comandi: what, who, whos, clear e format.


    10,12 Marzo: seconda sessione di laboratorio.

    Vettori in MATLAB. Comando : e comando linspace. Esempi. Uso vettoriale degli operatori moltiplicativi (prodotto, divisione, elevamento a potenza). Le funzioni intrinseche sono vettoriali. Introduzione alla grafica: comandi plot e semilogy. Primo grafico.
    MATLAB come linguaggio di programmazione: ciclo for. Esempio: somma dei primi N numeri naturali.
    Aritmetica di macchina: comando eps. Esercizio proposto per casa.
    Instabilità degli algoritmi: Implementazione in MATLAB della successione ricorrente per calcolare $ \{I_n\} $ \begin{equation*} I_n=e^{-1} \int_0^1 x^n \, e^x \, dx \end{equation*} definita da $$I_{n+1}=1-(n+1)\, I_n, \qquad I_1 = e^{-1}.$$
    Lucidi della lezione e programmi reperibili sulla piattaforma MOODLE del Dipartimento di Ingegneria Industriale.


    17,19 Marzo: terza sessione di laboratorio.

    Soluzione dell'esercizio proposto nella precedente lezione di laboratorio sul calcolo dell'errore relativo nell'operazione $(1 + x ) -1 $ al variare di $x=10^{-1},10^{-2},10^{-3},\cdots,10^{-15}$.
    Gestione dell'output a video in MATLAB con i comandi disp e fprintf (output con formato).
    MATLAB come linguaggio di programmazione: studio del ciclo while e dell'istruzione condizionale (if else end). Differenza tra script e function. Scrittura della prima function in MATLAB (contenuti presenti nei lucidi su MATLAB forniti nella prima lezione di laboratorio). Lavoro per la settimana: oltre allo studio di tutti gli argomenti trattati nella lezione, studio dei lucidi reperibili via moodle sulla definizione di funzioni matematiche e la valutazione delle stesse su vettori o scalari. Grafici di funzioni (ezplot, fplot).


    24,26 Marzo: quarta sessione di laboratorio.


    Definizione di funzioni matematiche in MATLAB. Valutazione. Grafici di funzioni con ezplot e fplot.
    Calcolo di zeri di funzioni. Implementazione in MATLAB del metodo di Newton-Raphson: function newton.m
    Creazione del profilo di convergenza.

    Esercizi per casa: scrivere 4 script Matlab che risolvano altrettante equazioni non lineari reperibili all'ultima pagina dei lucidi della lezione. Stima della costante asintotica a partire dagli scarti.


    31 Marzo, 2 Aprile: Quinta sessione di laboratorio.


    Stima della costante asintotica dell'errore del metodo di Newton.
    Metodo di Newton modificato per radici multiple.
    Varianti del metodo di Newton: metodo della tangente fissa.


    14,16 Aprile: Sesta sessione di laboratorio.



    Implementazione in Matlab del metodo di punto fisso.


    21,23 Aprile: Settima sessione di laboratorio.


    Primo compitino di laboratorio.


    28, 30 Aprile: Ottava sessione di laboratorio.


    Interpolazione polinomiale in Matlab. Comandi polyfit e polyval. Scelta dei nodi di interpolazione. Nodi di Chebyshev. Fenomeno di Runge.


    5,7 Maggio: Nona sessione di laboratorio.


    Interpolazione con funzioni spline (comandi spline e interp1). Approssimazione ai minimi quadrati (polyfit). Approssimazione mediante alcuni modelli non lineari (modello potenza e modello esponenziale).


    Interpolazione polinomiale in Matlab. Comandi polyfit e polyval. Scelta dei nodi di interpolazione. Nodi di Chebyshev. Fenomeno di Runge.


    12,14 Maggio: Decima sessione di laboratorio.


    Quadratura numerica. Formule di Newton-Cotes. Formule semplici di Trapezi e Cavalieri-Simpson. Errore. Formule composte. Errore. Implementazione in Matlab delle formule composte di Trapezi e Cavalieri-Simpson.
    Tre esercizi proposti per casa piu' facsimile di prova d'esame.


    19,21 Maggio: Undicesima sessione di laboratorio.


    Algebra lineare numerica: matrici in Matlab. Comandi che operano con matrici (inv,det,eig,size). Estrazione di parti di una matrice (diag,triu,tril). Creazione di matrici diagonali o con diagonali assegnate (diag). Risoluzione di sistemi di equazioni lineari (comando \). Malcondizionamento. Effetti del malcondizionamento sulla soluzione del sistema lineare. Fattorizzazione LU (comando lu di Matlab). Pivoting. Risoluzione del sistema Ax=b a partire dalla fattorizzazione LU di A (risoluzione di due sistemi triangolari).
    Implementazione in Matlab della function lugauss che implementa il metodo di Eliminazione di Gauss per calcolare la fattorizzazione LU di A senza pivoting.



    ATTENZIONE:La prossima lezione di Laboratorio di Calcolo Numerico per gli studenti di Ing. Meccanica matricole dispari è prevista per Lunedì 25 Maggio dalle ore 8.15 alle 10.



    Per lavorare a casa


    É possibile avere una copia del sistema operativo GNU/Linux per installarlo sul propio computer personale. Nella cartella /home/Distribuzioni di ogni computer dell'aula sono disponibili le immagini ISO della distribuzione Linux Fedora, uguale a quella dei computer del laboratorio, della distribuzione Linux Ubuntu, e anche, e soprattutto, l'immagine di una macchina virtuale preconfigurata per la programmazione da utilizzare con il software di virtualizzazione VirtualBox (vengono fornite anche le istruzioni per l'installazione).
    Potete copiare ciascuna immagine in una penna USB di capienza maggiore o uguale a 4 GB e poi masterizzarla su DVD, mentre la macchina virtuale va semplicemente copiata nel vostro computer.
    La macchina virtuale serve per non dover installare Linux sul proprio computer. Istallando la virtual box, si simula il sistema Linux, e si può lavorare dal proprio computer come in aula Taliercio. All'interno della virtual box, e' gia disponibile il programma qtoctave.



    Orario di ricevimento:


    In aula Taliercio oppure da concordare con gli interessati (via posta elettronica). Qualora sia necessario contattare il docente:

    INDIRIZZO:
    Torre Archimede, Terzo piano, Via Trieste 63, 35121 Padova

    E-MAIL:
    angeles.martinez@unipd.it




    Maggiore informazione sul corso:

    Link alla pagina web del Prof. Luca Bergamaschi.

    Page Last modified on 22 May 2015

    web counter
    web counter