Programma consuntivo del corso di Informatica

per Geologia e R. N. (Anno Accademico 2008-09)
e materiale di riferimento


Viene riportato di seguito il programma dettagliato del corso per il corrente Anno Accademico; l'elenco dei comandi di C e MATLAB citati non è esaustivo,ma viene fornito solo ai fini di orientamento generale.
Nella colonna dei riferimenti, ogni richiamo al libro consigliato (G. Naldi - L. Pareschi - G. Russo: "Introduzione al Calcolo Scientifico", ed. McGraw-Hill) per brevità viene indicato dalla sigla NPR.
Il programma viene aggiornato parallelamente allo svolgimento del corso; si invita pertanto a visitare questo link ripetutamente durante lo svolgimento, per ottenere informazioni sempre più aggiornate.


Data

Argomenti trattati

Riferimenti, file, link utili ecc.

2 ottobre 2008

Introduzione storica ai sistemi di calcolo.

Algebra di Boole; notazione binaria; cifre significative.

Funzioni logiche: NOT, AND, OR.

Numerazione binaria; conversione binario-decimale e decimale binaria.

Storia del computer dal sito dell'IAC (CNR) di Napoli.
Corso di P.E. Dunne (in inglese): consigliate lezione 3 e 4.
Sito della University of St. Andrews (Scozia) con biografie di numerosi scienziati legati alla matematica.



NPR 1.1; 1.3.1

7 ottobre 2008

Leggi di De Morgan.

Implicazione logica.

Rappresentazione in virgola mobile: arrotondamento e troncamento; mantissa ed esponente.

Sistemi di input e output.

Algoritmi.

Linguaggi di programmazione: linguaggi di basso e alto livello; linguaggi interpretati e compilati.

NPR 1.1; 1.3.2


9 ottobre 2008

Errori assoluti e relativi; arrotondamento e troncamento. Precisione macchina e errori connessi.

NPR 1.4; 1.4.1-2

14 ottobre 2008

Sistema operativo Linux: primi rudimenti; uso della shell bash; principali comandi elementari (ls, cd, mkdir, touch ecc.).

Uso di Linux per le operazioni elementari su file e directory; uso dell'interfaccia grafica (KDE/Gnome) per compiere le suddette operazioni.

Fogli di calcolo: OpenOffice Calc o equivalenti commerciali; uso delle funzioni predefinite.

Uso dei fogli di calcolo per il tracciamento del grafico di funzioni elementari su intervalli predefiniti, con diversa risoluzione.


Tabella dei comandi UNIX-Linux utili per lavorare nelle shell a riga di comando (come la finestra dei comandi di MATLAB)

Sito di OpenOffice, dove è possibile scaricare il software anche per sistemi operativi commerciali. Consultare anche il sito in inglese, per una documentazione più ricca e completa.

File per foglio di calcolo OpenOffice Calc (grafico_seno.ods) per tracciare il grafico della funzione sin(x) con x in [0, 2Pi].

16 ottobre 2008


Formattazione delle celle di una tabella in un foglio di calcolo.

Uso delle funzioni logiche in fogli di calcolo. Istruzione ternaria SE(condizione; istruzione1; istruzione2).

Tracciamento del grafico di una funzione definita a tratti.

Approssimazione di Stirling per il calcolo del fattoriale, calcolo degli errori commessi utilizzando l'approssimazione rispetto al valore vero di n!.

Guida introduttiva a Openoffice Calc 2.X

NPR 1.2.8

File per foglio di calcolo OpenOffice Calc (fx_atratti.ods) per tracciare il grafico di una funzione definita a tratti.

21 ottobre 2008



Creazione di una tabella che metta a confronto i valori di una sequenza di numeri interi n con il corrispondente fattoriale n! e la sua approssimazione di Stirling; stima dell'errore relativo e assoluto commessi con questa approssimazione.

Tracciamento del grafico dell'errore relativo in funzione del numero intero n. Formattazione del grafico.

Introduzione all'uso di MATLAB; uso di MATLAB come calcolatrice da finestra di comando. Impostazione del formato di visualizzazione mediante il comando format. Uso del comando help.

Operazioni fra scalari e vettori; operazioni elemento per elemento.

Scalari, vettori, matrici e loro immissione elementare. Emtpy matrix []. Variabili predefinite: ans, pi, realmax, realmin, eps, NaN, Inf. ...

Creazione di vettori linearmente equispaziati mediante comando “due punti” (:) e linspace.

File per foglio di calcolo OpenOffice Calc (stirling_app.ods) per tracciare il grafico relativo alla stima dell'errore relativo per l'approssimazione di Stirling del fattoriale.

Manuali e altro materiale utile per i primi approcci verso Matlab:

Introduzione

Introduzione (2)

Primer (in English)

Introduction (in English)

Manuale "Getting Started" di MathWorks

NPR 1.2.1-3

23 ottobre 2008

CONFERENZA DI FACOLTA'






28 ottobre 2008


Uso di who, whos, lookfor per ottenere informazioni.

Script di MATLAB (file .m senza input). Grafica in MATLAB: uso di plot per grafici in due dimensioni (rappresentazione di funzioni ad una variabile).Dettagli circa l'utilizzo di plot per tracciamento di più grafici di funzioni in una variabile.

Vettori e matrici speciali (ones, zeros, eye, ecc...).

NPR 1.2.5
Script MATLAB (
script_sin.m) per creare il grafico delle funzioni seno e coseno, e script con i principali comandi eseguiti nella lezione odierna e in quelle successive.

30 ottobre 2008

Creazione di uno script per rappresentare in un grafico l'errore relativo commesso nell'utilizzo dell'approssimazione di Stirling al posto della funzione fattoriale.

NPR 1.2.5
Script MATLAB (
script_stirling.m) per creare il grafico analogo a quello del file del 21 ottobre 2008 (stirling_app.ods).

4 novembre 2008

Uso del comando fprintf per la visualizzazione a schermo e per scrivere stringhe e dati ('stampare') in un file; caratteri di formattazione. Uso di fopen/fprintf/fclose per la stampa su file.

Differenza fra script e function di MATLAB: creazione di una funzione per stampare in un file una tabella per la stima dell'errore nell'approssimazione di Stirling della funzione fattoriale (analogo al foglio di calcolo creato durante la lezione del 21 ottobre 2008).

NPR 1.2.5, 1.2.9
Function MATLAB (
func_stirling.m) per creare un file con una tabella relativa agli errori assoluti e relativi commessi nell'utilizzo dell'approssimazione di Stirling, con numero di righe variablle in ingresso.

6 novembre 2008

Grafica in MATLAB: uso di meshgrid, surf, contour per grafici in tre dimensioni (rappresentazione di funzioni a due variabili).

Ciclo chiuso (for... end) per la ripetizione di sequenze di comandi. Creazione di sottografici mediante la funzione subplot. Analisi del codice fornito dal testo (stella.m, puntistella.m)

Creazione di sottografici per funzione di una variabile reale con un parametro intero usando un ciclo chiuso.

NPR 1.2.6-8
Script MATLAB (
lez6nov08.m) con i principali comandi eseguiti nella lezione odierna.

11 novembre 2008

Calcolo della media di vettori e matrici in Matlab e nei fogli di calcolo.

Operatori relazionali (==, >=, <= ...); operatori booleani (o logici): AND (&), OR(|), NOT (~)....

Ciclo condizionato (while... end).

NPR 1.2.7-8

Script MATLAB (lez11nov08.m) con i principali comandi eseguiti nella lezione odierna.

File per il grafico di funzioni in 2 variabili (grafico3D.m).

File per il calcolo di medie di vettori e matrici, con diversi comandi (medianostra.m, mediaMatrice.m, medianostra_wh.m)

13 novembre 2008

Uso di cicli di while in funzioni per il calcolo di successioni definite ricorsivamente; istruzione break per l'interruzione di un ciclo. Uso dei comandi rem per il calcolo del resto di una divisione. Costrutto switch... case... otherwise... end.

Input e output: salvataggio di file mediante comando save in formato Matlab e come file ASCII. Importazione dati in formato ASCII. Trasposizione di una matrice.

Uso dei comandi floor, ceil, fix per l'arrotondamento di un mumero ad un intero.

Interpolazione 2D: uso di interp1 per l'interpolazione lineare/cubica di dati in una variabile.

Interpolazione 3D: uso di griddata per l'interpolazione di dati di una quota in due variabili; ricostruzione, riproduzione e rendering dei dati della superficie di rilievo mediante i comandi contour, contourf, contour3, surf, surfc, mesh, pcolor, colorbar, shading, light e relative opzioni. Conversione di un numero in una stringa mediante comando num2str.

Assegnazione di esercizi di applicazione per la prossima lezione.

NPR 1.2.7-8

Script MATLAB (lez13nov08.m) con i principali comandi eseguiti nella lezione odierna.

File di dati per la simulazione di interpolazione 3D di un rilievo (datimappa.txt).

18 novembre 2008

Discussione del fenomeno di Runge (oscillazione per polinomi interpolanti su punti equidistanti). Uso dei comandi polyfit e polyval.

Discussione relativa alla soluzione dell'esercizio per il disegno di poligoni regolari (polygons.m).

Assegnazione dell'esercizio di composizione di una funzione che realizzi la conversione decimale-binario.

NPR 3.2.3

Script MATLAB (polygons.m) per tracciare i grafici di poligoni regolari fino a n lati.

File per la verifica del fenomeno di Runge (runge.m).

Function per la conversione decimale-binaria (d2bin.m).

20 novembre 2008

Approssimazione del numero e mediante successione: analisi dello script approxexp.m, che visualizza una tabella con l'errore relativo commesso nel calcolo di e; effetto dell'approssimazione numerica e dell'errore macchina. Errore di cancellazione. Discussione degli algoritmi risolutivi per l'equazione di secondo grado in una variabile. Ordine di approssimazione: definizione e stima.
Approssimazione di π (pi greco) mediante algoritmo di Archimede; analisi dello script archimede.m che simula l'utilizzo dell'algoritmo.

Derivazione numeriche: formule del primo e secondo ordine.

NPR 1.4.2-4

Script MATLAB (lez20nov08.m) relativo alla lezione odierna

File per la soluzione dell'equazione di secondo grado (eqdeg2.m), e modifica con algoritmo robusto (eqdeg2b.m).

Function per la conversione decimale-binaria (d2bin.m).

Pacchetto .zip con le slides mostrate.

25 novembre 2008

Esercizi di riepilogo


27 novembre 2008

Esercizi di riepilogo


3 dicembre 2008

Assegnazione e discussione di progetti per appelli d'esame.