The course is an introduction to the general methodologies, techniques and operational competences related to the development of algorithms and software in the field of scientific calculation. The course contains an introduction to the MATLAB language, used for software development in laboratory activities that are an integral part of the course.
Knowledge and comprehension: The student must show that he knows and understands the fundamentals of numerical analysis, with particular regard to numerical linear algebra, the methodologies for the development and analysis of numerical algorithms, the Matlab programming language and its application context.
Ability to apply knowledge and understanding: The student must demonstrate that he knows how to use his acquired knowledge to solve computationally the main problems of applied mathematics, even when they appear in concrete contexts, To develop numerical algorithms and analyze them from the point of view of accuracy and complexity, to consciously use a programming language in order to efficiently implement a numerical algorithm.
These capacities are also obtained by means of a thorough and aware use of the computational tools and the advanced computer labs. Autonomy of judgement: the student must know how to evaluate the results of a numerical algorithm and its software implementation.
Communicative skills: The student must be able to write a presentation report of a numerical algorithm and to document his Matlab implementation,
also working in a group, using advanced writing/documentation Tools of Scientific calculation and correctly using the terminology of applied and
computational mathematics, also in English language.
Learning skills: The student must be able to update themselves and deepen specific numerical calculation topics and applications, including by
accessing databases, on-line repositories of scientific software, and other modalities Available from the network.
Matematics I (Calculus I), Programming I (First Course on Programming)
More information about the program is available on the-learning Platform (Dept. of Science and Technology, page of the Course)
Introduction to scientific calculation – mathematical models, numerical models, algorithms and scientific software - the importance of numerical simulations - the computational science - the technological context-web and scientific computing. 2h
MATLAB programming – MATLAB As programming language - parallelism programming on data - scientific visualization in MATLAB. Comparison between the programming in MATLAB and C. 4h
Numerical linear Algebra – basic operations and computations with vectors and matrices: scalar product and angle between vectors, matrix product
algorithms - Vector and matrix product - solving systems of linear equations - Algorithms for solving triangular systems - Gauss algorithm - LU factorization - stability and pivoting-use of MATLAB to solve problems of linear algebra. 12h
Resolution of an equation - nonlinear equations and iterative methods, bisection, Newton, secant and hybrid methods - convergence, convergence speed and stopping criteria - the fixed point problem and the fixed point method - use of MATLAB for zeros of functions. 8h
Computing maxima and minima of a function - Newton minimization method and its variants, descent gradient, Fibonacci search and Golden search - convergence, speed of convergence and stopping criteria - use of MATLAB to solve problems of Minimization/maximization. 4h
Data Fitting – Lagrangian interpolation - interpolation with polynomials - interpolation with linear models - interpolation with piecewise polynomials,
with spline and with hermite cubics - interpolation with parametric curves and applications to computer graphics - approximation in the sense of least
squares - linear least squares - normal equations - applications to Statistics (linear regression). 10h
Numerical integration – Basic formulas and composite formulas: rectangular, midpoint, trapezoidal, Simpson - quadrature with splines and hermite cubics – Analysis of the error of composite quadrature formulas - adaptive algorithms for Quadrature – Monte Carlo methods for quadrature - use of MATLAB to solve problems of fitting of data and quadrature. 4h
Descriptive statistics – samples – histogram and empirical cumulative function – position indices: mean, mode, median, quartiles – variability indices:
standard deviation and sampling variance, mean deviation - indices of asymmetry and form: skewness, curtosis - qualitative data and mutability indices: Gini index, Shannon entropy - introduction to the multivariate case: dispersion diagram, covariance and correlation matrix - use of MATLAB to solve descriptive statistic problems. 4h
Lectures of the teacher, lecture of the teacher in a computer lab with the support of a tutor, training sessions aimed at problem solving and analyzing the correctness and reliability of the results of a scientific computation.
G. Giunta: "e-Book on Numerical Computing" (in Italian), e-learning platform of the Department of Science and Technology, 2015.
T.A. Driscoll, R. J. Braun : "Fundamentals of Numerical Computation" (in English), SIAM, 2018.
D.J. Higham, N.J. Higham: “MATLAB Guide” - SIAM, 2017.
All lessons are available as animated presentations in Flash format with the audio of commentary by the teacher in streaming through the e-learning platform of the Department of Science and Technology; The slides (. pdf and. pps) of all classes are available on the same platform, along with online self-assessment quizzes, exercises, in-depth projects, laboratory notes, an operational introduction note to Matlab, a note of Operational introduction Publish.
The objective of the verification procedure is to quantify the level of attainment of the previously indicated training objectives.
The verification procedure consists of an oral examn (40% of the vote) + 2 mid-term tests (40% of the vote) + 2 HomeWorks (20% of the vote).
The HomeWorks evaluate the ability to solve a scientific computing problem of medium difficulty, to use Matlab as a programming and graphical
visualization tool, also by accessing external software repositories, to write an explanatory report using advanced writing tools like Matlab Publish.
The mid-term tests evaluate the level of knowledge of the topics of arithmetic F-P, linear algebra, resolution of equations, minimization and the topic
of data fitting, quadrature, descriptive statistic, respectively, together with the ability to write brief formal reports on these topics.
The oral exam assesses the level of knowledge and the overall competences on the theoretical and applicative aspects of the topics of the course
and the ability to critically analyse the results of a scientific computation.
Lectures are in Italian. The professor is fluent in English and is available to interact with students in English, also during the examination.