Introduzione a Matlab (e al Calcolo Numerico)

Похожие документы
Registro di Matematica Applicata /18 - Dott.ssa L. Fermo 2

Vettori e Matrici. Corso di Calcolo Numerico. 24 Aprile 2018

INTRODUZIONE A MATLAB

Il programma OCTAVE per l insegnamento dell algebra lineare nella Scuola Secondaria p. 1

Programma del corso di: Laboratorio di Programmazione e Calcolo Corso di laurea in Matematica a.a Proff. B. Paternoster, D.

3. Matrici e algebra lineare in MATLAB

Introduzione al Calcolo Scientifico

MATLAB - Programmazione - 2. Antonino Polimeno

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato.

INTRODUZIONE A MATLAB Matrix Laboratory

Diario delle lezioni di Analisi Numerica laurea Magistrale in Statistica e Informatica A.A

MATLAB - Introduzione Enrico Nobile. MATLAB - Introduzione. E. Nobile - DINMA - Sezione di Fisica Tecnica, Università di Trieste

Introduzione a Matlab

Esercitazione 4: Vettori e Matrici

Corso di Matematica per la Chimica

MATLAB (1) Introduzione e Operazioni con array

Matlab: introduzione

Introduzione al Calcolo Scientifico

CALCOLO NUMERICO INSEGNAMENTO 2015/2016 ANNO ACCADEMICO INFORMATICA L.T. FELICE IAVERNARO CORSO DI LAUREA IN DOCENTE

Lezione n. 1. Introduzione all analisi numerica (richiami di algebra lineare e analisi funzionale)

Esercizi di MatLab. Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, A.A

Corso di Matematica per la Chimica

Interpolazione e approssimazione di funzioni

Corso di Matematica per la Chimica

PON Liceo Scientifico Leonardo da Vinci. Vallo della Lucania

Una Libreria di Algebra Lineare per il Calcolo Scientifico

Fondamenti di Informatica

Richiami di algebra delle matrici a valori reali

iv Indice c

Inversa di una matrice quadrata. L operatore inv() inverte una matrice quadrata non singolare (cioè in cui il determinate è diverso da zero).

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

Calcolo Numerico - Prova Matlab 19 luglio 2013

PON Liceo Scientifico Leonardo da Vinci. Vallo della Lucania

Programma del corso di: Calcolo Numerico Corso di laurea in Matematica a.a Prof. B.Paternoster

4. Sottospazi vettoriali Piani e rette in E 3 O

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

Транскрипт:

Introduzione a Matlab (e al Calcolo Numerico) Giuseppe Rodriguez Università di Roma Tor Vergata Seminario nell ambito del corso di Fondamenti di Informatica per gli studenti di Ingegneria Meccanica e Ingegneria Chimica Università di Cagliari - A.A. 2000/2001 1

Matlab Ambiente integrato per il calcolo scientifico e la visualizzazione scientifica Interfaccia verso librerie scientifiche di pubblico dominio (Lapack, FFTW, etc.) Tutte le subroutines di calcolo sono documentate Interprete + Linguaggio di programmazione Utilizzato per didattica, ricerca e sviluppo dispense e software sono disponibili 2

Operazioni su scalari 1 Variabili e controllo del workspace (whos, clear, save e load) Costanti, notazione esponenziale, controllo dell output (format e ;) Operazioni aritmetiche: +, -, * e /. Parentesi. Potenze ( ), radici (sqrt), funzioni trascendenti, pi greco Editing della linea di comando Maiuscole e minuscole Documentazione in linea: help, doc e demo 3

Operazioni su scalari 2 Numeri complessi i, abs e angle Esempio: risoluzione di una equazione di secondo grado Operazioni proibite : inf e Nan 4

Ulteriori insidie p os sono essere nascoste nel problema da risolvere: { buona o cattiva p osizione { cor risp ondenza col problema sico reale { condizionamento Analisi Numerica L Analisi Numerica è lo studio degli algoritmi per i problemi della matematica del continuo. Caratteristiche di un algoritmo (es.: equazioni di secondo grado): stabilità complessità computazionale occupazione di memoria 5

Analisi Numerica L Analisi Numerica è lo studio degli algoritmi per i problemi della matematica del continuo. Caratteristiche di un algoritmo (es.: equazioni di secondo grado): stabilità complessità computazionale occupazione di memoria Ulteriori insidie possono essere nascoste nel problema da risolvere: buona o cattiva posizione corrispondenza col problema fisico reale condizionamento 6

Analisi Numerica Caratteristiche di un algoritmo: stabilità (propagazione degli errori) complessità computazionale (numero di operazioni richieste, è proporzionale al tempo di calcolo) occupazione di memoria Ulteriori insidie possono essere nascoste nel problema da risolvere: buona o cattiva posizione (esiste una e una sola soluzione?) corrispondenza col problema fisico reale (i risultati ottenuti sono significativi?) condizionamento (amplificazione degli errori sui dati, a prescidere dall algoritmo utilizzato) 7

Sorgenti di errore Dati sperimentali Semplificazioni introdotte nel modello matematico Aritmetica di macchina (arrotondamento e/o calcoli precedenti) Conseguenza 1: Tutti i numeri sono approssimati Conseguenza 2: I computer sbagliano (commettono errori) sistematicamente 8

Esempi: 3 ( ) 4 3 1 1 1 + eps 2 1 cos x x 2 vs. 1 2 ( ) sin x 2 2 x per x 0 2 9

Vettori e matrici Definizione estensiva di vettori e matrici Definizione intensiva di vettori: l operatore colon (:) Controllo del workspace (whos, clear, save e load) Patchwork (concatenazione) di arrays. Il vettore nullo ([]) Accesso a singoli elementi e a sottoarrays (e loro modifica) Funzioni che generano arrays: ones, zeros, magic, rand, randn, eye, diag Funzioni statistiche: sum, mean, std, min, max 10

Algebra lineare 1 Tutte le operazioni sono matriciali (a parte la divisione) Trasposizione ( ), determinante (det) e inversa (inv, ma non solo) Norme di vettori (norm) Esempi: Prodotti di arrays: 5*x, 5*A, A*x, x *A, A*B, x *y Verificare che magic(7) sia un quadrato magico Valutazione della complessità computazionale (flops) Valutazione del tempo di calcolo (tic e toc) Complessità computazionale del calcolo del determinante con la regola di Laplace e con l algoritmo di Gauss (det) 11

Alcune date: inizio del giurassico: 1.9 10 eta della Terra: 4.6 10 eta dell'universo: 10 6 9 10 anni anni anni Risoluzione di un sistema di n equazioni lineari Tempi di calcolo su un calcolatore che effettua un milione di operazioni al secondo (1 Mflop/s) n Cramer + Laplace Gauss 12 103 minuti 7.1 10 4 secondi 13 24 ore 8.9 10 4 secondi 14 15 giorni 1.1 10 3 secondi 20 1.620.083 anni 3.1 10 3 secondi 30 2.6 10 20 anni 9.9 10 3 secondi 40 1.1 10 36 anni 2.3 10 2 secondi 50 4.9 10 52 anni 4.4 10 2 secondi 12

Risoluzione di un sistema di n equazioni lineari Tempi di calcolo su un calcolatore che effettua un milione di operazioni al secondo (1 Mflop/s) n Cramer + Laplace Gauss 12 103 minuti 7.1 10 4 secondi 13 24 ore 8.9 10 4 secondi 14 15 giorni 1.1 10 3 secondi 20 1.620.083 anni 3.1 10 3 secondi 30 2.6 10 20 anni 9.9 10 3 secondi 40 1.1 10 36 anni 2.3 10 2 secondi 50 4.9 10 52 anni 4.4 10 2 secondi Alcune date: inizio del giurassico: 1.9 10 6 anni età della Terra: 4.6 10 9 anni età dell Universo: 10 10 anni 13

Operazioni su arrays (dot operations) Operatori che agiscono componente per componente: +, -,.*,./ e. Applicazione: grafico di una funzione 1. campionamento della variabile indipendente 2. calcolo della funzione sui punti di campionamento 3. tracciamento del grafico x = [-5:.1:5] ; y = x.^2; plot(x,y) 14

Esempi: sin(πx) + 1 5 cos(7πx), x [ 1, 1] 1 1 + 25x2, x [ 1, 1] sin(10x), x [ 1, 1] 10x 15

Istruzioni grafiche Visualizzazione contemporanea di più serie di dati Apertura di più finestre grafiche Modifica dello stile delle linee Annotazioni: title, legend, xlabel e ylabel Altri tipi di grafici: bar, stairs, stem, pie, hist 16

Algebra lineare 2 Risoluzione di sistemi lineari: x=a\b; Generazione di un sistema lineare test Cattivo condizionamento: la matrice di Hilbert Calcolo di autovalori e autovettori: eig e poly 17

Altri argomenti Calcoli con polinomi: valutazione: polyval calcolo delle radici: roots, poly derivazione e integrazione: polyder, polyint prodotto e divisione: conv, deconv Approssimazione di funzioni interpolazione: interp1 approssimazione ai minimi quadrati: polyfit Integrazione numerica: quad 18