


Politecnico di Torino  
Academic Year 2017/18  
01QYVLZ, 01QYVJM, 01QYVLI, 01QYVLM, 01QYVLN, 01QYVLS, 01QYVLX, 01QYVMA, 01QYVMB, 01QYVMC, 01QYVMH, 01QYVMK, 01QYVMN, 01QYVMO, 01QYVNX, 01QYVOA, 01QYVOD, 01QYVPC, 01QYVPI, 01QYVPL Numerical methods and matlab 

1st degree and Bachelorlevel of the Bologna process in Aerospace Engineering  Torino 1st degree and Bachelorlevel of the Bologna process in Mechanical Engineering  Torino 1st degree and Bachelorlevel of the Bologna process in Automotive Engineering  Torino Espandi... 





Subject fundamentals
The course aims at making the students familiar with the basic tools of Numerical Computing and with the Matlab programming language, which is by now widely used in Engineering. 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., finding the solution of a linear
system of equations or integrating an ordinary differential equation), 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. 
Expected learning outcomes
The student who has attended the course with proficiency "will be able to compute with Matlab", by combining a set of methodological concepts in the field of numerical mathematics with a set of computational skills related to the use of such a versatile and performing programming language as 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 lowquality 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, 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. 
Prerequisites / Assumed knowledge
It will be sufficient for students to masterize the basic mathematical concepts given in the courses of Mathematical Analysis I, Geometry and Mathematical Analysis II, as well as the main syntactic constructs used in computer programming, taught in the course of Computer Sciences.

Contents
 Unit 12: Introduction (finite arithmetics, conditioning of algorithms, getting familiar with Matlab)
 Unit 36: Numerical linear algebra (solving linear systems, main factorizations of a matrix, eigenvalues and eigenvectors, singular values, applications)  Unit 79 Approximation of functions and data (polynomial and piecewisepolynomial functions, interpolation, mean squares, application to numerical quadrature)  Unit 1011 Nonlinear equations and optimization (general concepts on iterative methods, Newtontype methods, gradienttype methods)  Unit 1214 Ordinary differential equations (timeadvancing methods for initialvalue problems, asymptotic stability and methods for stiff problems, methods for boundaryvalue problems (hints)) 
Delivery modes
The course is organized in 14 teaching units featuring a modular structure. Each unit is formed by 3 hours of classroom lessons and 1.5 hours of 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 unit, students will have gained knowledges and skills on the characteristic topics of that unit. Should the teaching be hosted in a room endowed with individual sockets for all students, the computer exercise activity would not require the use of a centralized laboratory (LAIB), but it could be carried on in such a room, using the students’ laptops. 
Texts, readings, handouts and other learning resources
 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 opensource software. 
Assessment and grading criteria
Exams will be held under the TIL format (Test in Laboratory), already successfully adopted in some of the numerical courses during the Academic Years 201314 and 201415; such a format takes also advantage of the outcomes of the Project MATCOL funded by the Scheda insegnamento > definitiva Politecnico for improving the quality of teaching. The assessment consists in assigning the students, through the Moodle platform, a number of multiplechoice questions, generated in a pseudorandom manner starting from a rich database 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, and the sum of all scorses is converted in the final mark.

