Programma
consuntivo del corso (Anno Accademico 2007-08) 
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 2007  | 
		
			 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. 
 NPR 1.1; 1.3.1  | 
	
| 
			 4 ottobre 2007  | 
		
			 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 2007  | 
		
			 Errori assoluti e relativi; arrotondamento e troncamento. Precisione macchina e errori connessi. Approssimazione di Stirling per il calcolo del fattoriale, calcolo degli errori commessi utilizzando l'approssimazione rispetto al valore vero di n!.  | 
		
			 NPR 1.4; 1.4.1-2  | 
	
| 
			 11 ottobre 2007  | 
		
			 Fogli di calcolo: OpenOffice Calc o equivalenti commerciali; uso delle funzioni predefinite. 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.  | 
		
			 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 (stirling_app.ods) per tracciare il grafico relativo alla stima dell'errore relativo per l'approssimazione di Stirling del fattoriale.  | 
	
| 
			 16 ottobre 2007  | 
		
			 
 Confronto fra le strutture di controllo del flusso in OpenOffice Calc e in Matlab.  | 
		
			 Guida introduttiva a Openoffice Calc 2.X NPR 1.2.8  | 
	
| 
			 18 ottobre 2007  | 
		
			 Uso delle funzioni logiche in fogli di calcolo. Istruzione ternaria SE(condizione; istruzione1; istruzione2). Tracciamento del grafico di una funzione definita a tratti. 
  | 
		
			 File per foglio di calcolo OpenOffice Calc (fx_atratti.ods) per tracciare il grafico di una funzione definita a tratti.  | 
	
| 
			 23 ottobre 2007  | 
		
			 Introduzione all'uso di MATLAB; presentazione del software Free Source 'OCTAVE': sito di download e esempi di uso equivalente a MATLAB come calcolatrice da finestra di comando. Impostazione del formato di visualizzazione mediante il comando format. Uso del comando help. Scalari, vettori, matrici e loro immissione elementare. Emtpy matrix []. Variabili predefinite: ans, pi, realmax, realmin, eps... Creazione di vettori linearmente equispaziati mediante comando “due punti” (:) e linspace.  | 
		
			 Sito ufficiale di Octave, dove è possibile trovare link per scaricare il software, anche per sistemi operativi commerciali, e documentazione specifica. NPR 1.2.1-3 Manuali e altro materiale utile per i primi approcci verso Matlab:  | 
	
| 
			 25 ottobre 2007  | 
		
			 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. Operazioni fra scalari e vettori; operazioni elemento per elemento. Script in MATLAB.Grafica in MATLAB: uso di plot per grafici in due dimensioni (rappresentazione di funzioni ad una variabile).  | 
		
			 Tabella di comandi UNIX-Linux utili per lavorare nelle shell con riga di comando. NPR 1.2.4-5 
  | 
	
| 
			 30 ottobre 2007  | 
		
			 Dettagli circa l'utilizzo di plot per tracciamento dei grafici di una funzione in una variabile Vettori e matrici speciali (ones, zeros, eye, ecc...). Uso dei file forniti dal libro di testo (vedasi istruzioni).  | 
		
			 NPR 1.2.5  | 
	
| 
			 6 novembre 2007  | 
		
			 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 per funzione di una variabile reale con un parametro intero usando un ciclo chiuso.  | 
		
			 NPR 1.2.6  | 
	
| 
			 8 novembre 2007  | 
		
			 Differenza fra script e function di MATLAB: analisi dello script stella e della funzione puntistella. Modifica di file per adattare il comportamento di un codice: funzione stellamod. Calcolo della media di vettori e matrici in Matlab e nei fogli di calcolo. Operatori relazionali; operatori booleani (o logici). Ciclo condizionato (while... end).  | 
		
			 NPR 1.2.7-8 Script MATLAB (lez8nov07.m) con i principali comandi eseguiti nella lezione odierna. File stellamod.m File medie.ods per esempio di calcolo di medie con OpenOffice File polygons.m (esercizio assegnato).  | 
	
| 
			 13 novembre 2007  | 
		
			 Analisi della soluzione all'esercizio dell'8 novembre 2007 (polygons.m). Funzioni per arrotondare
			a un numero intero (ceil,
			floor, round,
			fix); funzione resto di una
			divisione fra interi (rem). Esercizio assegnato: creazione di una funzione che, ricevendo in ingresso un numero n intero, produca in uscita una stringa corrispondente alla rappresentazione binaria di n.  | 
		
			 NPR 1.2.8. Funzione succesionefor.m discussa durante la lezione. Soluzione dell'esercizio proposto (d2bin.m).  | 
	
| 
			 15 novembre 2007  | 
		
			 
 Uso del costrutto switch... case... otherwise... end. Stampa a schermo in MATLAB mediante il comando fprintf. 
 Uso di diary e save per memorizzare i dati calcolati e il workspace. Visualizzazione di tabelle a schermo (uso di fprintf e disp).  | 
		
			 NPR 1.2.9.  | 
	
| 
			 20 novembre 2007  | 
		
			 Input e output di dati: uso di load congiunto a save. Dati organizzati in tabelle testuali. 
 Uso di griddata per l'interpolazione di dati spaziali; esempio di simulazione di rendering di dati di rilievo di dati territoriali (altitudine di una zona di terreno). Uso avanzato di grafica 3D: contour, contourf, contour3, pcolor, surf, surfc.  | 
		
			 Script MATLAB con i principali comandi eseguiti nella lezione odierna e in quelle successive (lez20nov07.m). Soluzione dell'esercizio proposto sulla soluzione delle equazioni di secondo grado (equazione2.m).  | 
	
| 
			 22 novembre 2007  | 
		
			 ANNULLATA PER INAGIBILITA' DELL'AULA  | 
		|
| 
			 27 novembre 2007  | 
		
			 Analisi dello script fattoriale.m (NPR, cap 1) per visualizzare a schermo 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. Preparazione del codice MATLAB per una function factStirling.m che consenta di scegliere il numero di righe della tabella, e crei un grafico dell'errore relativo in funzione del numero intero n. Formattazione del grafico (cfr. lez 11 ottobre 2007)  | 
		
			 NPR 1.4.1 Soluzione dell'esercizio proposto (factStirling.m); il codice contiene anche le modifiche introdotte nelle lezioni successive.  | 
	
| 
			 29 novembre 2007  | 
		
			 Discussione su errori numerici e precisione macchina. Uso di fopen/fprintf/fclose per la stampa su file (si vedano le modifiche in factStirling.m). Uso del comando transpose e del comando save per memorizzare dati in formato MATLAB (.mat) ed in formato testo, con codifica ASCII.  | 
		
			 NPR 1.4.2  | 
	
| 
			 4 dicembre 2007  | 
		
			 Uso dei comandi xlswrite/csvwrite per scrivere dati in formato spreadsheet (excel/csv) a partire da dati di MATLAB. Cenno sull'uso di xlsread/csvread. 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. Creazione del codice modificato approxexpmod.m che utilizza la funzione input per introdurre il valore del massimo numero n su cui effettuare il calcolo dell'approssimazione di e. 
 Esercizi proposti: 1. predisporre un foglio di dati approxexp.ods che riproduca i risultati di approxexp.m e visualizzi il grafico dell'errore relativo in funzione del numero intero n usato per calcolare l'approssimazione di e; 2. scrivere un codice archimod.m per MATLAB da chiamare con kmax in ingresso, massimo valore di k intero progressivo, a partire da 2, per la preparazione di una tabella equivalente a quella creata dallo script archimede.m e per la creazione di un grafico dell'errore relativo in funzione di n = 2^k.  | 
		
			 NPR 1.4.2-3 Codice per lo script approxexpmod.m.  | 
	
| 
			 6 dicembre 2007  | 
		
			 Soluzione degli esercizi proposti nella lezione precedente.  | 
		
			 Soluzione del primo esercizio mediante il foglio dei dati approxexp.ods. Soluzione del secondo esercizio mediante codice MATLAB archimod.m.  | 
	
| 
			 
  | 
		
			 
  | 
		
			 
  |