OBJECTIVES OF UNIT TEACHING
The course is an introduction to the general methodologies, operational skills and techniques related to the development of algorithms and software in the field of scientific computing. The course contains an introduction to the MATLAB language, used for developing software in laboratory activities that are an integral part of the course.
Knowledge and understanding: the student must demonstrate knowledge and understanding of the fundamentals of numerical analysis, particularly with regard to numerical linear algebra, the methodologies of development and analysis of numerical algorithms, the MATLAB programming language and its framework.
Ability to apply knowledge and understanding: the student must demonstrate the ability to use their acquired knowledge to solve computationally basic problems of applied mathematics, even when they appear in specific contexts, to develop numerical algorithms and analyze them in terms of accuracy and complexity, and to consciously use a programming language to implement efficiently a numerical algorithm. Such ability is expressed even through the use of computational tools and advanced computer labs.
Autonomy of judgement: the student should be able to assess independently the results returned by a numerical algorithm and its software implementation.
Communication skills: the student should be able to draw up a report on a numerical algorithm and to document its implementation in MATLAB, also working in groups, using advanced scientific computing and documentation tools. Moreover, the student should be able to use the suitable terminology of the fields of mathematics and computer science, even in English language.
Learning skills: students must be able to update and deepen topics and specific applications of numerical computing, even accessing databases, on-line scientific software repositories and other tools available on the web.
DIDACTIC UNIT PREREQUISITES
The attendant student of the BSc INFORMATICA must have acquired knowledge and skills transmitted in the following courses: Mathematics 1, Computer Programming 1 with Labs.
The attendant student of the BSc SCIENZE NAUTICHE E AERONAUTICHE must have acquired knowledge and skills transmitted in the following courses: Calculus 1, Basic Computer Science with Lab.
Introduction to scientific computing – mathematical models, numerical models, algorithms and scientific software - importance of numerical simulations - computational science - the technological context – how to use the web for scientific computing.
Programming in MATLAB – MATLAB as a programming language – data-parallelism in MATLAB - scientific visualization in MATLAB. MATLAB vs C programming language.
Numerical linear algebra – basic operations and computations with vectors and matrices: dot product and angle between vectors, matrix-vector and matrix-matrix multiplication and related algorithms – systems of linear equations – algorithms for solving triangular systems – Gauss method – LU factorization – stability and pivoting – using MATLAB to solve numerical linear algebra problems.
Solving an equation – nonlinear equations and iterative methods –bisection, secant and Newton methods – hybrids methods – convergence, convergence speed and stopping criteria – fixed point problem and fixed point method – using MATLAB to solve nonlinear equations.
Data Fitting – Lagrangian interpolation – interpolation with polynomials and linear models – Hermite interpolation – interpolation with spline and Hermite cubic – interpolation with spline and Hermite parametric curves – applications to computer-graphics – data approximation by least squares – linear least squares – normal equations – applications to statistics (linear regression) – use of MATLAB to solve problems of data fitting.
Numerical integration – basic and composite quadrature formulas: rectangular, trapezoidal, midpoint and Simpson – quadrature formula based on Hermite cubic and spline interpolation – error analysis of composite quadrature formulas – Adaptive quadrature algorithms – Monte Carlo quadrature – using MATLAB to solve problems of numerical integration.
Descriptive statistics – Sample – histogram and cumulative function – location indexes: mean, mode, median, quartiles – indices of variability: standard deviation and sample variance, mean deviation – indices of asymmetry and shape: skewness, kurtosis – qualitative data and indices of mutability: Gini index, Shannon's entropy – introduction to multivariate statistics: dispersion diagram, covariance matrix, correlation matrix – using MATLAB to solve problems of descriptive statistics.
Textbooks and other teaching material
G. Giunta: “E-book di Calcolo Numerico”, e-learning platform of the Department of Science and Technology, 2015.
A. Quarteroni, A. Saleri: “Introduzione al Calcolo Scientifico”, II Ed. Springer, 2004.
A. Murli: “Matematica Numerica: metodi, algoritmi e software”, Liguori, 2007.
All lessons are available as animated presentations in Flash format, with audio commentary by the professor; they are streamed through the e-learning platform of the Department of Science and Technology; slides (pdf and pps format) of all lectures are available on the same platform, together with online quiz, exercises, projects, laboratory notes, an introductory note to Matlab, an introductory note to Publish.
Learning assessment mode
The goal of the assessment procedure is to quantify, for each student, the degree of achievement of the learning objectives listed above.
The assessment procedure is precisely described in the e-learning platform of the Department of Science and Technology. In summary, the assessment procedure consists of an oral examination (40% of the vote), 2 mid-term tests (40% of the vote), and 2 HomeWorks (20% of the vote).