Corso di Laurea in Ingegneria Aerospaziale - Torino Corso di Laurea in Ingegneria Meccanica (Mechanical Engineering) - Torino Corso di Laurea in Ingegneria Dell'Autoveicolo (Automotive Engineering) - Torino Corso di Laurea in Ingegneria Dell'Autoveicolo - Torino Corso di Laurea in Electronic And Communications Engineering (Ingegneria Elettronica E Delle Comunicazioni) - Torino Corso di Laurea in Ingegneria Dei Materiali - Torino Corso di Laurea in Ingegneria Elettrica - Torino Corso di Laurea in Ingegneria Biomedica - Torino Corso di Laurea in Ingegneria Chimica E Alimentare - Torino Corso di Laurea in Ingegneria Civile - Torino Corso di Laurea in Ingegneria Edile - Torino Corso di Laurea in Ingegneria Energetica - Torino Corso di Laurea in Ingegneria Per L'Ambiente E Il Territorio - Torino Corso di Laurea in Ingegneria Elettronica - Torino Corso di Laurea in Ingegneria Informatica - Torino Corso di Laurea in Ingegneria Fisica - Torino Corso di Laurea in Ingegneria Del Cinema E Dei Mezzi Di Comunicazione - Torino Corso di Laurea in Ingegneria Gestionale - Torino Corso di Laurea in Ingegneria Gestionale - Torino Corso di Laurea in Ingegneria Meccanica - Torino
L’insegnamento intende rendere lo studente familiare con gli strumenti del Calcolo Numerico utili alla risoluzione di problemi di interesse nel campo dell’Ingegneria e con l’utilizzo del software Matlab (o codici open source equivalenti), il cui impiego è ormai ampiamente diffuso. Lo studente impara ad affrontare e a risolvere nel modo più corretto ed efficiente alcuni problemi matematici di ampia portata (quali ad esempio problemi di ottimizzazione oppure di risoluzione numerica di equazioni differenziali), che non possono essere trattati con metodi analitici. Tale obiettivo viene raggiunto attraverso lo studio critico dei principali algoritmi numerici, la loro messa in opera nell’ambiente Matlab e la conseguente sperimentazione al calcolatore nelle situazioni di volta in volta più significative.
The course aims at making the students familiar with those tools of Numerical Computing useful to solve problems that are of interest for Engineering and with the use of Matlab software (or equivalent open source codes), whose employment is by now widely spread. The student learns how to tackle and solve in the most correct and efficient way a number of mathematical problems commonly encountered in applications (such as, e.g., optimization problems or the numerical resolution of differential equations), which cannot be treated by analytical means. This target is achieved through the critical analysis of the most important numerical
algorithms, their implementation in the Matlab environment and the subsequent computer experimentation in various significant situations.
Lo studente che avrà seguito con profitto questo insegnamento saprà combinare un insieme di conoscenze metodologiche nell’ambito della matematica numerica con un insieme di abilità informatiche relative all’uso di un linguaggio di programmazione versatile ed efficace, quale ad esempio il Matlab.
La presentazione degli algoritmi numerici tende a fornire agli allievi non solo la mera conoscenza degli stessi, ma anche la capacità di valutare gli aspetti positivi e negativi del loro uso rispetto a un determinato obiettivo di calcolo; la valutazione riguarda proprietà quali la stabilità numerica, la consistenza e l’efficienza computazionale. Lo studente sarà innanzi tutto in grado di evitare quelle “trappole computazionali” che, a causa di una scelta infelice dell’algoritmo, possono portare a risultati errati o comunque di bassa qualità; inoltre, sarà in grado di identificare e adottare la soluzione migliore tra quelle a sua disposizione per conseguire un determinato risultato numerico.
Per quanto riguarda la capacità di programmazione, lo studente sarà in grado di utilizzare le principali istruzioni di Matlab; saprà altresí preparare “script” in tale linguaggio, al fine di combinare opportunamente le funzionalità numeriche e grafiche disponibili nel software di libreria per giungere in modo rapido ed efficiente alla soluzione del problema di interesse. Ciò costituirà anche un’utile palestra in vista di più complesse applicazioni, nelle fasi successive della sua formazione e/o in ambito professionale.
The student who has attended the course with proficiency will be able to combine a set of methodological concepts in the field of numerical mathematics with a set of computational skills related to the use of a versatile and performing programming language, such as, for example, Matlab.
The illustration of the various numerical algorithms will endow the student not only with the pure knowledge of the procedures, but also with the capability of assessing all the positive and negative aspects related to their use for reaching a given computational target; the assessment concerns such properties as numerical stability, consistency or computational efficiency. The student will be warned to stay away from those “computational traps” that, by an unfortunate choice of the algorithm, may lead to low-quality answers and even incorrect results; furthermore, she/he will be able to identify and adopt the better solution among those
available for reaching a specific computational goal.
Concerning skills in implementation, the student will learn how to properly use the main Matlab commands; she/he will be also trained to write “scripts” in this language, with the aim of suitably combining the numerical and graphical features available in the library software in order to get the solution of the problem of interest in a fast and efficient manner. This will also represent a
usefull training in view of more complex applications, in the sequel of her/his carreer as a student, or in a professional environment.
Sono sufficienti le conoscenze matematiche di base fornite nei corsi di Analisi Matematica I, Algebra Lineare e Geometria, Analisi Matematica II, e la conoscenza dei principali costrutti sintattici che si usano per la programmazione, forniti nel corso di Informatica.
It will be sufficient for students to masterize the basic mathematical concepts given in the courses of Mathematical Analysis I, Linear Algebra and Geometry, Mathematical Analysis II, as well as the main syntactic constructs used in computer programming, taught in the course of Computer Sciences.
- Richiami e approfondimenti sui comandi fondamentali di Matlab e sui principali costrutti sintattici.
- Algebra lineare numerica: richiami; risoluzione di sistemi di grandi dimensioni; metodi iterativi.
- Approssimazione di funzioni e dati e integrazione numerica.
- Alcuni problemi di ottimizzazione numerica: problemi vincolati e non.
- Equazioni e sistemi di equazioni differenziali ordinarie: metodi di avanzamento in tempo per problemi ai valori iniziali, stabilità asintotica e metodi per problemi stiff.
- Derivazione numerica e applicazione ad alcuni problemi al contorno.
- Round-up and insights on the fundamental Matlab commands and on the main syntactic constructs.
- Numerical linear algebra: round-up; resolution of systems of large dimensions; iterative methods.
- Approximation of functions and data and numerical integration.
- Some numerical optimization problems: constrained and non constrained problems.
- Ordinary differential equations and systems of ordinary differential equations: time-advancing methods for initial-value problems, asymptotic stability and methods for stiff problems.
- Numerical differentiation and application to some boundary-value problems.
Il corso si articola in lezioni frontali ed esercitazioni al calcolatore, in cui vengono sviluppati e usati algoritmi di calcolo in Matlab relativi agli argomenti presentati nelle ore di lezione. Gli studenti potranno anche avvalersi di un insieme di esercizi online preparati nell’ambito del progetto didattico di Ateneo MATCOL. Al termine della presentazione di ogni argomento, gli allievi avranno acquisito competenze e abilità sia metodologiche che di implementazione ad esso relativi.
The course is organized in classroom lessons and computer exercises, in which students implement and run numerical algorithms in Matlab concerning the arguments discussed during lessons. Students will also take advantage from a set of online exercises, produced in the framework of the Politecnico teaching project MATCOL. At the end of each argument, students will have gained knowledges and implementation skills concerning the characteristic topics of that argument.
- G. Monegato, Metodi e algoritmi per il calcolo numerico, CLUT, 2008
- S. Berrone e S. Pieraccini, Esercizi svolti di calcolo numerico con introduzione a Matlab, CLUT, 2004
- L. Scuderi, Laboratorio di calcolo numerico, CLUT, 2005
- Files contenenti testo oppure programmi Matlab preparati dai docenti, scaricabili dal sito del corso sul Portale della Didattica
– Esercizi online sugli argomenti del corso preparati nell’ambito del progetto didattico di Ateneo MATCOL.
- Links a software open-source esterno.
- G. Monegato, Metodi e algoritmi per il calcolo numerico, CLUT, 2008
- S. Berrone e S. Pieraccini, Esercizi svolti di calcolo numerico con introduzione a Matlab, CLUT, 2004
- L. Scuderi, Laboratorio di calcolo numerico, CLUT, 2005
- Files containing text or Matlab programs prepared by the teachers, downloadable from the webpage of the course on the Portale
della Didattica
– Online exercises on the course topics, produced in the framework of the Politecnico teaching project MATCOL.
- Links to external open-source software.
Modalità di esame: Test informatizzato in laboratorio;
Exam: Computer lab-based test;
...
L’esame consiste in una prova finale in laboratorio informatico, da svolgersi senza l’utilizzo di appunti o libri, volta ad accertare l’acquisizione delle conoscenze e delle abilità attese. Tale prova si svolgerà con la modalità TIL (Test in Laboratorio), già diffusamente utilizzata in diversi corsi di argomento numerico e prevede la risoluzione di un test con domande a scelta multipla, riguardanti tutti gli argomenti del corso. Per rispondere a tali domande, l’allievo dovrà innanzitutto conoscere i metodi numerici presentati a lezione, e dovrà essere in grado di usarli attraverso la preparazione di brevi programmi in Matlab, che portano a identificare, attraverso una fase di calcolo effettuata all’ istante, la risposta esatta di ciascuna domanda. In questo modo si realizza l’accertamento sia delle conoscenze teoriche alla base degli algoritmi, sia delle effettive abilità di programmazione e di calcolo. Durante lo svolgimento della prova in laboratorio informatico, gli studenti avranno a disposizione il software Matlab. Ogni risposta fornisce un punteggio; le risposte errate comportano una penalizzazione, e la somma di tutti i punteggi viene trasformata nel voto finale in 30esimi. La durata della prova è di un’ora e trenta minuti.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Computer lab-based test;
The final exam consists in a test to be held in the informatic room, during which it is forbidden to use books or personal material such as notes and handouts, to asses the knowledges of the student and the attended skills.
Th exam will be held under the TIL format (Test in Laboratory), widely and successfully adopted in some of the numerical courses and consists in assigning the students a number of multiple-choice questions concerning all the topics of the course. In order to succesfully answer the questions, the student should both know the numerical methods presented at lessons, and be able to use them by preparing short Matlab scripts. Running these scripts and getting some numerical result out of the computer should lead to identify the correct answer of each question. This is how the knowledge of the theoretical aspects underlying algorithms as well as the practical skills of programming and computing are assessed. Eack question yields a score; wrong answers are penalized, and the sum of all scorses is converted in the final mark in 30th. The exam time is one hour and thirty minutes.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.