ELABORAZIONE AUTOMATICA DEI DATI - MOD.2
Secondo Semestre
Frequenza Non obbligatoria
- 3 CFU
- 15 ore
- ITALIANO
- Sede di Trieste
- Obbligatoria
- Orale
- SSD INF/01
- Caratterizzante
Is part of:
Gli obiettivi principali del corso sono i seguenti. Il corso intende fornire alcuni strumenti per un approccio sistematico e scientifico alla programmazione in un linguaggio di calcolo numerico. Durante il corso, per mezzo di alcuni esempi, verrà illustrato come risolvere un modello matematico per mezzo di un tale linguaggio. Durante le lezioni verrà impiegato il linguaggio di programmazione Matlab. Verranno illustrate anche le basi della programmazione ad oggetti in Matlab. CONOSCENZA E CAPACITA'' DI COMPRENSIONE Conoscere i fondamenti di un linguaggio di programmazione orientato al calcolo numerico. Conoscere le principali regole per scrivere un appropriato programma di calcolo numerico e comprenderne l’uso. Capire come affrontare un modello matematico di un problema per poter trovarne la soluzione in un ambiente di calcolo numerico. CONOSCENZA E CAPACITA'' DI COMPRENSIONE APPLICATE Essere capaci di analizzare un semplice problema, trovarne un modello matematico appropriato, costruirne un algoritmo risolutivo e tradurlo in modo efficiente nel linguaggio di programmazione. Essere capaci di impiegare buone regole di programmazione. AUTONOMIA DI GIUDIZIO Analizzare un semplice problema e valutare in autonomia un appropriato modello per la sua risoluzione. Tradurre autonomamente l'analisi effettuata in un appropriato programma. ABILITA'' COMUNICATIVE Saper spiegare le scelte effettuate ed i passi seguiti per risolvere un problema per mezzo della programmazione nel linguaggio di calcolo impiegato. CAPACITA'' DI APPRENDERE Saper impiegare le conoscenze acquisite come base per l'apprendimento di ulteriori argomenti, anche più complessi, sull’uso di modelli matematici e sulla loro risoluzione in un linguaggio di calcolo numerico.
Alcuni esempi presentati nel corso saranno in relazione con argomenti di matematica e statistica illustrati nei corsi di base. E'' richiesta inoltre la conoscenza di concetti di base di programmazione e sugli algoritmi. Il corso di Elementi di Informatica è propedeutico.
g) File in Matlab Uso di save e load per salvare e caricare variabili del workspace. Lettura e scrittura di file di testo. h) Funzioni avanzate in Matlab Numero variabile di argomenti in input ed in output. Funzioni nidificate e loro caratteristiche; funzioni anonime. Riferimenti a funzioni. Passaggio di funzioni come argomenti di funzioni (function functions). Funzioni func2str e str2func, fplot, feval. Timeit e il suo uso con funzioni anonime. i) Ricorsione in Matlab Definizione di ricorsione. Confronto tra algoritmi ricorsivi ed iterativi. I numeri di Fibonacci in modalità iterativa e ricorsiva. l) Grafici e fitting di curve Principali funzioni di disegno di grafici. Funzioni per il fitting di curve. m) Programmazione ad oggetti in Matlab Concetti di base sulla programmazione ad oggetti in Matlab.
Testi principali: Matlab - A Practical Introduction to Programming and Problem Solving - Sixth Edition Stormy Attaway Butterworth-Heinemann ISBN 9780323917506 eBook ISBN: 9780323986113 Per la parte sugli algoritmi: dispensa del docente Altra documentazione utile: Computer Programming with Matlab J. Michael Fitzpatrick and Ákos Lédeczi ISBN 9780615751139 Documentazione disponibile sul sito della MathWorks: https://it.mathworks.com/ Nella pagina Moodle del corso saranno messi a disposizione gli esempi presentati durante le lezioni ed altro materiale.
Lezioni teoriche alternate con esercitazioni pratiche di applicazione delle nozioni illustrate in laboratorio informatico. Il corso ha una pagina web con materiale didattico, esempi ed esercizi su moodle2.units.it.
Il programma dettagliato sarà reso disponibile nel sito Moodle di ateneo.
Gli argomenti richiesti per sostenere l'esame comprendono tutto il programma del corso. Agli studenti si richiede di avere compreso i contenuti del corso e non solo di averli esclusivamente memorizzati, nonché di saperli impiegare. L'esame, unico per entrambi i moduli, avrà forma orale e pratica dinanzi ad un PC. Per verificare il livello di comprensione potrà essere chiesta l'applicazione delle nozioni presentate nel corso a qualche problema di calcolo o in generale di programmazione, di risolvere qualche esercizio e di applicare i concetti teorici ad alcuni esempi, discutendo le proprie scelte.